From nobody Mon Mar 27 06:40:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlNV11wsmz41qbh; Mon, 27 Mar 2023 06:40: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 4PlNV11M0Vz41Gl; Mon, 27 Mar 2023 06:40:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c7ZyfrT89U1zUtMzDlAyv+fqD3ufeC/IqsqG7m07nx4=; b=ZgNS3Y5ETlG+sROhkNt31QppYbLkjyPD3huls5QpeMsOi54oLnCSrKsiLDWDbKFEvXr4+a NI04oNEbFYqOCYKWGmN8XHiZlfOpj3CxpkTLY8nOv9E+nGk88q1L+rwVDOpVUAPozW6Ek9 OlCWhdcmIJhZMDq35JwqGYAhNZ0oBKFdnUXXqIli7xlrHxAAjpl0OPnQGIy/WBkD3ZqrXK 7wJIprX0hhZyNVuEkrC6gSf8W5ZZgPUjPfLLF4jIc2K5RdWIuD5irJ2ueOantYvzVgmnJS G8Fw4rkzt3I77WWYgCnp01RehB3yyDn+WCooTvlSvJufCKtGaHz+Q29qwlCdbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c7ZyfrT89U1zUtMzDlAyv+fqD3ufeC/IqsqG7m07nx4=; b=hDSDgo6WoIR3E/wOjGJI8QvmJVhWIYiXq7WXnLbpREkqcYOhoTK//MOxnDOyA1uX3k0L8K EDjTa2xIUf1ZokWWVxckIBbyzy0O7xBsaERMLDIy/pUuuKU6PWEuBftbvO0gMfuGtsF+ND CiJUtBf6zVk4JLa1HYmjURdXYd+SIKQcGCwYU+Z+xgM3AT5KUgyGXp85RZdt2Y+H0UgSkv FSz6v6X1x3MqWTgxFrc0xUNg9bMYI63Y0uYJhAVJINjT45sTNZEaX3i4RMDrF42FUGJg54 s4n9QT823Q8dpi7azVDr/ewehiwGU2UnpOm+CmReGfQ1kYZBlEXTJtienwzkiw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679899209; a=rsa-sha256; cv=none; b=FdFMdTV4LJt1ROOcEW5iuYrhQizlLS/ysSRM+FxJTIMCCTzzRvdmIJKdl7XAWVlYtz+nVL 0a7pPrss3pmKF6cNK1h6COTML+/SJTesuAp/ByWntapxK7eM8ob14/sZfuYbhrSLzpkhbA YjnUPJ5l3AR4mIp6Y2k98ITjY+T5E3gj2zI5/zlxmDoyY3Kci1gRjZfwYv7kL/G/8H7CYX Y7rQol1eZe1OEyIASWj5e9ZRCXY+VnWvifoMGRB23mZm1HNx3rswBgb96F124URGk4ne76 GSEBHeNSvZ77X1vsgtr0ur1GswtROfVU9HO72RYbF+9FOcY3dFtGsv7RQMMqYw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlNV10Q1wz1BSD; Mon, 27 Mar 2023 06:40:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R6e86d085321; Mon, 27 Mar 2023 06:40:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R6e8Q1085315; Mon, 27 Mar 2023 06:40:08 GMT (envelope-from git) Date: Mon, 27 Mar 2023 06:40:08 GMT Message-Id: <202303270640.32R6e8Q1085315@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: =?utf-8?Q?Corvin=20K=C3=B6hne?= Subject: git: 35bdc8b79e2a - stable/13 - bhyve: add helper for adding fwcfg files List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: corvink X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 35bdc8b79e2af6565520eea81cf6be431ed5fd3f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by corvink: URL: https://cgit.FreeBSD.org/src/commit/?id=35bdc8b79e2af6565520eea81cf6be431ed5fd3f commit 35bdc8b79e2af6565520eea81cf6be431ed5fd3f Author: Corvin Köhne AuthorDate: 2021-08-11 08:04:36 +0000 Commit: Corvin Köhne CommitDate: 2023-03-27 06:32:59 +0000 bhyve: add helper for adding fwcfg files Fwcfg items without a fixed index are reported by the file_dir. They have an index of 0x20 and above. This helper simplifies the addition of such fwcfg items. It selects a new free index, assigns it to the fwcfg items and creates an proper entry in the file_dir. Reviewed by: markj MFC after: 1 week Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D38336 (cherry picked from commit 6f9ebb3d0fed2b0ae604dd6daf17f1fe1d8df216) --- usr.sbin/bhyve/qemu_fwcfg.c | 90 +++++++++++++++++++++++++++++++++++++++++++++ usr.sbin/bhyve/qemu_fwcfg.h | 2 + 2 files changed, 92 insertions(+) diff --git a/usr.sbin/bhyve/qemu_fwcfg.c b/usr.sbin/bhyve/qemu_fwcfg.c index e1a67fd0d8ef..5ee35d6764e6 100644 --- a/usr.sbin/bhyve/qemu_fwcfg.c +++ b/usr.sbin/bhyve/qemu_fwcfg.c @@ -43,6 +43,8 @@ #define QEMU_FWCFG_INDEX_ID 0x01 #define QEMU_FWCFG_INDEX_FILE_DIR 0x19 +#define QEMU_FWCFG_FIRST_FILE_INDEX 0x20 + #define QEMU_FWCFG_MIN_FILES 10 #pragma pack(1) @@ -87,6 +89,7 @@ struct qemu_fwcfg_softc { union qemu_fwcfg_selector selector; struct qemu_fwcfg_item items[QEMU_FWCFG_MAX_ARCHS] [QEMU_FWCFG_MAX_ENTRIES]; + struct qemu_fwcfg_directory *directory; }; static struct qemu_fwcfg_softc fwcfg_sc; @@ -256,6 +259,93 @@ qemu_fwcfg_register_port(const char *const name, const int port, const int size, return (register_inout(&iop)); } +int +qemu_fwcfg_add_file(const uint8_t name[QEMU_FWCFG_MAX_NAME], + const uint32_t size, void *const data) +{ + /* + * QEMU specifies count as big endian. + * Convert it to host endian to work with it. + */ + const uint32_t count = be32toh(fwcfg_sc.directory->be_count) + 1; + + /* add file to items list */ + const uint32_t index = QEMU_FWCFG_FIRST_FILE_INDEX + count - 1; + const int error = qemu_fwcfg_add_item(QEMU_FWCFG_ARCHITECTURE_GENERIC, + index, size, data); + if (error != 0) { + return (error); + } + + /* + * files should be sorted alphabetical, get index for new file + */ + uint32_t file_index; + for (file_index = 0; file_index < count - 1; ++file_index) { + if (strcmp(name, fwcfg_sc.directory->files[file_index].name) < + 0) + break; + } + + if (count > QEMU_FWCFG_MIN_FILES) { + /* alloc new file directory */ + const uint64_t new_size = sizeof(struct qemu_fwcfg_directory) + + count * sizeof(struct qemu_fwcfg_file); + struct qemu_fwcfg_directory *const new_directory = calloc(1, + new_size); + if (new_directory == NULL) { + warnx( + "%s: Unable to allocate a new qemu fwcfg files directory (count %d)", + __func__, count); + return (-ENOMEM); + } + + /* copy files below file_index to new directory */ + memcpy(new_directory->files, fwcfg_sc.directory->files, + file_index * sizeof(struct qemu_fwcfg_file)); + + /* copy files above file_index to directory */ + memcpy(&new_directory->files[file_index + 1], + &fwcfg_sc.directory->files[file_index], + (count - file_index) * sizeof(struct qemu_fwcfg_file)); + + /* free old directory */ + free(fwcfg_sc.directory); + + /* set directory pointer to new directory */ + fwcfg_sc.directory = new_directory; + + /* adjust directory pointer */ + fwcfg_sc.items[0][QEMU_FWCFG_INDEX_FILE_DIR].data = + (uint8_t *)fwcfg_sc.directory; + } else { + /* shift files behind file_index */ + for (uint32_t i = QEMU_FWCFG_MIN_FILES - 1; i > file_index; + --i) { + memcpy(&fwcfg_sc.directory->files[i], + &fwcfg_sc.directory->files[i - 1], + sizeof(struct qemu_fwcfg_file)); + } + } + + /* + * QEMU specifies count, size and index as big endian. + * Save these values in big endian to simplify guest reads of these + * values. + */ + fwcfg_sc.directory->be_count = htobe32(count); + fwcfg_sc.directory->files[file_index].be_size = htobe32(size); + fwcfg_sc.directory->files[file_index].be_selector = htobe16(index); + strcpy(fwcfg_sc.directory->files[file_index].name, name); + + /* set new size for the fwcfg_file_directory */ + fwcfg_sc.items[0][QEMU_FWCFG_INDEX_FILE_DIR].size = + sizeof(struct qemu_fwcfg_directory) + + count * sizeof(struct qemu_fwcfg_file); + + return (0); +} + int qemu_fwcfg_init(struct vmctx *const ctx) { diff --git a/usr.sbin/bhyve/qemu_fwcfg.h b/usr.sbin/bhyve/qemu_fwcfg.h index b5454fa9977d..f59087250816 100644 --- a/usr.sbin/bhyve/qemu_fwcfg.h +++ b/usr.sbin/bhyve/qemu_fwcfg.h @@ -18,4 +18,6 @@ struct qemu_fwcfg_item { uint8_t *data; }; +int qemu_fwcfg_add_file(const uint8_t name[QEMU_FWCFG_MAX_NAME], + const uint32_t size, void *const data); int qemu_fwcfg_init(struct vmctx *const ctx); From nobody Mon Mar 27 06:40:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlNV22KPnz41qTy; Mon, 27 Mar 2023 06:40: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 4PlNV21dWwz41MC; Mon, 27 Mar 2023 06:40:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMshnW+5QOcPT3vBolS7npDA3Gb3aIqXBQoEZ/49q3s=; b=DwTYEkj8ZJn+UdMPxUrVAKgv5mFd13yqnRzD8BYLtajcAgMPcOoMb5vsv+cUPrVbduEf4S gsfCc9fxpX79UxEkWdsxqP8kPsIn/ISN1NVQPuBmDt9a8OdhnK66DPP5+ImbWHQUoQP/SR OhRV/mbN8E3EdkMgJCKg0X7uoqHAMo7RFEzFBmufsQnKoImOpckH7CBviUcjSaVBUT+ki6 AprT6sTDG2IXS7F/sjsNUvmbZ9EZjqtkhyyIE3xvGgpZ3De3rKqZw9etVMnkDFMGEX+vlB mduGFApHqLvggp62Pe62RP/ZdjKx6Ay/gvUcyIOoHQ2ypq1SN4lsdMd2wsQ8eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hMshnW+5QOcPT3vBolS7npDA3Gb3aIqXBQoEZ/49q3s=; b=V+OBibkaVmtoO8NKy9ergOFcAi3uRvBmBTcXZQl7Z3b+YLj9nB2a9FzpIIJSA7ddWtWOBA rzS+Nyh4E/is+wQqRaVSLaSaxEQFLBMdjuYfZrYSU2iZ2SqrzdtDVn6dZfwhWD6QKuDQCh l+ytGoxpknXqh1KCAbKrOn9zRSWthBSyzUnMgYk1Gk9zkTzXyv/tOP0H/De0zoPbkTtIkD FHImh5YcxfywpBQt5q2ME3u20t4VI9OCaezPxvreny2x0vuRWSSs8Btyv1fkrLBGuK6LVr IJeCS7/0YKXIOzD7ddSSxM/Dj6Q20Cc0VBYvc5XxV4zS8FZ6y71O+gqcTIzVZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679899210; a=rsa-sha256; cv=none; b=SA//S3ql33qKUvCEtfdO3bVMZU8A8adTzCy/GNTJsTLTFBjqa0CmK4mSatsesJibdaB2eq oiyQjlgmTFm5uuT9KWJDp9FZihxuIsGskMtXMpSpcH+BU3s1OElpKuMJGUVRFLv6iLqE/n /RDYx46q/wgcqQ/cIgeiKrLwWDeYT9bWq4TZhJiy451pwzQgoUF9Ob8xvxDFZpeLEwtgqY pk/6fy9a/8oHdNAWdKY9bSrnGfwA6/fugEjurolj2eF9BPaZvT1JIgHtNVL0zmTLjhI8Hw O9zIq2qPieQpjHhmurhXIhoms48V1lSCmo2YN+sIl9bOkTIhYSAgVndntXErJg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlNV20j9Pz1BGR; Mon, 27 Mar 2023 06:40:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R6eA9C085951; Mon, 27 Mar 2023 06:40:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R6eAKm085947; Mon, 27 Mar 2023 06:40:10 GMT (envelope-from git) Date: Mon, 27 Mar 2023 06:40:10 GMT Message-Id: <202303270640.32R6eAKm085947@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: =?utf-8?Q?Corvin=20K=C3=B6hne?= Subject: git: d468d5dd195f - stable/13 - bhyve: add cmdline option to enable qemu's fwcfg List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: corvink X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d468d5dd195f58d9898f505289364ac98cfcbf05 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by corvink: URL: https://cgit.FreeBSD.org/src/commit/?id=d468d5dd195f58d9898f505289364ac98cfcbf05 commit d468d5dd195f58d9898f505289364ac98cfcbf05 Author: Corvin Köhne AuthorDate: 2021-08-18 07:31:59 +0000 Commit: Corvin Köhne CommitDate: 2023-03-27 06:32:59 +0000 bhyve: add cmdline option to enable qemu's fwcfg Let the user decide if he wants to use bhyve's fwctl or qemu's fwcfg. He can set the interface by adding a fwcfg option to bootrom: -l bootrom,,fwcfg=bhyve -l bootrom,,fwcfg=qemu Reviewed by: markj MFC after: 1 week Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D38337 (cherry picked from commit d85147f3d6811c04e250bfb4597783d8844de315) --- usr.sbin/bhyve/Makefile | 1 + usr.sbin/bhyve/bhyve.8 | 29 ++++++++++++++++-- usr.sbin/bhyve/bhyve_config.5 | 8 +++++ usr.sbin/bhyve/bhyverun.c | 16 +++++++++- usr.sbin/bhyve/pci_lpc.c | 18 ++++++++++- usr.sbin/bhyve/pci_lpc.h | 1 + usr.sbin/bhyve/qemu_fwcfg.c | 71 +++++++++++++++++++++++++------------------ 7 files changed, 111 insertions(+), 33 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index bf0a17edc59e..967ea790caa5 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -63,6 +63,7 @@ SRCS= \ post.c \ ps2kbd.c \ ps2mouse.c \ + qemu_fwcfg.c \ rfb.c \ rtc.c \ smbiostbl.c \ diff --git a/usr.sbin/bhyve/bhyve.8 b/usr.sbin/bhyve/bhyve.8 index 152557087862..ed9c045c3159 100644 --- a/usr.sbin/bhyve/bhyve.8 +++ b/usr.sbin/bhyve/bhyve.8 @@ -200,7 +200,9 @@ and .Cm com4 , the boot ROM device .Cm bootrom , -and the debug/test device +the +.Cm fwcfg +type and the debug/test device .Cm pc-testdev . .Pp The possible values for the @@ -345,7 +347,7 @@ PCI 16550 serial device. .It Cm lpc LPC PCI-ISA bridge with COM1, COM2, COM3, and COM4 16550 serial ports, a boot ROM, and, -optionally, the debug/test device. +optionally, a fwcfg type and the debug/test device. The LPC bridge emulation can only be configured on bus 0. .It Cm fbuf Raw framebuffer device attached to VNC server. @@ -520,6 +522,29 @@ address space, and any modifications the guest makes will be saved to that file. .El .Pp +Fwcfg types: +.Bl -tag -width 10n +.It Ar fwcfg +The fwcfg interface is used to pass information such as the CPU count or ACPI tables to the guest firmware. +Supported values are +.Ql bhyve +and +.Ql qemu . +Due to backward compatibility reasons, +.Ql bhyve +is the default option. +When +.Ql bhyve +is used, bhyve's fwctl interface is used. +It currently reports only the CPU count to the guest firmware. +The +.Ql qemu +option uses QEMU's fwcfg interface. +This interface is widely used and allows user-defined information to be passed to the guest. +It is used for passing the CPU count, ACPI tables, a boot order and many other things to the guest. +Some operating systems such as Fedora CoreOS can be configured by qemu's fwcfg interface as well. +.El +.Pp Pass-through device backends: .Sm off .Bl -bullet diff --git a/usr.sbin/bhyve/bhyve_config.5 b/usr.sbin/bhyve/bhyve_config.5 index 7c4f701d46f6..31f848740aa8 100644 --- a/usr.sbin/bhyve/bhyve_config.5 +++ b/usr.sbin/bhyve/bhyve_config.5 @@ -259,6 +259,7 @@ VGA framebuffer device attached to VNC server. .It Li lpc LPC PCI-ISA bridge with COM1-COM4 16550 serial ports, a boot ROM, +an optional fwcfg type, and an optional debug/test device. This device must be configured on bus 0. .It Li hda @@ -529,6 +530,13 @@ Settings for the COM2 serial port device. Settings for the COM3 serial port device. .It Va com4 Ta node Ta Ta Settings for the COM4 serial port device. +.It Va fwcfg Ta string Ta bhyve Ta +The fwcfg type to be used. +Supported values are +.Dq bhyve +for fwctl and +.Dq qemu +for fwcfg. .It Va pc-testdev Ta bool Ta false Ta Enable the PC debug/test device. .El diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 702ef0e12690..1becf998b976 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -101,6 +101,7 @@ __FBSDID("$FreeBSD$"); #include "pci_emul.h" #include "pci_irq.h" #include "pci_lpc.h" +#include "qemu_fwcfg.h" #include "smbiostbl.h" #ifdef BHYVE_SNAPSHOT #include "snapshot.h" @@ -1231,6 +1232,7 @@ set_defaults(void) set_config_bool("acpi_tables", false); set_config_value("memory.size", "256M"); set_config_bool("x86.strictmsr", true); + set_config_value("lpc.fwcfg", "bhyve"); } int @@ -1460,6 +1462,17 @@ main(int argc, char *argv[]) rtc_init(ctx); sci_init(ctx); + if (qemu_fwcfg_init(ctx) != 0) { + fprintf(stderr, "qemu fwcfg initialization error"); + exit(4); + } + + if (qemu_fwcfg_add_file("opt/bhyve/hw.ncpu", sizeof(guest_ncpus), + &guest_ncpus) != 0) { + fprintf(stderr, "Could not add qemu fwcfg opt/bhyve/hw.ncpu"); + exit(4); + } + /* * Exit if a device emulation finds an error in its initilization */ @@ -1554,8 +1567,9 @@ main(int argc, char *argv[]) assert(error == 0); } - if (lpc_bootrom()) + if (lpc_bootrom() && strcmp(lpc_fwcfg(), "bhyve") == 0) { fwctl_init(); + } /* * Change the proc title to include the VM name. diff --git a/usr.sbin/bhyve/pci_lpc.c b/usr.sbin/bhyve/pci_lpc.c index 548726e27d0d..ad47230c005e 100644 --- a/usr.sbin/bhyve/pci_lpc.c +++ b/usr.sbin/bhyve/pci_lpc.c @@ -110,10 +110,20 @@ lpc_device_parse(const char *opts) set_config_value("lpc.bootrom", romfile); varfile = strsep(&str, ","); - if (varfile != NULL) { + if (varfile == NULL) { + error = 0; + goto done; + } + if (strchr(varfile, '=') == NULL) { set_config_value("lpc.bootvars", varfile); + } else { + /* varfile doesn't exist, it's another config + * option */ + pci_parse_legacy_config(find_config_node("lpc"), + varfile); } + pci_parse_legacy_config(find_config_node("lpc"), str); error = 0; goto done; } @@ -160,6 +170,12 @@ lpc_bootrom(void) return (get_config_value("lpc.bootrom")); } +const char * +lpc_fwcfg(void) +{ + return (get_config_value("lpc.fwcfg")); +} + static void lpc_uart_intr_assert(void *arg) { diff --git a/usr.sbin/bhyve/pci_lpc.h b/usr.sbin/bhyve/pci_lpc.h index 611b025d4386..ff3ea98b4f9c 100644 --- a/usr.sbin/bhyve/pci_lpc.h +++ b/usr.sbin/bhyve/pci_lpc.h @@ -72,5 +72,6 @@ void lpc_print_supported_devices(void); char *lpc_pirq_name(int pin); void lpc_pirq_routed(void); const char *lpc_bootrom(void); +const char *lpc_fwcfg(void); #endif diff --git a/usr.sbin/bhyve/qemu_fwcfg.c b/usr.sbin/bhyve/qemu_fwcfg.c index 5ee35d6764e6..1b0b5e3e9931 100644 --- a/usr.sbin/bhyve/qemu_fwcfg.c +++ b/usr.sbin/bhyve/qemu_fwcfg.c @@ -17,6 +17,7 @@ #include "acpi_device.h" #include "inout.h" +#include "pci_lpc.h" #include "qemu_fwcfg.h" #define QEMU_FWCFG_ACPI_DEVICE_NAME "FWCF" @@ -351,37 +352,49 @@ qemu_fwcfg_init(struct vmctx *const ctx) { int error; - error = acpi_device_create(&fwcfg_sc.acpi_dev, ctx, - QEMU_FWCFG_ACPI_DEVICE_NAME, QEMU_FWCFG_ACPI_HARDWARE_ID); - if (error) { - warnx("%s: failed to create ACPI device for QEMU FwCfg", - __func__); - goto done; - } + /* + * Bhyve supports fwctl (bhyve) and fwcfg (qemu) as firmware interfaces. + * Both are using the same ports. So, it's not possible to provide both + * interfaces at the same time to the guest. Therefore, only create acpi + * tables and register io ports for fwcfg, if it's used. + */ + if (strcmp(lpc_fwcfg(), "qemu") == 0) { + error = acpi_device_create(&fwcfg_sc.acpi_dev, ctx, + QEMU_FWCFG_ACPI_DEVICE_NAME, QEMU_FWCFG_ACPI_HARDWARE_ID); + if (error) { + warnx("%s: failed to create ACPI device for QEMU FwCfg", + __func__); + goto done; + } - error = acpi_device_add_res_fixed_ioport(fwcfg_sc.acpi_dev, - QEMU_FWCFG_SELECTOR_PORT_NUMBER, 2); - if (error) { - warnx("%s: failed to add fixed IO port for QEMU FwCfg", - __func__); - goto done; - } + error = acpi_device_add_res_fixed_ioport(fwcfg_sc.acpi_dev, + QEMU_FWCFG_SELECTOR_PORT_NUMBER, 2); + if (error) { + warnx("%s: failed to add fixed IO port for QEMU FwCfg", + __func__); + goto done; + } - /* add handlers for fwcfg ports */ - if ((error = qemu_fwcfg_register_port("qemu_fwcfg_selector", - QEMU_FWCFG_SELECTOR_PORT_NUMBER, QEMU_FWCFG_SELECTOR_PORT_SIZE, - QEMU_FWCFG_SELECTOR_PORT_FLAGS, - qemu_fwcfg_selector_port_handler)) != 0) { - warnx("%s: Unable to register qemu fwcfg selector port 0x%x", - __func__, QEMU_FWCFG_SELECTOR_PORT_NUMBER); - goto done; - } - if ((error = qemu_fwcfg_register_port("qemu_fwcfg_data", - QEMU_FWCFG_DATA_PORT_NUMBER, QEMU_FWCFG_DATA_PORT_SIZE, - QEMU_FWCFG_DATA_PORT_FLAGS, qemu_fwcfg_data_port_handler)) != 0) { - warnx("%s: Unable to register qemu fwcfg data port 0x%x", - __func__, QEMU_FWCFG_DATA_PORT_NUMBER); - goto done; + /* add handlers for fwcfg ports */ + if ((error = qemu_fwcfg_register_port("qemu_fwcfg_selector", + QEMU_FWCFG_SELECTOR_PORT_NUMBER, + QEMU_FWCFG_SELECTOR_PORT_SIZE, + QEMU_FWCFG_SELECTOR_PORT_FLAGS, + qemu_fwcfg_selector_port_handler)) != 0) { + warnx( + "%s: Unable to register qemu fwcfg selector port 0x%x", + __func__, QEMU_FWCFG_SELECTOR_PORT_NUMBER); + goto done; + } + if ((error = qemu_fwcfg_register_port("qemu_fwcfg_data", + QEMU_FWCFG_DATA_PORT_NUMBER, QEMU_FWCFG_DATA_PORT_SIZE, + QEMU_FWCFG_DATA_PORT_FLAGS, + qemu_fwcfg_data_port_handler)) != 0) { + warnx( + "%s: Unable to register qemu fwcfg data port 0x%x", + __func__, QEMU_FWCFG_DATA_PORT_NUMBER); + goto done; + } } /* add common fwcfg items */ From nobody Mon Mar 27 06:40:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlNV32vmQz41qWg; Mon, 27 Mar 2023 06:40:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PlNV32N3Hz41F2; Mon, 27 Mar 2023 06:40:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mh7fLWG59nXCnmKWHJo5SwnN3i4BLJZm9BzGIpJCnvY=; b=VzvO1BtzyYddbdm9X10wnya0hIn6paEiXpMgNVPGTtkLz9ucZEBCWaEMvgDRcBlPRdejC5 98rYzdVk6jppj/Ya/41LTO5krIO9IuDxhrauq884AZfuYLdPlfW//TpvWuaqcW9htrcpEU O+I41Eb3zNJBIuywcyCrw0X2HG+dr+jijg9+gErjzFlAagItTi/wCesYEW8oIgwDZfr4hg pM4c55CvzQXdbIQZqDVuEa+CquSM5WcTRI/i1WnLSRBvZGvci9XbhyJJ2BSL4JkHF15oFS 3rq3XFRTR2ddava06LYCJIoiscPr6fOYUgxeb6PZ+ij/5VbPLHvgcgcvvQNVZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679899211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mh7fLWG59nXCnmKWHJo5SwnN3i4BLJZm9BzGIpJCnvY=; b=AYEu9mME0KuYgYrmvhaZ+cWL+NJpo0q9cc9UISAcJ3Atva6e2RIU+Hy4icSES9oXtEDa74 Nd4J5qY5N5Ey/dMSZ4AEYm3fdcD2TGWXKzoh+WYG0e0FSswWJounUlr5c3KPz15t6EkGpt 8UZG3RlPHnZynXoxv5xY+hKnnON1tA2po8F23gxpdt32gKhF7zXOKYRSUxYlCIfsbPd1Is wtvGpIYEjG6+Vu0qAJx9caH7tuDoOCoxUSP7FdkXr5iK9AW0WTzbPRQ5X/cE/ifl7z2p3n aMUYfSvZoF9WJvabJzRl7vMhoySN1HSd58sEOEpSTtyMNTaP+iLiOKUg9K9L6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679899211; a=rsa-sha256; cv=none; b=pdl0Xc3HCtY8UaM84o9azDFV+jU8VI/gezb5XrsBPu0yu8w0mHFQsNWys8nXz7BkxEusqy 5yywVCqD50iZnmaGYfo9BMPKCT+H6dzynHcfBo7CZRhVmmpFShG3Bgk0N+5SdCgRqeZuNo Vl2U7HpLAzjPW+bK+nxLpwZpNT5+2s0VvPFVScmDyAtSGwiH+o61CC4U6y2IUEzliBqJEA bK1jGV5wkWLVBN4QT67lVWrVpa02lZ80reE3aoYCnX03XJCbsJvXOat+RoNffIC8kmFZgk Kzrn1goQs6viHyoHh5ni1lt8rIHarivv7OnKSQDyjZ6mKncs0+hBCsTNsTvwFw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlNV31QZtz1BGS; Mon, 27 Mar 2023 06:40:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R6eBrm086573; Mon, 27 Mar 2023 06:40:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R6eBYb086570; Mon, 27 Mar 2023 06:40:11 GMT (envelope-from git) Date: Mon, 27 Mar 2023 06:40:11 GMT Message-Id: <202303270640.32R6eBYb086570@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: =?utf-8?Q?Corvin=20K=C3=B6hne?= Subject: git: 6dace6a5cc84 - stable/13 - vmm: fix missing ipi statistic List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: corvink X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6dace6a5cc84644668a66d58502b779243a666f0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by corvink: URL: https://cgit.FreeBSD.org/src/commit/?id=6dace6a5cc84644668a66d58502b779243a666f0 commit 6dace6a5cc84644668a66d58502b779243a666f0 Author: Vitaliy Gusev AuthorDate: 2023-03-17 09:17:22 +0000 Commit: Corvin Köhne CommitDate: 2023-03-27 06:33:00 +0000 vmm: fix missing ipi statistic ipi counters are missing in bhyvectl's output because vm_maxcpu is 0 when initializing them. That's because vmm_stat_register is executed before vmm_init. Instead of directly fixing it, there's a better solution in illumos which is cherry picked: https://github.com/illumos/illumos-gate/commit/65a3bc83734e5fb0fc2c19df3e5112b87dcdc3f8 It replaces the matrix statistic by two counters per vcpu. One for counting the ipis to the vcpu and one counting the ipis received by the vcpu. This has several advantages: - A matrix statistic becomes huge when using many vcpus. - A matrix statistic easily reaches the MAX_VMM_STAT_ELEMS limit. - Two counters are enough in most cases. DTrace can be used for more advanced debugging purposes. - A matrix statistic wastes memory. The matrix size is determined by vm_maxcpu regardless of the number of vcpus assigned to the vm. Reviewed by: corvink, markj Fixes: ee98f99d7a68b284a669fefb969cbfc31df2d0ab ("vmm: Convert VM_MAXCPU into a loader tunable hw.vmm.maxcpu.") MFC after: 1 week Sponsored by: vStack Differential Revision: https://reviews.freebsd.org/D39038 (cherry picked from commit 94a3876d7e18ada9596464623829d37d186da856) --- sys/amd64/vmm/io/vlapic.c | 9 ++++++--- sys/amd64/vmm/vmm_stat.c | 3 --- sys/amd64/vmm/vmm_stat.h | 2 -- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/sys/amd64/vmm/io/vlapic.c b/sys/amd64/vmm/io/vlapic.c index 884e232b1422..2144cbabd979 100644 --- a/sys/amd64/vmm/io/vlapic.c +++ b/sys/amd64/vmm/io/vlapic.c @@ -905,7 +905,8 @@ vlapic_calcdest(struct vm *vm, cpuset_t *dmask, uint32_t dest, bool phys, } } -static VMM_STAT_ARRAY(IPIS_SENT, VMM_STAT_NELEMS_VCPU, "ipis sent to vcpu"); +static VMM_STAT(VLAPIC_IPI_SEND, "ipis sent from vcpu"); +static VMM_STAT(VLAPIC_IPI_RECV, "ipis received by vcpu"); static void vlapic_set_tpr(struct vlapic *vlapic, uint8_t val) @@ -1102,7 +1103,8 @@ vlapic_icrlo_write_handler(struct vlapic *vlapic, bool *retu) CPU_FOREACH_ISSET(i, &dmask) { vcpu = vm_vcpu(vlapic->vm, i); lapic_intr_edge(vcpu, vec); - vmm_stat_array_incr(vlapic->vcpu, IPIS_SENT, i, 1); + vmm_stat_incr(vlapic->vcpu, VLAPIC_IPI_SEND, 1); + vmm_stat_incr(vcpu, VLAPIC_IPI_RECV, 1); VLAPIC_CTR2(vlapic, "vlapic sending ipi %d to vcpuid %d", vec, i); } @@ -1223,7 +1225,8 @@ vlapic_self_ipi_handler(struct vlapic *vlapic, uint64_t val) vec = val & 0xff; lapic_intr_edge(vlapic->vcpu, vec); - vmm_stat_array_incr(vlapic->vcpu, IPIS_SENT, vlapic->vcpuid, 1); + vmm_stat_incr(vlapic->vcpu, VLAPIC_IPI_SEND, 1); + vmm_stat_incr(vlapic->vcpu, VLAPIC_IPI_RECV, 1); VLAPIC_CTR1(vlapic, "vlapic self-ipi %d", vec); } diff --git a/sys/amd64/vmm/vmm_stat.c b/sys/amd64/vmm/vmm_stat.c index 2750982185aa..2df4423bc60f 100644 --- a/sys/amd64/vmm/vmm_stat.c +++ b/sys/amd64/vmm/vmm_stat.c @@ -70,9 +70,6 @@ vmm_stat_register(void *arg) if (vst->scope == VMM_STAT_SCOPE_AMD && !vmm_is_svm()) return; - if (vst->nelems == VMM_STAT_NELEMS_VCPU) - vst->nelems = vm_maxcpu; - if (vst_num_elems + vst->nelems >= MAX_VMM_STAT_ELEMS) { printf("Cannot accommodate vmm stat type \"%s\"!\n", vst->desc); return; diff --git a/sys/amd64/vmm/vmm_stat.h b/sys/amd64/vmm/vmm_stat.h index 050d3c13dda1..e40a960ec82a 100644 --- a/sys/amd64/vmm/vmm_stat.h +++ b/sys/amd64/vmm/vmm_stat.h @@ -58,8 +58,6 @@ struct vmm_stat_type { void vmm_stat_register(void *arg); -#define VMM_STAT_NELEMS_VCPU (-1) - #define VMM_STAT_FDEFINE(type, nelems, desc, func, scope) \ struct vmm_stat_type type[1] = { \ { -1, nelems, desc, func, scope } \ From nobody Mon Mar 27 08:16:36 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdK0KClz41wlP; Mon, 27 Mar 2023 08: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 4PlQdJ6jSCz4BHL; Mon, 27 Mar 2023 08: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=1679904996; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wd8OIQuRX7OJSQzkkERq7BeYv52h+jONZfF2ny27Uog=; b=oEs545sC+CWoeDVaG08d3qVbIGdU/Eh+bqSLwvpAISzbJs671ClkROPUPWHeQAMLS007G+ i0ix+1oF8eJcl7Rz86fdUMJndyG0iNImhC40xw05m1G/elcWJa/fDB/+zcs2RKHlfDgdMW GjutA6/Jytb9qpNRwSNhL1L2LDBk28W8eOm7OEvkDqUZ5qEByLwTF6vHIdMSIahSUROMp6 5paqt+Uoef6M3UCAyrIs3gi9A3HDyP1hkeJeDLcmSLcD6NMPC6FGmkKKMFV+TQud00I+jh DIy4LR0wG1jPy/XkMC8U3Dmuo496v0BijvIeaMDXckCbPrG9xnaATuYiH0Ztng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904996; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wd8OIQuRX7OJSQzkkERq7BeYv52h+jONZfF2ny27Uog=; b=oBjPwW/ET+j8hd7srEv9xmG5bPpcwX+dXwjZCXjQrUzXe9TJzHOxU1z8oQ3s/o4ubXnxdS fSXtwLjMnhzs6uZi3hixPeWxVErDJz26sPLpJB2+IkWi55WQMoenSf87pHDMa/DLJAYDzQ mlj9FiujOSNZnFYzdJl3rmT/fLT14DyVckd3XIwKUadNfEE0OcDo0pAzFafz2hdQmFgEdU tsz1GU5pACuo2JGUmKwVkDvFbtv4OV6blZFd3WCT9vGkTmbPjqSW75vcGvxev3U9M8TshU agCpDZhrzniyA8cmLPkRorvFqKCvonksxa4xMfyoANQPveEs/sW/tcl7qzcLyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904996; a=rsa-sha256; cv=none; b=N7bQG+aSjXfeugw53PGMUscqiTX5nbh/KI7naw7RAr7zXbV1JPmaay5KsXnlOFeIlpk71y jQGt/c5vUeQ2+oZxmMgYGUiK19WULA32o1XbWV9MZ9xKbUWkn7zEbTawljGli0V52vTKSh UP5gr4+aHLRgrYZtSi1GYAtj1OfzakM9NqNXK06wFRN/pap0cv/2HMpEzbopImO1nvw5PW LbuSj7mwDBUYO4GQhaAC+RUzkE/PXJvA58nGnOLGi81du6yfTibzft8qFHEwwVsVFQ4jfN cD6bIMRYl3ATxjK+N2AOfsT8H8qDoLJdH/Pi+dK+dgznEucEmqu2tX5TyMtMfg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdJ5kZVzFNW; Mon, 27 Mar 2023 08:16:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8Gaic045539; Mon, 27 Mar 2023 08:16:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8GaRs045538; Mon, 27 Mar 2023 08:16:36 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:36 GMT Message-Id: <202303270816.32R8GaRs045538@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 44af4103e422 - stable/13 - pfsync: fix pfsync_undefer_state() locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 44af4103e422029026e9bb1a5784550365831cf3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=44af4103e422029026e9bb1a5784550365831cf3 commit 44af4103e422029026e9bb1a5784550365831cf3 Author: Kristof Provost AuthorDate: 2023-03-20 13:29:55 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 08:16:03 +0000 pfsync: fix pfsync_undefer_state() locking pfsync_undefer_state() takes the bucket lock, but could get called from places (e.g. from pfsync_update_state() or pfsync_delete_state()) where we already held the lock. As it can also be called from places where we don't yet hold the lock create new locked variant for use when the lock is already held. Keep using pfsync_undefer_state() where the lock must still be taken. PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit 53247cdf12449e90f6736ae563e4cce8315c923f) --- sys/netpfil/pf/if_pfsync.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 610252a9fdf3..3b3d263fcf8b 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -296,6 +296,7 @@ static int pfsyncioctl(struct ifnet *, u_long, caddr_t); static int pfsync_defer(struct pf_kstate *, struct mbuf *); static void pfsync_undefer(struct pfsync_deferral *, int); +static void pfsync_undefer_state_locked(struct pf_kstate *, int); static void pfsync_undefer_state(struct pf_kstate *, int); static void pfsync_defer_tmo(void *); @@ -1851,28 +1852,37 @@ pfsync_defer_tmo(void *arg) } static void -pfsync_undefer_state(struct pf_kstate *st, int drop) +pfsync_undefer_state_locked(struct pf_kstate *st, int drop) { struct pfsync_softc *sc = V_pfsyncif; struct pfsync_deferral *pd; struct pfsync_bucket *b = pfsync_get_bucket(sc, st); - PFSYNC_BUCKET_LOCK(b); + PFSYNC_BUCKET_LOCK_ASSERT(b); TAILQ_FOREACH(pd, &b->b_deferrals, pd_entry) { if (pd->pd_st == st) { if (callout_stop(&pd->pd_tmo) > 0) pfsync_undefer(pd, drop); - PFSYNC_BUCKET_UNLOCK(b); return; } } - PFSYNC_BUCKET_UNLOCK(b); panic("%s: unable to find deferred state", __func__); } +static void +pfsync_undefer_state(struct pf_kstate *st, int drop) +{ + struct pfsync_softc *sc = V_pfsyncif; + struct pfsync_bucket *b = pfsync_get_bucket(sc, st); + + PFSYNC_BUCKET_LOCK(b); + pfsync_undefer_state_locked(st, drop); + PFSYNC_BUCKET_UNLOCK(b); +} + static struct pfsync_bucket* pfsync_get_bucket(struct pfsync_softc *sc, struct pf_kstate *st) { @@ -1891,7 +1901,7 @@ pfsync_update_state(struct pf_kstate *st) PFSYNC_BUCKET_LOCK(b); if (st->state_flags & PFSTATE_ACK) - pfsync_undefer_state(st, 0); + pfsync_undefer_state_locked(st, 0); if (st->state_flags & PFSTATE_NOSYNC) { if (st->sync_state != PFSYNC_S_NONE) pfsync_q_del(st, true, b); @@ -2034,7 +2044,7 @@ pfsync_delete_state(struct pf_kstate *st) PFSYNC_BUCKET_LOCK(b); if (st->state_flags & PFSTATE_ACK) - pfsync_undefer_state(st, 1); + pfsync_undefer_state_locked(st, 1); if (st->state_flags & PFSTATE_NOSYNC) { if (st->sync_state != PFSYNC_S_NONE) pfsync_q_del(st, true, b); From nobody Mon Mar 27 08:16:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdK2zw5z41x3V; Mon, 27 Mar 2023 08: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 4PlQdK2YJ1z4BP6; Mon, 27 Mar 2023 08: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=1679904997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xJVCkcJjLOmf4ouqTdrtl8sksNUPK0jxUuoyz8tCvYk=; b=NC04yzTTm0KRhpbhTZfE5GR05XjNU9FIhfLU+sLhAXSsoc5KCpP/Achp+WvL3cIpcsoby7 KKMxPpzu3tizDHPKydhIHlJaMKk1HYa09HAPU7D1Y+r0HAbCRhZ7mUaUXYj9y7iztBJWl2 jZb8yxCl04GVJ17QM0eTRlFQ9QVwGgHZRIE//AJ4re0yaT5RdIFXe0nQ91GHZlROiJ48hk V5lzF8O/1b0Vy4k/g8NAQ7Y7udn/xbUyg7oIruxQpkfyYjWPAzi24c3ThrCYGsOo4VaBfP 8+3liGumGn0pAZvViKe+O6A4MgRRkAIAULvE9XBI60QHzF/uQRu0vGmtKKykLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xJVCkcJjLOmf4ouqTdrtl8sksNUPK0jxUuoyz8tCvYk=; b=WNiIPqdaXQ1yHepx6uQ3t00d7MulA7XFb0C+KILNtsNHuIUif0FHP5U41ZChc6LxbCffAB IAqjEQ+95hjTnifm+H7yIy9zGtdXtDUq/4jM6g1FAm+p7hcXF49uEcY51piTiLp0bYI42p s6H5c0W5l0jWQ/eW28P/A4dHKql/Y09FtjOnkghzK8jc0Vua5PxCSdxFExkdwkxw5A9eCy MlhaMFdnTbJ3bdzFFpfn2KAF3wK/2kUlMmd8xl6YKdE+9REn9WLyP2++4WGrmmcrW6NEdS RFLysOUTv6qRhTi7ZXdKaiMEl5uqhAdHQ+AXN3X5ZqQp0mjt5kh7Ikt5LBhobg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904997; a=rsa-sha256; cv=none; b=B3Np5RQFgAX4G9eAy+g8XPVJcrGHHf+GPyMQMT4DYYSZS0R9e4gmFtV9zUw7je4TVUOpnV oXMlEQiCvcMgYfbwEmUEUo6Ss+1nJEwsslpgXPLJPtrtq0sJh6kn832opVO2amT1Rwaxj5 cTh8I8zhnOA2IbBvRFHtfffNi1VsrMy1daL08gwJXiWtNH9dkJM2RxXWx5Ap/7ddr/326Z V9uh3ikrJyKoaK5+WPN8YiDQhJQz/FObj6zzFLqXArt5Uu6YX4aJ2a9l/9jDxshdr+Pmlj gHchqy25YU+ZF8UYqlJ1Ys8SJ6BLXZQcZxtSv+R6RfM9MtPsf6Zqw9qROd8usA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdK1d2lzF3Q; Mon, 27 Mar 2023 08:16:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8GbZC045619; Mon, 27 Mar 2023 08:16:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8GbFZ045618; Mon, 27 Mar 2023 08:16:37 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:37 GMT Message-Id: <202303270816.32R8GbFZ045618@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 09b7cab88f65 - stable/12 - pfsync: fix pfsync_undefer_state() locking List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 09b7cab88f652e3a3682749e38c043d25dd7d0ed Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=09b7cab88f652e3a3682749e38c043d25dd7d0ed commit 09b7cab88f652e3a3682749e38c043d25dd7d0ed Author: Kristof Provost AuthorDate: 2023-03-20 13:29:55 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 00:28:32 +0000 pfsync: fix pfsync_undefer_state() locking pfsync_undefer_state() takes the bucket lock, but could get called from places (e.g. from pfsync_update_state() or pfsync_delete_state()) where we already held the lock. As it can also be called from places where we don't yet hold the lock create new locked variant for use when the lock is already held. Keep using pfsync_undefer_state() where the lock must still be taken. PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit 53247cdf12449e90f6736ae563e4cce8315c923f) --- sys/netpfil/pf/if_pfsync.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 8d90f76a3faa..6a67b8fe3d80 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -295,6 +295,7 @@ static int pfsyncioctl(struct ifnet *, u_long, caddr_t); static int pfsync_defer(struct pf_kstate *, struct mbuf *); static void pfsync_undefer(struct pfsync_deferral *, int); +static void pfsync_undefer_state_locked(struct pf_kstate *, int); static void pfsync_undefer_state(struct pf_kstate *, int); static void pfsync_defer_tmo(void *); @@ -1850,28 +1851,37 @@ pfsync_defer_tmo(void *arg) } static void -pfsync_undefer_state(struct pf_kstate *st, int drop) +pfsync_undefer_state_locked(struct pf_kstate *st, int drop) { struct pfsync_softc *sc = V_pfsyncif; struct pfsync_deferral *pd; struct pfsync_bucket *b = pfsync_get_bucket(sc, st); - PFSYNC_BUCKET_LOCK(b); + PFSYNC_BUCKET_LOCK_ASSERT(b); TAILQ_FOREACH(pd, &b->b_deferrals, pd_entry) { if (pd->pd_st == st) { if (callout_stop(&pd->pd_tmo) > 0) pfsync_undefer(pd, drop); - PFSYNC_BUCKET_UNLOCK(b); return; } } - PFSYNC_BUCKET_UNLOCK(b); panic("%s: unable to find deferred state", __func__); } +static void +pfsync_undefer_state(struct pf_kstate *st, int drop) +{ + struct pfsync_softc *sc = V_pfsyncif; + struct pfsync_bucket *b = pfsync_get_bucket(sc, st); + + PFSYNC_BUCKET_LOCK(b); + pfsync_undefer_state_locked(st, drop); + PFSYNC_BUCKET_UNLOCK(b); +} + static struct pfsync_bucket* pfsync_get_bucket(struct pfsync_softc *sc, struct pf_kstate *st) { @@ -1890,7 +1900,7 @@ pfsync_update_state(struct pf_kstate *st) PFSYNC_BUCKET_LOCK(b); if (st->state_flags & PFSTATE_ACK) - pfsync_undefer_state(st, 0); + pfsync_undefer_state_locked(st, 0); if (st->state_flags & PFSTATE_NOSYNC) { if (st->sync_state != PFSYNC_S_NONE) pfsync_q_del(st, true, b); @@ -2033,7 +2043,7 @@ pfsync_delete_state(struct pf_kstate *st) PFSYNC_BUCKET_LOCK(b); if (st->state_flags & PFSTATE_ACK) - pfsync_undefer_state(st, 1); + pfsync_undefer_state_locked(st, 1); if (st->state_flags & PFSTATE_NOSYNC) { if (st->sync_state != PFSYNC_S_NONE) pfsync_q_del(st, true, b); From nobody Mon Mar 27 08:16:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdL15mrz41x3W; Mon, 27 Mar 2023 08: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 4PlQdL0NnPz4BLB; Mon, 27 Mar 2023 08: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=1679904998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HD9U6glx42uODfaNXWWT4CVJt7WQHkvzQl0WC+dKwl8=; b=hXzplmuBUSRp3JBoa5eHUYRDUsRxF9J0Rzbl2n4wuQcbiSZUAaBU9RyjlzG/AsvnfR2FcZ 2U5aeABXqfWPjMk1aMamaBhmJ+qA/Er0jcIw5cAt00/v/0AzlbHgPXFtV3naSY8dUTFwMJ 45+vtpqLQNQe5WQAsxHDxIAqWnmPcaR2d8lCsifCxQ+bwKP5oNlMZgZSzOpVjgc6OxhrCU DQuOlKJFCfOihXvWWRVdd3QbYn2YjZrXzNqkotnTdQAF+Cqh0++lx7P4fi12xcB4PdUlpy CCUGQfGwifAr82OPwDutqfck+ilF7jhJsxgAeiPC0BEd4z/tgkwfK6FtFSq7KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HD9U6glx42uODfaNXWWT4CVJt7WQHkvzQl0WC+dKwl8=; b=bIiORJxVmz1PrL/aF0CzHnNh7NLTsFgJb+eyJ35A+4VQ8GXNP+A+okXaYFoo8yiFGrsX6i agGvQfWPgtqmr6jhreRYFowGBxYdZHNFQ0F1EPuK1E+2JwExhu4FRPkTm5u+7cxWzgTHr4 lNtUvYrDCz9bxAYMOuKLPj1T4Ou5P1XhViqe6tIct94hNw4AljL4OzDSYije9qLJZzCUpC htdIscuuk8WjwoBDSUlZuJe46iGqlCzmuZDEeXaXmcNn8hH2rN65Q6ovUmCAAHWNfADBmM /ig1nq1LhkwVY5ARg9dXnfVdEHRIgJ4Mns52Anj2cw0ZX3hMUvKK7MioVJB0ug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904998; a=rsa-sha256; cv=none; b=X7IDz1VyP/wtXwJ+OmUhxqO93g9ri4wBdlntKgYhmHdmJVW3FmenZaXadTJgkK6nhJBzqU tkDFHWt+smFq//oxGV37QDA2K6ebydOwU75cAa39UVVXLd6qo5IZJU1oB4GvlJDpvzkUAi vXwmHgUIkEsTgonHuL8v6HxBi95NVOuG/gYs/d3nb3rgKD/KRocmDiPyp0v4t4u0aQYiw0 zOC8qR+GT8CJM5Iw5UR1ihel9yKeevj82vF5AL/dtwSyQoWPz+JyGGzl9oQ07djja4lNFg H9MZpXqaSKl47SLg7A4P8jFb5xDcfvbL55IoIwBC3DJxVdiAM8TCZF38z4OoFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdK6c5FzFQY; Mon, 27 Mar 2023 08:16:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8Gbvo045638; Mon, 27 Mar 2023 08:16:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8GbQk045637; Mon, 27 Mar 2023 08:16:37 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:37 GMT Message-Id: <202303270816.32R8GbQk045637@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 3eb2341caaa3 - stable/13 - pfsync: add missing unlock in pfsync_defer_tmo() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3eb2341caaa307a8d067333c8aebe3e269ade2fd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=3eb2341caaa307a8d067333c8aebe3e269ade2fd commit 3eb2341caaa307a8d067333c8aebe3e269ade2fd Author: Kristof Provost AuthorDate: 2023-03-20 13:26:33 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 08:16:03 +0000 pfsync: add missing unlock in pfsync_defer_tmo() The callout for pfsync_defer_tmo() is created with CALLOUT_RETURNUNLOCKED, because while the callout framework takes care of taking the lock we want to run a few operations outside of the lock, so we unlock ourselves. However, if `sc->sc_sync_if == NULL` we return without releasing the lock, and leak the lock, causing later deadlocks. Ensure we always release the bucket lock when we exit pfsync_defer_tmo() PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit 844ad2828a35c434b893af4274b1f6c50332dd70) --- sys/netpfil/pf/if_pfsync.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 3b3d263fcf8b..0a8ece621006 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -1830,8 +1830,10 @@ pfsync_defer_tmo(void *arg) PFSYNC_BUCKET_LOCK_ASSERT(b); - if (sc->sc_sync_if == NULL) + if (sc->sc_sync_if == NULL) { + PFSYNC_BUCKET_UNLOCK(b); return; + } NET_EPOCH_ENTER(et); CURVNET_SET(sc->sc_sync_if->if_vnet); From nobody Mon Mar 27 08:16:38 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdL40zGz41x9Z; Mon, 27 Mar 2023 08: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 4PlQdL3Qhfz4Brt; Mon, 27 Mar 2023 08: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=1679904998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sA2sY7GsSaWealMpi5nDyGiohbzl5K1CZLzmDfmWslo=; b=nCVvqeLfbywNRxSNVUXa24V7JEZ28f6nY2xlp0EbAWE5Zp4/HP+TkNGbQDcyi8onyRiVFH MBuce7OVmO24nPcV3Ebaabl0VZMHfPMwyzSGACfm/rRcg4yk5dvJ63s8CRy5GiOTmt3jz7 xYxWuw1aD+bOKpCi+DRaqiyCZXyq/qoXjreJOUUWoWi90ne7jtpYTFlJ7HifJbKLLPTMVh i8ynzlPi1hP8xRQBDrKWbMUsGgLiZ5OGJRjQ2+k5tKL2DLVJw2mYRg6hRyLnfYh1VRQp/G BjTNcSvCZVhINTbJiUity3Uelhn6lSe3C/6XPUxE5GA28MFZlDkS4SYoJPmChA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sA2sY7GsSaWealMpi5nDyGiohbzl5K1CZLzmDfmWslo=; b=HY77UmdIccQpMFo4uUUU5FzOXyMRC3Y5EjSjQvZjOV+ZSIIaEbEJsPr8F4mLj3jS+MgbNz nUeSeFqxDbfFrGMqfsMph9+9zaiOa1aFDJeMXZRJNlX5ksNLKeqSOVhpEmtiHTsP0NwV4h S4kMcyTNBYyfh/IiQzf0h831YB4RpQppnNbHf0ASluEPT9ZvhnekswitjhD0huNYbrFCpG CFATd3bgAOwj0EtfqBF8W3Of6+STUSRzzoUD0Z+IravT2UGnwaSEK0KBIswZA9btFc69mE mvsnuoWbe++5U8KXO2d0FLXyyen1FDNmR+T1amdUqCmYm5TkUUm0ePniAayZ4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904998; a=rsa-sha256; cv=none; b=CjFTRJ/kLKCodSEH2A/pHK7kBLxroAl721fmJn8JSf5VdRXpZauFMx4vyFUqA1o6y5/x1Y S6Q/px/47dbIaMjffUwN4U5avkHfhOwxkCEtsl74LGz0XKUMWilwqy2jUnT1t1Ed4niWwd AfjwTt8vxLDB9dhHEpKipT4YNNZeZRIDJCPy5gjKiSsUTo1Wg4rZuFGXGvmnarg0emJoft Cta05aY5lMM3gc0P+tX/C5XqzdI3aWvBOhV8FOgOQth38Tsxq4eR1225z3yGqrK4xBQH3M yGgiE9fvI8ARmRfM1RZEawH8luXHQ1QruAu4WekA2GNvOndT7yq0/kKLtofk1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdL2WyfzFQZ; Mon, 27 Mar 2023 08:16:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8GcBY045657; Mon, 27 Mar 2023 08:16:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8Gc26045656; Mon, 27 Mar 2023 08:16:38 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:38 GMT Message-Id: <202303270816.32R8Gc26045656@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 1d6ece4351a0 - stable/12 - pfsync: add missing unlock in pfsync_defer_tmo() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 1d6ece4351a01179e3a5ebbdb3fa2e6053a2d7aa Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=1d6ece4351a01179e3a5ebbdb3fa2e6053a2d7aa commit 1d6ece4351a01179e3a5ebbdb3fa2e6053a2d7aa Author: Kristof Provost AuthorDate: 2023-03-20 13:26:33 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 00:28:37 +0000 pfsync: add missing unlock in pfsync_defer_tmo() The callout for pfsync_defer_tmo() is created with CALLOUT_RETURNUNLOCKED, because while the callout framework takes care of taking the lock we want to run a few operations outside of the lock, so we unlock ourselves. However, if `sc->sc_sync_if == NULL` we return without releasing the lock, and leak the lock, causing later deadlocks. Ensure we always release the bucket lock when we exit pfsync_defer_tmo() PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit 844ad2828a35c434b893af4274b1f6c50332dd70) --- sys/netpfil/pf/if_pfsync.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 6a67b8fe3d80..a73b4ff95c6a 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -1831,8 +1831,10 @@ pfsync_defer_tmo(void *arg) PFSYNC_BUCKET_LOCK_ASSERT(b); - if (sc->sc_sync_if == NULL) + if (sc->sc_sync_if == NULL) { + PFSYNC_BUCKET_UNLOCK(b); return; + } CURVNET_SET(sc->sc_sync_if->if_vnet); From nobody Mon Mar 27 08:16:38 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdM1x1wz41xFj; Mon, 27 Mar 2023 08: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 4PlQdM1Qm9z4CMp; Mon, 27 Mar 2023 08:16:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JkMmS+aMurobtBhCGY9jOb8b+F0dfWMNshqHtlQH+N8=; b=HSupuv3wtnv9iZcxC7kVOoTT23sQw4SNtJl0Kk+byAte3Kq+dgyLWMLzxyzyw5sRaD9Zqn iouL7YR6+WuAA79O69zTwz/EG0J2DkwDLCYbVDODpDT1Lqva5iDqCeum+zbadPU3sXs7Z9 AsS1aEtkh57QXIlqGG9asllmIsljAuWxJWHYBjCm1npUtUnCsNNVz4SfMxSNUx3EY7noSg Q1avPuPjImkPtCKtKLMWGm/Vuv6mhBGUC+rrb10VPVp04/XyVQyIJfgMZZ/K2+qYZTA4Rn 4vFwJ3mbQ78gMFyH42pl8s0swrQZp5GFFIFWtfQkyz4vTDM8mXp10jyjzVQI1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JkMmS+aMurobtBhCGY9jOb8b+F0dfWMNshqHtlQH+N8=; b=ZqZ5YWGa47gxneYTBNsn50Z0pCVBdclBFzsWwztvwvFbT4ph26OzO66Dw8XuFepvFyma+6 skhVyac1bO2VIrwd95HAkjBwcMBe3XQNN7QxzHcwQ+wPQDs92p3R+IbbQeh7CYfj71Ipd+ LusH3hDO7pkeQzYZSxURLaS26/FmhIEbe3nGpMRw9979LXvE65VUH9LQbQFX4gvvoQ9iUB rrrskGcSm+3ZleNuqoy9v6HPvPp9UyKBFzVuvZGY2lo+dfIt/9eb9h3JtmOX27swhuOQoU vQM4IGM6lxKtsieoypvtV947CEVe52A2kxjZX24oXe0CVjIORygevVDKI9S4vA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904999; a=rsa-sha256; cv=none; b=tGW2+R3RRJFS0SJeDwQ3xYnpysxDip04pJEIzP+YwwZoYBXamhtit1fEioFefAHPdOriJ0 v3C9dgnso2aB/iV8VUkdlqU3QvdgSjjEDs4v/KfveopnnLhspnB7ecDn/uTwbdziYPUxK0 5qQvE/1yWz7XIcQoeig6tTqigOOnJWjEwHzmAv9n1AvVM9uXZHIEZVl7dp7fNwcj0oKrzh gwFWo/aVrs0tfy2pXUR5wRKb1a0SAV9PUp1wfwqLkwLSB1GjQ14EgXhvpc7nrb0x1M0gaL yOql+JTXPXp0pX/c0sXadZjw9go6A/DzhwA7i93yCKBPbr/kAbrbPF/A+Dda3A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdM0QlJzFCG; Mon, 27 Mar 2023 08:16:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8GcJ5045676; Mon, 27 Mar 2023 08:16:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8GcVZ045675; Mon, 27 Mar 2023 08:16:38 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:38 GMT Message-Id: <202303270816.32R8GcVZ045675@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 5d6b503ed097 - stable/13 - pf tests: try to trigger locking issues in pfsync_timeout() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 5d6b503ed097733af83003cf675f3d55c2b90756 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=5d6b503ed097733af83003cf675f3d55c2b90756 commit 5d6b503ed097733af83003cf675f3d55c2b90756 Author: Kristof Provost AuthorDate: 2023-03-20 13:58:34 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 08:16:03 +0000 pf tests: try to trigger locking issues in pfsync_timeout() PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit a6719858a48019aa54e1ea3be57d17fa88b080c6) --- tests/sys/netpfil/pf/pfsync.sh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tests/sys/netpfil/pf/pfsync.sh b/tests/sys/netpfil/pf/pfsync.sh index a5dc3716bbfe..748c0b2fcf29 100644 --- a/tests/sys/netpfil/pf/pfsync.sh +++ b/tests/sys/netpfil/pf/pfsync.sh @@ -584,6 +584,39 @@ pbr_common_cleanup() pft_cleanup } +atf_test_case "timeout" "cleanup" +timeout_head() +{ + atf_set descr 'Trigger pfsync_timeout()' + atf_set require.user root +} + +timeout_body() +{ + pft_init + + vnet_mkjail one + + jexec one ifconfig lo0 127.0.0.1/8 up + jexec one ifconfig lo0 inet6 ::1/128 up + + pft_set_rules one \ + "pass all" + jexec one pfctl -e + jexec one ifconfig pfsync0 defer up + + jexec one ping -c 1 ::1 + jexec one ping -c 1 127.0.0.1 + + # Give pfsync_timeout() time to fire (a callout on a 1 second delay) + sleep 2 +} + +timeout_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "basic" @@ -592,4 +625,5 @@ atf_init_test_cases() atf_add_test_case "bulk" atf_add_test_case "pbr" atf_add_test_case "pfsync_pbr" + atf_add_test_case "timeout" } From nobody Mon Mar 27 08:16:39 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlQdM4tHzz41xLg; Mon, 27 Mar 2023 08: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 4PlQdM4RrJz4CQn; Mon, 27 Mar 2023 08:16:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vrgYhoXrY/WHy9k1R4uuEiz//YlmQcBJd2QAXJKghyg=; b=yNsqKbZiz0AK3LBfsNyIxXb/7Uf3/YfaHXHj0P4mDzD/oywA1gMswpaM7Tp2sL2L6/EA0Z sYtXibdEKZTzevjTJq44tdmy0AkS/0fvHwy66u1pNIYvLrQINxdVCNpIb1tRbt3ZAZQFSs cittmKBafgK2RiMez/YkTVh/f/MfU3LSDW96CTdxlEtaUu0/0DajryzaQ+JCFSlqsz1gM+ C1+D1QHICgfw3YrBfdH6H6gu9SJ3kHdX466da/wlsyDZKKDyuLjf6CEaKiduN77Am8PDRF sNfPqoHB+JKGB3vRkWDgP6R0W/ohnvKhMpr/u9chV0m34axfiqfEocDOGtvzlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679904999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vrgYhoXrY/WHy9k1R4uuEiz//YlmQcBJd2QAXJKghyg=; b=WA8M/TDaMxEpkYMFDz983WvW0pMtsMQzBtGAZDGJdD0sRZIlBqS+Loa4QHmQzkUsIMYi5j e0G5Ju0xPXVCRY2pVzMpzXeRDXaY2erdOwBcDkpOTxgPb/NS1Z3G6CGC6sf8bnSlBoWSBd oGSEGl8xyNfO57kH3pUSZS/KAmmVDNMxl6dQZA4Jl97iB8PYJEya7GeEsxyoMlzAbsYdj6 WUdt1mjplT7a3jcphPl+rPTtXMWDW2CCh+fR65C0jHAc1bsB7AscUqmPl0sAp4vfioAPlb rFtdi+j7nP0NKPe+/DuyHYjmkuOCV7tdxOMjAt/Xn4BPSlzOMUnKnga/M5qQ7A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679904999; a=rsa-sha256; cv=none; b=OGupM1/EScWeS2rv8N/RDJzgZoUfpHgw/o3KBgZtdN1WMuvRFLnnY51rss7SB80Rr007Cz hNHmOorR68dH/cN8M8ezuZZs97HTtMEQhgjonFZ1glrLq3GoXdz5Ks5hWS/lup7IvIKsKv UCzU0HddYk9thfqTCWwMdEAXN6ZYfGkbMoFPgKY6u+7HTB/5Y8x816TIyJm8lMKUWpyBYz QVDtLGPFu7YKu6fSB6qcRN3MGEOM0tD6E/FP9N6VkECPlSnQdH3Qpl6CgDfKlGMgokj/G/ tsxTckVIXqI+kmz05sfxvYAbsBtkfA03xa2qjyqrUK+K93ZmGfFf0wZLwF2rqg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlQdM3RvNzFYk; Mon, 27 Mar 2023 08:16:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32R8GdrD045695; Mon, 27 Mar 2023 08:16:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32R8Gd86045694; Mon, 27 Mar 2023 08:16:39 GMT (envelope-from git) Date: Mon, 27 Mar 2023 08:16:39 GMT Message-Id: <202303270816.32R8Gd86045694@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 6b916bc91d76 - stable/12 - pf tests: try to trigger locking issues in pfsync_timeout() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 6b916bc91d76a4e91629074779a89b22207ea053 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=6b916bc91d76a4e91629074779a89b22207ea053 commit 6b916bc91d76a4e91629074779a89b22207ea053 Author: Kristof Provost AuthorDate: 2023-03-20 13:58:34 +0000 Commit: Kristof Provost CommitDate: 2023-03-27 00:29:59 +0000 pf tests: try to trigger locking issues in pfsync_timeout() PR: 268246 MFC after: 1 week Sponsored by: Rubicon Communications, LLC (Netgate) (cherry picked from commit a6719858a48019aa54e1ea3be57d17fa88b080c6) --- tests/sys/netpfil/pf/pfsync.sh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/tests/sys/netpfil/pf/pfsync.sh b/tests/sys/netpfil/pf/pfsync.sh index a5dc3716bbfe..748c0b2fcf29 100755 --- a/tests/sys/netpfil/pf/pfsync.sh +++ b/tests/sys/netpfil/pf/pfsync.sh @@ -584,6 +584,39 @@ pbr_common_cleanup() pft_cleanup } +atf_test_case "timeout" "cleanup" +timeout_head() +{ + atf_set descr 'Trigger pfsync_timeout()' + atf_set require.user root +} + +timeout_body() +{ + pft_init + + vnet_mkjail one + + jexec one ifconfig lo0 127.0.0.1/8 up + jexec one ifconfig lo0 inet6 ::1/128 up + + pft_set_rules one \ + "pass all" + jexec one pfctl -e + jexec one ifconfig pfsync0 defer up + + jexec one ping -c 1 ::1 + jexec one ping -c 1 127.0.0.1 + + # Give pfsync_timeout() time to fire (a callout on a 1 second delay) + sleep 2 +} + +timeout_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "basic" @@ -592,4 +625,5 @@ atf_init_test_cases() atf_add_test_case "bulk" atf_add_test_case "pbr" atf_add_test_case "pfsync_pbr" + atf_add_test_case "timeout" } From nobody Mon Mar 27 12:51:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlXkh5kqZz42Dlb; Mon, 27 Mar 2023 12:51: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 4PlXkh5GmZz3lkc; Mon, 27 Mar 2023 12:51:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921500; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=df40VVlMpYikuuXux63k+6AHg4ONjpKq62PvWREu8lM=; b=Y0JxwfEaRVUBZBSjECa9Ia9ChcZiEwWwH+wmihMu1jkBGJ120mB1Z4dsrR9ZekNwMZJFw/ 6PNzSDwriMHYd5YbYz/UNR9h2W7cK4CVb4aZk5I+axjNIPJZwfZc/3e/F+SYEXwxzcJDuj FI1MhaQF9TmGpvfyupnzH+fKTZeQ7+/0qvglMzmOVJARwUSzw5myHdtm96dGPrSgvi/PMo aA9pIsevH4XgLCcmW5LmAXAa/RWnSxPRWbKsNQMoJ3gSY9Y7D01+X0u1wBHCrQ4Qs8iuDH zvwP1y0ScPU5+5G4X5JXWkTzE79C4tTfr02YpecNV9F9GGt9lvmp/Mt0hy/HMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921500; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=df40VVlMpYikuuXux63k+6AHg4ONjpKq62PvWREu8lM=; b=CeUQR/zocWML5jQ3P0rLo3NIWdg83BLIUSs76jgukOTqrWwq3PTDG9ey4HHdPn+OgsQNNE MUqwYxfWh1obKFzPHbBX43d51kEQlp6vrS7A/gSqCXzeGpGEhKFQAzJEgln4p1Va5T4i+h IbNGtUcCDm5ze0X3fP/2tT9pmvMxcxeYwXDivXwJYUcp7q7G087d3fSxqBxpEIz98Hxk0B hSic4E+IOhBMgumOWNWg9W8YAlDQL2lYpqHgYueaLTCjuVX2CY94fUs+NonIhppP/PA/X6 Uk9YNZ7pn4IFBDhwwWwvyJrEVtCgQun9lVBhndFW9ECvSvkXx1soua4u7KUV5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679921500; a=rsa-sha256; cv=none; b=lysf9r2VhvNhy5TbhHgINeETb3ItYsI6HS6E3xrqXmog1GtrF4Khxr2Kl9rJYh/jQc9Q3+ HvWiXXYnp/c8ud80oL7OMTWfkTOkYPkUO1XbXsa3eIuaxWj4ya4mWsoH1Ha4mwcsERahiP Y+WqxFu7dNqDW78RPW7Y32drbFEF0nxyAnO829fQ8AhUlhzWklH8MDkxM8reAmd46gAxkw IAIQx2eSiazd5/YAkt/jA6EU3ptq7/wWblCSay+toqba2jG7CAQb+x8CvZt9N911fNVsee It6BnhEcNS0Ec/FUaubO/RPRRyguNXcJk4uchEhns6okllnnBAQ61JHtj9bajw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlXkh4M5nzN7n; Mon, 27 Mar 2023 12:51:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RCpe3o005772; Mon, 27 Mar 2023 12:51:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RCpe8D005771; Mon, 27 Mar 2023 12:51:40 GMT (envelope-from git) Date: Mon, 27 Mar 2023 12:51:40 GMT Message-Id: <202303271251.32RCpe8D005771@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 2d7021fa1846 - stable/13 - netipsec tests: Serialize List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2d7021fa184626ad01a86a96df755a1af45e6426 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2d7021fa184626ad01a86a96df755a1af45e6426 commit 2d7021fa184626ad01a86a96df755a1af45e6426 Author: Mark Johnston AuthorDate: 2023-03-20 16:15:32 +0000 Commit: Mark Johnston CommitDate: 2023-03-27 12:49:22 +0000 netipsec tests: Serialize The tunnel mode tests use VNET jails and reuse jail names. Until this is addressed, serialize them. MFC after: 1 week (cherry picked from commit cc9158d74d306fdbee2f5f014e5d267eca0aa6d1) --- tests/sys/netipsec/tunnel/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/sys/netipsec/tunnel/Makefile b/tests/sys/netipsec/tunnel/Makefile index e80374940e95..3bac4d8cb0ab 100644 --- a/tests/sys/netipsec/tunnel/Makefile +++ b/tests/sys/netipsec/tunnel/Makefile @@ -14,6 +14,9 @@ ATF_TESTS_SH+= empty \ aesni_aes_gcm_128 \ aesni_aes_gcm_256 +# Each test uses the same names for its jails, so they must be run serially. +TEST_METADATA+= is_exclusive=true + ${PACKAGE}FILES+= utils.subr .include From nobody Mon Mar 27 12:51:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlXkj6zkJz42DcS; Mon, 27 Mar 2023 12:51:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PlXkj6CPGz3lTG; Mon, 27 Mar 2023 12:51:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921501; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tMkFIwrELLjbflf2t14GM+ugFm1CpwYYmGRfXgLmLjc=; b=a19nUOQG5bT90TqXBqWE0lZaoGC/svLWIJ7++Hfdg2YVJEpa7aLUJwEzOD1nm9/f9oDe50 XbqzIGTAl4qS3WXCGCAkAhw1J4np6kDktD/m5dv9Vco+FUEWmYjYHmM1ldN2WOmpg9I4oZ 7gVM42Yx8qPBnDApY6rMv1uIEx1YQaiWTDVJUA2MttXzFcLry5fNBRJiRPd5X+avIsXllx IZJqcn6jlZNhNm2Uk3Yw1ExSUzLEUzYT3qPOqQQnAIJXEB/J0N/9RDGxZHDtZ6Oq1R+yYz vsZGJon+IZaw4Su4jc+Em6Egq27vFPGpgPA6MDGFB6wksSwxUs0UbP1j0cIKeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921501; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tMkFIwrELLjbflf2t14GM+ugFm1CpwYYmGRfXgLmLjc=; b=BHxiyNTsAe0YOm1feZhgs83LbJOnyCfmx/zWu56kWaSmEAbeSwfFoXN5HSqYkPs6aI84fW zs4eDiF+yMuV8oehXVUrORh/Q7jnLxdsXvrvIVqa4vu+0W+q3fHWzS7HM6zh+W8wVOKqGg bUWgxqKslqGSlvU6b1KxAAt3XaP7y7e5Z7ooAvet10HdJwddBgf7qed5jJ4gGi5KkdGzwz daA9Jh2TFkW44C+vYB2emyA0a6Z9Z2InWVuiXRdamDcsvGPNqJCJyBrYXhQLTXfLMp2MUy yrq7N/oS/WguiOctwNyMn2Gh8E0RltTV2od9QBEQ3TsIbVBJhcBpv8kI/KZ8bw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679921501; a=rsa-sha256; cv=none; b=ee32Ik4wHgJMCRLKqCkZZgKC21IvuEOZYFGok24IZPsl9RXI1iNVjKQHbsQn6IjEpq7/uU 18F3oO1AKELR8zSmVPhDjJhfm6r7XNdp+TMudhUy8KvI7d5Y87FWVFyViNT6edHlC1bodV zzYALePzs7J7RxvWCm2zgdb/G32wlqG1zxp5K5F5hVvM7tUmz2G11vhwM7NmCjbPoLonzQ o3Z1pZc2Fxn6brGmPgCdjZ1BcwrrDbG6DVkJucf7VUfxXBPqVzlPP+gRykSpUnyQqcZZKT JAleyDZCG2h0wLn60ZNElBVX44Aq4ZSstOXdZss/jvJ7nVTf2LTafFAwg8iO5A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlXkj5JQyzMrW; Mon, 27 Mar 2023 12:51:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RCpfDv005791; Mon, 27 Mar 2023 12:51:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RCpf9t005790; Mon, 27 Mar 2023 12:51:41 GMT (envelope-from git) Date: Mon, 27 Mar 2023 12:51:41 GMT Message-Id: <202303271251.32RCpf9t005790@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 3813808b1f2b - stable/13 - libdtrace: fix indendation in dt_printd() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3813808b1f2b492601031128179881434b930b5e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3813808b1f2b492601031128179881434b930b5e commit 3813808b1f2b492601031128179881434b930b5e Author: Christos Margiolis AuthorDate: 2023-03-20 13:34:20 +0000 Commit: Mark Johnston CommitDate: 2023-03-27 12:49:30 +0000 libdtrace: fix indendation in dt_printd() No functional change. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39145 (cherry picked from commit 3afba490c1266200e9fd899f2494aa47f71c6095) --- cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c index f028f99ccf64..2b85dd2b26b6 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c @@ -4767,8 +4767,8 @@ dt_printd(dt_node_t *dnp, FILE *fp, int depth) dt_printd(dnp->dn_pred, fp, 0); (void) fprintf(fp, "/\n"); } - (void) fprintf(fp, "{\n"); + (void) fprintf(fp, "{\n"); for (arg = dnp->dn_acts; arg != NULL; arg = arg->dn_list) dt_printd(arg, fp, depth + 1); (void) fprintf(fp, "}\n"); From nobody Mon Mar 27 12:51:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlXkl0Dfcz42DnH; Mon, 27 Mar 2023 12:51:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PlXkk6nMmz3lt7; Mon, 27 Mar 2023 12:51:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uQknzjTrng8HWo/5K4HCONWQlOJKq3BZkkNvzmpLwJI=; b=qy2YpKF4FahO8zOQOhzpvQ7YqZYiVdigMnfAzt7AtYDsQgtTZqymYmDxSIAci5idDNXqnQ 0mefAxRHkPJivHCDPbaFjJZwR1Ehh99a6M/nVDCHbXucGDKAUmrwBargz91OLZA3w19Cie AdThFDku64WufZIHCJSOzH5/vrGZ6Zj0kkQDKjzTbbjMWl6It4X5jcSs5oe5SdX4P7Dmrp unS0Oe8UJWZIv30JI/Fmh7fM3ez+u2Z6iVzum3HLiLOUQ2t0mnju6awvjpfbm/DwyCDGrJ T9RRdKACBxmvNQTpI/v22NY/lW5F9/MboPBfTMVcITe8bBSjivrpFFG64U2u3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uQknzjTrng8HWo/5K4HCONWQlOJKq3BZkkNvzmpLwJI=; b=P5Nir4eDNte9lbv+jzTIXQE++nhiclHNIQMTc3JUZYkwrA8Kd3PfKjhcns4X58GdLIYhnW 2CmujgnvZzfalAlVMUXEpLgt67qU/vfnsTmEp8EwCaW7X3zP6uXOG9KuHbMz/cRXx46mw1 K4W2A/zT2BXx0TeBMASzzW2OcMWNqlHbar5g2loFpZSrj4zKV6ZaQVab0Xi8E8ujSdXS5y 6Mex9Og3MHwPKfoDRoEUw/G/VGD9PhT4G9qUqJFXdu5lhZlMtCrO5Vi4S1V0NpeVivrncU 43Xv1l7llC2DmQadP/DK85I6tUC3Jpksm3l1u8wyTFAl6bWXITJtTgIjOOEeNA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679921503; a=rsa-sha256; cv=none; b=txcpGXzC1WUrpO8ysFaVk9092vkrosdjNTPuLXfYTA0eJm08dtoTk6ht9lMZEz3kIoov6j eJivo47CwFkrA43IqUCGb+gPnKv5zt75HS0lIPZqwH6Ib2GHT0jpbZFEaEzhn4A9C1fhG8 LDTEeuuR4RCbpJFDYyvtWIYUrW3Ckkmed9jcEXjuoH1DnKVy9KlAunRhoXgeHumltWRjV8 ZNbVu2PX++iogkduysZD4xR8ig3eyqDfF/TtfwYtuWIV33T2kTiMZYEIXY7Ft7R6xfgrgL d5P3TA1jc5hydhKPP5U3OXdUmBmW/LtJMZTj+2cF6nW/d6RkuoqJRHQ1FZxQ6A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlXkk5qQXzNY7; Mon, 27 Mar 2023 12:51:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RCpgmp005810; Mon, 27 Mar 2023 12:51:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RCpg9X005809; Mon, 27 Mar 2023 12:51:42 GMT (envelope-from git) Date: Mon, 27 Mar 2023 12:51:42 GMT Message-Id: <202303271251.32RCpg9X005809@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 743f4ba7e3bd - stable/13 - vmrun: Expose bhyve's -G option List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 743f4ba7e3bd647f77f0e613de67005ade5db51f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=743f4ba7e3bd647f77f0e613de67005ade5db51f commit 743f4ba7e3bd647f77f0e613de67005ade5db51f Author: Mark Johnston AuthorDate: 2023-03-20 20:23:26 +0000 Commit: Mark Johnston CommitDate: 2023-03-27 12:49:39 +0000 vmrun: Expose bhyve's -G option MFC after: 1 week (cherry picked from commit b59f9d03cd87b721e22e1d2b37876d3d2a86a3f1) --- share/examples/bhyve/vmrun.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/share/examples/bhyve/vmrun.sh b/share/examples/bhyve/vmrun.sh index c3cd05356eea..9770ff459a67 100755 --- a/share/examples/bhyve/vmrun.sh +++ b/share/examples/bhyve/vmrun.sh @@ -58,7 +58,7 @@ usage() { "[-d ]" echo " [-e ] [-f ]" \ "[-F ]" - echo " [-H ]" + echo " [-G [w][address:]port] [-H ]" echo " [-I ] [-l ]" echo " [-L ]" echo " [-m ]" \ @@ -76,6 +76,7 @@ usage() { echo " -f: Use a specific UEFI firmware" echo " -F: Use a custom UEFI GOP framebuffer size" \ "(default: ${DEFAULT_VNCSIZE})" + echo " -G: bind the GDB stub to the specified address" echo " -H: host filesystem to export to the loader" echo " -i: force boot of the Installation CDROM image" echo " -I: Installation CDROM image location" \ @@ -132,7 +133,7 @@ vncport=${DEFAULT_VNCPORT} vncsize=${DEFAULT_VNCSIZE} tablet="" -while getopts aAc:C:d:e:Ef:F:g:hH:iI:l:L:m:n:p:P:t:Tuvw c ; do +while getopts aAc:C:d:e:Ef:F:G:hH:iI:l:L:m:n:p:P:t:Tuvw c ; do case $c in a) bhyverun_opt="${bhyverun_opt} -a" @@ -165,6 +166,9 @@ while getopts aAc:C:d:e:Ef:F:g:hH:iI:l:L:m:n:p:P:t:Tuvw c ; do F) vncsize="${OPTARG}" ;; + G) + bhyverun_opt="${bhyverun_opt} -G ${OPTARG}" + ;; H) host_base=`realpath ${OPTARG}` ;; From nobody Mon Mar 27 12:51:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlXkm1BdPz42Dlh; Mon, 27 Mar 2023 12:51: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 4PlXkm0b6Tz3lqt; Mon, 27 Mar 2023 12:51:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921504; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/YcDFNyjdArFzxRPHgJKU073pa2flx6VUH+0WKi4LEc=; b=aJkf7svNVqAwHGKZ1j5N3GLWFu1A2I0KmNbKPPnh86RXzAuoiIGXxtjuAYqm9GcUSIJPZ+ 6AidiMRQ9tq4ddkgoZOWKPVbldB9MG/yhvTs7FwHbxALKzvHobsYgI67W4VyqzE1yecopO 2O+KyeMpbCbUzGUAATVPuEJ0RHQzfcN1P2hYCQyFOwQzfdKC+SEMJkFflol5w42uNCADT9 JvSrfTMW8jXI2KMqIAobRGkf8M3HyA44Ha/ll0DfjUHlfMMiW5D+XOowItw+Krx00CGg/u MD9H1wvAZRrjRgiuoXETi8jnENQajgYhbHKPpyQEGsd3jufNkzIIE4YXLXneEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921504; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/YcDFNyjdArFzxRPHgJKU073pa2flx6VUH+0WKi4LEc=; b=JMqJDt+o7U6+I3iTW69nAoBv2eCBklQyWa32yiLhNZNW7Xot7vL/Ggw9nC5tS+XjlU5o2d B9GfF7cOWp+X8/Bajs1XeNimbF5JxporDUxxjeo+RJ/8D0ex2vDZ2028xsmPd7DYzyXMfY szydHQ0AuT4Iccw33gnjR1N/wiwDT4l43sG8+jry0YZG+ZphWJxdE67iHr5d1hJRh8RYo4 A8dM6NzkT8nnCWbJM7yXS6gpVebs9flMbiVTrTwK/3nqV2vZf6lJYEUfG6NLWu1z5lvdwd 5Cj3kyPZM80Pt2Po588ovewxSShsou25dJ80QS3I3J/yhtM+QA1lVCdHtUAe7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679921504; a=rsa-sha256; cv=none; b=ng3HTNj40KYXYiHLcwJoL6tmJwcb074dstwTMzfmOnc5o1DEWArBo7YLdVRGFdfQJbQSVj LhB0vU6bl6AREI2hnL3LNd1z/pfosGilHrZL9I+q+zdeMNuMgc6EREYVFiJI2bdrddD0bE YAw7nh4bl5pIurs/ynt9Po/XbJZjOBzi9vaZxACaCEQGsM012pLUJeQRsqrtaHGPTfLoB/ VnYSRKLCSDzP9/49stwKSFt467O7Db5dlp3EpA2otiZJqeXcrW6gq/RolicRE2/f4Bm6El 0IHP8L9YsE/p16EN3RtkLerV4vkJ4WK6IS8+YsdKbRu96w1ZFvkzxrUwx0moPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlXkl6p3FzNSM; Mon, 27 Mar 2023 12:51:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RCphiV005829; Mon, 27 Mar 2023 12:51:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RCphUD005828; Mon, 27 Mar 2023 12:51:43 GMT (envelope-from git) Date: Mon, 27 Mar 2023 12:51:43 GMT Message-Id: <202303271251.32RCphUD005828@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: e6b1b944b5aa - stable/13 - netgraph tests: Serialize List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e6b1b944b5aa1950834f27a8ab9188bcd736844d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e6b1b944b5aa1950834f27a8ab9188bcd736844d commit e6b1b944b5aa1950834f27a8ab9188bcd736844d Author: Mark Johnston AuthorDate: 2023-03-18 14:57:36 +0000 Commit: Mark Johnston CommitDate: 2023-03-27 12:49:58 +0000 netgraph tests: Serialize Some tests share names for netgraph nodes, so they cannot be run in parallel. MFC after: 1 week (cherry picked from commit bad8f86843fa34bf4d4d2bfb8183331c02ced87f) --- tests/sys/netgraph/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/sys/netgraph/Makefile b/tests/sys/netgraph/Makefile index f397e66a22bc..5a5e2ba13081 100644 --- a/tests/sys/netgraph/Makefile +++ b/tests/sys/netgraph/Makefile @@ -7,6 +7,8 @@ BINDIR= ${TESTSDIR} TAP_TESTS_SH+= ng_macfilter_test +# Serialize tests since some share netgraph node names. +TEST_METADATA+= is_exclusive=true TEST_METADATA.ng_macfilter_test+= required_user="root" TEST_METADATA.ng_macfilter_test+= required_programs="perl" From nobody Mon Mar 27 12:51:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlXkn3YHJz42Dll; Mon, 27 Mar 2023 12:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PlXkn1cCTz3mJL; Mon, 27 Mar 2023 12:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y01ZkfQoaloapD+Ofky5J2IESwmkR4Sy23/xTFu0X4g=; b=P42dx4AnXB5OsJVPvvuiwi9c6WYIn0dbacbur+REaHaiB7OeNqt0AGPOLmIhg6y3pI8HPP zU4NNF5jrQSsGW5sHhVLrhSENgfgv5cSIbOdlXzobnTN3ebGV7iuGHLAKFNgYWrlnirNKE yf85PrVN200sTQZP54sDqeK07s9GjRa5JJ2px6au45WWsCdqWKmfjY9xnDS4IZoKjQ7cLs aCfb0gYv4M6VsFPX7shyTj/0L1ULS5eraSCW2qzx/u3dGyp0Ged00JZCExqt++2+V/eYlK vsZcH1m3nFlKM8tqQ97DJuvarx8u133qzeDfGFSGb7OUepiCRXSVFvO+eIWbpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679921505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y01ZkfQoaloapD+Ofky5J2IESwmkR4Sy23/xTFu0X4g=; b=hoe/dVJKLa99yjuhUA+E0TnnqbPKQopgPvW6AM3bN339WcOQKhSoQwGV6pixbWDkAxKMkV whDmmtSMKHvieEbXzX74OSAAo7PjgSCOvzezVpwMBqQSI9Klp8OBgtRieo2vnLSP5Z3BN4 xcrY/WDEMYziU94PQz1LJk7oVeqqq+OppE4nmDD7TscumhY6VOS2Hxb0952XKAYDAs1YWI vCutRUCysvmmpsepCY/2hnFtvJ/bwkuZzVLtzHAlHpW+VssQBo9rKmtzNTEU4zJR2ltrzU obpBjdd6GUgM2RVi3LAD43il3modHjkxz1DTDNxsz0niqllbowCphNxIljQf1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679921505; a=rsa-sha256; cv=none; b=M/8h/bTeLITaN4N2H8i7QEoOiEsMKEJC71YZFYV0J5COyyIDTPiqn3LDd66n5QeNsQbCuo /ObP8q1CnRVB8XgWlYzlekIWKJYnVu/RrBBo9BwLQk9tOZJGToP/VahsHpRGB+gXh6Yez2 dK8m9KJeOVTgZn6BD1JqXbH9rkpYj3HSOSyC4U0v9GwmG50naERxnfCA/uj7UGDTWZmwFU KE8hjTyG1nZ99F1cuHSz2q0HHZ38CqmgtDlC4Ipc154q7uXKTuk0kPG5/KQJIaTqNuB+hX 07sjN2AKbDi0jZkplwmmQm3zcMcIfBasTK88MYVzfVSqph1YzQNdI6v8tCiQDQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlXkn0cGmzN7s; Mon, 27 Mar 2023 12:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RCpiTB005848; Mon, 27 Mar 2023 12:51:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RCpi1U005847; Mon, 27 Mar 2023 12:51:44 GMT (envelope-from git) Date: Mon, 27 Mar 2023 12:51:44 GMT Message-Id: <202303271251.32RCpi1U005847@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 3b6598f8742c - stable/13 - bhyve: Sleep briefly in the VMEXIT_DEBUG handler List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3b6598f8742cdab079cbce5485e9ddffbacdc1b4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3b6598f8742cdab079cbce5485e9ddffbacdc1b4 commit 3b6598f8742cdab079cbce5485e9ddffbacdc1b4 Author: Mark Johnston AuthorDate: 2023-03-22 13:02:54 +0000 Commit: Mark Johnston CommitDate: 2023-03-27 12:50:12 +0000 bhyve: Sleep briefly in the VMEXIT_DEBUG handler As of commit 0bda8d3e9f7a ("vmm: permit some IPIs to be handled by userspace") and commit 9cc9abf409cc ("bhyve: create all vcpus on startup"), we have a misbehaviour where AP vCPU threads spin until they receive a SIPI. In particular, since they are "suspended", they simply call the VMEXIT_DEBUG handler in a loop, but the handler is a no-op by default. This is tricky to fix since the gdb stub isn't aware of whether a given vCPU is supposed to be running. For 13.2's sake, introduce a simple workaround wherein the VMEXIT_DEBUG handler sleeps for a short period. This ensures that host CPU usage remains sane when VMs are starting without penalizing users of VMEXIT_DEBUG too much. Reviewed by: corvink, jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39174 (cherry picked from commit ef0ac973dbc8c54214ac8c61891abd832cd5b700) --- usr.sbin/bhyve/bhyverun.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 1becf998b976..5c8265571be9 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -911,6 +911,11 @@ vmexit_debug(struct vmctx *ctx __unused, struct vm_exit *vme __unused, #ifdef BHYVE_SNAPSHOT checkpoint_cpu_resume(*pvcpu); #endif + /* + * XXX-MJ sleep for a short period to avoid chewing up the CPU in the + * window between activation of the vCPU thread and the STARTUP IPI. + */ + usleep(1000); return (VMEXIT_CONTINUE); } From nobody Mon Mar 27 14:13:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlZY50xWKz41bGn; Mon, 27 Mar 2023 14:13: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 4PlZY50MPYz40Lm; Mon, 27 Mar 2023 14:13:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6g2g1puWrkBfswk8qW+rmMFCPL11adeKzGvK1lYoPQ=; b=QKM9jEi+LnZmSUvLwP9kY9GrfgyRVDwJQKBUOquxF6jP23ULEyMulRbLfF6FMOQ2kn1j1i JhRMjVgk8apC59zZHoqcZERkpV3KnAq9xypOdcx3vu8dbYQWXRhCS2Az1F06wVy4dzalRE R0Rva2yxUZ7Woc6bloFfS5FpoIn8tX5qwfFY0bpD3LiaBfzzvVhb1bXopmj5Rlp9aLsXsy dUhoExffuKnaeLJ0vnD6OF6afW3Kk7bRrgtNFDOve1uOHNnc6mmhAEBLjvmYfIe1JHPoUq oZbmKXsd2Q0iuwWivIlEvi846lbeXGHP93XT5QLeisxh2VyCn1JxMLG5XdEpkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926409; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6g2g1puWrkBfswk8qW+rmMFCPL11adeKzGvK1lYoPQ=; b=E5GvvPphhE0+RYkf6P+LY6W7lo8I4v0REd7mWSfGAjc3wcOpEnHqlneGGC3dUEDu5dfJI1 NFZSFGbmwosYAPQgPIX+6i7YFl3e/x2KB95yAG8IJXMjqTC7tn4xHq2SxPL4ES+L2lEL4Z mA23Pe1HS1JTdcZ4X8mZaMqptLrwiXMJ1NQi+yZ9cMQjWfxnQ53gmQsI5ni3iioxwiAHwv hAVZe9AtisnNUdUsu93irABpxuXCmqAizOmK9eXT6pGtlk4genKDXsdnmpEVU4GuWOm7Lf an/BeKJ2YHhR1hivoG4WgIzx5m1C7P9eMGI0gKDnr0NbUB+KnVXSBUgj2EOykg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679926409; a=rsa-sha256; cv=none; b=apzO+jAboZ3xioEVCucm/KMXU4F1wME0KFNyGFSqi6+smqogSMtqRhduOwA7FgNPu2hUsG cZaqYLdpSf7sLT6jqOkPcyNIJsM21IRi5zm8FOWXRK2ZRpinSgviAvx3l7uXGzlBjyhi5a giYHBbOu85hEDGWg7LmvVHpx6vgVpOQR0DTMN9YICHaU+gIREmj0z6Fty3tsX94blrPQkF oV4UrCTat7x+i8mUrAvw/j15RwRciQ7XqCud0cSlUxY2gRUkaGiEodyP3B0elG7mhMUh4s pMQRXATHHDd6BG5X6bj5+9RckkqFZCGMvYBAz8EG8RPapfSWiJjyFqv1WRL07w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlZY46V1GzQW9; Mon, 27 Mar 2023 14:13:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32REDSDQ040588; Mon, 27 Mar 2023 14:13:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32REDSuI040587; Mon, 27 Mar 2023 14:13:28 GMT (envelope-from git) Date: Mon, 27 Mar 2023 14:13:28 GMT Message-Id: <202303271413.32REDSuI040587@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Glen Barber Subject: git: b44388ec0273 - stable/13 - pkg-stage.sh: update port trailing version information List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gjb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b44388ec027311eb2ee163b86bc986d217a164b5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by gjb: URL: https://cgit.FreeBSD.org/src/commit/?id=b44388ec027311eb2ee163b86bc986d217a164b5 commit b44388ec027311eb2ee163b86bc986d217a164b5 Author: Glen Barber AuthorDate: 2023-03-20 14:36:51 +0000 Commit: Glen Barber CommitDate: 2023-03-27 14:11:24 +0000 pkg-stage.sh: update port trailing version information Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit e4e139b828a2278b44496653c1cd5e6298afb3c6) --- release/scripts/pkg-stage.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index 4e9617184243..e2a51e4ef2f0 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -14,7 +14,7 @@ export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES="archivers/unzip devel/git -emulators/linux_base-c6 +emulators/linux_base-c7 graphics/drm-legacy-kmod graphics/drm-stable-kmod misc/freebsd-doc-all @@ -30,7 +30,7 @@ sysutils/tmux www/firefox www/links x11-drivers/xf86-video-vmware -x11/gnome3 +x11/gnome x11/kde5 x11/xorg" From nobody Mon Mar 27 14:15:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlZb04Llcz41b2n; Mon, 27 Mar 2023 14:15: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 4PlZb03cHQz40q9; Mon, 27 Mar 2023 14:15:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SbHO7bpbkG+LM7CZ4a/IRduUmjhFNiYNFXF99xYTMRA=; b=mOpVr3M8Qe11AFlC2vCAK85h8uoTx0TmP7VhyrU8SMoD6ONKleRXeJUysFTNBp017IV/O3 34hxYhVnzGWIie4otJoRQ2b6DKpMcjqCEF9tIv+nLn9dRuhhsv0b4bhGHZa1hhiDIbEJ8N JfYM2nIe832Phq4JlKKP01XoOVaXk6Xoyw25cV18VVPw/yH2xcbwr3tmf+3/hAs07VU+PB QpuAMEkcW1mpbQo0+6fZboIj8x/eZlukdwJ9GSCRsO1dZHXWxrZBH4VjsVhZytuxs4k9yH evOnf1/oYarD1RxyJmyqZ5nziKb9Oj2HJGHFZM6UP5+YGVZ+yuOYXEtsh+WRAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SbHO7bpbkG+LM7CZ4a/IRduUmjhFNiYNFXF99xYTMRA=; b=yuom8p9XA3V3fgFTXds8ZnFFdhxU+4jaUTYeUXO6jg/tsSW2U4rZHgXepoF+8n4RznajBF 5VM/AhOH9LltParMNQDiguOT8GdZ3Ti9s97spHu+3KHqq1U9jzZYgJ2U4h8BkNW3s37CKX 8uW1jFLTBFGkX5X873vEuWXuFi7W0RS0PSV/u5+3LErzLO1goDdE1rZivkXcgxPqYbKJTX Ip91JJ0JE9GXwq6+A7ouME7IaomABqpsdiMsdqTjAul62vsSISowiMfesEL33VhraVoOIk UM7Nz9Dee9Gq7KJl2qJHI4yNL+mXe3htpQOFNROsb/Zh3leIbu9Qj/MmzAzVeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679926508; a=rsa-sha256; cv=none; b=eA+lmU8SoI62YrFwWPpOhNqQrmEccZQo+FflrG4gVIZRrSu4VnvGiTVvCXzolziiqBsizt JYim9ehdB2dNsORnStTfPln94EzopbC0tORCNPtkXgLtZH+oR2TZ+SemYs+G+LjtoMvuNp PgCJmZYOIaQ3pDQkmYlD6EESp39BCgoXoaQmiT7jliwdulyTth8v/EgnzL+4fh5sMP4vZh jY0PIDp9ZpLoF2MN7FApCpV74SZrf4P1uthekwCJO39PuKuU+A8xwXXRGNFP+wjplzBt8t vOb4C57n8lkPBqJCQalHxIB0IAzDZ0W4PMsm4U8vF29tFQDS1KcSJgAu/UzIBg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlZb02c0QzQZ6; Mon, 27 Mar 2023 14:15:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32REF8kV041015; Mon, 27 Mar 2023 14:15:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32REF8wg041014; Mon, 27 Mar 2023 14:15:08 GMT (envelope-from git) Date: Mon, 27 Mar 2023 14:15:08 GMT Message-Id: <202303271415.32REF8wg041014@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Glen Barber Subject: git: 81b340dd5b2f - stable/12 - Replace subversion with git in the installation DVD List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gjb X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 81b340dd5b2fded442b0928d51b92be64b61a416 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by gjb: URL: https://cgit.FreeBSD.org/src/commit/?id=81b340dd5b2fded442b0928d51b92be64b61a416 commit 81b340dd5b2fded442b0928d51b92be64b61a416 Author: Alan Somers AuthorDate: 2022-05-26 19:08:34 +0000 Commit: Glen Barber CommitDate: 2023-03-27 14:14:06 +0000 Replace subversion with git in the installation DVD (cherry picked from commit 55c8093f733242cd72341ba1126637047cf16ca3) (cherry picked from commit 46856dbac668fd8258286c78c7192654ba00b723) --- release/scripts/pkg-stage.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index f1bb19636f75..4e9617184243 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -13,8 +13,7 @@ export PKGCMD="/usr/sbin/pkg -d" export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES="archivers/unzip -devel/subversion -devel/subversion-static +devel/git emulators/linux_base-c6 graphics/drm-legacy-kmod graphics/drm-stable-kmod From nobody Mon Mar 27 14:15:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlZb15tBvz41bNt; Mon, 27 Mar 2023 14:15: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 4PlZb14tfNz4127; Mon, 27 Mar 2023 14:15:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IsGB3OJUNnwMtC6JyvGF/fWcZ+yTpDAeuebtNilGf9I=; b=wtYBFydgE5XYl1Mf0q+gYoHchTwSpQ1+yUN6j/S08kjQFdC5zAo8eXL2rmOkzJzqW3Z0s5 XyjCXgpnXKmkg769b8UbeQ7s+m3mm+5oymVZ3y4H5GkKxiN5UzGbjx1dYmqgmft/OOZG4L auyzErR7ATYlkHI+vwU+1FmpnT8LeiWMNm9UmGj4EZIgAUfQkGC4EytJEJ2GWYeL4PBmZc DC7rIqlKdtxn6ok6J8ndqTj7zqQAOfGnhwrG2iV/vbGxxDFlkLr+NNZ3w8ZAi2ubr4RkGX 0/5clrvrph8Ifn0BvEw301d4/eJgHPF/mY/YX7huIrWimtRmXCZ91pTS7B/keA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679926509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IsGB3OJUNnwMtC6JyvGF/fWcZ+yTpDAeuebtNilGf9I=; b=of/TyjQxjNTef1dceHbjiO7WDUFqPJvodsO5jPX8KzX4EV4VAwCxri3Q87afQGGTLMWRMk 1vB8sx9X7xCCy4WmvX8HxDclyy8x4RS0yWNSK6CID2onvx16y42rVXKZz+h+2VExbWLlvo jZog+fgNggQiV0ZfTXD4KSlJ6Ugc0uj2MkYi/w7OWR97LeJmUf0/7eTEWnqDxIv9DrFInU NlILi8gcu9h6P0haaGcrQT5lZRjoawFWyknptIgWtLRP8XS/gGSZ82T2kY2Q8UiAITrsWb Y1Na/E/jbxtCwpkia/csUU/SB4Dr7nnLjIuZ0RUpfB9KiJw1KmV9pLMkNUAg4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679926509; a=rsa-sha256; cv=none; b=y2uY1kO53rnVg3ApuVJYe1OciT+xkETOy4Y/uHhY3K1uX/rhV/5JbKglv1QkLLCuF1XzNf cFBflu5A3ddzD6bMbkE60yNw7twPJ15ymv/+tPrxn7CJ7onGHyQecPvyexbmVU4ztuTxt9 Rl26vDbvwKm8jSrIlDaAF6qpSvEbvvYf2CJgnlfF7nEZBAk2XY54cIYD6Anf3+KxtoNEa5 ENLH4eAdTz2Qk0ra0H6wisiVLzZ7JbLbiU306YVIXOQyaRhJx7+55+riYLM6pWitIM34Ew IKFEnZ0S4XwR3DflKVPVkEyDD2oOuxirNtgWL0VgyE7MbckB5Y0p9Wm+lCX9kQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlZb13mFLzQWp; Mon, 27 Mar 2023 14:15:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32REF9Pj041036; Mon, 27 Mar 2023 14:15:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32REF9bj041035; Mon, 27 Mar 2023 14:15:09 GMT (envelope-from git) Date: Mon, 27 Mar 2023 14:15:09 GMT Message-Id: <202303271415.32REF9bj041035@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Glen Barber Subject: git: d16d0db0107b - stable/12 - pkg-stage.sh: update port trailing version information List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gjb X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: d16d0db0107bdf6acf9dfa9017e628a67cd033f0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by gjb: URL: https://cgit.FreeBSD.org/src/commit/?id=d16d0db0107bdf6acf9dfa9017e628a67cd033f0 commit d16d0db0107bdf6acf9dfa9017e628a67cd033f0 Author: Glen Barber AuthorDate: 2023-03-20 14:36:51 +0000 Commit: Glen Barber CommitDate: 2023-03-27 14:14:20 +0000 pkg-stage.sh: update port trailing version information Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit e4e139b828a2278b44496653c1cd5e6298afb3c6) --- release/scripts/pkg-stage.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index 4e9617184243..e2a51e4ef2f0 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -14,7 +14,7 @@ export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES="archivers/unzip devel/git -emulators/linux_base-c6 +emulators/linux_base-c7 graphics/drm-legacy-kmod graphics/drm-stable-kmod misc/freebsd-doc-all @@ -30,7 +30,7 @@ sysutils/tmux www/firefox www/links x11-drivers/xf86-video-vmware -x11/gnome3 +x11/gnome x11/kde5 x11/xorg" From nobody Mon Mar 27 17:21:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlfkS2C2Wz41p8c; Mon, 27 Mar 2023 17:21: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 4PlfkS1mtyz4R1F; Mon, 27 Mar 2023 17:21:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0tG7j1AveKiidRx73Kwtf9T4LoVRTOjsmqfqYBAuXIs=; b=OMkuwRqyF/d9qcKdmLoRzTY52F2NAZGzdzKe5eWKxo4e6buqw2cGVYV36+uXV2rrdyISB5 Jrn/KY4T7izukN8tpdkmfe9qMoJ6edjN42GNB5S4a7igRE898SUMw0pTpJCXMSqzHcbb0P H4pWU0NwUUIHR5aMSVniTN1sX1vqy3LPwIv62jJyre3SeJEpmqXhk3CUu6/TE4CxoPRGPm pRSVb4JHcmM3ODfXyBLkHv1YbEDBxGkgfuSQgxsZX468F7kJympa0yoaOqXAghX5n0SjHo G7r/RIq/6q2lyHlRDtZfO2s3njaoQ/XFXIxunfNDvIKRuYEM+zQLnyLwLJ8jBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0tG7j1AveKiidRx73Kwtf9T4LoVRTOjsmqfqYBAuXIs=; b=KqEQVdbBi6+TZNwmYNddp3+a7GKFP4SR1UyKQvrersQVbejsc/shmqYRjSpjx7LTOHl9cu oTpRdIsjfpUoqGIfcMZ8liVMmdqeMQco1ZYgM+jJuvRzgJMUD30c85pkbwbCXjPC2yvdoH tzsJBviEactO5BSAivhGfkmaDXzhRWuM/ty14meYLLb1jXHVqqF+dZ228Yw3040ZsWckNJ iLg4i2RulpQwk7NhA6EdN4lKCBdCJokhijUHYOi08AF8udmLU/bG8nlBxG/mkDtMqYJEdf 3gE16iLHVv0kAgJbjWmsOrVErDCPz2PQTWhtdPg3i/vE7ozQ238IHCwXg34gxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679937712; a=rsa-sha256; cv=none; b=tsxsxZwVWISpmY4FrTqilfGwSXeHsi7AB937hxlV/qhKcZry1VRB6uA/WBSId6wxPiCM5j v15ZoL9w90S2u5J7MTYtBULAR2Ynrcl9M+nm5PW84nkfiJbXrUvqvQIBbhELGo7s4ltqz4 pwfUWYXWMmUxOd/bSfUlh9k1Sp/qYHCggpRGcVecDKSqIgU8D3X8bbceYqfwpiwhwf/VPf 8+oCyIin3aWlQw6zgzqZ2FumtcBEF1hqMTe0V1enI5PHmKH5L2BXuiPdskWfKeFOzaOGyh 4wxf5sk5B3nghEvTYMLZS5usLjCPUfjG8vNaIQgGKPJ/z0QIWFGERWtc5ai9VA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlfkS0s3WzWG6; Mon, 27 Mar 2023 17:21:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RHLqf4049635; Mon, 27 Mar 2023 17:21:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RHLq0i049634; Mon, 27 Mar 2023 17:21:52 GMT (envelope-from git) Date: Mon, 27 Mar 2023 17:21:52 GMT Message-Id: <202303271721.32RHLq0i049634@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mitchell Horne Subject: git: a979e5ca0b9d - stable/13 - critical(9): small updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a979e5ca0b9dee32d11428a7a69066e7b64576bc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=a979e5ca0b9dee32d11428a7a69066e7b64576bc commit a979e5ca0b9dee32d11428a7a69066e7b64576bc Author: Mitchell Horne AuthorDate: 2023-03-20 19:50:50 +0000 Commit: Mitchell Horne CommitDate: 2023-03-27 17:17:13 +0000 critical(9): small updates - Document CRITICAL_ASSERT() in this man page. - Clarify that a thread may also handle interrupts in a critical section, not only faults/exceptions. - Note the negative effects of critical section abuse - Some other minor clarifications - Add short SEE ALSO Reviewed by: kib, markj, rpokala, Pau Amma MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39130 (cherry picked from commit 43db15b16aa6ee24613d0b25cbf50f2aef5850d1) --- share/man/man9/Makefile | 3 ++- share/man/man9/critical_enter.9 | 48 +++++++++++++++++++++++++++++++++-------- 2 files changed, 41 insertions(+), 10 deletions(-) diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 6aa1bcae3c40..ed6de288cfa4 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -926,7 +926,8 @@ MLINKS+=cpuset.9 CPUSET_T_INITIALIZER.9 \ cpuset.9 CPU_OR_ATOMIC.9 \ cpuset.9 CPU_COPY_STORE_REL.9 MLINKS+=critical_enter.9 critical.9 \ - critical_enter.9 critical_exit.9 + critical_enter.9 critical_exit.9 \ + critical_enter.9 CRITICAL_ASSERT.9 MLINKS+=crypto_asym.9 crypto_kdispatch.9 \ crypto_asym.9 crypto_kdone.9 \ crypto_asym.9 crypto_kregister.9 \ diff --git a/share/man/man9/critical_enter.9 b/share/man/man9/critical_enter.9 index 3da3ac1d96a1..8a702e3c44fd 100644 --- a/share/man/man9/critical_enter.9 +++ b/share/man/man9/critical_enter.9 @@ -23,7 +23,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 5, 2005 +.Dd March 20, 2023 .Dt CRITICAL_ENTER 9 .Os .Sh NAME @@ -37,15 +37,24 @@ .Fn critical_enter "void" .Ft void .Fn critical_exit "void" +.Fn CRITICAL_ASSERT "struct thread *td" .Sh DESCRIPTION These functions are used to prevent preemption in a critical region of code. All that is guaranteed is that the thread currently executing on a CPU will not be preempted. -Specifically, a thread in a critical region will not migrate to another -CPU while it is in a critical region. +Specifically, a thread in a critical region will not migrate to another CPU +while it is in a critical region, nor will the current CPU switch to a +different thread. The current CPU may still trigger faults and exceptions during a critical section; however, these faults are usually fatal. .Pp +The CPU might also receive and handle interrupts within a critical section. +When this occurs the interrupt exit will not result in a context switch, and +execution will continue in the critical section. +Thus, the net effect of a critical section on the current thread's execution is +similar to running with interrupts disabled, except that timer interrupts and +filtered interrupt handlers do not incur a latency penalty. +.Pp The .Fn critical_enter and @@ -56,18 +65,39 @@ while the current thread is in a critical section, then the preemption will be deferred until the current thread exits the outermost critical section. .Pp -Note that these functions are not required to provide any inter-CPU -synchronization, data protection, or memory ordering guarantees and thus -should +Note that these functions do not provide any inter-CPU synchronization, data +protection, or memory ordering guarantees, and thus should .Em not be used to protect shared data structures. .Pp -These functions should be used with care as an infinite loop within a -critical region will deadlock the CPU. +These functions should be used with care as an unbound or infinite loop within +a critical region will deadlock the CPU. Also, they should not be interlocked with operations on mutexes, sx locks, -semaphores, or other synchronization primitives. +semaphores, or other synchronization primitives, as these primitives may +require a context switch to operate. One exception to this is that spin mutexes include a critical section, so in certain cases critical sections may be interlocked with spin mutexes. +.Pp +Critical regions should be only as wide as necessary. +That is, code which does not require the critical section to operate correctly +should be excluded from its bounds whenever possible. +Abuse of critical sections has an effect on overall system latency and timer +precision, since disabling preemption will delay the execution of threaded +interrupt handlers and +.Xr callout 9 +events on the current CPU. +.Pp +The +.Fn CRITICAL_ASSERT +macro verifies that the provided thread +.Fa td +is currently executing in a critical section. +It is a wrapper around +.Xr KASSERT 9 . +.Sh SEE ALSO +.Xr callout 9 , +.Xr KASSERT 9 , +.Xr locking 9 .Sh HISTORY These functions were introduced in .Fx 5.0 . From nobody Mon Mar 27 17:21:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlfkT31VHz41pTN; Mon, 27 Mar 2023 17:21: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 4PlfkT2Slvz4Qq4; Mon, 27 Mar 2023 17:21:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u7iPdQ1xc3F7elZPLaP8UisL8Cvjn2brhBqVy3f9RCA=; b=fvoi/8XhJXFESuDetcvWlkkdpI4cfqeSls1mAskRFZF5SuLJqX0sxCtEf4hmkddfSaMA5D T42AIdPQGxF7ltNPt6jukTw38WNZbNNEdegdKkCbqe1fM8SYmXtQiBU7A6ZMsOGDB91gYm lMkG2U3aj67rnDBYdtAIeBTknhe3/tCryAE8EDmQDGiZMolBkIPYHLCEa7WCDaGW57zxfa x0ywSbrj5NH2OPzAlNUDqrHAUL4NKLZV0t/n4KrSrdJvga+M95h88GVXoB8Ye/V8Y/eEjB r4iVWxwkCq0G69Y1+EeXTBLy9KZ0rTrfA7tBCQofByJ169mS1cKfYQ8F/cB+KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u7iPdQ1xc3F7elZPLaP8UisL8Cvjn2brhBqVy3f9RCA=; b=dCc0yNy1kJGPq/YtYzy2rJVtWhPpugKBPhIEh+L28tGMgsuob7z5gbZkTxje0X99n5nP/j rCTtgFw8RxmCmXFRzD38Df0aWDNhggqgrmxXFFLZvuPMpLNRJCzqlUgMBr8uFXAlNrwH0A gQWewYE9+XmpH8lPLvTs1ZjuH6E00wXzC0J4U8lPFM0wfGBRFcauFJnGf2b+fe1zr68+qx 6KXHqu/qSK/kM5wx7EYbbnQak6yWQKa1BZ72O0IbmiA9hoe11thhuLddyUOaW+zlVniNQ+ 4lotY4IeARTBUAUXArXxVmUlBtYIFy6gEKKrbhKVSGnnt7JdHEVGtVA4gyiEUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679937713; a=rsa-sha256; cv=none; b=SHbBXtcmho3ZwU2DzqHzDdnai4dwvS9MShZcEcb8/1MyFShcWESrGG1RUMylxPB4wUaDgz YUkdVqXxY52xT4ym5paD3gaDptL7L5lWp41c/T4CUMHtegkHd/m17losXeEef8tKji6o09 TRQHqR1KWd5AFZgXgjTAYvx1XFXoxkXv9/MI5amGKM9lsSRFxTch6eYC35ODPV5JZvhsad 0N1x8GKaI8K/GK1ALYqreyAF0mPqJ45cuvM/jTtIOS03oJZ+MevPwV5a+g8Pl0EGP0IAg9 pgUwqL/lnDqHfYxzp92gROKzg0QZOM9cB1NcRtQIjP7DXOlf4ac1/VavT/O2Yg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlfkT12B6zW5Q; Mon, 27 Mar 2023 17:21:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RHLrOt050459; Mon, 27 Mar 2023 17:21:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RHLrit050446; Mon, 27 Mar 2023 17:21:53 GMT (envelope-from git) Date: Mon, 27 Mar 2023 17:21:53 GMT Message-Id: <202303271721.32RHLrit050446@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mitchell Horne Subject: git: d85a53128792 - stable/13 - KASSERT(9): some updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d85a5312879247569f9ca4e3a3ebab2833e6d84a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=d85a5312879247569f9ca4e3a3ebab2833e6d84a commit d85a5312879247569f9ca4e3a3ebab2833e6d84a Author: Mitchell Horne AuthorDate: 2023-03-20 19:54:11 +0000 Commit: Mitchell Horne CommitDate: 2023-03-27 17:18:14 +0000 KASSERT(9): some updates - Add a little bit of introductory text - Improve the existing example: ANSI C, use a better assertion than a NULL check (which is discouraged) - Document the widely used MPASS macro in this page - Drop the cross-reference to config(8) Reviewed by: kib, markj, rpokala, Pau Amma MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39131 (cherry picked from commit 87132d1dce4b61c782871f450c17b818bf991ff6) --- share/man/man9/KASSERT.9 | 104 ++++++++++++++++++++++++++++++++++------------- share/man/man9/Makefile | 1 + 2 files changed, 76 insertions(+), 29 deletions(-) diff --git a/share/man/man9/KASSERT.9 b/share/man/man9/KASSERT.9 index 0c6898a7799b..de2b9ca8d2a8 100644 --- a/share/man/man9/KASSERT.9 +++ b/share/man/man9/KASSERT.9 @@ -1,8 +1,11 @@ -.\" -*- nroff -*- +.\" SPDX-License-Identifier: BSD-2-Clause .\" .\" Copyright (c) 2000 Jonathan M. Bresler -.\" .\" All rights reserved. +.\" Copyright (c) 2023 The FreeBSD Foundation +.\" +.\" Portions of this documentation were written by Mitchell Horne +.\" under sponsorship from the FreeBSD Foundation. .\" .\" This program is free software. .\" @@ -28,59 +31,102 @@ .\" .\" $FreeBSD$ .\" -.Dd January 14, 2000 +.Dd March 16, 2023 .Dt KASSERT 9 .Os .Sh NAME .Nm KASSERT -.Nd kernel expression verification macro +.Nd kernel expression verification macros .Sh SYNOPSIS .Cd "options INVARIANTS" .Pp .In sys/param.h .In sys/systm.h .Fn KASSERT expression msg +.Fn MPASS expression .Sh DESCRIPTION -In a kernel compiled with -.Cd "options INVARIANTS" , -the -.Fn KASSERT -macro tests the given -.Fa expression -and if it is false, -calls the +Assertions are widely used within the +.Fx +kernel to verify programmatic assumptions. +For violations of run-time assumptions and invariants, it is desirable to fail +as soon and as loudly as possible. +Assertions are optional code; for non-recoverable error conditions an explicit +call to .Xr panic 9 -function, terminating the running system. +is usually preferred. .Pp -In a kernel that does not have +The +.Fn KASSERT +macro tests the given boolean +.Fa expression . +If +.Fa expression +evaluates to +.Dv false , +and the kernel is compiled with .Cd "options INVARIANTS" , the -.Fn KASSERT -macro is defined to be a no-op. -The -second argument is a +.Xr panic 9 +function is called. +This terminates the running system at the point of the error, possibly dropping +into the kernel debugger or initiating a kernel core dump. +The second argument, +.Fa msg , +is a .Xr printf 9 format string and its arguments, enclosed in parentheses. +The formatted string will become the panic string. +.Pp +In a kernel that is built without +.Cd "options INVARIANTS" , +the assertion macros are defined to be no-ops. +This eliminates the runtime overhead of widespread assertions from release +builds of the kernel. +Therefore, checks which can be performed in a constant amount of time can be +added as assertions without concern about their performance impact. +More expensive checks, such as those that output to console, or verify the +integrity of a chain of objects are generally best hidden behind the +.Cd DIAGNOSTIC +kernel option. +.Pp +The +.Fn MPASS +macro (read as: "must-pass") +is a convenience wrapper around +.Fn KASSERT +that automatically generates a sensible assertion message including file and +line information. .Sh EXAMPLES -The kernel function -.Fn vput -must not be called with a -.Dv NULL -pointer. +A hypothetical +.Vt struct foo +object must not have its 'active' flag set when calling +.Fn foo_dealloc : .Bd -literal -offset indent void -vput(vp) - struct vnode *vp; +foo_dealloc(struct foo *fp) { - struct proc *p = curproc; - KASSERT(vp != NULL, ("vput: null vp")); + + KASSERT((fp->foo_flags & FOO_ACTIVE) == 0, + ("%s: fp %p is still active", __func__, fp)); ... } .Ed +.Pp +The assertion +.Bd -literal -offset indent +MPASS(td == curthread); +.Ed +.Pp +located on line 87 of a file named foo.c would generate the following panic +message: +.Bd -literal -offset indent +panic: Assertion td == curthread failed at foo.c:87 +.Ed .Sh SEE ALSO -.Xr config 8 , .Xr panic 9 .Sh AUTHORS This manual page was written by -.An Jonathan M. Bresler Aq Mt jmb@FreeBSD.org . +.An Jonathan M. Bresler Aq Mt jmb@FreeBSD.org +and +.An Mitchell Horne Aq Mt mhorne@FreeBSD.org . diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index ed6de288cfa4..bab0cfb76134 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1338,6 +1338,7 @@ MLINKS+=intr_event.9 intr_event_add_handler.9 \ intr_event.9 intr_event_handle.9 \ intr_event.9 intr_event_remove_handler.9 \ intr_event.9 intr_priority.9 +MLINKS+=KASSERT.9 MPASS.9 MLINKS+=kernacc.9 useracc.9 MLINKS+=kernel_mount.9 free_mntarg.9 \ kernel_mount.9 kernel_vmount.9 \ From nobody Mon Mar 27 17:21:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlfkV3qfCz41p8h; Mon, 27 Mar 2023 17:21: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 4PlfkV2v9Xz4Qss; Mon, 27 Mar 2023 17:21:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z6IgNjE3jkifOXq277Dt5shRabJ5HExRS/xtj5K2h0A=; b=AxZFckItTcndx41pQHc73quyryM2z+tXDOesTp53NtPzbFnt0+Cmr+tWLZgK+R1d3GCOqd vARXKoy45+qoRc+ypk0mY9/y8xKa6gmOugZ3qp+qgeyz+jf+uCBnjlelTEDq0tGO4Jz1m8 CP0FPRTr8yWgYrhRvHe5Ry0miu2Hav66DlUo2tgOgnxbrfDTv/VP0JIl5HWHxH7I0etqnq EYmjwZCA7trdGUUvlp01l5HC+Dho3dwOX+LeQ2a27ONFd153N1TH+l1dRMEOld0FUPU9IQ ZRf6a7lkRIT8mOsx5rxJu1xW85penxHb5kDpa18Wvb/Q4oL21Rva5qjCR8c32w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679937714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z6IgNjE3jkifOXq277Dt5shRabJ5HExRS/xtj5K2h0A=; b=ApuhqGjhkC36+pMb1S6ojGaQCchjWKhZuD54+PrqRcbFdV7PSlgIrpWWyKUqR5fq9yWCcJ 2+Ln8y8N/F4uInKXDr3STnW6jtfgTUVmOlKaPAxIFyFzxgF7y/1Y5MJLJvbNoW3wJ5NTMV /rbD4WvobqhQxnni2OXsZkPyTM3YQXUm66O/PLg1YzTxIDlsaVCi4oFV+JzwNfPmNINqOW RBv6S93qaJX8J1ZGCK9VgUtkGY9N2znSPo14NAXSgysp7ihMe/DceVMB7ekj7swfb+3yVv ymKQWvcpKIbL5QXSgXaez/7iglXrXTdap/tBz1C17EzSGs+rrCL3eeypcYvpYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679937714; a=rsa-sha256; cv=none; b=TY9qpIoUVZJHmZDyjV5t6xFm3sFzuN//HWfOAKREVz9yNr1NJYY5z0S2brO7YA7IZIYj6d arqjA/Hl7mpk60xApveazNqOO3c+XSTSUyvw0UVQIAbj+uOhi+GmmaNfaGVkBiixGfkCyO 5MtpbuL4QknPG0SXRU67C0NrMM5VkhnKnYknJ6x0I8N9H1hJbOR6tTS0EG77VtmKwAmOFE XtvTVN5QS0yWlyygA0H9pfCVfLfP6ScNVSm5z/oa85kD2JJsVGux3IdghelQ8IJ/BKIMgZ 0eHYdoCwOJqrZGS1LfPZ1gYDmxTI9d0h5Ws3cg4J+WwiqBTv27bRL39iuR0ssw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlfkV1rYNzW25; Mon, 27 Mar 2023 17:21:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RHLsX4051948; Mon, 27 Mar 2023 17:21:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RHLsew051947; Mon, 27 Mar 2023 17:21:54 GMT (envelope-from git) Date: Mon, 27 Mar 2023 17:21:54 GMT Message-Id: <202303271721.32RHLsew051947@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mitchell Horne Subject: git: 86e2335d10e5 - stable/13 - panic(9): some updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 86e2335d10e560c6b1809df58ce03864c5d09431 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=86e2335d10e560c6b1809df58ce03864c5d09431 commit 86e2335d10e560c6b1809df58ce03864c5d09431 Author: Mitchell Horne AuthorDate: 2023-03-20 19:55:55 +0000 Commit: Mitchell Horne CommitDate: 2023-03-27 17:18:48 +0000 panic(9): some updates - Better description of what the panic() function does - Document KERNEL_PANICKED() - Add a section describing panic execution context - Add SEE ALSO Reviewed by: kib, markj, rpokala MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D39132 (cherry picked from commit d5e105bf7e4cb7e80eb4a4f8960bd6dd12fc4885) --- share/man/man9/Makefile | 3 +- share/man/man9/panic.9 | 109 ++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 99 insertions(+), 13 deletions(-) diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index bab0cfb76134..f9ace3802494 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1729,7 +1729,8 @@ MLINKS+=osd.9 osd_call.9 \ osd.9 osd_reserve.9 \ osd.9 osd_set.9 \ osd.9 osd_set_reserved.9 -MLINKS+=panic.9 vpanic.9 +MLINKS+=panic.9 vpanic.9 \ + panic.9 KERNEL_PANICKED.9 MLINKS+=PCBGROUP.9 in_pcbgroup_byhash.9 \ PCBGROUP.9 in_pcbgroup_byinpcb.9 \ PCBGROUP.9 in_pcbgroup_destroy.9 \ diff --git a/share/man/man9/panic.9 b/share/man/man9/panic.9 index c467b86dd5a1..bc9b1b9e85fb 100644 --- a/share/man/man9/panic.9 +++ b/share/man/man9/panic.9 @@ -1,7 +1,13 @@ .\" $NetBSD: panic.9,v 1.2 1996/10/09 17:20:04 explorer Exp $ .\" +.\" SPDX-License-Identifier: BSD-4-Clause +.\" .\" Copyright (c) 1996 Michael Graff. .\" All rights reserved. +.\" Copyright (c) 2023 The FreeBSD Foundation +.\" +.\" Portions of this documentation were written by Mitchell Horne +.\" under sponsorship from the FreeBSD Foundation. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions @@ -15,7 +21,7 @@ .\" must display the following acknowledgement: .\" This product includes software developed by Michael Graff .\" for the NetBSD Project. -.\" 3. The name of the author may not be used to endorse or promote products +.\" 4. The name of the author may not be used to endorse or promote products .\" derived from this software without specific prior written permission .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR @@ -31,7 +37,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 23, 2015 +.Dd March 17, 2023 .Dt PANIC 9 .Os .Sh NAME @@ -40,10 +46,12 @@ .Sh SYNOPSIS .In sys/types.h .In sys/systm.h +.Vt extern char *panicstr; .Ft void .Fn panic "const char *fmt" ... .Ft void .Fn vpanic "const char *fmt" "va_list ap" +.Fn KERNEL_PANICKED .Sh DESCRIPTION The .Fn panic @@ -55,20 +63,97 @@ The message is a .Xr printf 3 style format string. -The message is printed to the console and the location -.Fa panicstr -is set to the address of the message text for retrieval from the OS -core dump. +The message is printed to the console and +.Va panicstr +is set pointing to the address of the message text. +This can be retrieved from a core dump at a later time. .Pp -If the kernel debugger is installed control is passed to it, otherwise -an attempt to save a core dump of the OS to a configured dump device -is made. +Upon entering the +.Fn panic +function the panicking thread disables interrupts and calls +.Xr critical_enter 9 . +This prevents the thread from being preempted or interrupted while the system +is still in a running state. +Next, it will instruct the other CPUs in the system to stop. +This synchronizes with other threads to prevent concurrent panic conditions +from interfering with one another. +In the unlikely event of concurrent panics, only one panicking thread will proceed. .Pp +Control will be passed to the kernel debugger via +.Fn kdb_enter . +This is conditional on a debugger being installed and enabled by the +.Va debugger_on_panic +variable; see +.Xr ddb 4 +and +.Xr gdb 4 . +The debugger may initiate a system reset, or it may eventually return. +.Pp +Finally, +.Xr kern_reboot 9 +is called to restart the system, and a kernel dump will be requested. If .Fn panic -is called twice (from the disk sync routines, for example) the system is -rebooted without syncing the disks. +is called recursively (from the disk sync routines, for example), +.Fn kern_reboot +will be instructed not to sync the disks. +.Pp +The +.Fn vpanic +function implements the main body of +.Fn panic . +It is suitable to be called by functions which perform their own +variable-length argument processing. +In all other cases, +.Fn panic +is preferred. +.Pp +The +.Fn KERNEL_PANICKED +macro is the preferred way to determine if the system has panicked. +It returns a boolean value. +Most often this is used to avoid taking an action that cannot possibly succeed +in a panic context. +.Sh EXECUTION CONTEXT +.\" TODO: This text describes the kernel debugger / kernel dump execution +.\" context as well. It could be moved to a future kdb(9) page, and this +.\" section would become a pointer. +Once the panic has been initiated, code executing in a panic context is subject +to the following restrictions: +.Bl -bullet +.It +Single-threaded execution. +The scheduler is disabled, and other CPUs are stopped/forced idle. +Functions that manipulate the scheduler state must be avoided. +This includes, but is not limited to, +.Xr wakeup 9 +and +.Xr sleepqueue 9 +functions. +.It +Interrupts are disabled. +Device I/O (e.g. to the console) must be achieved with polling. +.It +Dynamic memory allocation cannot be relied on, and must be avoided. +.It +Lock acquisition/release will be ignored, meaning these operations will appear +to succeed. +.It +Sleeping on a resource is not strictly prohibited, but will result in an +immediate return from the sleep function. +Time-based sleeps such as +.Xr pause 9 +may be performed as a busy-wait. +.El .Sh RETURN VALUES The .Fn panic -function does not return. +and +.Fn vpanic +functions do not return. +.Sh SEE ALSO +.Xr printf 3 , +.Xr ddb 4 , +.Xr gdb 4 , +.Xr KASSERT 9 , +.Xr kern_reboot 9 From nobody Mon Mar 27 23:47:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PlqHC31QYz42GG6; Mon, 27 Mar 2023 23:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PlqHC2W80z45CC; Mon, 27 Mar 2023 23:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679960839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tX98V3d+YYt0n6zyua9bjYGHL4up4KfvEXiubmFEyT4=; b=yTT3P3Inv5xoDxYNSWyHN7iuvKlaae515Rmgvy3Seby1stHcRNnlF1tg0GUNT0nY4V2Swe TtEWn4HegoQzSS5SymctKOIEXLUcqAegd7naKf50loWC31K3yqBgpYOJRuTXATFXg1IDCY nnP0ggjlG32OFUqjFnSF8VYGI0gnNH4To/6C+51W/fp3s5mSJ6HFQK2ZLwHIcUHq7iP4O6 eCY9Wy4tgseMLqculmiZIRF8yScXzMjW4oFlGxlGbRl/a5ZL//hiT92uZictdmb+CUyH/7 GWe7QtkMq7/PTbaKb75jRH55uTRJEHHoPfjg8qzSmwp6iAv/Bf0vbQOaJcX7iA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679960839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tX98V3d+YYt0n6zyua9bjYGHL4up4KfvEXiubmFEyT4=; b=nlhS9ENM2hMot7xfsQ7Lo5Mf2dpZEkz2YoTdq1Pbd72T0hEJo/HcnS9KBtt8+ViGatb3He 9ymABkndZ86nM8EMqmmvlJbeRHhJlk+DKCQ+lAx0qagH1VlPghHaJ9rXTyiiivB16CxCuh 9dY66kvU+o+5wKK7+NHYpD0jG1syVKQ2Q4tuEZWr54jjdLnxXTKeXaIV4GgRQyVNEHiTr6 K8lEX5v1XXIZq3KnJ53GuG0s1NSl85pxGjJvhGRd2s42TI0PXU+xIT/LvQ4AY+i6wmIW44 952TOchoDOaNwt9SyTiIzGmu2yOZjnT8EOpPdhQPY/5cECPnFl+MWfgv+as1ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679960839; a=rsa-sha256; cv=none; b=y0u/Dbrm9wLK4PzNLpq3REGEYS1CRqpFd5na6qNyTlLUGwigg2Ogu0jESGRUj4SoR7J/zW jpEXSXp85G0nOT7zolDvk+M7US6er9Ydij612Vz/3VSFw3TDiLZd1Lr2sGJ/+NGCtgS1Hn rYz+vdgAty0p4EeI58w22HZrm/OQ5IWnacPRa7Sr3BV4Lb73D2xhHJqRBmxmJ1o5564XmK 6wV9PAzGN/hwN0ZS1a58NIny+FXE5sYHFil6wLKwMsJH+3xPohf33RGxsTCoKC9IjjKjEO 9/ZuPyJl4li5htBIvYE9Wx+IEqnem5FkB8FshGlFTdsLlt7dyQgKGI+D4/Wwyg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PlqHC1Zt6zhrL; Mon, 27 Mar 2023 23:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32RNlJVF080196; Mon, 27 Mar 2023 23:47:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32RNlJVI080195; Mon, 27 Mar 2023 23:47:19 GMT (envelope-from git) Date: Mon, 27 Mar 2023 23:47:19 GMT Message-Id: <202303272347.32RNlJVI080195@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: 4660b60a00c3 - stable/13 - Updates to UFS/FFS superblock integrity checks when reading a superblock. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4660b60a00c3120ddecd94b3f308d39bcb6d085a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=4660b60a00c3120ddecd94b3f308d39bcb6d085a commit 4660b60a00c3120ddecd94b3f308d39bcb6d085a Author: Kirk McKusick AuthorDate: 2023-03-27 23:45:59 +0000 Commit: Kirk McKusick CommitDate: 2023-03-27 23:46:40 +0000 Updates to UFS/FFS superblock integrity checks when reading a superblock. Have to add a check that the computed cylinder group size does not exceed the block size of the filesystem. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38668 (cherry picked from commit 0eabe33087d8cb69ae800daae322f12a8f16bd10) --- sys/ufs/ffs/ffs_subr.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/ufs/ffs/ffs_subr.c b/sys/ufs/ffs/ffs_subr.c index d847373a8cde..2f69965aba7e 100644 --- a/sys/ufs/ffs/ffs_subr.c +++ b/sys/ufs/ffs/ffs_subr.c @@ -446,6 +446,7 @@ validate_sblock(struct fs *fs, int isaltsblk) CHK(fs->fs_old_cgoffset, <, 0, %jd); CHK2(fs->fs_old_cgoffset, >, 0, ~fs->fs_old_cgmask, <, 0, %jd); CHK(fs->fs_old_cgoffset * (~fs->fs_old_cgmask), >, fs->fs_fpg, %jd); + CHK(CGSIZE(fs), >, fs->fs_bsize, %jd); /* * If anything has failed up to this point, it is usafe to proceed * as checks below may divide by zero or make other fatal calculations. From nobody Tue Mar 28 00:26:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Plr8J1sfjz42JW8; Tue, 28 Mar 2023 00:26:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Plr8J1c5Nz488Y; Tue, 28 Mar 2023 00:26:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679963184; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9bRnVq39b5heGxYX7PFTWRdVWuX9xg/ETslfuDItoq0=; b=da+WetwigLvECuG8JrMaTgCdB0psNWrFFYIsbQ1hO89k2M2/XJH3r5gAGR9tfcRSNBipKz kueiiOtQUMx2Vf5ZU3WoV5xkEaYcGs2n8P9PyBkAtY7CaS8IzK/yHQRLGxetGKg5VjvkBx 7vA2WbuMfm9o0BdMGHJNStHrtK9mIZWiFfPvktNH4i1oqdkbusjtfA7q84MfgusX76UhCM vd8DlblUFyyOwncgBv7rkKPrJPYw+q0QfTDqLDYWz2jPFhJ+PEhnhx8koEzbucXNLTbbEK yHIthZJFwTmbYM2uLvnAO6T4HODKIVkTIUdoTbi0nbvhDMnEvDyV3y3jBlWFYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1679963184; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9bRnVq39b5heGxYX7PFTWRdVWuX9xg/ETslfuDItoq0=; b=rWm7Dx2xrldQWPzDKSRYlCoLPcVWoM+ulLrlrXx0nJQDykqTwami7PYoC0JUMaL+32Tugm 3jGvn7A8gLwrHOn5pPA+EdyPbvaZY6OQH06nQNrAcEREXwOGJn7VzLQ6GuxeU+DSfNCkgU 6AWNkc8GHBRlsNDgN4xO+rhjoffmN/cAMzrBzj7stBcqkq46+UrNamhMdUy1kmCjnhRB3U ivFQmFXkFX5/wSm6NsPmOGOds8BtsSxPol+fSVbO/nBIWDkTZsyJd2Pd0hntOrrFxBFpyZ mGGQ0IbwsN5IpeL/4pIPS6BD/XQli2qcMDrWE2rL7Op8UZ8/1JhhI9gYtge8DA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1679963184; a=rsa-sha256; cv=none; b=b84vloXdK4HFiKcPYOpMslQNV9ndiiWZsI2LV5TtG0sGdNIDMcsIAtcI9lYPx4CVTTVYbg b0YCJLjWZWgXpP+L/XJ4uDy5FEm82x5laerSIwRPWdi/hRiLNWTc17a1TEFu+yTj5P05F5 9Y+ZBMQ9PXHtoXvKeTS6uPVBTAKNh/pFJFf3bQmrvbob+NbVighQL4GnXFUv72dnStOBVD 9vhXlknhBqcC/eKA0NxBqbYJWIGzV/FtL22UPWX73vgkZ8zzWT/i7YzDcmJqcVAOZOwWXG 1MINgTnfsKXW5NDCv1YdnG2/CECKNuyLyfXujMCFsZuMIkCk8Rvy7UBmntOxjA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Plr8J0fNrzjDB; Tue, 28 Mar 2023 00:26:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32S0QOuX046084; Tue, 28 Mar 2023 00:26:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32S0QOZo046083; Tue, 28 Mar 2023 00:26:24 GMT (envelope-from git) Date: Tue, 28 Mar 2023 00:26:24 GMT Message-Id: <202303280026.32S0QOZo046083@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: a0cd0329512f - stable/13 - Correct several bugs in fsck_ffs(8) triggered by corrupted filesystems. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a0cd0329512fe5fadeab745f2d1bae236e3e4aca Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=a0cd0329512fe5fadeab745f2d1bae236e3e4aca commit a0cd0329512fe5fadeab745f2d1bae236e3e4aca Author: Kirk McKusick AuthorDate: 2023-03-07 23:12:37 +0000 Commit: Kirk McKusick CommitDate: 2023-03-28 00:05:10 +0000 Correct several bugs in fsck_ffs(8) triggered by corrupted filesystems. If a directory entry has an illegal inode number (less than zero or greater than the last inode in the filesystem) the entry is removed. If a directory '.' or '..' entry had an illegal inode number they were being removed. Since fsck_ffs knows what the correct value is for these two entries fix them rather deleting them. Add much more extensive cylinder group checks and use them to be more careful about rebuilding a cylinder group. Check for out-of-range block numbers before trying to free them. When a directory is deleted also remove its cache entry created in pass1 so that later passes do not try to operate on a deleted directory. Check for ctime(3) returning NULL before trying to use its return. When freeing a directory inode, do not try to interpret it as a directory. Reserve space in the inostatlist to have room to allocate a lost+found directory. If an invalid block number is found past the end of an inode simply remove it rather than clearing and removing the inode. Modernize the inoinfo structure to use queue(3) LIST rather than a handrolled linked list implementation. Reported by: Bob Prohaska, John-Mark Gurney, and Mark Millard Tested by: Peter Holm Reviewed by: Peter Holm Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D38668 (cherry picked from commit 52f9710412ee6a5bfacae125e24399634d71288d) --- sbin/fsck_ffs/dir.c | 25 +++++++++--------- sbin/fsck_ffs/fsck.h | 10 ++++--- sbin/fsck_ffs/fsutil.c | 71 +++++++++++++++++++++++++++++++++++--------------- sbin/fsck_ffs/inode.c | 63 ++++++++++++++++++++++++++++++++------------ sbin/fsck_ffs/pass1.c | 47 +++++++++++++++++++++------------ sbin/fsck_ffs/pass2.c | 18 ++++++++++--- sbin/fsck_ffs/setup.c | 19 +++++++------- sbin/fsck_ffs/suj.c | 2 ++ 8 files changed, 174 insertions(+), 81 deletions(-) diff --git a/sbin/fsck_ffs/dir.c b/sbin/fsck_ffs/dir.c index d09e6940f812..18229ab96fb6 100644 --- a/sbin/fsck_ffs/dir.c +++ b/sbin/fsck_ffs/dir.c @@ -63,7 +63,6 @@ static struct dirtemplate dirhead = { static int chgino(struct inodesc *); static int dircheck(struct inodesc *, struct bufarea *, struct direct *); static int expanddir(struct inode *ip, char *name); -static void freedir(ino_t ino, ino_t parent); static struct direct *fsck_readdir(struct inodesc *); static struct bufarea *getdirblk(ufs2_daddr_t blkno, long size); static int lftempname(char *bufp, ino_t ino); @@ -517,7 +516,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name) if (preen) printf(" (CREATED)\n"); } else { - freedir(lfdir, UFS_ROOTINO); + freedirino(lfdir, UFS_ROOTINO); lfdir = 0; if (preen) printf("\n"); @@ -583,8 +582,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name) inoinfo(lfdir)->ino_linkcnt++; pwarn("DIR I=%lu CONNECTED. ", (u_long)orphan); inp = getinoinfo(parentdir); - if (parentdir != (ino_t)-1 && inp != NULL && - (inp->i_flags & INFO_NEW) == 0) { + if (parentdir != (ino_t)-1 && inp != NULL) { printf("PARENT WAS I=%lu\n", (u_long)parentdir); /* * If the parent directory did not have to @@ -594,7 +592,8 @@ linkup(ino_t orphan, ino_t parentdir, char *name) * fixes the parent link count so that fsck does * not need to be rerun. */ - inoinfo(parentdir)->ino_linkcnt++; + if ((inp->i_flags & INFO_NEW) != 0) + inoinfo(parentdir)->ino_linkcnt++; } if (preen == 0) printf("\n"); @@ -837,13 +836,12 @@ allocdir(ino_t parent, ino_t request, int mode) DIP_SET(dp, di_nlink, 2); inodirty(&ip); if (ino == UFS_ROOTINO) { - inoinfo(ino)->ino_linkcnt = DIP(dp, di_nlink); - if ((inp = getinoinfo(ino)) == NULL) - inp = cacheino(dp, ino); - else - inp->i_flags = INFO_NEW; + inp = cacheino(dp, ino); inp->i_parent = parent; inp->i_dotdot = parent; + inp->i_flags |= INFO_NEW; + inoinfo(ino)->ino_type = DT_DIR; + inoinfo(ino)->ino_linkcnt = DIP(dp, di_nlink); irelse(&ip); return(ino); } @@ -855,6 +853,8 @@ allocdir(ino_t parent, ino_t request, int mode) inp = cacheino(dp, ino); inp->i_parent = parent; inp->i_dotdot = parent; + inp->i_flags |= INFO_NEW; + inoinfo(ino)->ino_type = DT_DIR; inoinfo(ino)->ino_state = inoinfo(parent)->ino_state; if (inoinfo(ino)->ino_state == DSTATE) { inoinfo(ino)->ino_linkcnt = DIP(dp, di_nlink); @@ -872,8 +872,8 @@ allocdir(ino_t parent, ino_t request, int mode) /* * free a directory inode */ -static void -freedir(ino_t ino, ino_t parent) +void +freedirino(ino_t ino, ino_t parent) { struct inode ip; union dinode *dp; @@ -885,6 +885,7 @@ freedir(ino_t ino, ino_t parent) inodirty(&ip); irelse(&ip); } + removecachedino(ino); freeino(ino); } diff --git a/sbin/fsck_ffs/fsck.h b/sbin/fsck_ffs/fsck.h index c70febdd4e80..94ec59004b86 100644 --- a/sbin/fsck_ffs/fsck.h +++ b/sbin/fsck_ffs/fsck.h @@ -303,8 +303,8 @@ extern struct dups *muldup; /* end of unique duplicate dup block numbers */ /* * Inode cache data structures. */ -extern struct inoinfo { - struct inoinfo *i_nexthash; /* next entry in hash chain */ +struct inoinfo { + SLIST_ENTRY(inoinfo) i_hash; /* hash list */ ino_t i_number; /* inode number of this entry */ ino_t i_parent; /* inode number of parent */ ino_t i_dotdot; /* inode number of `..' */ @@ -312,7 +312,9 @@ extern struct inoinfo { u_int i_flags; /* flags, see below */ u_int i_numblks; /* size of block array in bytes */ ufs2_daddr_t i_blks[1]; /* actually longer */ -} **inphead, **inpsort; +}; +extern SLIST_HEAD(inohash, inoinfo) *inphash; +extern struct inoinfo **inpsort; /* * flags for struct inoinfo */ @@ -481,6 +483,7 @@ int findino(struct inodesc *); int findname(struct inodesc *); void flush(int fd, struct bufarea *bp); int freeblock(struct inodesc *); +void freedirino(ino_t ino, ino_t parent); void freeino(ino_t ino); void freeinodebuf(void); void fsckinit(void); @@ -518,6 +521,7 @@ void prtbuf(struct bufarea *, const char *, ...) __printflike(2, 3); void prtinode(struct inode *); void pwarn(const char *fmt, ...) __printflike(1, 2); int readsb(int listerr); +int removecachedino(ino_t); int reply(const char *question); void rwerror(const char *mesg, ufs2_daddr_t blk); void sblock_init(void); diff --git a/sbin/fsck_ffs/fsutil.c b/sbin/fsck_ffs/fsutil.c index 277d50f87fb7..d8842e7d41f2 100644 --- a/sbin/fsck_ffs/fsutil.c +++ b/sbin/fsck_ffs/fsutil.c @@ -165,7 +165,7 @@ reply(const char *question) struct inostat * inoinfo(ino_t inum) { - static struct inostat unallocated = { USTATE, 0, 0 }; + static struct inostat unallocated = { USTATE, 0, 0, 0 }; struct inostatlist *ilp; int iloff; @@ -612,8 +612,7 @@ void ckfini(int markclean) { struct bufarea *bp, *nbp; - struct inoinfo *inp, *ninp; - int ofsmodified, cnt, cg, i; + int ofsmodified, cnt, cg; if (bkgrdflag) { unlink(snapname); @@ -781,19 +780,7 @@ ckfini(int markclean) free(inostathead); } inostathead = NULL; - if (inpsort != NULL) - free(inpsort); - inpsort = NULL; - if (inphead != NULL) { - for (i = 0; i < dirhash; i++) { - for (inp = inphead[i]; inp != NULL; inp = ninp) { - ninp = inp->i_nexthash; - free(inp); - } - } - free(inphead); - } - inphead = NULL; + inocleanup(); finalIOstats(); (void)close(fsreadfd); (void)close(fswritefd); @@ -1014,6 +1001,7 @@ check_cgmagic(int cg, struct bufarea *cgbp, int request_rebuild) struct cg *cgp = cgbp->b_un.b_cg; uint32_t cghash, calchash; static int prevfailcg = -1; + long start; int error; /* @@ -1039,6 +1027,43 @@ check_cgmagic(int cg, struct bufarea *cgbp, int request_rebuild) CHK(cgp->cg_niblk, !=, sblock.fs_ipg, "%jd"); CHK(cgp->cg_initediblk, >, sblock.fs_ipg, "%jd"); } + if (cgbase(&sblock, cg) + sblock.fs_fpg < sblock.fs_size) { + CHK(cgp->cg_ndblk, !=, sblock.fs_fpg, "%jd"); + } else { + CHK(cgp->cg_ndblk, !=, sblock.fs_size - cgbase(&sblock, cg), + "%jd"); + } + start = &cgp->cg_space[0] - (u_char *)(&cgp->cg_firstfield); + if (sblock.fs_magic == FS_UFS2_MAGIC) { + CHK(cgp->cg_iusedoff, !=, start, "%jd"); + } else if (sblock.fs_magic == FS_UFS1_MAGIC) { + CHK(cgp->cg_niblk, !=, 0, "%jd"); + CHK(cgp->cg_initediblk, !=, 0, "%jd"); + CHK(cgp->cg_old_ncyl, !=, sblock.fs_old_cpg, "%jd"); + CHK(cgp->cg_old_niblk, !=, sblock.fs_ipg, "%jd"); + CHK(cgp->cg_old_btotoff, !=, start, "%jd"); + CHK(cgp->cg_old_boff, !=, cgp->cg_old_btotoff + + sblock.fs_old_cpg * sizeof(int32_t), "%jd"); + CHK(cgp->cg_iusedoff, !=, cgp->cg_old_boff + + sblock.fs_old_cpg * sizeof(u_int16_t), "%jd"); + } + CHK(cgp->cg_freeoff, !=, + cgp->cg_iusedoff + howmany(sblock.fs_ipg, CHAR_BIT), "%jd"); + if (sblock.fs_contigsumsize == 0) { + CHK(cgp->cg_nextfreeoff, !=, + cgp->cg_freeoff + howmany(sblock.fs_fpg, CHAR_BIT), "%jd"); + } else { + CHK(cgp->cg_nclusterblks, !=, cgp->cg_ndblk / sblock.fs_frag, + "%jd"); + CHK(cgp->cg_clustersumoff, !=, + roundup(cgp->cg_freeoff + howmany(sblock.fs_fpg, CHAR_BIT), + sizeof(u_int32_t)) - sizeof(u_int32_t), "%jd"); + CHK(cgp->cg_clusteroff, !=, cgp->cg_clustersumoff + + (sblock.fs_contigsumsize + 1) * sizeof(u_int32_t), "%jd"); + CHK(cgp->cg_nextfreeoff, !=, cgp->cg_clusteroff + + howmany(fragstoblks(&sblock, sblock.fs_fpg), CHAR_BIT), + "%jd"); + } if (error == 0) return (1); if (prevfailcg == cg) @@ -1067,13 +1092,15 @@ check_cgmagic(int cg, struct bufarea *cgbp, int request_rebuild) cgp->cg_ndblk = sblock.fs_fpg; else cgp->cg_ndblk = sblock.fs_size - cgbase(&sblock, cg); - cgp->cg_iusedoff = &cgp->cg_space[0] - (u_char *)(&cgp->cg_firstfield); - if (sblock.fs_magic == FS_UFS1_MAGIC) { + start = &cgp->cg_space[0] - (u_char *)(&cgp->cg_firstfield); + if (sblock.fs_magic == FS_UFS2_MAGIC) { + cgp->cg_iusedoff = start; + } else if (sblock.fs_magic == FS_UFS1_MAGIC) { cgp->cg_niblk = 0; cgp->cg_initediblk = 0; cgp->cg_old_ncyl = sblock.fs_old_cpg; cgp->cg_old_niblk = sblock.fs_ipg; - cgp->cg_old_btotoff = cgp->cg_iusedoff; + cgp->cg_old_btotoff = start; cgp->cg_old_boff = cgp->cg_old_btotoff + sblock.fs_old_cpg * sizeof(int32_t); cgp->cg_iusedoff = cgp->cg_old_boff + @@ -1111,7 +1138,7 @@ allocblk(long startcg, long frags, } if (frags <= 0 || frags > sblock.fs_frag) return (0); - for (blkno = cgdata(&sblock, startcg); + for (blkno = MAX(cgdata(&sblock, startcg), 0); blkno < maxfsblock - sblock.fs_frag; blkno += sblock.fs_frag) { if ((newblk = (*checkblkavail)(blkno, frags)) == 0) @@ -1121,7 +1148,7 @@ allocblk(long startcg, long frags, if (newblk < 0) blkno = -newblk; } - for (blkno = cgdata(&sblock, 0); + for (blkno = MAX(cgdata(&sblock, 0), 0); blkno < cgbase(&sblock, startcg) - sblock.fs_frag; blkno += sblock.fs_frag) { if ((newblk = (*checkblkavail)(blkno, frags)) == 0) @@ -1144,6 +1171,8 @@ std_checkblkavail(blkno, frags) ufs2_daddr_t j, k, baseblk; long cg; + if ((u_int64_t)blkno > sblock.fs_size) + return (0); for (j = 0; j <= sblock.fs_frag - frags; j++) { if (testbmap(blkno + j)) continue; diff --git a/sbin/fsck_ffs/inode.c b/sbin/fsck_ffs/inode.c index 82338f4f8c08..057d49a1ea18 100644 --- a/sbin/fsck_ffs/inode.c +++ b/sbin/fsck_ffs/inode.c @@ -661,9 +661,8 @@ freeblock(struct inodesc *idesc) struct bufarea *cgbp; struct cg *cgp; ufs2_daddr_t blkno; - long size, nfrags, res; + long size, nfrags; - res = KEEPON; blkno = idesc->id_blkno; if (idesc->id_type == SNAP) { pfatal("clearing a snapshot dinode\n"); @@ -672,10 +671,10 @@ freeblock(struct inodesc *idesc) size = lfragtosize(&sblock, idesc->id_numfrags); if (snapblkfree(&sblock, blkno, size, idesc->id_number, std_checkblkavail)) - return (res); + return (KEEPON); for (nfrags = idesc->id_numfrags; nfrags > 0; blkno++, nfrags--) { if (chkrange(blkno, 1)) { - res = SKIP; + return (SKIP); } else if (testbmap(blkno)) { for (dlp = duplist; dlp; dlp = dlp->next) { if (dlp->dup != blkno) @@ -704,7 +703,7 @@ freeblock(struct inodesc *idesc) cgp->cg_cs.cs_nffree += idesc->id_numfrags; cgdirty(cgbp); } - return (res); + return (KEEPON); } /* @@ -1122,7 +1121,7 @@ freeinodebuf(void) struct inoinfo * cacheino(union dinode *dp, ino_t inumber) { - struct inoinfo *inp, **inpp; + struct inoinfo *inp; int i, blks; if (getinoinfo(inumber) != NULL) @@ -1138,9 +1137,7 @@ cacheino(union dinode *dp, ino_t inumber) Malloc(sizeof(*inp) + (blks - 1) * sizeof(ufs2_daddr_t)); if (inp == NULL) errx(EEXIT, "cannot increase directory list"); - inpp = &inphead[inumber % dirhash]; - inp->i_nexthash = *inpp; - *inpp = inp; + SLIST_INSERT_HEAD(&inphash[inumber % dirhash], inp, i_hash); inp->i_flags = 0; inp->i_parent = inumber == UFS_ROOTINO ? UFS_ROOTINO : (ino_t)0; inp->i_dotdot = (ino_t)0; @@ -1171,12 +1168,43 @@ getinoinfo(ino_t inumber) { struct inoinfo *inp; - for (inp = inphead[inumber % dirhash]; inp; inp = inp->i_nexthash) { + SLIST_FOREACH(inp, &inphash[inumber % dirhash], i_hash) { if (inp->i_number != inumber) continue; return (inp); } - return ((struct inoinfo *)0); + return (NULL); +} + +/* + * Remove an entry from the inode cache and disk-order sorted list. + * Return 0 on success and 1 on failure. + */ +int +removecachedino(ino_t inumber) +{ + struct inoinfo *inp, **inpp; + char *listtype; + + listtype = "hash"; + SLIST_FOREACH(inp, &inphash[inumber % dirhash], i_hash) { + if (inp->i_number != inumber) + continue; + SLIST_REMOVE(&inphash[inumber % dirhash], inp, inoinfo, i_hash); + for (inpp = &inpsort[inplast - 1]; inpp >= inpsort; inpp--) { + if (*inpp != inp) + continue; + *inpp = inpsort[inplast - 1]; + inplast--; + free(inp); + return (0); + } + listtype = "sort"; + break; + } + pfatal("removecachedino: entry for ino %jd not found on %s list\n", + (intmax_t)inumber, listtype); + return (1); } /* @@ -1187,13 +1215,14 @@ inocleanup(void) { struct inoinfo **inpp; - if (inphead == NULL) + if (inphash == NULL) return; for (inpp = &inpsort[inplast - 1]; inpp >= inpsort; inpp--) free((char *)(*inpp)); - free((char *)inphead); + free((char *)inphash); + inphash = NULL; free((char *)inpsort); - inphead = inpsort = NULL; + inpsort = NULL; } void @@ -1310,8 +1339,8 @@ prtinode(struct inode *ip) printf("%s: ", cdevname); printf("SIZE=%ju ", (uintmax_t)DIP(dp, di_size)); t = DIP(dp, di_mtime); - p = ctime(&t); - printf("MTIME=%12.12s %4.4s ", &p[4], &p[20]); + if ((p = ctime(&t)) != NULL) + printf("MTIME=%12.12s %4.4s ", &p[4], &p[20]); } void @@ -1428,7 +1457,7 @@ freeino(ino_t ino) struct inode ip; memset(&idesc, 0, sizeof(struct inodesc)); - idesc.id_type = inoinfo(ino)->ino_idtype; + idesc.id_type = ADDR; idesc.id_func = freeblock; idesc.id_number = ino; ginode(ino, &ip); diff --git a/sbin/fsck_ffs/pass1.c b/sbin/fsck_ffs/pass1.c index 49418ec38e4b..5f1ad8ecb686 100644 --- a/sbin/fsck_ffs/pass1.c +++ b/sbin/fsck_ffs/pass1.c @@ -219,9 +219,10 @@ pass1(void) * If we were not able to determine in advance which inodes * were in use, then reduce the size of the inoinfo structure * to the size necessary to describe the inodes that we - * really found. + * really found. Always leave map space in the first cylinder + * group in case we need to a root or lost+found directory. */ - if (inumber == lastino) + if (inumber == lastino || c == 0) continue; inostathead[c].il_numalloced = inosused; if (inosused == 0) { @@ -348,24 +349,38 @@ checkinode(ino_t inumber, struct inodesc *idesc, int rebuildcg) } } } - for (j = ndb; ndb < UFS_NDADDR && j < UFS_NDADDR; j++) - if (DIP(dp, di_db[j]) != 0) { - if (debug) - printf("invalid direct addr[%d]: %ju\n", j, - (uintmax_t)DIP(dp, di_db[j])); - pfatal("INVALID DIRECT BLOCK"); - goto unknown; + for (j = ndb; ndb < UFS_NDADDR && j < UFS_NDADDR; j++) { + if (DIP(dp, di_db[j]) == 0) + continue; + if (debug) + printf("invalid direct addr[%d]: %ju\n", j, + (uintmax_t)DIP(dp, di_db[j])); + pfatal("INVALID DIRECT BLOCK"); + ginode(inumber, &ip); + prtinode(&ip); + if (reply("CLEAR") == 1) { + DIP_SET(ip.i_dp, di_db[j], 0); + inodirty(&ip); } + irelse(&ip); + } for (j = 0, ndb -= UFS_NDADDR; ndb > 0; j++) ndb /= NINDIR(&sblock); - for (; j < UFS_NIADDR; j++) - if (DIP(dp, di_ib[j]) != 0) { - if (debug) - printf("invalid indirect addr: %ju\n", - (uintmax_t)DIP(dp, di_ib[j])); - pfatal("INVALID INDIRECT BLOCK"); - goto unknown; + for (; j < UFS_NIADDR; j++) { + if (DIP(dp, di_ib[j]) == 0) + continue; + if (debug) + printf("invalid indirect addr: %ju\n", + (uintmax_t)DIP(dp, di_ib[j])); + pfatal("INVALID INDIRECT BLOCK"); + ginode(inumber, &ip); + prtinode(&ip); + if (reply("CLEAR") == 1) { + DIP_SET(ip.i_dp, di_ib[j], 0); + inodirty(&ip); } + irelse(&ip); + } if (ftypeok(dp) == 0) { pfatal("UNKNOWN FILE TYPE"); goto unknown; diff --git a/sbin/fsck_ffs/pass2.c b/sbin/fsck_ffs/pass2.c index 78815493fba8..4e17863ef04c 100644 --- a/sbin/fsck_ffs/pass2.c +++ b/sbin/fsck_ffs/pass2.c @@ -85,7 +85,7 @@ pass2(void) case DCLEAR: pfatal("DUPS/BAD IN ROOT INODE"); if (reply("REALLOCATE")) { - freeino(UFS_ROOTINO); + freedirino(UFS_ROOTINO, UFS_ROOTINO); if (allocdir(UFS_ROOTINO, UFS_ROOTINO, 0755) != UFS_ROOTINO) errx(EEXIT, "CANNOT ALLOCATE ROOT INODE"); @@ -294,8 +294,6 @@ pass2check(struct inodesc *idesc) /* * check for "." */ - if (dirp->d_ino > maxino) - goto chk2; if (idesc->id_entryno != 0) goto chk1; if (dirp->d_ino != 0 && strcmp(dirp->d_name, ".") == 0) { @@ -370,6 +368,20 @@ chk1: dirp->d_reclen = proto.d_reclen; } if (dirp->d_ino != 0 && strcmp(dirp->d_name, "..") == 0) { + if (dirp->d_ino > maxino) { + direrror(idesc->id_number, "BAD INODE NUMBER FOR '..'"); + /* + * If we know parent set it now, otherwise let it + * point to the root inode and it will get cleaned + * up later if that is not correct. + */ + if (inp->i_parent != 0) + dirp->d_ino = inp->i_parent; + else + dirp->d_ino = UFS_ROOTINO; + if (reply("FIX") == 1) + ret |= ALTERED; + } inp->i_dotdot = dirp->d_ino; if (dirp->d_type != DT_DIR) { direrror(idesc->id_number, "BAD TYPE VALUE FOR '..'"); diff --git a/sbin/fsck_ffs/setup.c b/sbin/fsck_ffs/setup.c index f06424558cf4..1442e5da77d2 100644 --- a/sbin/fsck_ffs/setup.c +++ b/sbin/fsck_ffs/setup.c @@ -58,10 +58,11 @@ __FBSDID("$FreeBSD$"); #include "fsck.h" -struct inoinfo **inphead, **inpsort; /* info about all inodes */ -struct inode snaplist[FSMAXSNAP + 1]; /* list of active snapshots */ -int snapcnt; /* number of active snapshots */ -char *copybuf; /* buffer to copy snapshot blocks */ +struct inohash *inphash; /* hash list of directory inode info */ +struct inoinfo **inpsort; /* disk order list of directory inodes */ +struct inode snaplist[FSMAXSNAP + 1]; /* list of active snapshots */ +int snapcnt; /* number of active snapshots */ +char *copybuf; /* buffer to copy snapshot blocks */ #define POWEROF2(num) (((num) & ((num) - 1)) == 0) @@ -188,14 +189,14 @@ setup(char *dev) (unsigned)(sizeof(struct inostatlist) * (sblock.fs_ncg))); goto badsb; } - numdirs = MAX(sblock.fs_cstotal.cs_ndir, 128); - dirhash = numdirs; + numdirs = sblock.fs_cstotal.cs_ndir; + dirhash = MAX(numdirs / 2, 1); inplast = 0; listmax = numdirs + 10; inpsort = (struct inoinfo **)Calloc(listmax, sizeof(struct inoinfo *)); - inphead = (struct inoinfo **)Calloc(numdirs, sizeof(struct inoinfo *)); - if (inpsort == NULL || inphead == NULL) { - printf("cannot alloc %ju bytes for inphead\n", + inphash = (struct inohash *)Calloc(dirhash, sizeof(struct inohash)); + if (inpsort == NULL || inphash == NULL) { + printf("cannot alloc %ju bytes for inphash\n", (uintmax_t)numdirs * sizeof(struct inoinfo *)); goto badsb; } diff --git a/sbin/fsck_ffs/suj.c b/sbin/fsck_ffs/suj.c index 7e7ffbd2b038..e9f5bbd421b1 100644 --- a/sbin/fsck_ffs/suj.c +++ b/sbin/fsck_ffs/suj.c @@ -391,6 +391,8 @@ suj_checkblkavail(blkno, frags) ufs2_daddr_t j, k, baseblk; long cg; + if ((u_int64_t)blkno > sblock.fs_size) + return (0); cg = dtog(&sblock, blkno); cgbp = cglookup(cg); cgp = cgbp->b_un.b_cg; From nobody Tue Mar 28 09:35:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pm4Kc35K2z41fxZ; Tue, 28 Mar 2023 09:35:16 +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 4Pm4Kb005rz46wD; Tue, 28 Mar 2023 09:35:14 +0000 (UTC) (envelope-from freebsd@oldach.net) Authentication-Results: mx1.freebsd.org; dkim=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; dmarc=none Received: from nuc.oldach.net (localhost [127.0.0.1]) by nuc.oldach.net (8.17.1/8.17.1/hmo04jun22) with ESMTPS id 32S9Z4JH089455 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Tue, 28 Mar 2023 11:35:04 +0200 (CEST) (envelope-from freebsd@oldach.net) Received: (from hmo@localhost) by nuc.oldach.net (8.17.1/8.17.1/hmo01feb23/Submit) id 32S9Z4gc089454; Tue, 28 Mar 2023 11:35:04 +0200 (CEST) (envelope-from freebsd@oldach.net) Message-Id: <202303280935.32S9Z4gc089454@nuc.oldach.net> Subject: Re: git: 4660b60a00c3 - stable/13 - Updates to UFS/FFS superblock integrity checks when reading a superblock. In-Reply-To: <202303272347.32RNlJVI080195@gitrepo.freebsd.org> from Kirk McKusick at "27 Mar 2023 23:47:19" To: mckusick@FreeBSD.org (Kirk McKusick) Date: Tue, 28 Mar 2023 11:35:04 +0200 (CEST) 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: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Greylist: inspected by milter-greylist-4.6.4 (nuc.oldach.net [0.0.0.0]); Tue, 28 Mar 2023 11:35:04 +0200 (CEST) for IP:127.0.0.1 DOMAIN:localhost HELO:nuc.oldach.net FROM:freebsd@oldach.net RCPT: X-Spamd-Result: default: False [-3.28 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.98)[-0.981]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[text/plain]; FROM_NO_DN(0.00)[]; MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@FreeBSD.org,dev-commits-src-branches@FreeBSD.org]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; ASN(0.00)[asn:29670, ipnet:2001:67c:1400::/45, country:DE]; RCPT_COUNT_THREE(0.00)[4]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DMARC_NA(0.00)[oldach.net]; TO_DN_NONE(0.00)[]; RCVD_TLS_LAST(0.00)[] X-Rspamd-Queue-Id: 4Pm4Kb005rz46wD X-Spamd-Bar: --- X-ThisMailContainsUnwantedMimeParts: N Kirk McKusick wrote on Tue, 28 Mar 2023 01:47:19 +0200 (CEST): > The branch stable/13 has been updated by mckusick: > > URL: https://cgit.FreeBSD.org/src/commit/?id=4660b60a00c3120ddecd94b3f308d39bcb6d085a > > commit 4660b60a00c3120ddecd94b3f308d39bcb6d085a > Author: Kirk McKusick > AuthorDate: 2023-03-27 23:45:59 +0000 > Commit: Kirk McKusick > CommitDate: 2023-03-27 23:46:40 +0000 > > Updates to UFS/FFS superblock integrity checks when reading a superblock. > > Have to add a check that the computed cylinder group size does not > exceed the block size of the filesystem. > > Sponsored by: The FreeBSD Foundation > Differential Revision: https://reviews.freebsd.org/D38668 > > (cherry picked from commit 0eabe33087d8cb69ae800daae322f12a8f16bd10) > --- > sys/ufs/ffs/ffs_subr.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/sys/ufs/ffs/ffs_subr.c b/sys/ufs/ffs/ffs_subr.c > index d847373a8cde..2f69965aba7e 100644 > --- a/sys/ufs/ffs/ffs_subr.c > +++ b/sys/ufs/ffs/ffs_subr.c > @@ -446,6 +446,7 @@ validate_sblock(struct fs *fs, int isaltsblk) > CHK(fs->fs_old_cgoffset, <, 0, %jd); > CHK2(fs->fs_old_cgoffset, >, 0, ~fs->fs_old_cgmask, <, 0, %jd); > CHK(fs->fs_old_cgoffset * (~fs->fs_old_cgmask), >, fs->fs_fpg, %jd); > + CHK(CGSIZE(fs), >, fs->fs_bsize, %jd); > /* > * If anything has failed up to this point, it is usafe to proceed > * as checks below may divide by zero or make other fatal calculations. > With this check added, my -STABLE VM fails to boot with lots of "UFS2 superblock failed" messages. Trying to repair the (apparently broken) file system by booting kernel.old/kernel single-user yields: root@ / # fsck -y /dev/ufs/latitude UFS2 superblock failed: CGSIZE(fs) (32772) > fs->fs_bsize (32768) Cannot find file system superblock UFS2 superblock failed: CGSIZE(fs) (32772) > fs->fs_bsize (32768) Cannot find file system superblock LOOK FOR ALTERNATE SUPERBLOCKS? no root@ / # Removing the committed extra check and all is fine again. Kind regards Helge From nobody Tue Mar 28 21:58:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PmNqN3jKMz42V33; Tue, 28 Mar 2023 21:58: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 4PmNqN3Bpqz3GMN; Tue, 28 Mar 2023 21:58:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680040720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o9TIdmVyWV0/bkUSp/AMpYMzWilJw8ACyOVnuAnqhz0=; b=XI/kEIjv5mkYbm+rRhMjA9ZeAc/xxW/rBWn1QrJdttroccHpnvvpZwogNKat0TD2DduWkZ pTtkFcaWzFjkH2+jJXWM1FGt5zl9g7TTDJ6NrmGyhcvYvBC9TqLtmQVstRkfkB+Luig0x1 g7uVoSTgrGMARSmRIuBZ+3i8PcoHBVUmwYtDc/rIFgKuLdo/cQYCwy5aBaEAMkwcEEIrso Pds0SafPIR5kGluR7I8txUlZDJRflFlGKFF4Gw2T8Muz144BON9E9a0y9VSMY7h4fqp85G cDy19qazLk+4kZIZECGJ2XUnQiLxrWpIqrRw5SWKq+R+Hd2pXvC+Qb7LPmvR0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680040720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o9TIdmVyWV0/bkUSp/AMpYMzWilJw8ACyOVnuAnqhz0=; b=cFZJgNglvJeO9HrkzZBJuxlFvdV3+51GyUDNx/+2zZ+80gAnoB/T+B2gKhizz08Qu5a/Nu iL/jVpHGdZHdfpPSzfskHTiZYZJmGx8Y0dFjopRTzyUteL61slfOVut4cX8TmmLm+wFrMT c1VoZIScbpuqknFAejHnAj3jyFv9iB35uV9xD63yRyJyBRCqbB5n0HVuoGN9ll1rOm6FMn PUucSUYzg33vqtKsAPta5LSBp+4Q44K2L4BBdSUymJG7UFwIw/76QJukqm0vIS8I5m+8eU 4AzAyZfG8V8E6tA+PGIvLC/muxgN/AZXQAmL72OCUuEYT6dHF7klTjOjIIcjTw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680040720; a=rsa-sha256; cv=none; b=UDlmqj8MnbxT5q4eFRF3mkCfWs39mczfGIIKSHKRxFKRfcW02hNhsU2koR/MYIXxwPWZwP 52Wv13SfalXo6kaTcQHkU2ObcD57q+U2PQbGWWowicYXlBSmBvKoCmeSH1nL0CXzZB/Uxg BlOP7nOGW9EWxYgH5H9mZT8w+NNM/N4W54obazYTfQ3BdLeUi8PQ++mshQCh2bnmnYF9iX FVY63LaPdjjUYzzxUP+6gd9Gc0jzWqu4VwLPXnAkaZoyOjVeOF2706LwHrL8ZXbtM7TwxE g2IvNRZg/o0NG9v/DQHTnyg93tJl37GYDTjCa1NMQpMO4aTqBGRISkQA5IgZvg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PmNqN1xRDz1Jyt; Tue, 28 Mar 2023 21:58:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32SLwe8f064794; Tue, 28 Mar 2023 21:58:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32SLwegO064793; Tue, 28 Mar 2023 21:58:40 GMT (envelope-from git) Date: Tue, 28 Mar 2023 21:58:40 GMT Message-Id: <202303282158.32SLwegO064793@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Vincenzo Maffione Subject: git: 1e01c7ed6281 - stable/13 - netmap: get rid of save_if_input for emulated adapters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vmaffione X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1e01c7ed628161e1eb46dfb97b3a8c74dbb7e8db Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by vmaffione: URL: https://cgit.FreeBSD.org/src/commit/?id=1e01c7ed628161e1eb46dfb97b3a8c74dbb7e8db commit 1e01c7ed628161e1eb46dfb97b3a8c74dbb7e8db Author: Vincenzo Maffione AuthorDate: 2023-03-14 21:59:23 +0000 Commit: Vincenzo Maffione CommitDate: 2023-03-28 21:58:26 +0000 netmap: get rid of save_if_input for emulated adapters The save_if_input function pointer was meant to save the previous value of ifp->if_input before replacing it with the emulated adapter hook. However, the same pointer value is already stored in the if_input field of the netmap_adapter struct, to be used for host TX ring processing. Reuse the netmap_adapter if_input field to simplify the code and save some space. MFC after: 14 days (cherry picked from commit 6c9fe357435db6408ec6b01221b9ff9e7e9b0ff1) --- sys/dev/netmap/netmap_freebsd.c | 20 ++------------------ sys/dev/netmap/netmap_kern.h | 3 --- 2 files changed, 2 insertions(+), 21 deletions(-) diff --git a/sys/dev/netmap/netmap_freebsd.c b/sys/dev/netmap/netmap_freebsd.c index b9055d589df1..19708406dc93 100644 --- a/sys/dev/netmap/netmap_freebsd.c +++ b/sys/dev/netmap/netmap_freebsd.c @@ -327,9 +327,7 @@ freebsd_generic_rx_handler(struct ifnet *ifp, struct mbuf *m) stolen = generic_rx_handler(ifp, m); if (!stolen) { - struct netmap_generic_adapter *gna = - (struct netmap_generic_adapter *)NA(ifp); - gna->save_if_input(ifp, m); + NA(ifp)->if_input(ifp, m); } } @@ -346,24 +344,10 @@ nm_os_catch_rx(struct netmap_generic_adapter *gna, int intercept) nm_os_ifnet_lock(); if (intercept) { - if (gna->save_if_input) { - nm_prerr("RX on %s already intercepted", na->name); - ret = EBUSY; /* already set */ - goto out; - } - gna->save_if_input = ifp->if_input; ifp->if_input = freebsd_generic_rx_handler; } else { - if (!gna->save_if_input) { - nm_prerr("Failed to undo RX intercept on %s", - na->name); - ret = EINVAL; /* not saved */ - goto out; - } - ifp->if_input = gna->save_if_input; - gna->save_if_input = NULL; + ifp->if_input = na->if_input; } -out: nm_os_ifnet_unlock(); return ret; diff --git a/sys/dev/netmap/netmap_kern.h b/sys/dev/netmap/netmap_kern.h index 195b5de7a502..237b2b39047a 100644 --- a/sys/dev/netmap/netmap_kern.h +++ b/sys/dev/netmap/netmap_kern.h @@ -987,11 +987,8 @@ struct netmap_generic_adapter { /* emulated device */ struct netmap_adapter *prev; /* Emulated netmap adapters support: - * - save_if_input saves the if_input hook (FreeBSD); * - mit implements rx interrupt mitigation; */ - void (*save_if_input)(struct ifnet *, struct mbuf *); - struct nm_generic_mit *mit; #ifdef linux netdev_tx_t (*save_start_xmit)(struct mbuf *, struct ifnet *); From nobody Tue Mar 28 22:50:49 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PmPzY3Khsz42Y2j; Tue, 28 Mar 2023 22:50: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 4PmPzY2vlpz3MFX; Tue, 28 Mar 2023 22:50:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680043849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nI6sZ9JLYJ7WSKYT76sXyiD20ChK/d/rTV+RhWpv5uU=; b=XX5ROyb0Ol0H1zXx3pdddswnPDqm7TEDbdJbFa0B3xB5+tozFvPhpfr+FCZNP04aGVgLeI D+3ZHf7ZMnjZ79fF3/xksF/XJFuLhaH4DFNzkG77FOUB7VLxBj9gAjr+4QwvhWCLw2U+Xm WxwdEG1kXZ07AgAZu0suSBv0IF7ilSUfH+a5ce4lj1j1WepWCeFH3uLcNAGvFpnwyAMsdm oeAUi6RNx3Jgz7gZc13X+wOSOpSdLYNzyDBUes8v0L41dfRAzPNgFjahXEnLmBoN08m66o cSAqNHQi4a3/z2p8h4I421WToHfabygKaWhPrsuQIpDC/mHz1ckCvhKdp4/DFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680043849; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nI6sZ9JLYJ7WSKYT76sXyiD20ChK/d/rTV+RhWpv5uU=; b=JprcwAPWq9Fsu5Y3q2KmYa2Pq3AQB8DfD4qG2nKq+ft2hWpu62MW5iq7eLtT3l2MYaPQEL uOdGdo/1f9Zuhu6ZUYeKfHz+ZXO4Y4e9tZGdo2mGe/+pS/E2ltgmqeIRIvRlS7gttXZjsX HlOI/Sa1bzc3tgjd+48dermmI2kbOduIFjhLWqgLpnRRTxC8MVg85ogzr6GrHGsfZPYA81 rnt6t1NESDYDUT9mrYn/LiFZztw37hKW6pJCJbubXB0AzDtobMeBgtd3kr58Q7yJb5lT1m BF7rmjUqUgnbT+nyhRNemy5dO9gWXq4GB8GBNm5iI5TNGVka/orimDz3kiKhxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680043849; a=rsa-sha256; cv=none; b=dYj+2t9+zQfweSQZmqZ9PVceqXEoMmXeqC1g9CvVOBducAWwdHCcH7XAyFWgrKNRTSxITy gJlbWBoz7SNOMuTgyqVV2zUV9/fX1vb3NWQFUUA40puul2ebvNhFU8fg5Gq3TT/ctbLrjH 52mnd7cWvc6FYufH2qi92LrlWu9IsonQhS7eqO/4QW47FCNfudeQyLkELfCZ9iRkINb+az H1wCUfOkzt/vpg9oQnmpgPR9d8nRnzDMxPf7h4XJGYANxxVtpQGg8SHZJUalYqFt496W7B TPGSpqB/c9NA/YQSWSMqMPZZSPjS8V3+DVf2roFqGJ866v5f1NFoyWu0jf2iwg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PmPzY1zSXz1L21; Tue, 28 Mar 2023 22:50:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32SMon1E057436; Tue, 28 Mar 2023 22:50:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32SMonEg057435; Tue, 28 Mar 2023 22:50:49 GMT (envelope-from git) Date: Tue, 28 Mar 2023 22:50:49 GMT Message-Id: <202303282250.32SMonEg057435@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: bfd32571efc7 - stable/13 - Updates to UFS/FFS superblock integrity checks when reading a superblock. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bfd32571efc73fdb7f0614dd94f86402680983b3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=bfd32571efc73fdb7f0614dd94f86402680983b3 commit bfd32571efc73fdb7f0614dd94f86402680983b3 Author: Kirk McKusick AuthorDate: 2023-03-28 22:49:49 +0000 Commit: Kirk McKusick CommitDate: 2023-03-28 22:50:38 +0000 Updates to UFS/FFS superblock integrity checks when reading a superblock. Back out MFC commit 4660b60a00c3120ddecd94b3f308d39bcb6d085a as it has had reported problems. --- 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 2f69965aba7e..d847373a8cde 100644 --- a/sys/ufs/ffs/ffs_subr.c +++ b/sys/ufs/ffs/ffs_subr.c @@ -446,7 +446,6 @@ validate_sblock(struct fs *fs, int isaltsblk) CHK(fs->fs_old_cgoffset, <, 0, %jd); CHK2(fs->fs_old_cgoffset, >, 0, ~fs->fs_old_cgmask, <, 0, %jd); CHK(fs->fs_old_cgoffset * (~fs->fs_old_cgmask), >, fs->fs_fpg, %jd); - CHK(CGSIZE(fs), >, fs->fs_bsize, %jd); /* * If anything has failed up to this point, it is usafe to proceed * as checks below may divide by zero or make other fatal calculations. From nobody Wed Mar 29 01:19:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PmTHS2tT6z42hqC; Wed, 29 Mar 2023 01:19: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 4PmTHS2HZ7z3qGF; Wed, 29 Mar 2023 01:19:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680052788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qqTYQyJR95bGq/oOoDjGLegtE1lWnioyQIjpOdfNNqE=; b=y05eHkL3BHPfaBCK2BC0EJXZ3YHUKqf81CyrLAszUKb/qq9j2rRTE8tA2rgzVjLVEilBQ7 WTJ2sDr3RNNEOg9wt/DVJ0HQ9X4Q0XlDhQCx+Y1y1mCHE6fA9fyoCpFn5BsIqtE67yamFv tzx7TDJpaE5khhWO3i42GH+Cw7IzpUaSDeYjzvKbCuRieXbAYzQIxZZn6PAoR25Rx++Zqt NsFFvVDYWlnEztkVSfpupvoF3XfLxB2AUqnCTcuVSL3cvHbsPQkwGVnzjLmhETjCAHKFlC IEW/OB1S3U/4rPDwhqA+geY6derfzNgKvaBDWsZcV/suZVH8r4jTbf+uFbtNYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680052788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qqTYQyJR95bGq/oOoDjGLegtE1lWnioyQIjpOdfNNqE=; b=qZWZbHNFnBvjravwo9G0ivYLtnvX8uFQ7yGFI+57n3s6r/WEv1DtuQVWDj+mPo3H87wLWH sahg8Y6EW1X4RxfvF9DkWqfEUC8inlTM4oVczYzxuNBucxDW+CyaDuWIJpbu9Frvk1YCns y6bj4l7Uq6BV+sAQP7bqozKlbHAOvxB5NVvdmKD5TpC/fMrGbi+3mSE1yVjpjCiMk8GTdL zLkZMbR+kYRqegADJsbOSpm1tXd768+T7FmB/En0C/P/j9guxvcPsI40l61NbzELd4JkG3 6GzJ5h3Mz9KFgHBhmnoP4dtEaJMMGf9aZIkPEkZnT+oizDHusLd6WbodlwBWMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680052788; a=rsa-sha256; cv=none; b=wR9vND4El5c9GMfamDYjKPPJ0wtmOKXwlRLqYbtQmOKyiLD3MzA3h0GRAAmK2UG75oNXxg BO2YAgJ0z9qzxF5hk7nJVsno8gn+G8tYig5qFQdfpBUuSzMYgyXDVi55fzaZfH97l+ATRl ikPn5bOPfXUvK4SGST9OMZQJRj3ZzSGvWOTbRH5G2x75cvWbQXKgCZ2htp6AYMH9wW5yLG I+y3lFyKfTO9tIxjFA5SBbKRzQ6LOnWvG4N3S2SQWOm1CO5AlaE3QIZQePntBqzTOEhKYC esM+RX5P1B85rBWj5PmlAuJgaGlZi/wWhX14PyVTHWO7aallOxB2PNeAQ2N5zQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PmTHS1Lhdz1QNx; Wed, 29 Mar 2023 01:19:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32T1Jm0d094921; Wed, 29 Mar 2023 01:19:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32T1Jmsd094920; Wed, 29 Mar 2023 01:19:48 GMT (envelope-from git) Date: Wed, 29 Mar 2023 01:19:48 GMT Message-Id: <202303290119.32T1Jmsd094920@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: bb7b15831531 - stable/13 - contrib/tzdata: import tzdata 2023c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bb7b15831531a85b1d29e80358e3b80cc799094a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=bb7b15831531a85b1d29e80358e3b80cc799094a commit bb7b15831531a85b1d29e80358e3b80cc799094a Author: Philip Paeps AuthorDate: 2023-03-29 01:09:54 +0000 Commit: Philip Paeps CommitDate: 2023-03-29 01:19:25 +0000 contrib/tzdata: import tzdata 2023c Changes: https://github.com/eggert/tz/blob/2023c/NEWS The tzdata 2023c release reverts all changes made in 2023b other than commentary, as that appears to be the best of a bad set of short-notice choices for modeling this week's daylight saving chaos in Lebanon. (cherry picked from commit 9fbeeb6e38310b4f42a14c4b043bbee82c5e4752) --- contrib/tzdata/NEWS | 13 +++++++++---- contrib/tzdata/asia | 40 +++++++++++++++++++++++++++++++++++----- contrib/tzdata/version | 2 +- 3 files changed, 45 insertions(+), 10 deletions(-) diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 9b235a293962..b54538aa4a82 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,14 +1,19 @@ News for the tz database -Release 2023b - 2023-03-23 19:50:38 -0700 +Release 2023c - 2023-03-28 12:42:14 -0700 - Briefly: - Lebanon delays the start of DST this year. + Changes to past and future timestamps + + Model Lebanon's DST chaos by reverting data to tzdb 2023a. + (Thanks to Rany Hany for the heads-up.) + + +Release 2023b - 2023-03-23 19:50:38 -0700 Changes to future timestamps This year Lebanon springs forward April 20/21 not March 25/26. - (Thanks to Saadallah Itani.) + (Thanks to Saadallah Itani.) [This was reverted in 2023c.] Release 2023a - 2023-03-22 12:39:33 -0700 diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index dd06a5fd21fe..a29a4dc0c4de 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -2693,9 +2693,37 @@ Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1 # Lebanon # # From Saadallah Itani (2023-03-23): -# Lebanon too announced today delay of Spring forward from March 25 to April 20. -# From Paul Eggert (2023-03-23): +# Lebanon ... announced today delay of Spring forward from March 25 to April 20. +# +# From Paul Eggert (2023-03-27): +# This announcement was by the Lebanese caretaker prime minister Najib Mikati. # https://www.mtv.com.lb/en/News/Local/1352516/lebanon-postpones-daylight-saving-time-adoption +# A video was later leaked to the media of parliament speaker Nabih Berri +# asking Mikati to postpone DST to aid observance of Ramadan, Mikati objecting +# that this would cause problems such as scheduling airline flights, to which +# Berri interjected, "What flights?" +# +# The change was controversial and led to a partly-sectarian divide. +# Many Lebanese institutions, including the education ministry, the Maronite +# church, and two news channels LCBI and MTV, ignored the announcement and +# went ahead with the long-scheduled spring-forward on March 25/26, some +# arguing that the prime minister had not followed the law because the change +# had not been approved by the cabinet. Google went with the announcement; +# Apple ignored it. At least one bank followed the announcement for its doors, +# but ignored the announcement in internal computer systems. +# Beirut international airport listed two times for each departure. +# Dan Azzi wrote "My view is that this whole thing is a Dumb and Dumber movie." +# Eventually the prime minister backed down, said the cabinet had decided to +# stick with its 1998 decision, and that DST would begin midnight March 29/30. +# https://www.nna-leb.gov.lb/en/miscellaneous/604093/lebanon-has-two-times-of-day-amid-daylight-savings +# https://www.cnbc.com/2023/03/27/lebanon-in-two-different-time-zones-as-government-disagrees-on-daylight-savings.html +# +# Although we could model the chaos with two Zones, that would likely cause +# more trouble than it would cure. Since so many manual clocks and +# computer-based timestamps ignored the announcement, stick with official +# cabinet resolutions in the data while recording the prime minister's +# announcement as a comment. This is how we treated a similar situation in +# Rio de Janeiro in spring 1993. # # Rule NAME FROM TO - IN ON AT SAVE LETTER/S Rule Lebanon 1920 only - Mar 28 0:00 1:00 S @@ -2719,11 +2747,13 @@ Rule Lebanon 1988 only - Jun 1 0:00 1:00 S Rule Lebanon 1989 only - May 10 0:00 1:00 S Rule Lebanon 1990 1992 - May 1 0:00 1:00 S Rule Lebanon 1992 only - Oct 4 0:00 0 - -Rule Lebanon 1993 2022 - Mar lastSun 0:00 1:00 S +Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 - Rule Lebanon 1999 max - Oct lastSun 0:00 0 - -Rule Lebanon 2023 only - Apr 21 0:00 1:00 S -Rule Lebanon 2024 max - Mar lastSun 0:00 1:00 S +# This one-time rule, announced by the prime minister first for April 21 +# then for March 30, is commented out for reasons described above. +#Rule Lebanon 2023 only - Mar 30 0:00 1:00 S + # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Beirut 2:22:00 - LMT 1880 2:00 Lebanon EE%sT diff --git a/contrib/tzdata/version b/contrib/tzdata/version index 74a7fa8ae9e6..7daa77e00d99 100644 --- a/contrib/tzdata/version +++ b/contrib/tzdata/version @@ -1 +1 @@ -2023b +2023c From nobody Wed Mar 29 01:20:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PmTJD6yRlz42jDP; Wed, 29 Mar 2023 01:20: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 4PmTJD6MHDz3qdW; Wed, 29 Mar 2023 01:20:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680052828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7TmlS4Z++cHBamBXwfSBfEWTMKYXfXSTbtIsEfsM22w=; b=gXWFEF7vuk0LysH0SP4eo1AzkHrP8EKYCI7tc5SLjho2cNeoyIl9rBNaeAXDgvdhEZyYGx G8vZsyk4nokYelGHJnbIfFcJiiH92K8NHy5figNJBnv7l5A55uYPUqltPk5pISr8uJa0mK l2nz5d9ST6REmBCW+jSyfrCiaVpBlgfbwa28I+hyKnWwPbBwMWmaq1t1ZrIMgNqIkSSN2S sSVXyX+l2US+bf9T8GG+PvmtDxyVswccQSiel26ZUOByReooVNdXbIyMZbOkx/t1284ycd r3JYEVGLGOQhG9tVmIIBlQfCqdZ+NLfYQTfOAABb++1655JhQ3wt227PHzYcfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680052828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7TmlS4Z++cHBamBXwfSBfEWTMKYXfXSTbtIsEfsM22w=; b=blEcC5/gbs/5Luotn+nxnkPuTGWfGK25rnRtGusZ0cQpbSLKx7DkgKZDgE/1g4krZ5EnzB OJgMeYfRMrhyaA4GusIXoL4Z3oOk2nJXL2HrDdoDrq1lRd9Q6Jhv+qaxyKVZVa5XFLf3m/ YIRLOEhBOBI1eM/FLEUPVvztaY9LqfFi5e5LddhAHGEHjoryA+I+b4XRaOT0aocYsf3cNx oj4v1J/JI/NmNUmT+ifW8WJMcQQEq5e/w1ORkmqC4nFqCeELMn1sd2Jb00VVGkLz8tkLFl YkqjgeVFWUmSRRQUSTkFckEvRUqiasSDk8XvT+ulPN1Ua/XylJRMOz8yFpW3yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680052828; a=rsa-sha256; cv=none; b=euPmrfcriGlmb83Lro86ACWYpmi+cmZcEOQwRVnwUJW9NXFu/QJlerCaBsEtTLhnLuXCYZ HXjA/tmsK83xg9L273KBhQ76O7GkdFXAJtaBXhcVTRvuAZwB9cS8D2awUPutU5EhucjmNP GoICpCgOjYABCILuSl1dVaOpThrkEeMfLHFYQka6ZpZ9iYKRzC9zcqdN7tdWopgNcHm637 ay0qTESCwkUoYxnojRYbyIxBVcaGIFpdK3wMV8ZbSoTrLpjGwe0ay2iXV6FRp7fSpah/Nr pz8HEH28JCSOiyqTODEWVlRSJBSnSZ2n+JMBcVMRFV+BfDSPCN4xkugX7uOINw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PmTJD4zh1z1Pty; Wed, 29 Mar 2023 01:20:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32T1KS4q003609; Wed, 29 Mar 2023 01:20:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32T1KS86003608; Wed, 29 Mar 2023 01:20:28 GMT (envelope-from git) Date: Wed, 29 Mar 2023 01:20:28 GMT Message-Id: <202303290120.32T1KS86003608@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: 7da23e6521d1 - stable/12 - contrib/tzdata: import tzdata 2023c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 7da23e6521d171845311817bac904f252a3b4478 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=7da23e6521d171845311817bac904f252a3b4478 commit 7da23e6521d171845311817bac904f252a3b4478 Author: Philip Paeps AuthorDate: 2023-03-29 01:09:54 +0000 Commit: Philip Paeps CommitDate: 2023-03-29 01:20:06 +0000 contrib/tzdata: import tzdata 2023c Changes: https://github.com/eggert/tz/blob/2023c/NEWS The tzdata 2023c release reverts all changes made in 2023b other than commentary, as that appears to be the best of a bad set of short-notice choices for modeling this week's daylight saving chaos in Lebanon. (cherry picked from commit 9fbeeb6e38310b4f42a14c4b043bbee82c5e4752) --- contrib/tzdata/NEWS | 13 +++++++++---- contrib/tzdata/asia | 40 +++++++++++++++++++++++++++++++++++----- contrib/tzdata/version | 2 +- 3 files changed, 45 insertions(+), 10 deletions(-) diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 9b235a293962..b54538aa4a82 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,14 +1,19 @@ News for the tz database -Release 2023b - 2023-03-23 19:50:38 -0700 +Release 2023c - 2023-03-28 12:42:14 -0700 - Briefly: - Lebanon delays the start of DST this year. + Changes to past and future timestamps + + Model Lebanon's DST chaos by reverting data to tzdb 2023a. + (Thanks to Rany Hany for the heads-up.) + + +Release 2023b - 2023-03-23 19:50:38 -0700 Changes to future timestamps This year Lebanon springs forward April 20/21 not March 25/26. - (Thanks to Saadallah Itani.) + (Thanks to Saadallah Itani.) [This was reverted in 2023c.] Release 2023a - 2023-03-22 12:39:33 -0700 diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index dd06a5fd21fe..a29a4dc0c4de 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -2693,9 +2693,37 @@ Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1 # Lebanon # # From Saadallah Itani (2023-03-23): -# Lebanon too announced today delay of Spring forward from March 25 to April 20. -# From Paul Eggert (2023-03-23): +# Lebanon ... announced today delay of Spring forward from March 25 to April 20. +# +# From Paul Eggert (2023-03-27): +# This announcement was by the Lebanese caretaker prime minister Najib Mikati. # https://www.mtv.com.lb/en/News/Local/1352516/lebanon-postpones-daylight-saving-time-adoption +# A video was later leaked to the media of parliament speaker Nabih Berri +# asking Mikati to postpone DST to aid observance of Ramadan, Mikati objecting +# that this would cause problems such as scheduling airline flights, to which +# Berri interjected, "What flights?" +# +# The change was controversial and led to a partly-sectarian divide. +# Many Lebanese institutions, including the education ministry, the Maronite +# church, and two news channels LCBI and MTV, ignored the announcement and +# went ahead with the long-scheduled spring-forward on March 25/26, some +# arguing that the prime minister had not followed the law because the change +# had not been approved by the cabinet. Google went with the announcement; +# Apple ignored it. At least one bank followed the announcement for its doors, +# but ignored the announcement in internal computer systems. +# Beirut international airport listed two times for each departure. +# Dan Azzi wrote "My view is that this whole thing is a Dumb and Dumber movie." +# Eventually the prime minister backed down, said the cabinet had decided to +# stick with its 1998 decision, and that DST would begin midnight March 29/30. +# https://www.nna-leb.gov.lb/en/miscellaneous/604093/lebanon-has-two-times-of-day-amid-daylight-savings +# https://www.cnbc.com/2023/03/27/lebanon-in-two-different-time-zones-as-government-disagrees-on-daylight-savings.html +# +# Although we could model the chaos with two Zones, that would likely cause +# more trouble than it would cure. Since so many manual clocks and +# computer-based timestamps ignored the announcement, stick with official +# cabinet resolutions in the data while recording the prime minister's +# announcement as a comment. This is how we treated a similar situation in +# Rio de Janeiro in spring 1993. # # Rule NAME FROM TO - IN ON AT SAVE LETTER/S Rule Lebanon 1920 only - Mar 28 0:00 1:00 S @@ -2719,11 +2747,13 @@ Rule Lebanon 1988 only - Jun 1 0:00 1:00 S Rule Lebanon 1989 only - May 10 0:00 1:00 S Rule Lebanon 1990 1992 - May 1 0:00 1:00 S Rule Lebanon 1992 only - Oct 4 0:00 0 - -Rule Lebanon 1993 2022 - Mar lastSun 0:00 1:00 S +Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 - Rule Lebanon 1999 max - Oct lastSun 0:00 0 - -Rule Lebanon 2023 only - Apr 21 0:00 1:00 S -Rule Lebanon 2024 max - Mar lastSun 0:00 1:00 S +# This one-time rule, announced by the prime minister first for April 21 +# then for March 30, is commented out for reasons described above. +#Rule Lebanon 2023 only - Mar 30 0:00 1:00 S + # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Beirut 2:22:00 - LMT 1880 2:00 Lebanon EE%sT diff --git a/contrib/tzdata/version b/contrib/tzdata/version index 74a7fa8ae9e6..7daa77e00d99 100644 --- a/contrib/tzdata/version +++ b/contrib/tzdata/version @@ -1 +1 @@ -2023b +2023c From nobody Wed Mar 29 04:35:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PmYdD0K0Nz41x9P; Wed, 29 Mar 2023 04:35: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 4PmYdC6wBPz4FJw; Wed, 29 Mar 2023 04:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680064528; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i8Bd7Y8Z9GOgPD4A81KVtuw3QcMqLj+V/a0UdkxFtFo=; b=OIgHD66MsYeD4UVj92l2Y8ynGlrS6+bqd7Umvh/T5U1Bq18wYuBrUbz5um/xDSzITDVUjA cB46zAxLH/726EUx/ZHY7THaEeAZvuScXzoWaWbuP1NynmWq7G3yj2aHQmx9JzVIkwBRgr 3/E2rErPPE9lv0M8BB9iw5mKfKg1MmUmKn1ScwZqGSBwW0KqGNj2GVmkMtIlnnjZs7ZlAe iZouR9Azjbj5wcHxz+UgGoixwa6NuRPGVolZhgul0+dSMQBigL3R69PWD5ptj9m/ncgLMj JMQHCRvbH7Zo6RDyuIiGyDBbmK3/OUqtx/+Wyq0fFOKLqTw0mZK/tPTiCCtTEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680064528; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i8Bd7Y8Z9GOgPD4A81KVtuw3QcMqLj+V/a0UdkxFtFo=; b=e81hl4SgdR0Mb5KbEcRChSrG8x/dvFEPpfY+zSf25KZtAaUkzTUixYwJc4pvptXItD6lbt ULfyzJR1hNAzRmLehmZ39DEORFztXliUekklErfaZZspNHS+SDQQido9QUVz96kqD8b++m l79rEbUvqLNIgVdNbg5/zXKIWFhwn4Je0lSh6RcQ2Sl+m9amGjtLzcwRMpUE3srE2iNSY9 xP12EyLyQusrjXXkBkNiyEWm04BQQk5XOz9w0GbNSplR7I38HcihUkRjpbK3GX/9MINx9E BbNMZN0dt/2imDOIBn+t/UAaD4AEP1ua2o5py0XxLSk0rpsp5D/yM0w+n17BXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680064528; a=rsa-sha256; cv=none; b=f6WxsPD0bsTY0ovRReqgC8e+74V8GIdp06XmfyTHOO/TwYnJUQiKZ4SPV3BwX5TN2+JNEJ CaUdFsaslbutxPbGKUqKwOYP/My6S4APxUJtGqIoLot6yjvO/CykTeJ0s3/C9VOvUUjHBr KSFSng+gUyrU61JwAp0GCeJmYwTLqB24Yi5RTM95QGrmrIhNzgmxDvPgT7kBMlEsPxQoKT Gj4PDi67P/b1AUPtRgy2LCsOev+bvtWS2EgiWyzeT1YxNKdMRUCqBzeHXOOTypWoAM3VLC /fkM+zPpKqpGFQnqlTVIidbJMuJ16Ea1jMGIDwCx0xALpAlQFqkUt0keAVmYGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PmYdC5zkXzGpZ; Wed, 29 Mar 2023 04:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32T4ZRnc024861; Wed, 29 Mar 2023 04:35:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32T4ZRpL024860; Wed, 29 Mar 2023 04:35:27 GMT (envelope-from git) Date: Wed, 29 Mar 2023 04:35:27 GMT Message-Id: <202303290435.32T4ZRpL024860@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: 57472c9a30ab - releng/13.2 - contrib/tzdata: import tzdata 2023c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/releng/13.2 X-Git-Reftype: branch X-Git-Commit: 57472c9a30abce230797fcf1e9435fb603d7425e Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch releng/13.2 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=57472c9a30abce230797fcf1e9435fb603d7425e commit 57472c9a30abce230797fcf1e9435fb603d7425e Author: Philip Paeps AuthorDate: 2023-03-29 01:09:54 +0000 Commit: Philip Paeps CommitDate: 2023-03-29 02:32:25 +0000 contrib/tzdata: import tzdata 2023c Changes: https://github.com/eggert/tz/blob/2023c/NEWS The tzdata 2023c release reverts all changes made in 2023b other than commentary, as that appears to be the best of a bad set of short-notice choices for modeling this week's daylight saving chaos in Lebanon. Approved by: re (cperciva) (cherry picked from commit 9fbeeb6e38310b4f42a14c4b043bbee82c5e4752) (cherry picked from commit bb7b15831531a85b1d29e80358e3b80cc799094a) --- contrib/tzdata/NEWS | 13 +++++++++---- contrib/tzdata/asia | 40 +++++++++++++++++++++++++++++++++++----- contrib/tzdata/version | 2 +- 3 files changed, 45 insertions(+), 10 deletions(-) diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 9b235a293962..b54538aa4a82 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,14 +1,19 @@ News for the tz database -Release 2023b - 2023-03-23 19:50:38 -0700 +Release 2023c - 2023-03-28 12:42:14 -0700 - Briefly: - Lebanon delays the start of DST this year. + Changes to past and future timestamps + + Model Lebanon's DST chaos by reverting data to tzdb 2023a. + (Thanks to Rany Hany for the heads-up.) + + +Release 2023b - 2023-03-23 19:50:38 -0700 Changes to future timestamps This year Lebanon springs forward April 20/21 not March 25/26. - (Thanks to Saadallah Itani.) + (Thanks to Saadallah Itani.) [This was reverted in 2023c.] Release 2023a - 2023-03-22 12:39:33 -0700 diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index dd06a5fd21fe..a29a4dc0c4de 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -2693,9 +2693,37 @@ Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1 # Lebanon # # From Saadallah Itani (2023-03-23): -# Lebanon too announced today delay of Spring forward from March 25 to April 20. -# From Paul Eggert (2023-03-23): +# Lebanon ... announced today delay of Spring forward from March 25 to April 20. +# +# From Paul Eggert (2023-03-27): +# This announcement was by the Lebanese caretaker prime minister Najib Mikati. # https://www.mtv.com.lb/en/News/Local/1352516/lebanon-postpones-daylight-saving-time-adoption +# A video was later leaked to the media of parliament speaker Nabih Berri +# asking Mikati to postpone DST to aid observance of Ramadan, Mikati objecting +# that this would cause problems such as scheduling airline flights, to which +# Berri interjected, "What flights?" +# +# The change was controversial and led to a partly-sectarian divide. +# Many Lebanese institutions, including the education ministry, the Maronite +# church, and two news channels LCBI and MTV, ignored the announcement and +# went ahead with the long-scheduled spring-forward on March 25/26, some +# arguing that the prime minister had not followed the law because the change +# had not been approved by the cabinet. Google went with the announcement; +# Apple ignored it. At least one bank followed the announcement for its doors, +# but ignored the announcement in internal computer systems. +# Beirut international airport listed two times for each departure. +# Dan Azzi wrote "My view is that this whole thing is a Dumb and Dumber movie." +# Eventually the prime minister backed down, said the cabinet had decided to +# stick with its 1998 decision, and that DST would begin midnight March 29/30. +# https://www.nna-leb.gov.lb/en/miscellaneous/604093/lebanon-has-two-times-of-day-amid-daylight-savings +# https://www.cnbc.com/2023/03/27/lebanon-in-two-different-time-zones-as-government-disagrees-on-daylight-savings.html +# +# Although we could model the chaos with two Zones, that would likely cause +# more trouble than it would cure. Since so many manual clocks and +# computer-based timestamps ignored the announcement, stick with official +# cabinet resolutions in the data while recording the prime minister's +# announcement as a comment. This is how we treated a similar situation in +# Rio de Janeiro in spring 1993. # # Rule NAME FROM TO - IN ON AT SAVE LETTER/S Rule Lebanon 1920 only - Mar 28 0:00 1:00 S @@ -2719,11 +2747,13 @@ Rule Lebanon 1988 only - Jun 1 0:00 1:00 S Rule Lebanon 1989 only - May 10 0:00 1:00 S Rule Lebanon 1990 1992 - May 1 0:00 1:00 S Rule Lebanon 1992 only - Oct 4 0:00 0 - -Rule Lebanon 1993 2022 - Mar lastSun 0:00 1:00 S +Rule Lebanon 1993 max - Mar lastSun 0:00 1:00 S Rule Lebanon 1993 1998 - Sep lastSun 0:00 0 - Rule Lebanon 1999 max - Oct lastSun 0:00 0 - -Rule Lebanon 2023 only - Apr 21 0:00 1:00 S -Rule Lebanon 2024 max - Mar lastSun 0:00 1:00 S +# This one-time rule, announced by the prime minister first for April 21 +# then for March 30, is commented out for reasons described above. +#Rule Lebanon 2023 only - Mar 30 0:00 1:00 S + # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Beirut 2:22:00 - LMT 1880 2:00 Lebanon EE%sT diff --git a/contrib/tzdata/version b/contrib/tzdata/version index 74a7fa8ae9e6..7daa77e00d99 100644 --- a/contrib/tzdata/version +++ b/contrib/tzdata/version @@ -1 +1 @@ -2023b +2023c From nobody Wed Mar 29 14:41:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pmq511W8Zz42djm; Wed, 29 Mar 2023 14:41: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 4Pmq510yz3z4P36; Wed, 29 Mar 2023 14:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680100917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ChHXnqIi/57RCX0le5II65BLDqAFT/Fkiv7Ep2ZI9Ps=; b=Y0gl/O+XdswDo2kv1jCjBMOgZtzW/OlJq0v/o/cTLhYqLi+9p1WkZvJIF2JFa15M610yW4 DKsO4Fo+hmC4G1NWhkq7xKVqUGMJoQlBoe6Eo7yLBKWkBFFa+JYnSbACNVVwYtGYwCp48U HKAU/83JUOQu64eePXfxjL04RJSNe4hJkFARGcZ3dGqxZr28uf6tvesNATBrO0I/HwfiK/ FtAdfQ/8KsUaREk+68tIqGKpMRQ460XEvpFrcc++LtoiBezxpmDE2teeBqhVUusCr+JYkH kmmeMfhLf9XddPI9BsdYVXuEwbPVESdjvCkF8joXetzctGiZ59pDslsDeHnc1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680100917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ChHXnqIi/57RCX0le5II65BLDqAFT/Fkiv7Ep2ZI9Ps=; b=YzDb4X/esglLZ/NvHNdsnn1n2d01kkrSmDyMKSZXFnzLS9Dp7H7mopSPlqgz9SOSkmw39J i5BfjIE80leHgsgqU3XHpK4QYlGR2KtPMMylsBEtzwm+VV21r/nEQzrV52TZS9ytvdPZuc UCjOpn2MhcxEwul4qSbAQfzz0V52PZCK5lGNV4sxjCRPfHvfSCOqouJCBxY2fm6WYk0HEL cl4EyTrHkDjZkyJFtTJftsTK0cz/azAt+viq5bYURrFzzH5BX5wB6Dvq4wpD3aD60Zh/lf Ltsxphx6FOyAl+trzdaOHoDnChyxwbsBRwP6aIlfUsM1f62N/UXPZ68uLVspUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680100917; a=rsa-sha256; cv=none; b=SeHKSk69xhwz5Tx10e6CyaqNXXP5bpzNBK0yK/aijrgoOr0IeFQek7fwZuqMPGSGiBUoBx iE2BDunKGv+T3xiWUf46ZkPGh4xC0AEmnEuTKEA9TLjl5c7JfS5hIo0hH0N9GtXjaBlHdR Zayt9UHisKM8LsEtRpxMyN9a5ChEnoEA0S3N94hNC5M+f4tx6cFsne4VoKeJ7L9UXfNbCK i29rNOUQ08uUgWR2mBY+wCxt/UD1SY61wHOvwAl+GThvhdWed6j7/4Ah6dpDAGnp9/sbi/ a4Fkws1nZRoqXyMJgh0tpiZKJp1nPwEP+O6ZD2RFoWF+LBKuwM3uY+12ToShnA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pmq5102hRzYws; Wed, 29 Mar 2023 14:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TEfuh2023884; Wed, 29 Mar 2023 14:41:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TEfuOD023883; Wed, 29 Mar 2023 14:41:56 GMT (envelope-from git) Date: Wed, 29 Mar 2023 14:41:56 GMT Message-Id: <202303291441.32TEfuOD023883@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 6ebf11e77cf5 - stable/13 - path_test: Add a test case for openat(O_EMPTY_PATH) in capability mode List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6ebf11e77cf5490caed1fd629586db3def0db030 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6ebf11e77cf5490caed1fd629586db3def0db030 commit 6ebf11e77cf5490caed1fd629586db3def0db030 Author: Mark Johnston AuthorDate: 2023-03-22 12:51:58 +0000 Commit: Mark Johnston CommitDate: 2023-03-29 14:41:47 +0000 path_test: Add a test case for openat(O_EMPTY_PATH) in capability mode MFC after: 1 week (cherry picked from commit e5e1d9c7b781470b2eb31d80f40927481e0053b8) --- tests/sys/file/path_test.c | 75 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/tests/sys/file/path_test.c b/tests/sys/file/path_test.c index a212325c7db6..130acababb21 100644 --- a/tests/sys/file/path_test.c +++ b/tests/sys/file/path_test.c @@ -208,6 +208,80 @@ ATF_TC_BODY(path_capsicum, tc) waitchild(child, 4); } +/* + * Check that a pathfd can be converted to a regular fd using openat() in + * capability mode, but that rights on the pathfd are respected. + */ +ATF_TC_WITHOUT_HEAD(path_capsicum_empty); +ATF_TC_BODY(path_capsicum_empty, tc) +{ + char path[PATH_MAX]; + cap_rights_t rights; + int dfd, fd, pathfd, pathdfd; + + mktfile(path, "path_capsicum.XXXXXX"); + + pathdfd = open(".", O_PATH); + ATF_REQUIRE_MSG(pathdfd >= 0, FMT_ERR("open")); + pathfd = open(path, O_PATH); + ATF_REQUIRE_MSG(pathfd >= 0, FMT_ERR("open")); + + ATF_REQUIRE(cap_enter() == 0); + + dfd = openat(pathdfd, "", O_DIRECTORY | O_EMPTY_PATH); + ATF_REQUIRE(dfd >= 0); + CHECKED_CLOSE(dfd); + + /* + * CAP_READ and CAP_LOOKUP should be sufficient to open a directory. + */ + cap_rights_init(&rights, CAP_READ | CAP_LOOKUP); + ATF_REQUIRE(cap_rights_limit(pathdfd, &rights) == 0); + dfd = openat(pathdfd, "", O_DIRECTORY | O_EMPTY_PATH); + ATF_REQUIRE(dfd >= 0); + CHECKED_CLOSE(dfd); + + /* + * ... CAP_READ on its own is not. + */ + cap_rights_init(&rights, CAP_READ); + ATF_REQUIRE(cap_rights_limit(pathdfd, &rights) == 0); + dfd = openat(pathdfd, "", O_DIRECTORY | O_EMPTY_PATH); + ATF_REQUIRE_ERRNO(ENOTCAPABLE, dfd == -1); + + /* + * Now try with a regular file. + */ + fd = openat(pathfd, "", O_RDWR | O_EMPTY_PATH); + ATF_REQUIRE(fd >= 0); + CHECKED_CLOSE(fd); + + cap_rights_init(&rights, CAP_READ | CAP_LOOKUP | CAP_WRITE); + ATF_REQUIRE(cap_rights_limit(pathfd, &rights) == 0); + fd = openat(pathfd, "", O_RDWR | O_EMPTY_PATH | O_APPEND); + ATF_REQUIRE(fd >= 0); + CHECKED_CLOSE(fd); + + /* + * CAP_SEEK is needed to open a file for writing without O_APPEND. + */ + cap_rights_init(&rights, CAP_READ | CAP_LOOKUP | CAP_WRITE); + ATF_REQUIRE(cap_rights_limit(pathfd, &rights) == 0); + fd = openat(pathfd, "", O_RDWR | O_EMPTY_PATH); + ATF_REQUIRE_ERRNO(ENOTCAPABLE, fd == -1); + + /* + * CAP_LOOKUP isn't sufficient to open a file for reading. + */ + cap_rights_init(&rights, CAP_LOOKUP); + ATF_REQUIRE(cap_rights_limit(pathfd, &rights) == 0); + fd = openat(pathfd, "", O_RDONLY | O_EMPTY_PATH); + ATF_REQUIRE_ERRNO(ENOTCAPABLE, fd == -1); + + CHECKED_CLOSE(pathfd); + CHECKED_CLOSE(pathdfd); +} + /* Make sure that ptrace(PT_COREDUMP) cannot be used to write to a path fd. */ ATF_TC_WITHOUT_HEAD(path_coredump); ATF_TC_BODY(path_coredump, tc) @@ -937,6 +1011,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, path_access); ATF_TP_ADD_TC(tp, path_aio); ATF_TP_ADD_TC(tp, path_capsicum); + ATF_TP_ADD_TC(tp, path_capsicum_empty); ATF_TP_ADD_TC(tp, path_coredump); ATF_TP_ADD_TC(tp, path_directory); ATF_TP_ADD_TC(tp, path_directory_not_root); From nobody Wed Mar 29 16:53:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pmt0K55nLz42nWn; Wed, 29 Mar 2023 16:53: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 4Pmt0K3S3rz4cbD; Wed, 29 Mar 2023 16:53:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4+2MvxDRmD+e+M7JdkzukexKF5qQxAQA8rXvxxR2lLI=; b=RKfKPxpo83/06ympKpZT1iWccCnOigAmfvRYQxUyXD2/5mHRiX+Qe3GFPv5KlRb6KaR5CB y3DwJrSJpXgQ7XoX3abE/NxbeHxFlCUxMXGJhgsub/9plqmeNtPJtbpJy6TcKQ0ydfW6+X 7775niGnFUGwiOwL7nu7EtD8TneOWvmf74lCBIxTslyEqGgSSxAySrv0Jx8hxnqk5+SvWt UszWkOSGnWQBZ9gySQLRtV2OxmqYRLm+lCuuLqPIRdFqUyuFSIKdyacBSAE7vDgMogCklN kZaEoNIIXrKlPbXUHEXjhu1G3jbdTDc4CKwbZVGYgUMp4mKXP8izVgK9BC78kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4+2MvxDRmD+e+M7JdkzukexKF5qQxAQA8rXvxxR2lLI=; b=KSqt/97bvLCAIPvIG4Pmc2lZYEg5vysNmAerP3e3kpGRvz0UPAW3OHkeCNcOGy4INq+Wuc 7uAcqDuqxHVa2b5Oomn4/jin+pdFqqqxDdLtZ1j/NfIt0DOr8D7Epjy3Nsg1E5KWCXQw8a KVzjoNr7ps2l64WndVuCjKhvMFjzFWkPlxgt1c6anjFVBli4VMPqDRfS4M5ml6JOSI5r3o cvDKShyP29Lh+3KFSIHz44TlKKwQ9gNcDIGVgkIxH2UleWCxoEWlWijilHdNVvoSX/1EGW 9y26pgO+frc87FVWmPFpVLqj3OfFPYLsOZlpWo20eODMASv2f1BFprZKZejT9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680108785; a=rsa-sha256; cv=none; b=nJ5I3J7ZueFBWon9KNdfe5Rr3mBCySBNVCH4Sf9mKMtymbSsZbzCtuBndXgWCHqihL7qik l4CuNtsTOIg27nnKdaMl904kiV1XHk61hc5CSVpHQ0vr9AMvNPne3fmFGJlVsUmxjBnxNX Dvq06RYeyBVRaRHhJOrXS6yDgv/7mpCJPNjXg7IrsUYswQCIVisi5nXEppIz+h+w9+cKKZ 8UUHJa5qIPMO0yB+C1HdpUR3XyL8yBkMmRrJ3Fqg18XPzrmZrIBJBP0qnCvEdCRVVw5CmO U2g5r1GJZUa4siFOEFrTpjd7VzJOB9easY3V8XQ4MPNWsdBQ2E7FSjVanERJWA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pmt0K2X73zdnK; Wed, 29 Mar 2023 16:53:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TGr5ZI039704; Wed, 29 Mar 2023 16:53:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TGr5BN039703; Wed, 29 Mar 2023 16:53:05 GMT (envelope-from git) Date: Wed, 29 Mar 2023 16:53:05 GMT Message-Id: <202303291653.32TGr5BN039703@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: fd16ee512374 - stable/13 - xhci(4): Add IDs for Zhaoxin USB 3.0 controllers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fd16ee51237444aa0cacacfdf7de1975485dcf35 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=fd16ee51237444aa0cacacfdf7de1975485dcf35 commit fd16ee51237444aa0cacacfdf7de1975485dcf35 Author: Dmitry Luhtionov AuthorDate: 2023-01-17 10:43:40 +0000 Commit: Zhenlei Huang CommitDate: 2023-03-29 16:37:14 +0000 xhci(4): Add IDs for Zhaoxin USB 3.0 controllers Reviewed by: hselasky Tested by: Weitao Wang MFC after: 1 week Sponsored by: NVIDIA Networking Differential Revision: https://reviews.freebsd.org/D38921 (cherry picked from commit 0d7064d58f897c95c3bd319b497f70c8177e0de6) (cherry picked from commit f50f53931edb24c5f30434603f5d1d3043effc0c) --- sys/dev/usb/controller/xhci_pci.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c index 31c361fd26e8..ad49ea7bb38f 100644 --- a/sys/dev/usb/controller/xhci_pci.c +++ b/sys/dev/usb/controller/xhci_pci.c @@ -65,6 +65,7 @@ __FBSDID("$FreeBSD$"); #define PCI_XHCI_VENDORID_AMD 0x1022 #define PCI_XHCI_VENDORID_INTEL 0x8086 #define PCI_XHCI_VENDORID_VMWARE 0x15ad +#define PCI_XHCI_VENDORID_ZHAOXIN 0x1d17 static device_probe_t xhci_pci_probe; static device_detach_t xhci_pci_detach; @@ -207,6 +208,13 @@ xhci_pci_match(device_t self) case 0x1ada10de: return ("NVIDIA TU106 USB 3.1 controller"); + case 0x92021d17: + return ("Zhaoxin ZX-100 USB 3.0 controller"); + case 0x92031d17: + return ("Zhaoxin ZX-200 USB 3.0 controller"); + case 0x92041d17: + return ("Zhaoxin ZX-E USB 3.0 controller"); + default: break; } @@ -395,6 +403,9 @@ xhci_pci_attach(device_t self) case PCI_XHCI_VENDORID_VMWARE: strlcpy(sc->sc_vendor, "VMware", sizeof(sc->sc_vendor)); break; + case PCI_XHCI_VENDORID_ZHAOXIN: + strlcpy(sc->sc_vendor, "Zhaoxin", sizeof(sc->sc_vendor)); + break; default: if (bootverbose) device_printf(self, "(New XHCI DeviceId=0x%08x)\n", From nobody Wed Mar 29 16:53:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pmt0L5Ctnz42nTT; Wed, 29 Mar 2023 16: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 4Pmt0L4MDtz4cKp; Wed, 29 Mar 2023 16: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=1680108786; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2DaNyADKBdFPnSQRIu+FLDeROo02qgnxKYZ8DWVPeRA=; b=YfZRAZR/wpB7D9SFVB6IksjevszxJqtQCMIAylrApX/qCkz21LoLSBK+MqbnSqTD2ecZ7U 7qnhZxe8zMW9Ho1Q5TLA1FdcDI1D5whwWqIdIn34QHNlXkAadrv9fDwmJaqPzSB/5E7Gg3 WGLdr6Vg794rUGDnTPU/yW8p9rD/Iv37dPJpKdEC58fMRt80fUFJk+fkNzDjzvInCl5JWS SQq+uJPddlcLZqF+wQ8PeoX7lysXcbmMsK915JDZkxl3APpOi/sGKMjX/ah9Aac2kHfw0W CIc4SD7Mrw5gCf2PtqXMxwfe99jY8ft/GZwJD0p2nkdQccM38AwD8mj4LvAl9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108786; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2DaNyADKBdFPnSQRIu+FLDeROo02qgnxKYZ8DWVPeRA=; b=vyQ+z8zeHvBHkCB97SFMkW+FcfVRJ2tFJBJJ/pLcuEli/uBjHaxSN+9BGCLi4iW6Vzvohb wtfrKAPc2AQHH2JsVLKbpxQgEY2dGrcSSLgO2CXSc4VENlz5ua/27WBzCZ9mJGg+TyvK0H bOeNm3gzGqD54cpz0J432ZZgQSx0c7w24huBjG+/uAOBUJIMX/Oj0JJKwAxf2O15NQurXR K072EClbTDjk6CSZAKVjtDwyp8a3tI9NNTvYPnEH8VvKOScroYJyr7zHchT9pJVIsYX8FN guWQAAWz5/PHM9q4WyrjvWx/oi70nigkQPFqDvfEdynZEXFf8jlyHHma3c5LfQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680108786; a=rsa-sha256; cv=none; b=XH3ZZlKFxtyMBaP/f16XjCP5pAf+QjzEE8eCyi/UzWXVemHh8WxqgUo2jY4wL4FwNK8VP+ gonkb7/j1AdmlbpxXjiTt4CzrsGJ+iP5mG998RTpJv01t3idpdCm9jm9T4zEFb7ylJxsXE WuUOs17ejiv0y1Fkt7ee0K1rP/217fyiP1kgThO1ewaEvObNmSqoUJp30izVIcn+Sw3Sqm uGstdWWafSgIvQQDVmTbLgXMFHvmWMjK5XfMkyGVARvShfjo5vTAxQfT2etorNZPife3Q/ T+J5WT98SdTCKs77QnA5f2bgHAS9jK1o4+P6jz7Eihj7kNS/AMiZesaVctnxLQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pmt0L3RgNzdcF; Wed, 29 Mar 2023 16:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TGr65k039725; Wed, 29 Mar 2023 16:53:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TGr630039724; Wed, 29 Mar 2023 16:53:06 GMT (envelope-from git) Date: Wed, 29 Mar 2023 16:53:06 GMT Message-Id: <202303291653.32TGr630039724@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: ffb8b19f767d - stable/13 - ehci(4): Add IDs for for Zhaoxin USB 2.0 controller List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ffb8b19f767da0c36a67fb76cbaa9f47457af184 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=ffb8b19f767da0c36a67fb76cbaa9f47457af184 commit ffb8b19f767da0c36a67fb76cbaa9f47457af184 Author: Dmitry Luhtionov AuthorDate: 2023-01-17 10:43:33 +0000 Commit: Zhenlei Huang CommitDate: 2023-03-29 16:49:21 +0000 ehci(4): Add IDs for for Zhaoxin USB 2.0 controller Tested by: Weitao Wang MFC after: 1 week Sponsored by: NVIDIA Networking Differential Revision: https://reviews.freebsd.org/D38923 (cherry picked from commit f9237e1937a4e399e08ca8e5bd88a60910e74be6) (cherry picked from commit 95b2d16b38a720108a51f9e8ce0685244e3e3ea4) --- sys/dev/usb/controller/ehci_pci.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/dev/usb/controller/ehci_pci.c b/sys/dev/usb/controller/ehci_pci.c index b536ea02b649..9018b2e4db40 100644 --- a/sys/dev/usb/controller/ehci_pci.c +++ b/sys/dev/usb/controller/ehci_pci.c @@ -96,6 +96,7 @@ __FBSDID("$FreeBSD$"); #define PCI_EHCI_VENDORID_NVIDIA2 0x10DE #define PCI_EHCI_VENDORID_VIA 0x1106 #define PCI_EHCI_VENDORID_VMWARE 0x15ad +#define PCI_EHCI_VENDORID_ZHAOXIN 0x1d17 static device_probe_t ehci_pci_probe; static device_attach_t ehci_pci_attach; @@ -224,6 +225,10 @@ ehci_pci_match(device_t self) case 0x077015ad: return ("VMware USB 2.0 controller"); + + case 0x31041d17: + return ("Zhaoxin ZX-100/ZX-200/ZX-E USB 2.0 controller"); + default: break; } @@ -409,6 +414,9 @@ ehci_pci_attach(device_t self) case PCI_EHCI_VENDORID_VMWARE: sprintf(sc->sc_vendor, "VMware"); break; + case PCI_EHCI_VENDORID_ZHAOXIN: + sprintf(sc->sc_vendor, "Zhaoxin"); + break; default: if (bootverbose) device_printf(self, "(New EHCI DeviceId=0x%08x)\n", From nobody Wed Mar 29 16:53:07 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pmt0M5Xrzz42nTb; Wed, 29 Mar 2023 16:53: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 4Pmt0M51twz4chH; Wed, 29 Mar 2023 16:53:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=68zrFtQysFubsKMDpTOf0dAUhfOEv6NSFvp/HHe0TmQ=; b=lEovmXnrbhjIR460tg10cXFIXAi5SG+gtM421+cJS8xCC1LZ3nHNdZBIqVZfwaQNKyJif/ P9IgVkdgqpIibrEgAuaRQS9s4C62p3m0ACZYU0Aq+n6rmC5vafvkNfpaSqCbS6s0ltSRti kN4g6NBzR+Hi+X6TB5AoWN/UH/OST4unVwtsGd4vD64slUEVe4UB8kDagiPASbTP8EkZCn TVCbKFF1nNPkiCB1mcFxdPmTZVans8pCUOHy1d84CCbarTmE6xsrrwJD5nKlabYs5LDcDW vLvmrJzjt4g+3IklIpmODdoRi15PstuNClsrHDC4CvVOw3LfbWMNVEo9iB5e5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=68zrFtQysFubsKMDpTOf0dAUhfOEv6NSFvp/HHe0TmQ=; b=xiOEBNM6XQPkkEiqXY3yBtE1DyxeR0ZntCwehjExf9UTW5Efdmvtek1R+iJK4mldNsBYih l9RrWKgKFEWikKs7XC0Qi6K5FFWoA7wVuidQclDxVOUa6QLQ8LImH1rbUeOfiCG40dBSyS YNtB2AN5M1OuMJRVSJNtlr5wPulUlkDvckdDlR13CgayQfsnl0yGMBFE+l3xGS1QvYtdbM 3+DGwpheasugU/hFzBmokpzXSWymsrFTXI4kliRg/nC4K3dUzZzMsD/wL5zTj2shpm89Gh X7A1H1dgV0aPhmCmMRU/496kOYvuNgbBkmxeMnnlEz9I2picuB+DFMZfalVNLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680108787; a=rsa-sha256; cv=none; b=iAkIOos9z9qUaAHlFyk9Hur3CHJAKUE6BzGqaVqNTkNyMBx3M7kHic3oL95WQqBej+XMOd zFQRyQqr0oNkcI5UufiKracOR4YCx+Ezc3AXQQcl3KVB9y46PTP90OgqxuB8VERSris2Gp 7e0gZzMBNQJ0SPrmVD9gzYFWLHdK+iDqdpKUsU8Kgvp3LtnDJnmaNZR4Am5qUf+avKfAUf hrTGXYXy9B2A4g303E05PR2+0z/4vzeW9eFOox125Icj9sZQSWOxjYaoQn1tUvR6gNl3BC hFgLzV5oOWStfz81nXybwImLB4uN5UG7DXjXWmJLAkMHXJ+16lejuz5oGulMGw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pmt0M46mzzdqk; Wed, 29 Mar 2023 16:53:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TGr7gY039749; Wed, 29 Mar 2023 16:53:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TGr7Le039748; Wed, 29 Mar 2023 16:53:07 GMT (envelope-from git) Date: Wed, 29 Mar 2023 16:53:07 GMT Message-Id: <202303291653.32TGr7Le039748@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: 4abe99d02d2e - stable/13 - uhci(4): Add IDs for Zhaoxin USB controller List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4abe99d02d2e28dfa8290b305d735d61ffd9cbca Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4abe99d02d2e28dfa8290b305d735d61ffd9cbca commit 4abe99d02d2e28dfa8290b305d735d61ffd9cbca Author: Dmitry Luhtionov AuthorDate: 2023-01-17 10:43:24 +0000 Commit: Zhenlei Huang CommitDate: 2023-03-29 16:49:31 +0000 uhci(4): Add IDs for Zhaoxin USB controller Tested by: Weitao Wang MFC after: 1 week Sponsored by: NVIDIA Networking Differential Revision: https://reviews.freebsd.org/D38924 (cherry picked from commit 986c7be472bd8b29bb280e72b57e6cbf1851b26f) (cherry picked from commit b754d7faafd3536889bb6078b9fd11ef2e7717d7) --- sys/dev/usb/controller/uhci_pci.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/dev/usb/controller/uhci_pci.c b/sys/dev/usb/controller/uhci_pci.c index e9036aa9ce23..07bc25b644e3 100644 --- a/sys/dev/usb/controller/uhci_pci.c +++ b/sys/dev/usb/controller/uhci_pci.c @@ -82,6 +82,7 @@ __FBSDID("$FreeBSD$"); #define PCI_UHCI_VENDORID_HP 0x103c #define PCI_UHCI_VENDORID_VIA 0x1106 #define PCI_UHCI_VENDORID_VMWARE 0x15ad +#define PCI_UHCI_VENDORID_ZHAOXIN 0x1d17 /* PIIX4E has no separate stepping */ @@ -240,6 +241,10 @@ uhci_pci_match(device_t self) case 0x077415ad: return ("VMware USB controller"); + + case 0x30381d17: + return ("Zhaoxin ZX-100/ZX-200/ZX-E USB controller"); + default: break; } @@ -333,6 +338,9 @@ uhci_pci_attach(device_t self) case PCI_UHCI_VENDORID_VMWARE: sprintf(sc->sc_vendor, "VMware"); break; + case PCI_UHCI_VENDORID_ZHAOXIN: + sprintf(sc->sc_vendor, "Zhaoxin"); + break; default: if (bootverbose) { device_printf(self, "(New UHCI DeviceId=0x%08x)\n", From nobody Wed Mar 29 16:53:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pmt0N6V62z42nNv; Wed, 29 Mar 2023 16:53: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 4Pmt0N63qMz4cwm; Wed, 29 Mar 2023 16:53:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t40W/B80o96iAPbg0pm3RDFk9BSec0AFlyb5sc6+1+Q=; b=s/EsSg1rOFZ6EuS7OVG0CidYmZfM1gw2wU5gWw5kE0JNh33kpCXWglRLDf1lI0FUZShN3m ZugtfUJ3DFW82iQIujkxxltVP2mdPy0ndy3cBHfMB4MYLoHzJvCSroMYg1ko71FdPKHWZm +R3dWpS5GN3ZWnUx6gZ8EUs1D8VgqMMnVDOgifXgd0wxCHj3p2uE9pyrpUBNKvLC9kbWa/ N8EeMM3k74N8hb7apy3t9FfSFo78eX1BsTL1U6yuT2yBuQMVtaFiLRRiB76pq7edxxtKj4 StadEr9pU88fMelkCnQFxjkIA2vGhwFvs/V3VRviE1LldvuBT20YcV/KrxeUwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680108788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t40W/B80o96iAPbg0pm3RDFk9BSec0AFlyb5sc6+1+Q=; b=wNRtwdnhSskl38wkyD5P/pisdvQfhPuUZq//OvkivzDoK56X8wHQ7kDCly76RJd0iFe6YY cyqhsqix23oV5C/wawIt5KXbNMPRKeOdl3mG+8v910b3ySSdlYzOBsEVLfToFpV0uCmrzA D76XRvrnjpRzVsKW692sxN59hr8DMHayvwC7mwKYv46yiEpvGSygSh9ouHLDpM6b2yUGP7 VHtWiRi/rSV+JZ9uviYXaLJyva89A1/16Unx9HkU+H9mwP4pwEFKLuqsr0V8xfaLRU1q4F lsRHe9ZEfn8vyToRcqToIBBh7GZmDvsUngLCVmmZlCSHSp0Jp1pb2X8lUxObzg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680108788; a=rsa-sha256; cv=none; b=kunO4l8yzpNPS5hPWQAJoSmTvD6OJ52C5FnbDMRJ/ToFXd+diFQbMZ96zD+1mDj9OsGYIh 5D/xWUzrLoY5ukY2WeWDnutXH21oair3oEnU5RHoCkrWOgyOyHzjgNG1wYRvS8D3MQcFVE n0nowFq573szWGUTRRQZrc6MlcXRpz0+8j2D9pTo14H86pVw5mfdiqRVla/4HRy9cVuXFK mrWK9V5EZcDvBgiUsUtqREaeUl7XSi7X3ACIeuWSc41RT+ACP8Dz7oETGeEaRjAGNurpjR OtZGw6KYgxRW32MHT2EIB8mzTE25nkKXpeR7cJ1gWN4NK3vVMC/DktNyEU2aFQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pmt0N54qczd38; Wed, 29 Mar 2023 16:53:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TGr8vN039770; Wed, 29 Mar 2023 16:53:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TGr8vK039769; Wed, 29 Mar 2023 16:53:08 GMT (envelope-from git) Date: Wed, 29 Mar 2023 16:53:08 GMT Message-Id: <202303291653.32TGr8vK039769@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: 298d6896b0ac - stable/13 - xhci(4): Describe Fresco Logic FL1009 USB 3.0 controller List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 298d6896b0aca5a4a67c4147b94113ab0a39c9e3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=298d6896b0aca5a4a67c4147b94113ab0a39c9e3 commit 298d6896b0aca5a4a67c4147b94113ab0a39c9e3 Author: Zhenlei Huang AuthorDate: 2023-03-20 04:00:59 +0000 Commit: Zhenlei Huang CommitDate: 2023-03-29 16:50:14 +0000 xhci(4): Describe Fresco Logic FL1009 USB 3.0 controller Reviewed by: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D38922 (cherry picked from commit 082895ebecb55f342dec918c555309c11e3fe17f) --- sys/dev/usb/controller/xhci_pci.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c index ad49ea7bb38f..2a98bc45b700 100644 --- a/sys/dev/usb/controller/xhci_pci.c +++ b/sys/dev/usb/controller/xhci_pci.c @@ -128,6 +128,8 @@ xhci_pci_match(device_t self) case 0x10001b73: return ("Fresco Logic FL1000G USB 3.0 controller"); + case 0x10091b73: + return ("Fresco Logic FL1009 USB 3.0 controller"); case 0x11001b73: return ("Fresco Logic FL1100 USB 3.0 controller"); From nobody Wed Mar 29 22:38:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn1fy3svwz4203X; Wed, 29 Mar 2023 22:38: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 4Pn1fy3Cv9z43BL; Wed, 29 Mar 2023 22:38:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680129514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T/oloV/6tI24q57gKHWVsgI2UcY+YhSjRKraFmwDVEY=; b=aPrPtKuFK8gioFnzdqmgg7bQraZ8k0uzb/KHhG9VtJP6VVXc3YElhucBg+/zjSGn3IvAjW PFxcMGslSj2jInzuHplAH2zBTSbDD849hoZBB3HFwmwL/ZlvDLOk9DIIHUaIgbBWDafDMs o7gHG+qRFzbkChswmHjHtO8X7TF9JI/z1ybwL6vfTWFv7gtdHyQk6OUGpTFibt6sUmvUI1 yYQ5oWggUbcggMNaMW+N2zKQGZMKiVXgWeG7M1o02p1Kxsy/mgScDbTPUnSTnY4Hzyfi5n kdbpRod34InR5DIrT4iAqbeIJLZLXSoKEEqfSJvu62nvW+3FIzrIpGHxjkFA7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680129514; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T/oloV/6tI24q57gKHWVsgI2UcY+YhSjRKraFmwDVEY=; b=y2s67KGWfyjdlciU/7MUvXiGAJqwNZuBPD+iGSEkcVHkWAi7b+vw/9MVuUDen9QNclNIRX BB+fjJRaAMcn/BkEKpnChrjfEansFQQLT3iFl156yL2SB+r4wG8dPtFT3vf1oGNbJgJwau BQhyrvG7mjHarD9ELWKf0kxXd6tOyAXEHKK92AcLBH6blj1JDmtNfNAduHr+5dAdtPcQA7 cbU4m+KfDuTp6QLFjTEkqoT9tOhQcmSgpvZyOpMjcsy2mDBs80dRNPzQ9HWBYmlF5dN30a hQvwDSQikTUWV2U2jrw1zFzdga9rOb97XTVYmbgVyl56olC9qUdAhWi8seKQPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680129514; a=rsa-sha256; cv=none; b=yV0kmA4Y7ZruiFvoAjZColftUarsBQQQ0+4dZAIy0vm0hAJ3ugY4kbUMgy7YwT/guOJXxV 1JP2jiIqieZNdXfZBb82/DcUW0xrHbpmJStaNtt+KV4uczQnBNaRW1OjqrAFVs76eQfMFk 32aIeXOpQKAiGuGooQmmol8n74wdA1XmLJKjEYERLiMD4Cwo+ZruOiBEUOi1XOxAplo5of 2Ye7XAjZjGh0Ne/rPrE6ywH6EO09ahXCQ7qPiPXWb4BbG/VBY4hlH//qcuVPeNtM3Q6gTQ odWIwqp8vSU4twJGhHg3tReIuwGJa5EPAs7sWnhMsRGomvzRyKLP3H8UJyRUiw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn1fy2BK9zn46; Wed, 29 Mar 2023 22:38:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32TMcYQ1000155; Wed, 29 Mar 2023 22:38:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32TMcYGK000154; Wed, 29 Mar 2023 22:38:34 GMT (envelope-from git) Date: Wed, 29 Mar 2023 22:38:34 GMT Message-Id: <202303292238.32TMcYGK000154@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: 738b20a47f73 - stable/13 - amd64 wakeup: recalculate mitigations after APICs are woken List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 738b20a47f7379b27ccf7a6d2af2c1bbfa11d05f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=738b20a47f7379b27ccf7a6d2af2c1bbfa11d05f commit 738b20a47f7379b27ccf7a6d2af2c1bbfa11d05f Author: Konstantin Belousov AuthorDate: 2023-03-28 23:51:44 +0000 Commit: Konstantin Belousov CommitDate: 2023-03-29 22:37:54 +0000 amd64 wakeup: recalculate mitigations after APICs are woken PR: 270489 Approved by: re (cperciva) (cherry picked from commit cd137909c3097fe223ce2b49075eed42a4933bb5) --- sys/amd64/acpica/acpi_wakeup.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/amd64/acpica/acpi_wakeup.c b/sys/amd64/acpica/acpi_wakeup.c index 3df4457550d6..62e11f5797f6 100644 --- a/sys/amd64/acpica/acpi_wakeup.c +++ b/sys/amd64/acpica/acpi_wakeup.c @@ -294,19 +294,21 @@ acpi_wakeup_machdep(struct acpi_softc *sc, int state, int sleep_result, * in acpi_sleep_machdep(), after the microcode was * reloaded. Then recalculate the active mitigation * knobs that depend on the microcode and - * cpu_stdext_feature3. + * cpu_stdext_feature3. Do it after LAPICs are woken, + * so that IPIs work. */ identify_cpu_ext_features(); - hw_ibrs_recalculate(true); - hw_ssb_recalculate(true); - amd64_syscall_ret_flush_l1d_recalc(); - x86_rngds_mitg_recalculate(true); mca_resume(); if (vmm_resume_p != NULL) vmm_resume_p(); intr_resume(/*suspend_cancelled*/false); + hw_ibrs_recalculate(true); + amd64_syscall_ret_flush_l1d_recalc(); + hw_ssb_recalculate(true); + x86_rngds_mitg_recalculate(true); + AcpiSetFirmwareWakingVector(0, 0); } else { /* Wakeup MD procedures in interrupt enabled context */ From nobody Thu Mar 30 03:07:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn7dY0K8qz42JhT; Thu, 30 Mar 2023 03:07: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 4Pn7dX5bhsz3N17; Thu, 30 Mar 2023 03:07:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+nmmiNyljVgdH8EgfbmFWdlD7IRr46KuYC62nbNsev0=; b=iRDoJ/ut7cDfSqnNYXNIQ6Txy/HOLtu+JaVPKKgCGooBPrP7iIrN8h+JJ4rKxtleLA5AKO FKHSVoJffKPbmSj1yw2t+xRXRhDZ2iM8sUaIqiq2X+No7kgcWYEsren97bMfiDn6tb+FnC 268hG7Hh6XP+hoBjqdJYztxz3g0GFGHYhj4TTHETiC1qlujNWKx1jm4XD8cIwXudseoHRn G69LnPqzdcfKkjyN7nTagYuVT1DUaY2fsyM5on0owLzZR98yDwtcKhy5BkXkF6fT0UZjdn kK9vtxk5eDI2lXGpj0RQYcvgjFlGyx0wwFKAZwqlJJ49S2n2p8SXM0hEC2Ml/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+nmmiNyljVgdH8EgfbmFWdlD7IRr46KuYC62nbNsev0=; b=VYW5KH5c1aMHwKUZYQGy8y0g+nzpWA+ufqa9ZbOvA6yVl1r0vLMo3BIyIFLhS/gsuFMJ2I IpbJ82C2XrX+pJge6Lsk1ZuBUAVxpIBDEd+5XLVfHWpNcgbZl700Y7MR+/36rPgC6A66Va fQ+okzgWmzfGNpSXklAxnhsq7YtS3UQ5ZzijHIIH4q9JCo5+emNWCFvreuiFJfuPWrNFLD TXYo3Jz+Da+vWTBhOpQy3vKm/qgckMDuicql6GA8A9iFEXMbaQKzSRLQRzptVJhTGhr53X MXPKyAPapOeQ/QHCXfvzDyMLKHyvRJ+Qho779D3Cy+PCviE4YPIvqtPRt1KSgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680145664; a=rsa-sha256; cv=none; b=CaNvGdvBPwnYdjZpygwh2r0mKSib7prlqPA5E9oHc2ooY9wNWqqYoqwgY0ORnYE8CRnGIg ZCZvw7FPdEujKHf09px7nbuiVZ28irmKqABBcc8fNiiTsX4EGudJH3HH/Jwtdd/r2l8cbr nEhijBUGB2YKjJqeJ271/0t+z2N3uKoyR/ehkROQTDvdtSe31x27rSokpYxdcyR7xPVsie OYRzget0J0X63QXGhLs/A051VpWfjLiEGXHNc6w8Kt+LB7F+YyGpgmBIfBtUTseNhGCbwQ b/GRQvmdeZUq/4Ocki9dJZ9K/AXr5lEZIzvCZkz+To2Ji8k9fwt4MA8MRkRZiw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn7dX4gxtzwFK; Thu, 30 Mar 2023 03:07:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U37i1l046396; Thu, 30 Mar 2023 03:07:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U37ibI046395; Thu, 30 Mar 2023 03:07:44 GMT (envelope-from git) Date: Thu, 30 Mar 2023 03:07:44 GMT Message-Id: <202303300307.32U37ibI046395@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 9965ab873cd7 - stable/13 - pfsync: hold b_mtx for callout_stop(pd_tmo) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 9965ab873cd7e2ff07c8052497b1d5e3ae588a27 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=9965ab873cd7e2ff07c8052497b1d5e3ae588a27 commit 9965ab873cd7e2ff07c8052497b1d5e3ae588a27 Author: Kristof Provost AuthorDate: 2023-03-22 13:46:25 +0000 Commit: Kristof Provost CommitDate: 2023-03-30 00:23:07 +0000 pfsync: hold b_mtx for callout_stop(pd_tmo) The pd_tmo callout has an associated mutex, which we must hold while calling callout_stop(). Reported by: markj Reviewed by: markj MFC after: 3 days Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D39223 (cherry picked from commit 01194da28a2123a2aa09808319f152fa115f60f1) --- sys/netpfil/pf/if_pfsync.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 0a8ece621006..a05fd85423ee 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -395,7 +395,7 @@ pfsync_clone_destroy(struct ifnet *ifp) { struct pfsync_softc *sc = ifp->if_softc; struct pfsync_bucket *b; - int c; + int c, ret; for (c = 0; c < pfsync_buckets; c++) { b = &sc->sc_buckets[c]; @@ -404,22 +404,25 @@ pfsync_clone_destroy(struct ifnet *ifp) * cleared by pfsync_uninit(), and we have only to * drain callouts. */ + PFSYNC_BUCKET_LOCK(b); while (b->b_deferred > 0) { struct pfsync_deferral *pd = TAILQ_FIRST(&b->b_deferrals); - TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); - b->b_deferred--; - if (callout_stop(&pd->pd_tmo) > 0) { - pf_release_state(pd->pd_st); - m_freem(pd->pd_m); - free(pd, M_PFSYNC); + ret = callout_stop(&pd->pd_tmo); + PFSYNC_BUCKET_UNLOCK(b); + if (ret > 0) { + pfsync_undefer(pd, 1); } else { pd->pd_refs++; callout_drain(&pd->pd_tmo); - free(pd, M_PFSYNC); } + free(pd, M_PFSYNC); + PFSYNC_BUCKET_LOCK(b); } + MPASS(b->b_deferred == 0); + MPASS(TAILQ_EMPTY(&b->b_deferrals)); + PFSYNC_BUCKET_UNLOCK(b); callout_drain(&b->b_tmo); } From nobody Thu Mar 30 03:07:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn7dY4k6yz42JkH; Thu, 30 Mar 2023 03:07: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 4Pn7dY1k39z3N18; Thu, 30 Mar 2023 03:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eOHCv8/vLrRyOFmo3lnUKyvpU30UncNJPPAL8A1bFxU=; b=l8MOx3WNOHtLnzHOGgAJXRuu/uwvyO0ss0w491tVVsTuw9ipQ4PG7KXOrfrAGYr+gY4h9e 0BlMcMWKcM/Rh4AwylCLXcU9n6loRKEHfcUhP0HlG47vYSdVlcutHyS0UksUkvjbRNEHKX KL4nbZAs/Hy1ZVlQUiFyhi4TAjhdwUrqdCqiyoNZFpfohaqkO3RneW2HE3gtQ8dwhO1mfY swgpQrJtc6Yp1EC0kqMh7bjO0ZnuzyZRidKAY8S2C4p9X96ZJ3AQPIEh8AA7qY8sxaXQlm FhWn2jaTBQlVgpJcKHQZT1wGCeWsSIZuuSFBc/f4GNwBjWd8REa+8u6aHgsIQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eOHCv8/vLrRyOFmo3lnUKyvpU30UncNJPPAL8A1bFxU=; b=T+SxLFxFwC77USobA1L7jrP4x2FcSQjg9PwSqgxSIYd2R7Sx9pT1vIGimVz0GXhUfU2Rth v0V6Vtny8cjMYnWJ3+Beqj7uNjbjbvLYzCpbI9XbXu5XUi/nZVTiPGVtPRGsjC/f9na+UF qmfuRsLwjHiGit+b6hp48s3eNu6C5qGS5R45SLchr1MhuTX/537G7WCiBvlfpl8+JkPsp9 SeIMYO8ZQzsqKLniJIPi4fQVrXzpV8gz6uOZbf9FH1bXKXngBoU5AB6Y+heSFlMBp3qpXC nPw+JHkmzKsc/acM+rDXtkll1n/nyxK39GQ5gdBDxXFWx0EfQ5+wwSbja6c07g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680145665; a=rsa-sha256; cv=none; b=GIOX5EIWqlyyDkaaEdWLvjNBFWXZUQlhnVBiQPnR1fP/wHcxmJI81+u6zQBunlkhY47kGs WmvtMgXGdGmJYi+rcCfs8QXns2g1RVytNGTyM+WOGDzM2zu8tMdplph+cXjrlO++n/K8Wd bnZr7DL1VGj+KBgzEtYCLJd4vHsw8btg5cV2YjpcvHi4zHBRcmZH3Yqnvpk8gGlrYglvRI 3tO5CZw5IW0uZpI/k+ZTz1NvCHWlqaKlqramr6EMk8Od0vPcqRVWJAtskjvvXWrcRAOubD qe1gxP+zkGe1IlugAyO/MfX5WJfstSZPXZUVv34EPLIvNLHyVXBx2uxpVP4SIA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn7dY0qrVzwJl; Thu, 30 Mar 2023 03:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U37jTx046473; Thu, 30 Mar 2023 03:07:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U37j7g046472; Thu, 30 Mar 2023 03:07:45 GMT (envelope-from git) Date: Thu, 30 Mar 2023 03:07:45 GMT Message-Id: <202303300307.32U37j7g046472@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 5f74ed9afdb1 - stable/12 - pfsync: hold b_mtx for callout_stop(pd_tmo) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 5f74ed9afdb143f3e2c5159b778685fd69f54d1d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=5f74ed9afdb143f3e2c5159b778685fd69f54d1d commit 5f74ed9afdb143f3e2c5159b778685fd69f54d1d Author: Kristof Provost AuthorDate: 2023-03-22 13:46:25 +0000 Commit: Kristof Provost CommitDate: 2023-03-30 00:23:09 +0000 pfsync: hold b_mtx for callout_stop(pd_tmo) The pd_tmo callout has an associated mutex, which we must hold while calling callout_stop(). Reported by: markj Reviewed by: markj MFC after: 3 days Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D39223 (cherry picked from commit 01194da28a2123a2aa09808319f152fa115f60f1) --- sys/netpfil/pf/if_pfsync.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index a73b4ff95c6a..30cac5717df5 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -395,7 +395,7 @@ pfsync_clone_destroy(struct ifnet *ifp) { struct pfsync_softc *sc = ifp->if_softc; struct pfsync_bucket *b; - int c; + int c, ret; for (c = 0; c < pfsync_buckets; c++) { b = &sc->sc_buckets[c]; @@ -404,22 +404,25 @@ pfsync_clone_destroy(struct ifnet *ifp) * cleared by pfsync_uninit(), and we have only to * drain callouts. */ + PFSYNC_BUCKET_LOCK(b); while (b->b_deferred > 0) { struct pfsync_deferral *pd = TAILQ_FIRST(&b->b_deferrals); - TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); - b->b_deferred--; - if (callout_stop(&pd->pd_tmo) > 0) { - pf_release_state(pd->pd_st); - m_freem(pd->pd_m); - free(pd, M_PFSYNC); + ret = callout_stop(&pd->pd_tmo); + PFSYNC_BUCKET_UNLOCK(b); + if (ret > 0) { + pfsync_undefer(pd, 1); } else { pd->pd_refs++; callout_drain(&pd->pd_tmo); - free(pd, M_PFSYNC); } + free(pd, M_PFSYNC); + PFSYNC_BUCKET_LOCK(b); } + MPASS(b->b_deferred == 0); + MPASS(TAILQ_EMPTY(&b->b_deferrals)); + PFSYNC_BUCKET_UNLOCK(b); callout_drain(&b->b_tmo); } From nobody Thu Mar 30 03:07:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn7db0qwGz42JpJ; Thu, 30 Mar 2023 03:07: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 4Pn7dZ2DlSz3N1J; Thu, 30 Mar 2023 03:07:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8v1dqga6G3oYgr+/92eylGLfLlDxIrEFqABxO4WEjqA=; b=kTsLWj6eCG/3ZGfziqM0V3vw3+uG5vLncouAPynec5uLxMw6BmTTEejXDiAb22IjqyA7U8 iZuf9l2wGP3ek5P6NoO5Y+QlVTKWu17KiqDej83SvREJVCvzeLKzp17+3sAvJHtRz2MV/r 0VnR+m1l61f3yGsMmcbJ/2cyKw3uDPT7Dnvl5vgDZa8Uew6xHDAJhg+YvKq8SB04N0uw5M evyVJtrN7VSrTFvxXosJT4Lm/1S8zCmYYP9XcjrFDo4O7TKdem/k7tGxxos5kRLtTuzNnf 1or0KSfGYpf1wXd4b2UC19CUuUlhoU13NWGJ8pK5X1kk09CJrgEp5x05OmFzSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8v1dqga6G3oYgr+/92eylGLfLlDxIrEFqABxO4WEjqA=; b=dTdxYWeehCPK6jHbJqVPn8LCavzrDOswrwGSPRT2sknC+p8ez6yBhdLEulkGiqh+v/In63 PgidqCLiW876bujiGTCWyJd4nl4ZG/gfvI+0bB2krNZenlSkCB6wGgye3e/99r94G34TCM dpTjU5bb/X4PX9MKTx9h4cOQhRy8r/V1O1kLfBqVgAPI5ID2EmuoxztXHWtsnnNQ4NRdzQ SwNJiwC0peyfY5aKv5NzXN1SsGbB42mvhetE1tVJkyGlXovJArkFkBgb3LViBgXdwT92BA XEn5/Mh8W4hCc5tenzD7rF8Qa0eA5abwyeCwW7XW8OrocAVZ2II+mDy7M69CVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680145666; a=rsa-sha256; cv=none; b=rcCaswFXAH+TILz2A0FHgw+k3L74kY8MwVtHLfQ/0QmdQfY9KrCF6q3kxuB3fqstnfVxhr ++DuMJqloPThy5SgDU5tSDRhnZfOWPej/gZJj/75aXI3afWrobLlp3FATMSPbI96uuhVlD GLtZH10M9ulWW3/pYZfrZBONGYlPn0KwdYgllaIt+w21Yc4Y/1D2zVv5Pc+9sztfDLaX8W DVS2H1YyUmRX3XeVuiVLpUF3HQGInZxqITIi7YS/rmU0jbInCdkcCK+1xHoB4X7uJY8QGB uIFdCI9HpGY6j0Lr2hFJXYAxzpyhBLe1TIO0n8Qa9MtCZxgLUV99zGiOq32PBQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn7dZ1KwZzwGj; Thu, 30 Mar 2023 03:07:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U37kP8046518; Thu, 30 Mar 2023 03:07:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U37kb1046517; Thu, 30 Mar 2023 03:07:46 GMT (envelope-from git) Date: Thu, 30 Mar 2023 03:07:46 GMT Message-Id: <202303300307.32U37kb1046517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 8d636e4d6937 - stable/12 - pf: remove pd_refs from pfsync List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 8d636e4d6937b36cd6f1c45f057c672c855571cc Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=8d636e4d6937b36cd6f1c45f057c672c855571cc commit 8d636e4d6937b36cd6f1c45f057c672c855571cc Author: Kristof Provost AuthorDate: 2023-03-24 06:04:56 +0000 Commit: Kristof Provost CommitDate: 2023-03-30 00:23:31 +0000 pf: remove pd_refs from pfsync It only served to complicate cleanup, and added no value. While here drop packets in pfsync_defer_tmo() if we don't have a syncif, rather than just leaving them on the queue. Reviewed by: markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D39248 (cherry picked from commit 27b23cdec9d1255e014ea0decac42a5be8d00735) --- sys/netpfil/pf/if_pfsync.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 30cac5717df5..648e2bd36f34 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -184,7 +184,6 @@ struct pfsync_upd_req_item { struct pfsync_deferral { struct pfsync_softc *pd_sc; TAILQ_ENTRY(pfsync_deferral) pd_entry; - u_int pd_refs; struct callout pd_tmo; struct pf_kstate *pd_st; @@ -414,10 +413,8 @@ pfsync_clone_destroy(struct ifnet *ifp) if (ret > 0) { pfsync_undefer(pd, 1); } else { - pd->pd_refs++; callout_drain(&pd->pd_tmo); } - free(pd, M_PFSYNC); PFSYNC_BUCKET_LOCK(b); } MPASS(b->b_deferred == 0); @@ -1784,7 +1781,6 @@ pfsync_defer(struct pf_kstate *st, struct mbuf *m) st->state_flags |= PFSTATE_ACK; pd->pd_sc = sc; - pd->pd_refs = 0; pd->pd_st = st; pf_ref_state(st); pd->pd_m = m; @@ -1834,20 +1830,20 @@ pfsync_defer_tmo(void *arg) PFSYNC_BUCKET_LOCK_ASSERT(b); + TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); + b->b_deferred--; + pd->pd_st->state_flags &= ~PFSTATE_ACK; /* XXX: locking! */ + PFSYNC_BUCKET_UNLOCK(b); + free(pd, M_PFSYNC); + if (sc->sc_sync_if == NULL) { - PFSYNC_BUCKET_UNLOCK(b); + pf_release_state(st); + m_freem(m); return; } CURVNET_SET(sc->sc_sync_if->if_vnet); - TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); - b->b_deferred--; - pd->pd_st->state_flags &= ~PFSTATE_ACK; /* XXX: locking! */ - if (pd->pd_refs == 0) - free(pd, M_PFSYNC); - PFSYNC_BUCKET_UNLOCK(b); - pfsync_tx(sc, m); pf_release_state(st); From nobody Thu Mar 30 03:07:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn7db15FVz42JhY; Thu, 30 Mar 2023 03:07: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 4Pn7dY6gpTz3ND9; Thu, 30 Mar 2023 03:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gD8NTxcxm16PB0p8T1sqNvFDBVRw8fH5vXWuhyhvEd8=; b=P98URLIQzQS9sdQAC6EaVYdspd/R5b3DaC1Uq5cyXB0IqIQnpcnLXSq7hqxdOj3KuRr9e/ d9xE8ZlSwXl/v0LnajQ3OO7D3h6HxVrm+fxnxusEGxoaVwmWQ+22f8U7UYKOwelukupdwd I6wNoiRLCAe/2kfAlRFyVeyj0hVJHk8DDCp3KhMmc/GtC/koxz5+dhvxB4FuzodxkAkQOh 9RsgRs+9v5A+tzrSuYMDM9GVDjJIZu+7z7XxacZahTCoEB5x9GIjZ9CabFNMjawhhicwA8 15pmBOUeJMwh6BCK9rdwcV4l3z2hurmmUP6Czl/QMRiiia4gUP/C/zVS48nzmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680145665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gD8NTxcxm16PB0p8T1sqNvFDBVRw8fH5vXWuhyhvEd8=; b=kp7csMxB2rX195SoJbe8lxR0spv0NjmfaG/JIo3Ucpo5vwNXKtt6iUmauzygfN0gyeCRlI XVMqzH1LQNHu4MHY3baTAfvgTsGX4rN/dYKzfh9c1Lksn7t5068XcJb9W0AMWjQyrNTlTU hYLztlC5UzSiGY6nfhhPh4xFT955L1Yamcj9T2GQ6jfDBM30JRM8/gymmDMSug1Syul5Nr gmq6a6v/cpTt708o5ptBGlSbW5/OG+OdSEDVpKauz7+wmn+Jf4aYYL8twI4cGm2V+qJtcY IoPIIt9P6v27de7dXGLUbrgfnqjTwtxInQKUBaovXBfIfsf5pWSrF5Sx4rI6fA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680145665; a=rsa-sha256; cv=none; b=cOGXN3t6etnc/1QoKq+Gu0tS+k0jnbFOO2ameGA2HUjsXvRpIbTTthnRk8+OzayifcXnwm eQ1JmhJO6SWdyAxWMqtqqDlQdr96659o1RiJLA4ZoWwXghmbw+ficUoBAIo6nIIs3ViLQB K6+kDaBc9WcKRHHehAwNqwcciJ4keMiWuIh5OyD5T49nCizRG36jXG+7wVAMcnGw1Ozy7U nX8MOOzDq4fB5Z9g9g6gy0UywBZS/ybZIQhc0jXuUNdxR7wsVcDHVr4wjh9WRj7fKbGlrd MTJ6M913WFe0pr8xe66W68nLMAzIemvMi1KilV6lyRaIlEHzlInepgRBAj1M+A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn7dY5nBtzvf7; Thu, 30 Mar 2023 03:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U37jXD046498; Thu, 30 Mar 2023 03:07:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U37jgp046497; Thu, 30 Mar 2023 03:07:45 GMT (envelope-from git) Date: Thu, 30 Mar 2023 03:07:45 GMT Message-Id: <202303300307.32U37jgp046497@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 8d261cd2d38f - stable/13 - pf: remove pd_refs from pfsync List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 8d261cd2d38fb1cbf4ba5450fafa92f85f64eb82 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=8d261cd2d38fb1cbf4ba5450fafa92f85f64eb82 commit 8d261cd2d38fb1cbf4ba5450fafa92f85f64eb82 Author: Kristof Provost AuthorDate: 2023-03-24 06:04:56 +0000 Commit: Kristof Provost CommitDate: 2023-03-30 00:23:30 +0000 pf: remove pd_refs from pfsync It only served to complicate cleanup, and added no value. While here drop packets in pfsync_defer_tmo() if we don't have a syncif, rather than just leaving them on the queue. Reviewed by: markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D39248 (cherry picked from commit 27b23cdec9d1255e014ea0decac42a5be8d00735) --- sys/netpfil/pf/if_pfsync.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index a05fd85423ee..b05e1ae9550a 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -184,7 +184,6 @@ struct pfsync_upd_req_item { struct pfsync_deferral { struct pfsync_softc *pd_sc; TAILQ_ENTRY(pfsync_deferral) pd_entry; - u_int pd_refs; struct callout pd_tmo; struct pf_kstate *pd_st; @@ -414,10 +413,8 @@ pfsync_clone_destroy(struct ifnet *ifp) if (ret > 0) { pfsync_undefer(pd, 1); } else { - pd->pd_refs++; callout_drain(&pd->pd_tmo); } - free(pd, M_PFSYNC); PFSYNC_BUCKET_LOCK(b); } MPASS(b->b_deferred == 0); @@ -1782,7 +1779,6 @@ pfsync_defer(struct pf_kstate *st, struct mbuf *m) st->state_flags |= PFSTATE_ACK; pd->pd_sc = sc; - pd->pd_refs = 0; pd->pd_st = st; pf_ref_state(st); pd->pd_m = m; @@ -1833,21 +1829,21 @@ pfsync_defer_tmo(void *arg) PFSYNC_BUCKET_LOCK_ASSERT(b); + TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); + b->b_deferred--; + pd->pd_st->state_flags &= ~PFSTATE_ACK; /* XXX: locking! */ + PFSYNC_BUCKET_UNLOCK(b); + free(pd, M_PFSYNC); + if (sc->sc_sync_if == NULL) { - PFSYNC_BUCKET_UNLOCK(b); + pf_release_state(st); + m_freem(m); return; } NET_EPOCH_ENTER(et); CURVNET_SET(sc->sc_sync_if->if_vnet); - TAILQ_REMOVE(&b->b_deferrals, pd, pd_entry); - b->b_deferred--; - pd->pd_st->state_flags &= ~PFSTATE_ACK; /* XXX: locking! */ - if (pd->pd_refs == 0) - free(pd, M_PFSYNC); - PFSYNC_BUCKET_UNLOCK(b); - pfsync_tx(sc, m); pf_release_state(st); From nobody Thu Mar 30 04:32:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pn9WX2nMRz42PV4; Thu, 30 Mar 2023 04:32: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 4Pn9WX2GBmz3ldn; Thu, 30 Mar 2023 04:32:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680150760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A7CkdCalNCKk2DBZSO3OUr0oWIUiesJKqYjJRxraChM=; b=dsuQUrqMgkh4+gAaoC9B56qR0HBXOV1SAu+bp7NZBSZ8ga9w7B97/VSFLicfTgc/L8w0y9 aGo3PNP5EcQxYUAKqBZ03sQKEq+V0JPXXyCV3uFDDVePrf/JW1prNug90aRTFOabOZK4SM km+Y9kYIag9ME51mKWcyn7S1C0W2fiPjmGG4JcnniqChjjPm0gxPYxBN+jqnIoZlaU3c2T vPBZEr47RjQGFYNxuzwYYHIl/syDScsB3PfGWJUeNIIuSr1jygN/yYzSZpLpwFrRUhLXju bHMePkdy1X2u3mLO4ZNqW5r8jFzC93/GhZVBdrQT3cpKs9+2Lr5I4+J/VOQZ2A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680150760; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A7CkdCalNCKk2DBZSO3OUr0oWIUiesJKqYjJRxraChM=; b=Xer5iiOdVCSZWdNt08KBKJmO4OPw80dMBko0b7wuH7QSO//O7D0AL6Rr2WPXCGAI52Rps2 VlCnbvdjusP6k6622qQZ8srB3kbdC7YmGrYQgF21e4j30FWtg7fOEnHSEXuve2b5ACRRyX ins7CGxVPSNE5MX7uUkoe5pWeHwfrFqJxxAia6nwpRCh3o8GZFN2PIWeJ23YsrVbzAGsia Q2KXGFxMWBG0VyeCCbke+xEoVnovwYcqX5IRem+TvruEz2c6P6qgfV68ULgWZl2qHgVwJU RcBB4OoUUIQFDa1fGisp5HxbRaiA2iTgM4RTQvUEGqKqKiqEwmBBBT/RR8ADGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680150760; a=rsa-sha256; cv=none; b=qiTIP9M+U7LoJP0r3Y6LMF99L8bZrGkCKkiz3vRZAYZd+GsWMf7yDpeCrrIsmphL7JW2NK N/1OgjhLv8iSz8zMEtUPVPqjAaUPZ6h5XrJKqKjDf6rVpC7pIwP6z48b3kblZURiQTK5wH lSitDumRA/GWne2/Llz1Nt0CST9xoedLR+6Mhdpo1Jr6+30WBgG7+0QQKCzzp1gU+ER8sI mdidmPWm7mUDtGVNRR+HKA+SGzD5F9EB86s+O9c03/ZY+UWho43lUUvAl93cuBldCj3KMH ZStoQQpZZTHSaljAUsggjkFBkw9E9jDUqOJ7JlYbgj3rT7V6dLszxub69cdLnQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pn9WX1J9Czy8q; Thu, 30 Mar 2023 04:32:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U4WeYu093246; Thu, 30 Mar 2023 04:32:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U4Wewl093245; Thu, 30 Mar 2023 04:32:40 GMT (envelope-from git) Date: Thu, 30 Mar 2023 04:32:40 GMT Message-Id: <202303300432.32U4Wewl093245@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: 40f022975df9 - stable/13 - Rewrite function definitions with identifier lists. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 40f022975df948c071f8bd1736ba9078df8ef6b8 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=40f022975df948c071f8bd1736ba9078df8ef6b8 commit 40f022975df948c071f8bd1736ba9078df8ef6b8 Author: Kirk McKusick AuthorDate: 2023-03-22 22:57:26 +0000 Commit: Kirk McKusick CommitDate: 2023-03-30 04:32:32 +0000 Rewrite function definitions with identifier lists. A few functions snuck in with K&R style definitions. Also add some missing memory frees. (cherry picked from commit e5d0d1c5fbbc0ce44fdc720a35b499056fe60b06) --- sbin/dump/tape.c | 54 +++++++++++++++++++++++++--------------- sbin/fsck_ffs/dir.c | 5 ++++ sbin/fsck_ffs/fsutil.c | 6 ++--- sbin/fsck_ffs/inode.c | 20 +++++---------- sbin/fsck_ffs/pass2.c | 1 + sbin/fsck_ffs/suj.c | 4 +-- tools/diag/prtblknos/main.c | 4 +-- tools/diag/prtblknos/prtblknos.c | 26 +++++-------------- 8 files changed, 57 insertions(+), 63 deletions(-) diff --git a/sbin/dump/tape.c b/sbin/dump/tape.c index 45ad0ee50487..c123f7fa9404 100644 --- a/sbin/dump/tape.c +++ b/sbin/dump/tape.c @@ -74,7 +74,8 @@ static long blocksthisvol; /* number of blocks on current output file */ static char *nexttape; static FILE *popenfp = NULL; -static int atomic(ssize_t (*)(), int, char *, int); +static int atomic_read(int, void *, int); +static int atomic_write(int, const void *, int); static void worker(int, int); static void create_workers(void); static void flushtape(void); @@ -236,7 +237,7 @@ flushtape(void) wp->req[trecno].count = 0; /* Sentinel */ - if (atomic(write, wp->fd, (char *)wp->req, siz) != siz) + if (atomic_write(wp->fd, (const void *)wp->req, siz) != siz) quit("error writing command pipe: %s\n", strerror(errno)); wp->sent = 1; /* we sent a request, read the response later */ @@ -247,7 +248,7 @@ flushtape(void) /* Read results back from next worker */ if (wp->sent) { - if (atomic(read, wp->fd, (char *)&got, sizeof got) + if (atomic_read(wp->fd, (void *)&got, sizeof got) != sizeof got) { perror(" DUMP: error reading command pipe in master"); dumpabort(0); @@ -264,8 +265,8 @@ flushtape(void) */ for (i = 0; i < WORKERS; i++) { if (workers[i].sent) { - if (atomic(read, workers[i].fd, - (char *)&got, sizeof got) + if (atomic_read(workers[i].fd, + (void *)&got, sizeof got) != sizeof got) { perror(" DUMP: error reading command pipe in master"); dumpabort(0); @@ -322,7 +323,7 @@ trewind(void) * fixme: punt for now. */ if (workers[f].sent) { - if (atomic(read, workers[f].fd, (char *)&got, sizeof got) + if (atomic_read(workers[f].fd, (void *)&got, sizeof got) != sizeof got) { perror(" DUMP: error reading command pipe in master"); dumpabort(0); @@ -446,7 +447,7 @@ rollforward(void) lastspclrec = savedtapea - 1; } size = (char *)ntb - (char *)q; - if (atomic(write, wp->fd, (char *)q, size) != size) { + if (atomic_write(wp->fd, (const void *)q, size) != size) { perror(" DUMP: error writing command pipe"); dumpabort(0); } @@ -486,7 +487,7 @@ rollforward(void) * worked ok, otherwise the tape is much too short! */ if (wp->sent) { - if (atomic(read, wp->fd, (char *)&got, sizeof got) + if (atomic_read(wp->fd, (void *)&got, sizeof got) != sizeof got) { perror(" DUMP: error reading command pipe in master"); dumpabort(0); @@ -676,8 +677,7 @@ dumpabort(int signo __unused) } void -Exit(status) - int status; +Exit(int status) { #ifdef TDEBUG @@ -735,8 +735,8 @@ create_workers(void) } for (i = 0; i < WORKERS; i++) - (void) atomic(write, workers[i].fd, - (char *) &workers[(i + 1) % WORKERS].pid, + (void) atomic_write(workers[i].fd, + (const void *) &workers[(i + 1) % WORKERS].pid, sizeof workers[0].pid); master = 0; @@ -777,7 +777,7 @@ worker(int cmd, int worker_number) /* * Need the pid of the next worker in the loop... */ - if ((nread = atomic(read, cmd, (char *)&nextworker, sizeof nextworker)) + if ((nread = atomic_read(cmd, (void *)&nextworker, sizeof nextworker)) != sizeof nextworker) { quit("master/worker protocol botched - didn't get pid of next worker.\n"); } @@ -785,7 +785,7 @@ worker(int cmd, int worker_number) /* * Get list of blocks to dump, read the blocks into tape buffer */ - while ((nread = atomic(read, cmd, (char *)wp->req, reqsiz)) == reqsiz) { + while ((nread = atomic_read(cmd, (void *)wp->req, reqsiz)) == reqsiz) { struct req *p = wp->req; for (trecno = 0; trecno < ntrec; @@ -794,8 +794,8 @@ worker(int cmd, int worker_number) blkread(p->dblk, wp->tblock[trecno], p->count * TP_BSIZE); } else { - if (p->count != 1 || atomic(read, cmd, - (char *)wp->tblock[trecno], + if (p->count != 1 || atomic_read(cmd, + (void *)wp->tblock[trecno], TP_BSIZE) != TP_BSIZE) quit("master/worker protocol botched.\n"); } @@ -858,7 +858,8 @@ worker(int cmd, int worker_number) * pass size of write back to master * (for EOT handling) */ - (void) atomic(write, cmd, (char *)&size, sizeof size); + (void)atomic_write(cmd, (const void *)&size, + sizeof size); } /* @@ -873,15 +874,28 @@ worker(int cmd, int worker_number) /* * Since a read from a pipe may not return all we asked for, - * or a write may not write all we ask if we get a signal, * loop until the count is satisfied (or error). */ static int -atomic(ssize_t (*func)(), int fd, char *buf, int count) +atomic_read(int fd, void *buf, int count) { int got, need = count; - while ((got = (*func)(fd, buf, need)) > 0 && (need -= got) > 0) + while ((got = read(fd, buf, need)) > 0 && (need -= got) > 0) + buf += got; + return (got < 0 ? got : count - need); +} + +/* + * Since a write to a pipe may not write all we ask if we get a signal, + * loop until the count is satisfied (or error). + */ +static int +atomic_write(int fd, const void *buf, int count) +{ + int got, need = count; + + while ((got = write(fd, buf, need)) > 0 && (need -= got) > 0) buf += got; return (got < 0 ? got : count - need); } diff --git a/sbin/fsck_ffs/dir.c b/sbin/fsck_ffs/dir.c index 18229ab96fb6..64e477c66ed8 100644 --- a/sbin/fsck_ffs/dir.c +++ b/sbin/fsck_ffs/dir.c @@ -525,6 +525,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name) } } irelse(&ip); + free(idesc.id_name); if (lfdir == 0) { pfatal("SORRY. CANNOT CREATE lost+found DIRECTORY"); printf("\n\n"); @@ -621,6 +622,7 @@ changeino(ino_t dir, const char *name, ino_t newnum) idesc.id_parent = newnum; /* new value for name */ ginode(dir, &ip); error = ckinode(ip.i_dp, &idesc); + free(idesc.id_name); irelse(&ip); return (error); } @@ -655,15 +657,18 @@ makeentry(ino_t parent, ino_t ino, const char *name) } if ((ckinode(dp, &idesc) & ALTERED) != 0) { irelse(&ip); + free(idesc.id_name); return (1); } getpathname(pathbuf, parent, parent); if (expanddir(&ip, pathbuf) == 0) { irelse(&ip); + free(idesc.id_name); return (0); } retval = ckinode(dp, &idesc) & ALTERED; irelse(&ip); + free(idesc.id_name); return (retval); } diff --git a/sbin/fsck_ffs/fsutil.c b/sbin/fsck_ffs/fsutil.c index d8842e7d41f2..44b3e50da012 100644 --- a/sbin/fsck_ffs/fsutil.c +++ b/sbin/fsck_ffs/fsutil.c @@ -1162,9 +1162,7 @@ allocblk(long startcg, long frags, } ufs2_daddr_t -std_checkblkavail(blkno, frags) - ufs2_daddr_t blkno; - long frags; +std_checkblkavail(ufs2_daddr_t blkno, long frags) { struct bufarea *cgbp; struct cg *cgp; @@ -1278,9 +1276,11 @@ getpathname(char *namebuf, ino_t curdir, ino_t ino) ginode(ino, &ip); if ((ckinode(ip.i_dp, &idesc) & FOUND) == 0) { irelse(&ip); + free(idesc.id_name); break; } irelse(&ip); + free(idesc.id_name); namelookup: idesc.id_number = idesc.id_parent; idesc.id_parent = ino; diff --git a/sbin/fsck_ffs/inode.c b/sbin/fsck_ffs/inode.c index 057d49a1ea18..947e5e0cbc08 100644 --- a/sbin/fsck_ffs/inode.c +++ b/sbin/fsck_ffs/inode.c @@ -798,12 +798,8 @@ snapclean(struct inodesc *idesc) * must always have been allocated from a BLK_NOCOPY location. */ int -snapblkfree(fs, bno, size, inum, checkblkavail) - struct fs *fs; - ufs2_daddr_t bno; - long size; - ino_t inum; - ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags); +snapblkfree(struct fs *fs, ufs2_daddr_t bno, long size, ino_t inum, + ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags)) { union dinode *dp; struct inode ip; @@ -930,10 +926,8 @@ snapblkfree(fs, bno, size, inum, checkblkavail) * block. Here we need to check each block in the buffer. */ void -copyonwrite(fs, bp, checkblkavail) - struct fs *fs; - struct bufarea *bp; - ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags); +copyonwrite(struct fs *fs, struct bufarea *bp, + ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags)) { ufs2_daddr_t copyblkno; long i, numblks; @@ -953,10 +947,8 @@ copyonwrite(fs, bp, checkblkavail) } static void -chkcopyonwrite(fs, copyblkno, checkblkavail) - struct fs *fs; - ufs2_daddr_t copyblkno; - ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags); +chkcopyonwrite(struct fs *fs, ufs2_daddr_t copyblkno, + ufs2_daddr_t (*checkblkavail)(ufs2_daddr_t blkno, long frags)) { struct inode ip; union dinode *dp; diff --git a/sbin/fsck_ffs/pass2.c b/sbin/fsck_ffs/pass2.c index 4e17863ef04c..abe14549e6f4 100644 --- a/sbin/fsck_ffs/pass2.c +++ b/sbin/fsck_ffs/pass2.c @@ -602,6 +602,7 @@ fix_extraneous(struct inoinfo *inp, struct inodesc *idesc) if ((ckinode(ip.i_dp, &dotdesc) & FOUND)) inp->i_dotdot = dotdesc.id_parent; irelse(&ip); + free(dotdesc.id_name); } /* * We have the previously found old name (inp->i_parent) and the diff --git a/sbin/fsck_ffs/suj.c b/sbin/fsck_ffs/suj.c index e9f5bbd421b1..a1d624392fcf 100644 --- a/sbin/fsck_ffs/suj.c +++ b/sbin/fsck_ffs/suj.c @@ -382,9 +382,7 @@ blk_isindir(ufs2_daddr_t blk, ino_t ino, ufs_lbn_t lbn) * they will only have usable blocks in them. */ ufs2_daddr_t -suj_checkblkavail(blkno, frags) - ufs2_daddr_t blkno; - long frags; +suj_checkblkavail(ufs2_daddr_t blkno, long frags) { struct bufarea *cgbp; struct cg *cgp; diff --git a/tools/diag/prtblknos/main.c b/tools/diag/prtblknos/main.c index 25a717760922..1535755ea52e 100644 --- a/tools/diag/prtblknos/main.c +++ b/tools/diag/prtblknos/main.c @@ -44,9 +44,7 @@ void prtblknos(struct fs *fs, union dinode *dp); struct uufsd disk; int -main(argc, argv) - int argc; - char *argv[]; +main(int argc, char *argv[]) { union dinodep dp; struct fs *fs; diff --git a/tools/diag/prtblknos/prtblknos.c b/tools/diag/prtblknos/prtblknos.c index ae53471156a6..d6135f70eb46 100644 --- a/tools/diag/prtblknos/prtblknos.c +++ b/tools/diag/prtblknos/prtblknos.c @@ -53,9 +53,7 @@ static void indirprt(struct fs *, int, ufs_lbn_t, ufs_lbn_t, ufs2_daddr_t, ufs_lbn_t); void -prtblknos(fs, dp) - struct fs *fs; - union dinode *dp; +prtblknos(struct fs *fs, union dinode *dp) { int i, mode, frags; ufs_lbn_t lbn, lastlbn, len, blksperindir; @@ -154,13 +152,8 @@ prtblknos(fs, dp) } static void -indirprt(fs, level, blksperindir, lbn, blkno, lastlbn) - struct fs *fs; - int level; - ufs_lbn_t blksperindir; - ufs_lbn_t lbn; - ufs2_daddr_t blkno; - ufs_lbn_t lastlbn; +indirprt(struct fs *fs, int level, ufs_lbn_t blksperindir, ufs_lbn_t lbn, + ufs2_daddr_t blkno, ufs_lbn_t lastlbn) { char indir[MAXBSIZE]; ufs_lbn_t i, last; @@ -209,10 +202,7 @@ indirprt(fs, level, blksperindir, lbn, blkno, lastlbn) } static const char * -distance(fs, lastblk, firstblk) - struct fs *fs; - ufs2_daddr_t lastblk; - ufs2_daddr_t firstblk; +distance(struct fs *fs, ufs2_daddr_t lastblk, ufs2_daddr_t firstblk) { ufs2_daddr_t delta; int firstcg, lastcg; @@ -237,12 +227,8 @@ distance(fs, lastblk, firstblk) static const char *indirname[UFS_NIADDR] = { "First", "Second", "Third" }; static void -printblk(fs, lbn, blkno, numfrags, lastlbn) - struct fs *fs; - ufs_lbn_t lbn; - ufs2_daddr_t blkno; - int numfrags; - ufs_lbn_t lastlbn; +printblk(struct fs *fs, ufs_lbn_t lbn, ufs2_daddr_t blkno, int numfrags, + ufs_lbn_t lastlbn) { static int seq; static ufs2_daddr_t totfrags, lastindirblk, lastblk, firstblk; From nobody Thu Mar 30 06:31:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnD873GNJz42XPS; Thu, 30 Mar 2023 06:31: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 4PnD872mm1z40Ld; Thu, 30 Mar 2023 06:31:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680157863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z0meZ8g3LNAL7Ikveob2TeCBdSTXlwGISRSzZDG3rOU=; b=ZeHYn2+hW+HhI05xbio5HZOkv1S9CSRL5pzo5hPMg/uLWpQ1QP2EkkK25ry84Jd69w1lYm VBEvFaozylGJ+I3A0nOHoCoc9ZVh3/pP9ytf0UVluifMSmEV/SOg+67eddMsWl+lHybrFT TuJeoAkPdexjJWJEU70gzadiHvxAXBrhM3lkROHaR8fw0QRFwg5hm7USW+Ms2xobu29f7i uPi7a6jj2/rMOJy5GjTGwEY69XimO5EnXQKS+8VwJtTgrKd0LR9w3bBMDEjF8RJCzXE+M9 uFKHyMaLg+QMciF3uc4qtBa0Ec1TfT/K7Aj6IgkHo8JYMQmlgAAWpZxDxqqw1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680157863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z0meZ8g3LNAL7Ikveob2TeCBdSTXlwGISRSzZDG3rOU=; b=Lw0dhdneLwllcWSYSFOt4zdzPV9ap1gUQeinpbRIj/nmUKOJq97dU+bM54n9FUTyTsYaYk R3W0jFfAHhUAliyu+x4cTq4y6ZWdqkxlXZuREWQrqVX76vMlWddmTSKr63cV1J1zXOrGr9 vtro2Hpuf7geju5Yz9/USz4tuQMELNk0pII0knB9dvYp8dP88hjuJckLwYDsU+EHVoyZYA 56avH0/qViPpC8Vs3U86A2Uphgp3LGL5wcl3iLPGqWiW7Y7ZEJqodXqCF/EN3NU6cBT4WC +rzXufxPHt8rW16YrfHutqfEbqFOl3CkudaY9pi4VF7ka3GP4GY0TKFScWrgwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680157863; a=rsa-sha256; cv=none; b=Aixz5i6D1J6JPlvvAxrxIQQHRz1v8Q+3+SHXaZn0eYgqDHUljKV0mlbeqHou1dRhkHodaE UeOpeNS0fPfdhWH2F6HLVmgLqz9N4EzEghhGMl5ZAZcHRT0YOzi9G3uNW9E16k2+BEbzPk M/DYC/FHFDAZPz0LvCmVF+rZDJ5gK0gM7Cn+LbbXvhx/n3ZENMd4v5/uO+LTJ10YGXFDHu sXLq3Gp+UpmBd5Ow8b7Vz2Zc/GuwUx1ffJ5I6Oj/v+vzOffnAKPBlTUOgRxGZCcohMf5AW uyyEAGtKlpflSeZSPXekHtMWO1vBrs+0syL3D8/rarigA7wDy9ue+pbDacwwag== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnD871qqyz123X; Thu, 30 Mar 2023 06:31:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U6V3Ov088080; Thu, 30 Mar 2023 06:31:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U6V3Ut088079; Thu, 30 Mar 2023 06:31:03 GMT (envelope-from git) Date: Thu, 30 Mar 2023 06:31:03 GMT Message-Id: <202303300631.32U6V3Ut088079@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: f7174106ef55 - stable/13 - rarpd(8): Fix a typo in a source code comment List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f7174106ef553a49e3e2f72f12d47108915a8a4b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=f7174106ef553a49e3e2f72f12d47108915a8a4b commit f7174106ef553a49e3e2f72f12d47108915a8a4b Author: Gordon Bergling AuthorDate: 2023-03-27 06:45:30 +0000 Commit: Gordon Bergling CommitDate: 2023-03-30 06:30:52 +0000 rarpd(8): Fix a typo in a source code comment - s/combinataion/combination/ Obtained from: NetBSD (cherry picked from commit 107597fbd4dcd6d0a6ec09913642af151635b77a) --- usr.sbin/rarpd/rarpd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/rarpd/rarpd.c b/usr.sbin/rarpd/rarpd.c index 441164dd2bd2..29781be817f9 100644 --- a/usr.sbin/rarpd/rarpd.c +++ b/usr.sbin/rarpd/rarpd.c @@ -692,7 +692,7 @@ rarp_process(struct if_info *ii, u_char *pkt, u_int len) } /* - * Poke the kernel arp tables with the ethernet/ip address combinataion + * Poke the kernel arp tables with the ethernet/ip address combination * given. When processing a reply, we must do this so that the booting * host (i.e. the guy running rarpd), won't try to ARP for the hardware * address of the guy being booted (he cannot answer the ARP). From nobody Thu Mar 30 06:31:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnD8S5xlcz42XRt; Thu, 30 Mar 2023 06:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PnD8S5Sdsz40wL; Thu, 30 Mar 2023 06:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680157880; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vLZELzBzBJrCI0TVky6b/pBqX/jcFT+TAGelabugmSA=; b=AOIfAHMl6hkvaOVhwtpKzvQBwjQlJvrVctaPn5UYx6mAY+4hDWF5vC9LuEC3JTdxRnyVYv DCbj1CXajhKMTb+VznQMN+y1nYkvgS/gT7fLBpeHfYHkeP7BvxCpgxdy6Puxs+tihePvFP GmvRKxJUl40YkM8rxZpaSJKMzdD0YZxf08S0dXJp4LV975PmycoZqkYoIPFI2kQq6QhzZE J/ov+GjSEp8IWByzUpm8fIL0Fk4Tqzuraqi0m0lJSZw3zyiYPlBUNjuTA8trgXd4oYCN9a 5JCpdRmQUjM5En+WfRJOjGxJcujD57ButQINlFJArhcUmTfRG1QlD2SkLZEYzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680157880; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vLZELzBzBJrCI0TVky6b/pBqX/jcFT+TAGelabugmSA=; b=ROrbG9I8+x3/0ggfJk2cxVKUBxcodQCxlr2Mn25roa4EPc4+qAMGUw68z6Yr6Iosbu72XV Zz0hE+qQjoEXD4CQY9P3MF9pEi1q/pXLrtN1NzmBXl0XsON1T3GLXpYuDIrGnrJDvxfj4E 9xPykIih/4nSZCydC5oVQuf/hjtCBwuv5bYj7/etJXhCqFHzuHm61TWW+NZ5xNF540MWwU iyiwDRx2AajeJaFWlHZpZPxvCFeFffPlumob5mpyGWy68yuQSGpeDQANAq67XGZbWCkak7 Lw7u4u+nVXmtfvJw0FTNUtgz7E3QS9DIn2c1YBuOoJG1jkW5t3E/IwNRVRZXBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680157880; a=rsa-sha256; cv=none; b=wuRanirGmNUsXiOvhkHCjq/EpY41bz2hk17uEDZ5UAyKbKiUd/Wd8AcdYKAnjqSnZiUPxM C/jEa63nkLF9zpwHtiFKunKry291Egj4jdLqac7+lZcfqKljdzrJlStG2No9ZgdZAX2J9Y sKgaf3cgShbd49sTLYNTcLOT5MiJV6p3BxptOu2yIHP3eZnLC4SGteUd74K1HZ8lQ5ovh+ nqtiERZRznGZKI5F/pL+/oTRYaCuZM15UaHqPcGUB+0lPY/n8ePG1oa4aUS54j9Airr6Bi xclwETUmF30xFLBasUyx1HQ5+5gfutfcFdr2nhyJdtUu3m8cDILIA/2huR+kwA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnD8S4YZVz125J; Thu, 30 Mar 2023 06:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32U6VKER088211; Thu, 30 Mar 2023 06:31:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32U6VKkf088210; Thu, 30 Mar 2023 06:31:20 GMT (envelope-from git) Date: Thu, 30 Mar 2023 06:31:20 GMT Message-Id: <202303300631.32U6VKkf088210@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 95d0723eb308 - stable/12 - rarpd(8): Fix a typo in a source code comment List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 95d0723eb308a5d636e84e75a80be315303d19eb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=95d0723eb308a5d636e84e75a80be315303d19eb commit 95d0723eb308a5d636e84e75a80be315303d19eb Author: Gordon Bergling AuthorDate: 2023-03-27 06:45:30 +0000 Commit: Gordon Bergling CommitDate: 2023-03-30 06:31:10 +0000 rarpd(8): Fix a typo in a source code comment - s/combinataion/combination/ Obtained from: NetBSD (cherry picked from commit 107597fbd4dcd6d0a6ec09913642af151635b77a) --- usr.sbin/rarpd/rarpd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/rarpd/rarpd.c b/usr.sbin/rarpd/rarpd.c index 441164dd2bd2..29781be817f9 100644 --- a/usr.sbin/rarpd/rarpd.c +++ b/usr.sbin/rarpd/rarpd.c @@ -692,7 +692,7 @@ rarp_process(struct if_info *ii, u_char *pkt, u_int len) } /* - * Poke the kernel arp tables with the ethernet/ip address combinataion + * Poke the kernel arp tables with the ethernet/ip address combination * given. When processing a reply, we must do this so that the booting * host (i.e. the guy running rarpd), won't try to ARP for the hardware * address of the guy being booted (he cannot answer the ARP). From nobody Thu Mar 30 12:36:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnNFH4k8nz42x9T; Thu, 30 Mar 2023 12:36: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 4PnNFH4DH0z3PX4; Thu, 30 Mar 2023 12:36:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680179763; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ajsg9AnaGygWiyBt2PW7vpzldDn17bJRq4vjzNbo1xE=; b=bkwHuh3g/0VxY3GLcndGB93GukK8rOaRT9NUlnFE/gMsg6JJVDbKWVXGQ59wYRW05DeO99 QItTZkRCR/qK1B0PE0IjYncexLTUkxSBmxq8JDrJsG0atlzusPwKg8d9NDxo9odRnrDRh4 814eiWhzDJpBw0A3tPr/ARVoJTZ3DyrEv0+UgCOANjwlntfey1e0m4qUv0+OyO2KdBXlQX zdheCMGyUFj4W9rFeLt2ZNVUkHy+67b+r1qLsSm4kh9oYmUBtKZyBee11dHeGKhVAZDAaN k3CzQJr1E4TMqRuPWkaNO2icCuI2s7nhGcJ0Xvxn6fsny4mA4hffMFzIKZJ5iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680179763; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ajsg9AnaGygWiyBt2PW7vpzldDn17bJRq4vjzNbo1xE=; b=tlMJkLV/gdr79eBJhpIyK36FVoFQRY1oe4HGXzsLauCsP6uOpXXOFv7wyjRZQDRQny0B9o XiS4KmFUl3xR32QaYs9AKZihVMaghVOvtYGwpp/5I5DUldEBEfD3vZkBkPDBLEQSwh/1Ow 52aVeh+DHAQ/EavydH0ZVqdhp54nUxCgggYiXpgOjynm2NRITuULvvbVVFkukYIFtLcxR6 jNPqWVzgVsk+24x9rnQ8/YAnh/D1oYS7Kx5L4ianCk+pHUn9SZjaKPw90VDG7KjpQetWlt JfYgf1z3yvcyEKeoyPyFBX/bqVI/H2MVnhMQVG7LZOZk9/MJgErbL4UM9srLqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680179763; a=rsa-sha256; cv=none; b=GMEusJhAiXU4ThmJWWU9H+G0qDyXYPdqyINEde6naztXKwUNDtiSgmHNvyNi5nT2UGByMW yHkbSkZVkek9N/zPO+0l5Y/2OMh+StU4nJiIedBloycwChGzwDnZaciVnMMhq4dL1wnEz0 eQnx5gxhQQJWKfmRAkjNFSpl3PbIjJizydIR6CVpWPkrio2sRCU3G5ifGAMWEtHCg++Bjo yUtuw1k7TqhvC23PYf7GkrzwtHKs8YeA3+6+ihtNy4C8PhYpsTLSR4ad1OKNmwfGg4gU+B 4UltlSoMIPwDf+K9kiQBw5C9pk26SF1KoDYS2nRFQ20QkB3URlKSECoerythOA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnNFH3Ghnz1BZg; Thu, 30 Mar 2023 12:36:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32UCa3Lu081674; Thu, 30 Mar 2023 12:36:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32UCa3uL081672; Thu, 30 Mar 2023 12:36:03 GMT (envelope-from git) Date: Thu, 30 Mar 2023 12:36:03 GMT Message-Id: <202303301236.32UCa3uL081672@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: 878cd9623c8e - releng/13.2 - amd64 wakeup: recalculate mitigations after APICs are woken List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/releng/13.2 X-Git-Reftype: branch X-Git-Commit: 878cd9623c8eaa747ec27269fec968b33b153e1d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch releng/13.2 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=878cd9623c8eaa747ec27269fec968b33b153e1d commit 878cd9623c8eaa747ec27269fec968b33b153e1d Author: Konstantin Belousov AuthorDate: 2023-03-28 23:51:44 +0000 Commit: Konstantin Belousov CommitDate: 2023-03-30 12:35:53 +0000 amd64 wakeup: recalculate mitigations after APICs are woken PR: 270489 Approved by: re (cperciva) (cherry picked from commit cd137909c3097fe223ce2b49075eed42a4933bb5) (cherry picked from commit 738b20a47f7379b27ccf7a6d2af2c1bbfa11d05f) --- sys/amd64/acpica/acpi_wakeup.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/amd64/acpica/acpi_wakeup.c b/sys/amd64/acpica/acpi_wakeup.c index 3df4457550d6..62e11f5797f6 100644 --- a/sys/amd64/acpica/acpi_wakeup.c +++ b/sys/amd64/acpica/acpi_wakeup.c @@ -294,19 +294,21 @@ acpi_wakeup_machdep(struct acpi_softc *sc, int state, int sleep_result, * in acpi_sleep_machdep(), after the microcode was * reloaded. Then recalculate the active mitigation * knobs that depend on the microcode and - * cpu_stdext_feature3. + * cpu_stdext_feature3. Do it after LAPICs are woken, + * so that IPIs work. */ identify_cpu_ext_features(); - hw_ibrs_recalculate(true); - hw_ssb_recalculate(true); - amd64_syscall_ret_flush_l1d_recalc(); - x86_rngds_mitg_recalculate(true); mca_resume(); if (vmm_resume_p != NULL) vmm_resume_p(); intr_resume(/*suspend_cancelled*/false); + hw_ibrs_recalculate(true); + amd64_syscall_ret_flush_l1d_recalc(); + hw_ssb_recalculate(true); + x86_rngds_mitg_recalculate(true); + AcpiSetFirmwareWakingVector(0, 0); } else { /* Wakeup MD procedures in interrupt enabled context */ From nobody Thu Mar 30 14:54:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnRK54B4tz41sfw; Thu, 30 Mar 2023 14:54: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 4PnRK537Tvz40QN; Thu, 30 Mar 2023 14:54:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680188073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zellVLnzFSxhQmb2iTVXBKmkZ/6DreyAqN+fU86zEKo=; b=hcc6e0c0mge/i83Wvu4wRIYMbtTzRVgqY5RXOYBcDYadJN55kI7jQLdna2fiwjXBnKXUir kJbSZyRWqUd7Tt9Q3wulKl4F+aDQzHL80f+aXLbFhoQH9OtwlY0g60lQS8w9VdkJXpJNnT wKjdTEuk61w6/fZjURvtET9kagp6mpl1r4Z5FoauucPaSf7ggDaGzLDOOaxgvbr1VOm5Bn WQf/Zi71S13A+HEcKcjzB6/09UInFRgDVFSucY9fNmRhVB7UMzy6v17oBtrOrRrUDBtlX0 lzP7pZcRVZH8gMjpXcKh2aGyIfGbshFyERv6GSbr5shLcKv21g1Rrzt2pUU67A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680188073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zellVLnzFSxhQmb2iTVXBKmkZ/6DreyAqN+fU86zEKo=; b=iU+J+26JAX6UhtmVM0cvltlODtJQXKowcjSTYSTbYlnlNHx2il0P1HfqAmQy8jCmBjEmHF AVnuFw/5xAHUf3jAhaw0sFbS6X4JNKDlnPVFBHxoPJd1A0H3Wtcv3HNOLn8FfZNBPmAQnB aV92ofEKuFfzpYxEI/fEv+qDaaBAojNgb6tUs9eM7NkF5eN4UUK5jW6CxkpMeV3fN1+4U+ k9D8g/bt51MJNkhQL8Q/0s2CXIJemv3FUnOCY1UuSGFEhjb9+xLVy0Ix38fyAp87F7mkt/ 4cjiLfdWJGc9SKVUy/fqSM8KWN3g/2coMDuP4XdCgRe9dBAI6IFwr7HKJXa6Uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680188073; a=rsa-sha256; cv=none; b=w56t4Tl6UE4O8khoFSCTAjVia1Mjkgl8qPekaFPozlyg4rcWB5BxDjqyz+4bKTEIXdnbdA z4hsFSLGQk6M9ayvHc1oaMXkSg6PxlH5LO74z0DwAgS/95qka7+/BeB3dXRYQQwB2LyHbK PrQ6HYfbE98dK2OvLqM0xwHgMLIV/VF7kNKJWlMSHuRD/v5SykkiPZQK2NIjxs3H5nd83e uiMqG9Gr2yXDdFzcrFbNyhksXCJ4r/63CQVHtORUb8pBLnD0Q5aj3sY90bSQcoNMQWIaBA AZFp1KcmG8Z82xMk5qSx1AfDExaMYdcgaOOT0hqO9w0gjwiZB1BfEcQ8vtJ6vQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnRK52B72zGjt; Thu, 30 Mar 2023 14:54:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32UEsXFY010936; Thu, 30 Mar 2023 14:54:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32UEsXuj010935; Thu, 30 Mar 2023 14:54:33 GMT (envelope-from git) Date: Thu, 30 Mar 2023 14:54:33 GMT Message-Id: <202303301454.32UEsXuj010935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 82eb549f800e - stable/13 - Support compilation with llvm 15 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 82eb549f800e08158802b74bef62e7db0939a3fe Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=82eb549f800e08158802b74bef62e7db0939a3fe commit 82eb549f800e08158802b74bef62e7db0939a3fe Author: Mateusz Guzik AuthorDate: 2023-03-30 14:53:33 +0000 Commit: Mateusz Guzik CommitDate: 2023-03-30 14:53:33 +0000 Support compilation with llvm 15 This is a direct bare minimum commit. --- sys/conf/kern.mk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk index 1144522c357b..5b12bbb1c9ce 100644 --- a/sys/conf/kern.mk +++ b/sys/conf/kern.mk @@ -45,6 +45,11 @@ CWARNEXTRA+= -Wno-address-of-packed-member .if ${COMPILER_VERSION} >= 130000 CWARNFLAGS+= -Wno-error=unused-but-set-variable .endif +.if ${COMPILER_VERSION} >= 150000 +CWARNFLAGS+= -Wno-error=deprecated-non-prototype +CWARNFLAGS+= -Wno-error=array-parameter +CWARNFLAGS+= -Wno-error=strict-prototypes +.endif .endif # clang .if ${COMPILER_TYPE} == "gcc" From nobody Fri Mar 31 00:47:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnhTP6pdQz42cjD; Fri, 31 Mar 2023 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 4PnhTP4JY9z3KLW; Fri, 31 Mar 2023 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=1680223657; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M/WshDhzdF4ez9N8HfZrvCe7tFpiiNsyUkga8ykEVQU=; b=bocveCs9GL4K3D7P+MdvxpXQj4WkMmJFy2JFfz4fBzEDp++0xV96G3kWRiEflL9PJ4o8O5 c01q6v09f/l1YmT5/MA8Kaq1SQyOfmGJLqce0FcIM4j3VoYFtqeEu++PDKk39yd8lmgg0F nINTW+BZ5lPyAgb5Fs/QpqwEecOiFfdjngOuIEr0aThJ4xpPPvKg3IDIeucaL9jKVZLDc1 PPEZJ0roCcgrWgNwzsjtj1q9Y1ShAQl5Aa+dYtaD1197rBqmfyyu0TXtLa4t5TkMEFsZ/s Aqvwfvj2ewvWH9KKqAc+WuE5NpvBxIyYfp0K5qrFdh1l3Mw56NmtK8bmsvoHpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680223657; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M/WshDhzdF4ez9N8HfZrvCe7tFpiiNsyUkga8ykEVQU=; b=i1YqJVUCz2cyDWRBbdzbbMVe9UdWG+U6sWiMp1/8mmHkLS5/SlZwmLyXlTsPnTCIY8SLNe KAemIpXqkHrjpP7bo1soAGyrhSdI2t4I8LkuMJ3YT9T6zRj1PEyre3DeaFXi5R/57a8Ndj jpUPazMPE2XckQz3/iRDeXxgWiel6VBJ6Go9+DAoy3oh6+NUPe88z7tJyLSS7P6lguje3Q 2ERDn5D0UPjr5ou95EsK+mwNuKuLwloh/lZw0+fGhwEbxfHuppkYgSaNJPaUTS1QcKU1Qx Q9TgQCQuMBHF14TsUn9uU1kbRZmT/s6GaTZ43zciC+Uh8fTIKqdIpTAd+A6Hgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680223657; a=rsa-sha256; cv=none; b=sxohQO+JLV18BKr4UUM3tP06cq6bM3HduuCS6it5TeX1ZYZmfJr/5wQgcsQ9RsiICP5gqS py+4Aj/6Qyg0Al1H2lPzBSg3P56C/nHuXkbElUHNdlt2k+K38JiDM2YJPc4JbIhZbFUL1T TC+FwHe2QDNHp/1vkypXEtWSPPtvjEqXXllCnRp3ZK1EAuaZZr0DtrFE2sVjc3wsGGuBj8 sOn9SJlfUh8u//DpMHsNsjZjYf4Yx3ZOjuEEy9VtKCyt7Nme74IYIMUpz0tEF9g565dxV5 tH++L5iNUACJWsOJTctLwOJVr00A8X8r7/kZS4P/dn/qOb/nxJbDDHNd/9op9Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnhTP3JMyzY19; Fri, 31 Mar 2023 00:47:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V0lbBA084874; Fri, 31 Mar 2023 00:47:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V0lbpP084873; Fri, 31 Mar 2023 00:47:37 GMT (envelope-from git) Date: Fri, 31 Mar 2023 00:47:37 GMT Message-Id: <202303310047.32V0lbpP084873@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Colin Percival Subject: git: a92e3fa2ade5 - releng/13.2 - 13.2: update to RC6 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/releng/13.2 X-Git-Reftype: branch X-Git-Commit: a92e3fa2ade5788e9c3d9e0ebac6c57b310ad66d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch releng/13.2 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=a92e3fa2ade5788e9c3d9e0ebac6c57b310ad66d commit a92e3fa2ade5788e9c3d9e0ebac6c57b310ad66d Author: Colin Percival AuthorDate: 2023-03-31 00:47:18 +0000 Commit: Colin Percival CommitDate: 2023-03-31 00:47:18 +0000 13.2: update to RC6 Approved by: re (implicit) --- sys/conf/newvers.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 6348d9174c3b..9e3e370060e0 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -54,7 +54,7 @@ TYPE="FreeBSD" REVISION="13.2" -BRANCH="RC5" +BRANCH="RC6" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi From nobody Fri Mar 31 00:59:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pnhkw1fd4z42dDY; Fri, 31 Mar 2023 00:59: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 4Pnhkw0t1Lz3L7p; Fri, 31 Mar 2023 00:59:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eXjMoe0zpOxdsTiRQ1QvhuPXNkMVRQvRdE4BEr2kVas=; b=e1vrxFNoRQ6rNyFFGRmy36Z/LGYHVfCrxR9JzVpL+0K6MWHbhPeEHMVCcgP2Mzwv2tKz55 ovXyCzhsEvgaEvvfFjVMoY0AdzFbeU70s1Y/xsGkHMbYVD9ztPOabnF9DgLabS1Nb25w5T pm3X1Fdcx1N81n2uUF2wHjqojjO5X0Fmbhl/yBTaJvRYrE4CAnV4JQOdp+tmMgO+DIQgWv 2j/5UZ3k0hqJv7jX6jV+PdaPwfWqtzgzhSECI2NrRofe8hL/+X7eQX/AwjAL9djz0HnmwV aQkYLjxWh7diELDUvZea+ydOJ+Mh3l0CXt5pZTPv0qQC/thISqzsLW34fD9tyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eXjMoe0zpOxdsTiRQ1QvhuPXNkMVRQvRdE4BEr2kVas=; b=EwJXZzuOozZUCT6/y+fDI2QcY4mEppO5xkhxJQZhqTJpSZ4ELHAPL9tQ4S6+YjupeH0h3+ MsJLSU7zko0c1T34+7HONHT2OYBcfPUYOuJ3l1zw6SFzUFKiFtLbigHmiplzvcdJvfqYPi JqZUtOnnUYHRZkfOs+DjlzFVPVRBLyaardqoiY3u61gSoWhuSeiXpy9RtrFWOkpfZziuO4 yvguuNE4angStQ6hi5vksZYgEqqSypTvUPnENKjS1q7U1MMyogTJqt6iWyrnxQzm5ER2f/ wbAC7lEfqiRa26R1z9SRCcB5E9bncUbgaxcKrRBVF0PK7CgK/EbpselCBQXxCw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680224360; a=rsa-sha256; cv=none; b=tvrXjZCoVJAiHSeKtP6F/ER1X5/nooMYS4bnuzaLRk7SSL0G8i2X8wUMd3/3oeDLjvPvGV XFF41Eo7aaOmLj2KAfBH+ntaAErevng0/sbsLJ8NCOzwEveAK7g5C54iRpLOPpirX7eQsA vg+cBnwzPa/bX4pd5bj7woDnbFqsORJG1QeSEF/kXcnof39YBGdU5Oq2vqkxowEuFDi8g0 ZR81HWeIy8l0ckibaDZP0LunwD5PuxpZ98YQgyl7HnaGME28oKiTY14SeTfBkvbL5dXDcO liFDBs9NOklifX5eIWT1TseecacfpIuLfpTP/aNYzuwn0Yd5udS5ewcDukFJvg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pnhkv6w9CzY1h; Fri, 31 Mar 2023 00:59:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V0xJvg001625; Fri, 31 Mar 2023 00:59:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V0xJWp001624; Fri, 31 Mar 2023 00:59:19 GMT (envelope-from git) Date: Fri, 31 Mar 2023 00:59:19 GMT Message-Id: <202303310059.32V0xJWp001624@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: df34c934a2d0 - stable/13 - fdescfs: remove useless XXX comment, unwrap line List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: df34c934a2d0cfc149665af9e1a38e9fd51f9429 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=df34c934a2d0cfc149665af9e1a38e9fd51f9429 commit df34c934a2d0cfc149665af9e1a38e9fd51f9429 Author: Konstantin Belousov AuthorDate: 2023-03-21 21:28:16 +0000 Commit: Konstantin Belousov CommitDate: 2023-03-31 00:47:52 +0000 fdescfs: remove useless XXX comment, unwrap line (cherry picked from commit fa3ea81b77e41e3f33a611e51fd8bcbb2f4c8a95) --- sys/fs/fdescfs/fdesc_vfsops.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/fs/fdescfs/fdesc_vfsops.c b/sys/fs/fdescfs/fdesc_vfsops.c index 9d8fdda47cbf..edc2cdd61847 100644 --- a/sys/fs/fdescfs/fdesc_vfsops.c +++ b/sys/fs/fdescfs/fdesc_vfsops.c @@ -90,8 +90,7 @@ fdesc_mount(struct mount *mp) if (mp->mnt_flag & (MNT_UPDATE | MNT_ROOTFS)) return (EOPNOTSUPP); - fmp = malloc(sizeof(struct fdescmount), - M_FDESCMNT, M_WAITOK); /* XXX */ + fmp = malloc(sizeof(struct fdescmount), M_FDESCMNT, M_WAITOK); /* * We need to initialize a few bits of our local mount point struct to From nobody Fri Mar 31 00:59:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pnhkx200Jz42dDV; Fri, 31 Mar 2023 00:59:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pnhkx1WmLz3L5C; Fri, 31 Mar 2023 00:59:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9xOCFImd8CKGy0RlZ8jl+1ZP3Si0kTGLDgmrtZAND0=; b=wSVq2i+MfhwNfq4FpRwKz2UYuJbGAi8LHVMa/1S937K73AhAt/DvHaGpRrb//fpRoQ14QO y4Nwij2qPlHJMO7E+QXTxo7eeZQnEBj5KHyuhoDJt6tgmltW6uQQIxwKGUbSSXex+VXuHR bfiXk6JlRj+rj1R6gBJMBQLEeA54lkDsbCIxDKo2zimHfpiZzrHqENGeDS4SUptUliMEde 0m01JrouuwPcgEtDSvcnZ6pHskRoSvrEH7STtzvejM/7I5xazz4mIUp4EYS3KFO+cZv0Tp /aR4uqgba5hhlkCvPAGkKFFpvkXB0QpimpdpFg6aNC0bSYX8cXRaeM1UWmhZ1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9xOCFImd8CKGy0RlZ8jl+1ZP3Si0kTGLDgmrtZAND0=; b=FiieJ+yZt/oyzsbCEpgI25BHJcajjcPo6RU4H3xlMmW4vN4KMFZRKkQnv3fTIOslQ/wvMw Bd9fV3UOTHuLczynSFgPXsMKEXeynx6cim9ZaKDhHwvQJEGhMzlzw1B4GP3N/fIkhTXBuM +9KwUXuYoT//Ugk6g5aEoPDx4SjrNV8ZPk8xGGk3Iv/FYc1j3K4ptaAHT4oL4A+pWm5Ag+ ymHHWV6RslyZzJEq33QHmM3CdAMN6TJixozBuoJ0T+ZkCFWKVI35pA5PQ8oJbMJW7FeW6z Gyv9QZ+WXz7WUaG6VVtRMBV75DDBr4WHcWPXiH0B8tPgVE2FHJ/Sfwl5F5Z8Cw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680224361; a=rsa-sha256; cv=none; b=wzi881cm2uSMJcBLB+QAmtrkffk03ZUrP03EKtdbdlRKDJSQC9muwOcNwBQIoo+Sqrrqta pIQuhn4DZSjvAnE9su8vzBJAv2ScUgzLATyglwEaeiWrc2trsvoiAlGWRcME/br4clpgBT +XXb6SQZDLXeMhBunksNdoff9lKsAi+j4Fl4RFa2Lv7lUf662prNB/j7VC0tUhXYv1SH1X DLLO25j52f6GoDUIJoROEN/mKmJNEbxixdv6Wp/mTcK3sEw1HoaXWY///McnP7dLYyVOsT rMosy3BDgnolQT9JmJ6az7DTDvZL1xHr6AnELYaxCzuYPwUwLPNWumfPYtylgQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pnhkx0KXBzYY2; Fri, 31 Mar 2023 00:59:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V0xKcF001645; Fri, 31 Mar 2023 00:59:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V0xK3F001644; Fri, 31 Mar 2023 00:59:20 GMT (envelope-from git) Date: Fri, 31 Mar 2023 00:59:20 GMT Message-Id: <202303310059.32V0xK3F001644@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: 35b68d0ac4d3 - stable/13 - fdesc_allocvp(): fix potential use after free List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 35b68d0ac4d3b88ce8e3fa866e42e8842f5227ef Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=35b68d0ac4d3b88ce8e3fa866e42e8842f5227ef commit 35b68d0ac4d3b88ce8e3fa866e42e8842f5227ef Author: Konstantin Belousov AuthorDate: 2023-03-21 21:24:06 +0000 Commit: Konstantin Belousov CommitDate: 2023-03-31 00:47:52 +0000 fdesc_allocvp(): fix potential use after free (cherry picked from commit 51b8ffb95c4fe45f6825d551bd093889820a8115) --- sys/fs/fdescfs/fdesc_vnops.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/sys/fs/fdescfs/fdesc_vnops.c b/sys/fs/fdescfs/fdesc_vnops.c index 087f9b2551d1..17320b2c8354 100644 --- a/sys/fs/fdescfs/fdesc_vnops.c +++ b/sys/fs/fdescfs/fdesc_vnops.c @@ -160,6 +160,7 @@ fdesc_allocvp(fdntype ftype, unsigned fd_fd, int ix, struct mount *mp, struct fdescnode *fd, *fd2; struct vnode *vp, *vp2; struct thread *td; + enum vgetstate vgs; int error; td = curthread; @@ -180,9 +181,9 @@ loop: if (fd->fd_ix == ix && fd->fd_vnode->v_mount == mp) { /* Get reference to vnode in case it's being free'd */ vp = fd->fd_vnode; - VI_LOCK(vp); + vgs = vget_prep(vp); mtx_unlock(&fdesc_hashmtx); - if (vget(vp, LK_EXCLUSIVE | LK_INTERLOCK)) + if (vget_finish(vp, LK_EXCLUSIVE, vgs) != 0) goto loop; *vpp = vp; return (0); @@ -230,9 +231,9 @@ loop: if (fd2->fd_ix == ix && fd2->fd_vnode->v_mount == mp) { /* Get reference to vnode in case it's being free'd */ vp2 = fd2->fd_vnode; - VI_LOCK(vp2); + vgs = vget_prep(vp2); mtx_unlock(&fdesc_hashmtx); - error = vget(vp2, LK_EXCLUSIVE | LK_INTERLOCK); + error = vget_finish(vp2, LK_EXCLUSIVE, vgs); /* Someone beat us, dec use count and wait for reclaim */ vgone(vp); vput(vp); From nobody Fri Mar 31 00:59:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pnhky3b83z42dPn; Fri, 31 Mar 2023 00:59: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 4Pnhky28Vlz3Lb4; Fri, 31 Mar 2023 00:59:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EH+zOJqCNMwRGBPBNIGc1LTvOiqVv8AdOr4oozIPPpQ=; b=F9WBGsZv8ekLayj37txTqmbdby1Vz8Y0hqMT91LfaleV3dHP5FRMwS6UFYo/jE4sPrcCOp 2RUuQ0AR+Ty4KCr+lb2zYKQx7zUoRSJ7lGkfNf+OY+jPxOE4i5CnpVU8BnCQnO83ngfgWC 75ml6LYM1tsDqWtN+c8yTBlkO6f0LCT0+LMqW80Mw84L9zwj5YoHTC4S9Zj9+q3Or1vf2S aYAzSsRelgUDrOBYzaAxQkKdjyOxGLWJfaExoO0aUizKwwF2Q9DlFHEHPyU0iaibw6eWa6 E1IMFWzXo+KGFbF63gK/7Z4ISVzrJSuzk5b2mE//hZCKz0zY319fv1AddF65xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680224362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EH+zOJqCNMwRGBPBNIGc1LTvOiqVv8AdOr4oozIPPpQ=; b=hOWnDMtq6TeNTNohOMA+KHgwQMfs1cbXKyiUG9etLUcuyl38/TAWTXAnlkUb/7mNby+N2Q eUdsLopJcx1nzizDDEpYLLBb10jPh6NQ+KEdYSNyNnGboyFFx4TceiT9A3aYtoKmvMsixX JCinpM+AtkQB/sZVX9u5tD5mlVHseiFrGIarbDvj/nalhvaAm+LmbwHsTE8/pyzHEtOp3D wL89Uk8j5kcZVhoXQIWwi40EwrTd/NaVo5UVHUVSKmECiF0dnklnYEd/QRYFoS8YadFvzJ LruV6O/H+h9uVLeK9MULq/h9XsY5GTKOdt6+DgeaaBm3sdSUSMesuWOJBYmbsA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680224362; a=rsa-sha256; cv=none; b=SOhHwQR8eYW1IiCugmb3ORg46KXfRrOMiau+qNNapk8+sXr8EYTh3g1yq06q84VDiXVjI6 46wIP8RBRmBcFVZgpA0x9CtcnQJGkadHogASuF61VfdYWeH5+CZp2ceZg+kgAR7/8h5k8v 7OI63AGAlJGvPajfU5hVasR5VY6MmC3I2cl5DO3u038WPuHiZaOnyVIIIp5qEhgfttzKGB vO6l2ZLBBeBs/KW3cgZzu66K1p3WhoiY8S4niiGRssrTS9S2j+YqS5pwmI1N+pry4PlGrx xXyyDfsaxebpyf2OUwQrrfl5icFXsQfN80b8KdurhsrJweJEj3+WroUgwSlQdQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pnhky1DzFzYY3; Fri, 31 Mar 2023 00:59:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V0xMUn001665; Fri, 31 Mar 2023 00:59:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V0xMWA001664; Fri, 31 Mar 2023 00:59:22 GMT (envelope-from git) Date: Fri, 31 Mar 2023 00:59:22 GMT Message-Id: <202303310059.32V0xMWA001664@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: 464c507f5daa - stable/13 - vnode_pager_input: return runningbufspace back List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 464c507f5daa28512b934f71ccb8e1bf6af95071 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=464c507f5daa28512b934f71ccb8e1bf6af95071 commit 464c507f5daa28512b934f71ccb8e1bf6af95071 Author: Konstantin Belousov AuthorDate: 2023-03-24 21:12:21 +0000 Commit: Konstantin Belousov CommitDate: 2023-03-31 00:47:52 +0000 vnode_pager_input: return runningbufspace back (cherry picked from commit 28f957b8b3a22086927451fee89789fdf596260b) --- sys/vm/vnode_pager.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index 08927b5671f6..68e2916daad9 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -568,6 +568,13 @@ vnode_pager_addr(struct vnode *vp, vm_ooffset_t address, daddr_t *rtaddress, return (err); } +static void +vnode_pager_input_bdone(struct buf *bp) +{ + runningbufwakeup(bp); + bdone(bp); +} + /* * small block filesystem vnode pager input */ @@ -614,7 +621,7 @@ vnode_pager_input_smlfs(vm_object_t object, vm_page_t m) /* build a minimal buffer header */ bp->b_iocmd = BIO_READ; - bp->b_iodone = bdone; + bp->b_iodone = vnode_pager_input_bdone; KASSERT(bp->b_rcred == NOCRED, ("leaking read ucred")); KASSERT(bp->b_wcred == NOCRED, ("leaking write ucred")); bp->b_rcred = crhold(curthread->td_ucred); @@ -1132,6 +1139,8 @@ vnode_pager_generic_getpages_done(struct buf *bp) error = (bp->b_ioflags & BIO_ERROR) != 0 ? bp->b_error : 0; object = bp->b_vp->v_object; + runningbufwakeup(bp); + if (error == 0 && bp->b_bcount != bp->b_npages * PAGE_SIZE) { if (!buf_mapped(bp)) { bp->b_data = bp->b_kvabase; From nobody Fri Mar 31 07:50:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PnssF6mgbz4265V; Fri, 31 Mar 2023 07:50: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 4PnssF6GDwz4JZN; Fri, 31 Mar 2023 07:50:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680249025; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q4Y88Rm/zrJXM+Nq7mU4RldCuQ0CCQgN7HRxXLTEXkE=; b=vVK2gHOyWghHnKZi+6Yi+NIkytyqySahTkd2dzOeDjRjja4Ql2kjK/CFCP57NtJRK8oJlM iOSTzFfxK89qbucDe64kln/Fdr4H/hV1iHQQcLdzlJ3Y/iCmvxpTN48Aux11SzaAgcL1ep kvKG3w7Llj6Cqu5pDzMSzZ+SxVcBoPndjlnV/LBjo5gVDRrou89HvDg2ZjqSvu21zCn3as c3RKvgGotkBEFOYMxwX42wbSVTToL7i8lAFZVJcNqQBGJE09HlzGVzsu8dDMaaycQe4opU jJG1griKhzhwmdkCs3z7bcq3YheEjrqhzbCo4Yh6fo3MGIJmmx+SDdHDdaC/Qg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680249025; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q4Y88Rm/zrJXM+Nq7mU4RldCuQ0CCQgN7HRxXLTEXkE=; b=KeWtsJCQsmnuwy7ksxD5I8pJtf6yQlBrWPrja0mMKohnkx4LkRg+d7mA5nr+XR7reESKLp 8wg2j/7g/IQDBM4z2riGtHOt0iCUmysgh9BT+QqsdeGNA1DZU5rG6cUqDnLTbqu1rnqbyV mL8WBBAM/ALG5r+3dKz4kOYA8/QC/sWkwi3wGWv1/nVBCP+maCF0DWC+MtEPHoqiX66flA i8XPQcRqTfRDnqKHZb/5ZBszoKd5+3/ZS6gUD7yZqTXWxSWo7TKvZ9kP2fLk/hLpCTI3W4 7RrzPArC4shU15DyorOtVkEwfTOY1GllNY48qwWMPTtZNAuRhWaVB4i6d3trBg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680249025; a=rsa-sha256; cv=none; b=iLyAfNpiPUC/gapaYfM3BTN76NJeM1PgU2B2KMwWwJezE1YimHXSJJsinYLIQ6xoowXiXq t9Ul97Yk92WRqHaTDMRU12sh1FsUcb6BgvFvCFjYbigqn3vUBBk9TIK62wibEU2dJjWIEw QASPi8S0ysBGBu5WJi9BVMMQ1F/edZD0CumHkLH95om4W2AtBs/B8Fflu9t4EVcTJ5i/7H yAnUZf75lnZPhe0vTRi6k+W5n2MRsGe9bdg9NuEZLKse1yUY9MUIgScEYkY7Aw02H/olOA DUOkLHFbk1BpHsTNJS89sG0Yh2kgDO9ofuMtlVns7Q5MnqZZiUBHelNF4dHMlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PnssF5Mmtzm33; Fri, 31 Mar 2023 07:50:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V7oPfj084481; Fri, 31 Mar 2023 07:50:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V7oPK5084480; Fri, 31 Mar 2023 07:50:25 GMT (envelope-from git) Date: Fri, 31 Mar 2023 07:50:25 GMT Message-Id: <202303310750.32V7oPK5084480@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 589b82662409 - stable/12 - devd.conf.5: Fix a typo in the manual page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 589b8266240955601985ffc8ba917ec3571204be Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=589b8266240955601985ffc8ba917ec3571204be commit 589b8266240955601985ffc8ba917ec3571204be Author: Gordon Bergling AuthorDate: 2023-03-26 07:43:58 +0000 Commit: Gordon Bergling CommitDate: 2023-03-31 07:50:11 +0000 devd.conf.5: Fix a typo in the manual page - s/deteted/detected/ (cherry picked from commit 328ebd4680563d62d79c724ab6bbeaadafba7997) --- sbin/devd/devd.conf.5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/devd/devd.conf.5 b/sbin/devd/devd.conf.5 index 76560e23f490..b0bdb0c28636 100644 --- a/sbin/devd/devd.conf.5 +++ b/sbin/devd/devd.conf.5 @@ -547,7 +547,7 @@ device has detected the lid openinging. .It Li PMU Ta Li POWER Ta ACLINE Ta The .Xr pmc 4 -device has deteted an AC line state ($notify=0x00 is offline, 0x01 is online). +device has detected an AC line state ($notify=0x00 is offline, 0x01 is online). .It Li PMU Ta Li USB Ta overvoltage Ta An over-voltage condition on the power lines for the USB power pins. .It Li PMU Ta Li USB Ta plugged Ta From nobody Fri Mar 31 07:50:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pnssh2479z42693; Fri, 31 Mar 2023 07:50: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 4Pnssh1HYsz4Jpj; Fri, 31 Mar 2023 07:50:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680249048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=60U20L+tRmQhQAm4rsQqusnHh3J5GmtFKRS9PGPh5O8=; b=TFlz9fy0O4gKYysRyhl9F9GxGzZtxI/TIJwmvSXkMaHSjxuKhCHqNGw+kUaHpazsVP7ztm OrpR+IANXtv+sM/gVs9AHePKqq1HRsM8C/X9ZeB9fXrsmqB7p+ik+XC4fSbzthDYvA3uZm LuF76Jk/igos+wBKOEqhE3Xiy0QtAtTE0rMsI4Cydvu9sZo3QxulvLoyaYQ6tHUGELIPZ2 ahDeOCUVaHrRNTIZWDQY2D6X4KO1VB//CcFhJOCHiIJ/JEBBYoWl+MmSbTboH33PtDoPu2 Y1bM+yDNoGheWD+pPQzup94p7hjQG30i+emTYMZvoc6AYcELzbks9/RADilBdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1680249048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=60U20L+tRmQhQAm4rsQqusnHh3J5GmtFKRS9PGPh5O8=; b=fSdttldbTrvAuhUewM5bfh43WPOhpv04XLi2Psrkv1R4nWUnUNedSErVoOIROUFJBhGp2l Qn+R/BpliVpwSegJhFy7N41wbywAcMqncmOm6GXTU+bHH9tszx7cwX7RZhIdl4y4nzTtl9 hTH8PBkGRNfuFOv4OrtJRsFKV+M6dhax183KVHNMM2cxvbayOdp0LB2EXakbapVIvDw9uD FLqcm8A6sjIPeaeEn/UGjakigkhkb0V220TqA5sMx0crKUPw15hhqKHcJuwxDYRIiC7BSQ zvAP4gm1IESmQkBIGBLa46Q3gsS5JupFA8pULt2SZ8VnfcJ9T9rWY6USTQ7zMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1680249048; a=rsa-sha256; cv=none; b=B0QJnOD3XxD9mnwuGBbF4byOn4PMvKxBh8bcogXFX1OQwOsK5wWOnI9hc/39AxVFuSjjgP FsLt8xaSMek2UgtYqPKt4J5G+0nidqPIsgRsYZzwpqjitBbYWNmAJHx09qvjSUNI6WhsTA KAP9UE76aCNUqNF3GpPWqGSI5KYNjFC8oM8mr312yC4ajZ8AW44CNYvtfT9UFVFy6Xn3KU F5AKF1UySg81o7XkmQCCm+i4j5tbYJZvbQNdrYhGiW3Jf0YjqaQD0aKoaZtPqzQQXtZWvT trbNEZyptFuot1U/ycrB23InJ9dbrzxymOoTFOa+R8ThQphDblXfK/m7NNRKNg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Pnssh0L1rzlxc; Fri, 31 Mar 2023 07:50:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 32V7olUU085540; Fri, 31 Mar 2023 07:50:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 32V7olJW085539; Fri, 31 Mar 2023 07:50:47 GMT (envelope-from git) Date: Fri, 31 Mar 2023 07:50:47 GMT Message-Id: <202303310750.32V7olJW085539@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 374f3920c72a - stable/13 - devd.conf.5: Fix a typo in the manual page List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 374f3920c72a8d5708a49810a32482c270a576b4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=374f3920c72a8d5708a49810a32482c270a576b4 commit 374f3920c72a8d5708a49810a32482c270a576b4 Author: Gordon Bergling AuthorDate: 2023-03-26 07:43:58 +0000 Commit: Gordon Bergling CommitDate: 2023-03-31 07:50:37 +0000 devd.conf.5: Fix a typo in the manual page - s/deteted/detected/ (cherry picked from commit 328ebd4680563d62d79c724ab6bbeaadafba7997) --- sbin/devd/devd.conf.5 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/devd/devd.conf.5 b/sbin/devd/devd.conf.5 index 632bc759ddc1..58900112fb73 100644 --- a/sbin/devd/devd.conf.5 +++ b/sbin/devd/devd.conf.5 @@ -545,7 +545,7 @@ device has detected the lid openinging. .It Li PMU Ta Li POWER Ta ACLINE Ta The .Xr pmc 4 -device has deteted an AC line state ($notify=0x00 is offline, 0x01 is online). +device has detected an AC line state ($notify=0x00 is offline, 0x01 is online). .It Li PMU Ta Li USB Ta overvoltage Ta An over-voltage condition on the power lines for the USB power pins. .It Li PMU Ta Li USB Ta plugged Ta