From owner-svn-src-stable@freebsd.org Sun Jul 26 01:04:53 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C85F3376216; Sun, 26 Jul 2020 01:04:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDl8j4mfbz3cnZ; Sun, 26 Jul 2020 01:04:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8723C24B97; Sun, 26 Jul 2020 01:04:53 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q14rgD088983; Sun, 26 Jul 2020 01:04:53 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q14rkD088982; Sun, 26 Jul 2020 01:04:53 GMT (envelope-from kib@FreeBSD.org) Message-Id: <202007260104.06Q14rkD088982@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 26 Jul 2020 01:04:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363538 - stable/12/sys/amd64/amd64 X-SVN-Group: stable-12 X-SVN-Commit-Author: kib X-SVN-Commit-Paths: stable/12/sys/amd64/amd64 X-SVN-Commit-Revision: 363538 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 01:04:53 -0000 Author: kib Date: Sun Jul 26 01:04:53 2020 New Revision: 363538 URL: https://svnweb.freebsd.org/changeset/base/363538 Log: MFC r363329: Simplify non-pti syscall entry on amd64. Modified: stable/12/sys/amd64/amd64/exception.S Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/amd64/amd64/exception.S ============================================================================== --- stable/12/sys/amd64/amd64/exception.S Sun Jul 26 00:44:59 2020 (r363537) +++ stable/12/sys/amd64/amd64/exception.S Sun Jul 26 01:04:53 2020 (r363538) @@ -524,17 +524,17 @@ prot_addrf: IDTVEC(fast_syscall_pti) swapgs lfence - movq %rax,PCPU(SCRATCH_RAX) cmpq $~0,PCPU(UCR3) je fast_syscall_common + movq %rax,PCPU(SCRATCH_RAX) movq PCPU(KCR3),%rax movq %rax,%cr3 + movq PCPU(SCRATCH_RAX),%rax jmp fast_syscall_common SUPERALIGN_TEXT IDTVEC(fast_syscall) swapgs lfence - movq %rax,PCPU(SCRATCH_RAX) fast_syscall_common: movq %rsp,PCPU(SCRATCH_RSP) movq PCPU(RSP0),%rsp @@ -545,7 +545,6 @@ fast_syscall_common: movq %rcx,TF_RIP(%rsp) /* %rcx original value is in %r10 */ movq PCPU(SCRATCH_RSP),%r11 /* %r11 already saved */ movq %r11,TF_RSP(%rsp) /* user stack pointer */ - movq PCPU(SCRATCH_RAX),%rax /* * Save a few arg registers early to free them for use in * handle_ibrs_entry(). %r10 is especially tricky. It is not an From owner-svn-src-stable@freebsd.org Sun Jul 26 01:11:30 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id CA6EC376C9A; Sun, 26 Jul 2020 01:11:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDlJL52vLz3dgt; Sun, 26 Jul 2020 01:11:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9076A24B77; Sun, 26 Jul 2020 01:11:30 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q1BUnw093717; Sun, 26 Jul 2020 01:11:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q1BUBY093716; Sun, 26 Jul 2020 01:11:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202007260111.06Q1BUBY093716@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 26 Jul 2020 01:11:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363539 - stable/12/sbin/nvmecontrol X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/sbin/nvmecontrol X-SVN-Commit-Revision: 363539 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 01:11:30 -0000 Author: mav Date: Sun Jul 26 01:11:30 2020 New Revision: 363539 URL: https://svnweb.freebsd.org/changeset/base/363539 Log: MFC r363448: Add missing newlines. Modified: stable/12/sbin/nvmecontrol/identify.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/nvmecontrol/identify.c ============================================================================== --- stable/12/sbin/nvmecontrol/identify.c Sun Jul 26 01:04:53 2020 (r363538) +++ stable/12/sbin/nvmecontrol/identify.c Sun Jul 26 01:11:30 2020 (r363539) @@ -151,15 +151,15 @@ print_namespace(struct nvme_namespace_data *nsdata) uint128_to_str(to128(nsdata->nvmcap), cbuf, sizeof(cbuf))); if ((nsdata->nsfeat >> NVME_NS_DATA_NSFEAT_NPVALID_SHIFT) & NVME_NS_DATA_NSFEAT_NPVALID_MASK) { - printf("Preferred Write Granularity: %u blocks", + printf("Preferred Write Granularity: %u blocks\n", nsdata->npwg + 1); - printf("Preferred Write Alignment: %u blocks", + printf("Preferred Write Alignment: %u blocks\n", nsdata->npwa + 1); - printf("Preferred Deallocate Granul: %u blocks", + printf("Preferred Deallocate Granul: %u blocks\n", nsdata->npdg + 1); - printf("Preferred Deallocate Align: %u blocks", + printf("Preferred Deallocate Align: %u blocks\n", nsdata->npda + 1); - printf("Optimal Write Size: %u blocks", + printf("Optimal Write Size: %u blocks\n", nsdata->nows + 1); } printf("Globally Unique Identifier: "); From owner-svn-src-stable@freebsd.org Sun Jul 26 09:47:02 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A6F713A267D; Sun, 26 Jul 2020 09:47:02 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDylB2cnKz4L4W; Sun, 26 Jul 2020 09:47:02 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3DEA9A9E4; Sun, 26 Jul 2020 09:47:02 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9l2HF013281; Sun, 26 Jul 2020 09:47:02 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9l24s013280; Sun, 26 Jul 2020 09:47:02 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260947.06Q9l24s013280@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:47:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363544 - stable/12/bin/sh X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/bin/sh X-SVN-Commit-Revision: 363544 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:47:02 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:47:01 2020 New Revision: 363544 URL: https://svnweb.freebsd.org/changeset/base/363544 Log: MFC 362957: Fix description of the "\$" sequence for PS1 The manual page documents "\$" to expand to either "$" or "#" followed by a single space. In reality, the single space character is not appended. PR: 247791 Submitted by: kd-dev@pm.me Modified: stable/12/bin/sh/sh.1 Directory Properties: stable/12/ (props changed) Modified: stable/12/bin/sh/sh.1 ============================================================================== --- stable/12/bin/sh/sh.1 Sun Jul 26 09:15:05 2020 (r363543) +++ stable/12/bin/sh/sh.1 Sun Jul 26 09:47:01 2020 (r363544) @@ -32,7 +32,7 @@ .\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95 .\" $FreeBSD$ .\" -.Dd February 24, 2019 +.Dd July 6, 2020 .Dt SH 1 .Os .Sh NAME @@ -1425,9 +1425,9 @@ The final component of the current working directory. The entire path of the current working directory. .It Li \e$ Superuser status. -.Dq Li "$ " +.Dq Li "$" for normal users and -.Dq Li "# " +.Dq Li "#" for superusers. .It Li \e\e A literal backslash. From owner-svn-src-stable@freebsd.org Sun Jul 26 09:48:05 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D6C1D3A2BC2; Sun, 26 Jul 2020 09:48:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDymP5R7Tz4LdD; Sun, 26 Jul 2020 09:48:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9E376B08A; Sun, 26 Jul 2020 09:48:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9m5Nb013388; Sun, 26 Jul 2020 09:48:05 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9m50A013386; Sun, 26 Jul 2020 09:48:05 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260948.06Q9m50A013386@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:48:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363545 - stable/12/share/man/man4 X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/share/man/man4 X-SVN-Commit-Revision: 363545 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:48:05 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:48:04 2020 New Revision: 363545 URL: https://svnweb.freebsd.org/changeset/base/363545 Log: MFC 362741: Document that Intel Dual Band Wireless AC 8265 is supported by iwm(4) Modified: stable/12/share/man/man4/iwm.4 stable/12/share/man/man4/iwmfw.4 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man4/iwm.4 ============================================================================== --- stable/12/share/man/man4/iwm.4 Sun Jul 26 09:47:01 2020 (r363544) +++ stable/12/share/man/man4/iwm.4 Sun Jul 26 09:48:04 2020 (r363545) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 7, 2019 +.Dd June 28, 2020 .Dt IWM 4 .Os .Sh NAME @@ -88,6 +88,7 @@ driver provides support for: .It Intel Dual Band Wireless AC 7260 .It Intel Dual Band Wireless AC 7265 .It Intel Dual Band Wireless AC 8260 +.It Intel Dual Band Wireless AC 8265 .It Intel Dual Band Wireless AC 9260 .It Intel Dual Band Wireless AC 9270 .It Intel Dual Band Wireless AC 946X Modified: stable/12/share/man/man4/iwmfw.4 ============================================================================== --- stable/12/share/man/man4/iwmfw.4 Sun Jul 26 09:47:01 2020 (r363544) +++ stable/12/share/man/man4/iwmfw.4 Sun Jul 26 09:48:04 2020 (r363545) @@ -22,7 +22,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 7, 2019 +.Dd June 28, 2020 .Dt IWMFW 4 .Os .Sh NAME @@ -68,7 +68,7 @@ iwm9260fw_load="YES" .Ed .Sh DESCRIPTION This module provides access to firmware sets for the -Intel Dual Band Wireless WiFi 3160, 3165, 3168, 7260, 7265, 8000, 8260, +Intel Dual Band Wireless WiFi 3160, 3165, 3168, 7260, 7265, 8000, 8260, 8265, 9000 and 9260 series of IEEE 802.11n/11ac adapters. It may be statically linked into the kernel, or loaded as a module. .Sh SEE ALSO From owner-svn-src-stable@freebsd.org Sun Jul 26 09:52:05 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5550A3A2FA3; Sun, 26 Jul 2020 09:52:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDys11SN4z4Lpq; Sun, 26 Jul 2020 09:52:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 154E6B21B; Sun, 26 Jul 2020 09:52:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9q4E5015991; Sun, 26 Jul 2020 09:52:04 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9q4jU015990; Sun, 26 Jul 2020 09:52:04 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260952.06Q9q4jU015990@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:52:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363546 - stable/12/usr.sbin/config X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/usr.sbin/config X-SVN-Commit-Revision: 363546 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:52:05 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:52:04 2020 New Revision: 363546 URL: https://svnweb.freebsd.org/changeset/base/363546 Log: MFC 362742: Do not use macros in the argument to -width This patch improves the presentation of the FILES section dramatically. Modified: stable/12/usr.sbin/config/config.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/config/config.8 ============================================================================== --- stable/12/usr.sbin/config/config.8 Sun Jul 26 09:48:04 2020 (r363545) +++ stable/12/usr.sbin/config/config.8 Sun Jul 26 09:52:04 2020 (r363546) @@ -28,7 +28,7 @@ .\" @(#)config.8 8.2 (Berkeley) 4/19/94 .\" $FreeBSD$ .\" -.Dd May 8, 2007 +.Dd June 29, 2020 .Dt CONFIG 8 .Os .Sh NAME @@ -61,7 +61,7 @@ that give alternate files for a specific machine section below). .Pp Available options and operands: -.Bl -tag -width ".Ar SYSTEM_NAME" +.Bl -tag -width "SYSTEM_NAME" .It Fl V Print the .Nm @@ -235,7 +235,7 @@ installs in the root file system. .El .Sh FILES -.Bl -tag -width ".Pa /sys/ Ns Va ARCH Ns Pa /compile/ Ns Ar SYSTEM_NAME" -compact +.Bl -tag -width "/sys/ARCH/compile/SYSTEM_NAME" -compact .It Pa /sys/conf/files list of common files system is built from .It Pa /sys/conf/Makefile. Ns Va ARCH From owner-svn-src-stable@freebsd.org Sun Jul 26 09:52:49 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 481393A3138; Sun, 26 Jul 2020 09:52:49 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDyss0Gsmz4Lln; Sun, 26 Jul 2020 09:52:49 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E1F20AF22; Sun, 26 Jul 2020 09:52:48 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9qmG2019151; Sun, 26 Jul 2020 09:52:48 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9qmlF019150; Sun, 26 Jul 2020 09:52:48 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260952.06Q9qmlF019150@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:52:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363547 - stable/11/usr.sbin/config X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/usr.sbin/config X-SVN-Commit-Revision: 363547 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:52:49 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:52:48 2020 New Revision: 363547 URL: https://svnweb.freebsd.org/changeset/base/363547 Log: MFC 362742: Do not use macros in the argument to -width This patch improves the presentation of the FILES section dramatically. Modified: stable/11/usr.sbin/config/config.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/config/config.8 ============================================================================== --- stable/11/usr.sbin/config/config.8 Sun Jul 26 09:52:04 2020 (r363546) +++ stable/11/usr.sbin/config/config.8 Sun Jul 26 09:52:48 2020 (r363547) @@ -28,7 +28,7 @@ .\" @(#)config.8 8.2 (Berkeley) 4/19/94 .\" $FreeBSD$ .\" -.Dd May 8, 2007 +.Dd June 29, 2020 .Dt CONFIG 8 .Os .Sh NAME @@ -61,7 +61,7 @@ that give alternate files for a specific machine section below). .Pp Available options and operands: -.Bl -tag -width ".Ar SYSTEM_NAME" +.Bl -tag -width "SYSTEM_NAME" .It Fl V Print the .Nm @@ -235,7 +235,7 @@ installs in the root file system. .El .Sh FILES -.Bl -tag -width ".Pa /sys/ Ns Va ARCH Ns Pa /compile/ Ns Ar SYSTEM_NAME" -compact +.Bl -tag -width "/sys/ARCH/compile/SYSTEM_NAME" -compact .It Pa /sys/conf/files list of common files system is built from .It Pa /sys/conf/Makefile. Ns Va ARCH From owner-svn-src-stable@freebsd.org Sun Jul 26 09:53:50 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B53DF3A2DFC; Sun, 26 Jul 2020 09:53:50 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDyv2460Kz4MGG; Sun, 26 Jul 2020 09:53:50 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 70E67AD61; Sun, 26 Jul 2020 09:53:50 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9roZ4019239; Sun, 26 Jul 2020 09:53:50 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9rost019238; Sun, 26 Jul 2020 09:53:50 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260953.06Q9rost019238@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:53:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363548 - stable/12/lib/libcam X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/lib/libcam X-SVN-Commit-Revision: 363548 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:53:50 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:53:50 2020 New Revision: 363548 URL: https://svnweb.freebsd.org/changeset/base/363548 Log: MFC 362956: Clean up cam.3 - Add a missing Pp [1] - Remove uses of Tn - Use "Xr open 2" when appropriate PR: 247783 [1] Submitted by: PauAmma [1] Modified: stable/12/lib/libcam/cam.3 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libcam/cam.3 ============================================================================== --- stable/12/lib/libcam/cam.3 Sun Jul 26 09:52:48 2020 (r363547) +++ stable/12/lib/libcam/cam.3 Sun Jul 26 09:53:50 2020 (r363548) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 11, 2017 +.Dd July 6, 2020 .Dt CAM 3 .Os .Sh NAME @@ -218,15 +218,12 @@ structure using .Fn cam_open_btl is similar to .Fn cam_open_spec_device , -except that it takes a -.Tn SCSI -bus, target and logical unit instead of a device name and unit number as +except that it takes a SCSI bus, +target and logical unit instead of a device name and unit number as arguments. The .Va path_id -argument is the CAM equivalent of a -.Tn SCSI -bus number. +argument is the CAM equivalent of a SCSI bus number. It represents the logical bus number in the system. The .Ar flags @@ -263,10 +260,13 @@ should be if the user wants the CAM library to allocate space for the .Va cam_device structure. +.Pp .Fn cam_close_device frees the .Va cam_device -structure allocated by one of the above open() calls, and closes the file +structure allocated by one of the above +.Xr open 2 +calls, and closes the file descriptor to the passthrough device. This routine should not be called if the user allocated space for the @@ -276,7 +276,9 @@ Instead, the user should call .Fn cam_close_spec_device . .Pp .Fn cam_close_spec_device -merely closes the file descriptor opened in one of the open() routines +merely closes the file descriptor opened in one of the +.Xr open 2 +routines described above. This function should be called when the .Va cam_device From owner-svn-src-stable@freebsd.org Sun Jul 26 09:54:32 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AB1EF3A2EF7; Sun, 26 Jul 2020 09:54:32 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDyvr47pHz4MHK; Sun, 26 Jul 2020 09:54:32 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 71519B281; Sun, 26 Jul 2020 09:54:32 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9sWYo019329; Sun, 26 Jul 2020 09:54:32 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9sWYl019328; Sun, 26 Jul 2020 09:54:32 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260954.06Q9sWYl019328@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:54:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363549 - stable/11/lib/libcam X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/lib/libcam X-SVN-Commit-Revision: 363549 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:54:32 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:54:32 2020 New Revision: 363549 URL: https://svnweb.freebsd.org/changeset/base/363549 Log: MFC 362956: Clean up cam.3 - Add a missing Pp [1] - Remove uses of Tn - Use "Xr open 2" when appropriate PR: 247783 [1] Submitted by: PauAmma [1] Modified: stable/11/lib/libcam/cam.3 Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libcam/cam.3 ============================================================================== --- stable/11/lib/libcam/cam.3 Sun Jul 26 09:53:50 2020 (r363548) +++ stable/11/lib/libcam/cam.3 Sun Jul 26 09:54:32 2020 (r363549) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 11, 2017 +.Dd July 6, 2020 .Dt CAM 3 .Os .Sh NAME @@ -218,15 +218,12 @@ structure using .Fn cam_open_btl is similar to .Fn cam_open_spec_device , -except that it takes a -.Tn SCSI -bus, target and logical unit instead of a device name and unit number as +except that it takes a SCSI bus, +target and logical unit instead of a device name and unit number as arguments. The .Va path_id -argument is the CAM equivalent of a -.Tn SCSI -bus number. +argument is the CAM equivalent of a SCSI bus number. It represents the logical bus number in the system. The .Ar flags @@ -263,10 +260,13 @@ should be if the user wants the CAM library to allocate space for the .Va cam_device structure. +.Pp .Fn cam_close_device frees the .Va cam_device -structure allocated by one of the above open() calls, and closes the file +structure allocated by one of the above +.Xr open 2 +calls, and closes the file descriptor to the passthrough device. This routine should not be called if the user allocated space for the @@ -276,7 +276,9 @@ Instead, the user should call .Fn cam_close_spec_device . .Pp .Fn cam_close_spec_device -merely closes the file descriptor opened in one of the open() routines +merely closes the file descriptor opened in one of the +.Xr open 2 +routines described above. This function should be called when the .Va cam_device From owner-svn-src-stable@freebsd.org Sun Jul 26 09:57:09 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9B8383A33A0; Sun, 26 Jul 2020 09:57:09 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDyys3jFdz4MTM; Sun, 26 Jul 2020 09:57:09 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 62D4FB282; Sun, 26 Jul 2020 09:57:09 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9v9U9019547; Sun, 26 Jul 2020 09:57:09 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9v978019546; Sun, 26 Jul 2020 09:57:09 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260957.06Q9v978019546@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:57:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363550 - stable/12/usr.bin/env X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/usr.bin/env X-SVN-Commit-Revision: 363550 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:57:09 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:57:08 2020 New Revision: 363550 URL: https://svnweb.freebsd.org/changeset/base/363550 Log: MFC 360283: Fix invalid use of macros and two typos It turns out that currently mandoc(1) is not handling Fl in Ss correctly (maybe it never was). Let's just replace "Fl S \&Ss ..." with "-S ...". After all, this subsection title is stylized anyway, so Fl is not that helpful. Modified: stable/12/usr.bin/env/env.1 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/env/env.1 ============================================================================== --- stable/12/usr.bin/env/env.1 Sun Jul 26 09:54:32 2020 (r363549) +++ stable/12/usr.bin/env/env.1 Sun Jul 26 09:57:08 2020 (r363550) @@ -31,7 +31,7 @@ .\" From FreeBSD: src/usr.bin/printenv/printenv.1,v 1.17 2002/11/26 17:33:35 ru Exp .\" $FreeBSD$ .\" -.Dd January 19, 2020 +.Dd April 24, 2020 .Dt ENV 1 .Os .Sh NAME @@ -165,7 +165,7 @@ and .Ar utility may not be specified together. .\" -.Ss Details of Fl S \&Ss (split-string) processing +.Ss Details of -S (split-string) processing The processing of the .Fl S option will split the given @@ -292,11 +292,11 @@ processing. .Pp Also, .Fl S -processing can not reference the value of the special parameters +processing cannot reference the value of the special parameters which are defined by most shells. For instance, .Fl S -can not recognize special parameters such as: +cannot recognize special parameters such as: .Ql $* , .Ql $@ , .Ql $# , From owner-svn-src-stable@freebsd.org Sun Jul 26 09:57:44 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7F5153A3266; Sun, 26 Jul 2020 09:57:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDyzX2rn4z4MXV; Sun, 26 Jul 2020 09:57:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 44F8FB1CF; Sun, 26 Jul 2020 09:57:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9vimu019618; Sun, 26 Jul 2020 09:57:44 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9viol019617; Sun, 26 Jul 2020 09:57:44 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260957.06Q9viol019617@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:57:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363551 - stable/11/usr.bin/env X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/usr.bin/env X-SVN-Commit-Revision: 363551 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:57:44 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:57:43 2020 New Revision: 363551 URL: https://svnweb.freebsd.org/changeset/base/363551 Log: MFC 360283: Fix invalid use of macros and two typos It turns out that currently mandoc(1) is not handling Fl in Ss correctly (maybe it never was). Let's just replace "Fl S \&Ss ..." with "-S ...". After all, this subsection title is stylized anyway, so Fl is not that helpful. Modified: stable/11/usr.bin/env/env.1 Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.bin/env/env.1 ============================================================================== --- stable/11/usr.bin/env/env.1 Sun Jul 26 09:57:08 2020 (r363550) +++ stable/11/usr.bin/env/env.1 Sun Jul 26 09:57:43 2020 (r363551) @@ -31,7 +31,7 @@ .\" From FreeBSD: src/usr.bin/printenv/printenv.1,v 1.17 2002/11/26 17:33:35 ru Exp .\" $FreeBSD$ .\" -.Dd January 19, 2020 +.Dd April 24, 2020 .Dt ENV 1 .Os .Sh NAME @@ -165,7 +165,7 @@ and .Ar utility may not be specified together. .\" -.Ss Details of Fl S \&Ss (split-string) processing +.Ss Details of -S (split-string) processing The processing of the .Fl S option will split the given @@ -292,11 +292,11 @@ processing. .Pp Also, .Fl S -processing can not reference the value of the special parameters +processing cannot reference the value of the special parameters which are defined by most shells. For instance, .Fl S -can not recognize special parameters such as: +cannot recognize special parameters such as: .Ql $* , .Ql $@ , .Ql $# , From owner-svn-src-stable@freebsd.org Sun Jul 26 09:58:53 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6D5633A31D4; Sun, 26 Jul 2020 09:58:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDz0s2G9vz4Mnx; Sun, 26 Jul 2020 09:58:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 31E73B0A7; Sun, 26 Jul 2020 09:58:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06Q9wrpD019712; Sun, 26 Jul 2020 09:58:53 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06Q9wrKP019711; Sun, 26 Jul 2020 09:58:53 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007260958.06Q9wrKP019711@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 09:58:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363552 - stable/12/usr.sbin/bhyve X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/usr.sbin/bhyve X-SVN-Commit-Revision: 363552 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 09:58:53 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 09:58:52 2020 New Revision: 363552 URL: https://svnweb.freebsd.org/changeset/base/363552 Log: MFC 360187: Improve formatting of synopsis section This patch is about sorting the arguments and using proper mdoc(7) macros to stylize arguments and command modifiers for much better readability. Further style fixes in other sections within the bhyve manual page are going to be worked on in upcoming patches. Reviewed by: rgrimes Differential Revision: https://reviews.freebsd.org/D24526 Modified: stable/12/usr.sbin/bhyve/bhyve.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/bhyve/bhyve.8 ============================================================================== --- stable/12/usr.sbin/bhyve/bhyve.8 Sun Jul 26 09:57:43 2020 (r363551) +++ stable/12/usr.sbin/bhyve/bhyve.8 Sun Jul 26 09:58:52 2020 (r363552) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 13, 2019 +.Dd April 22, 2020 .Dt BHYVE 8 .Os .Sh NAME @@ -32,23 +32,40 @@ .Nd "run a guest operating system inside a virtual machine" .Sh SYNOPSIS .Nm -.Op Fl abehuwxACHPSWY +.Op Fl AabCeHhPSuWwxY .Oo -.Fl c\~ Ns +.Sm off +.Fl c\~ .Oo -.Op Ar cpus= Ns -.Ar numcpus Ns -.Oc Ns -.Op Ar ,sockets=n Ns -.Op Ar ,cores=n Ns -.Op Ar ,threads=n +.Op Cm cpus= +.Ar numcpus .Oc -.Op Fl g Ar gdbport -.Op Fl l Ar help|lpcdev Ns Op , Ns Ar conf -.Op Fl m Ar memsize Ns Op Ar K|k|M|m|G|g|T|t -.Op Fl p Ar vcpu:hostcpu -.Op Fl s Ar help|slot,emulation Ns Op , Ns Ar conf +.Op Cm ,sockets= Ar n +.Op Cm ,cores= Ar n +.Op Cm ,threads= Ar n +.Oc +.Sm on .Op Fl G Ar port +.Op Fl g Ar gdbport +.Oo Fl l +.Sm off +.Cm help | Ar lpcdev Op Cm \&, Ar conf +.Sm on +.Oc +.Oo Fl m +.Sm off +.Ar memsize +.Oo +.Cm K No | Cm k No | Cm M No | Cm m No | Cm G No | Cm g No | Cm T No | Cm t +.Oc +.Sm on +.Oc +.Op Fl p Ar vcpu Ns Cm \&: Ns Ar hostcpu +.Oo Fl s +.Sm off +.Cm help | Ar slot Cm \&, Ar emulation Op Cm \&, Ar conf +.Sm on +.Oc .Op Fl U Ar uuid .Ar vmname .Sh DESCRIPTION From owner-svn-src-stable@freebsd.org Sun Jul 26 10:01:28 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0E29F3A3689; Sun, 26 Jul 2020 10:01:28 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDz3q6fl0z4Mq7; Sun, 26 Jul 2020 10:01:27 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C787DAF39; Sun, 26 Jul 2020 10:01:27 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QA1RwD024071; Sun, 26 Jul 2020 10:01:27 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QA1RFh024070; Sun, 26 Jul 2020 10:01:27 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007261001.06QA1RFh024070@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 10:01:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363553 - stable/12/libexec/rc/rc.d X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/libexec/rc/rc.d X-SVN-Commit-Revision: 363553 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 10:01:28 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 10:01:27 2020 New Revision: 363553 URL: https://svnweb.freebsd.org/changeset/base/363553 Log: MFC 359973: sshd: Warn about missing ssh-keygen only when necessary The sshd service is using ssh-keygen to generate missing SSH keys. If ssh-keygen is missing, it prints the following message: > /etc/rc.d/sshd: WARNING: /usr/bin/ssh-keygen does not exist. It makes sense when the key is not generated yet and cannot be created because ssh-keygen is missing. The problem is that even if the key is present on the host, the sshd service would still warn about missing ssh-keygen (even though it does not need it). Reviewed by: emaste Approved by: emaste (src) Differential Revision: https://reviews.freebsd.org/D23911 Modified: stable/12/libexec/rc/rc.d/sshd Directory Properties: stable/12/ (props changed) Modified: stable/12/libexec/rc/rc.d/sshd ============================================================================== --- stable/12/libexec/rc/rc.d/sshd Sun Jul 26 09:58:52 2020 (r363552) +++ stable/12/libexec/rc/rc.d/sshd Sun Jul 26 10:01:27 2020 (r363553) @@ -45,18 +45,19 @@ sshd_keygen_alg() ;; esac + if [ -f "${keyfile}" ] ; then + info "$ALG host key exists." + return 0 + fi + if [ ! -x /usr/bin/ssh-keygen ] ; then warn "/usr/bin/ssh-keygen does not exist." return 1 fi - if [ -f "${keyfile}" ] ; then - info "$ALG host key exists." - else - echo "Generating $ALG host key." - /usr/bin/ssh-keygen -q -t $alg -f "$keyfile" -N "" - /usr/bin/ssh-keygen -l -f "$keyfile.pub" - fi + echo "Generating $ALG host key." + /usr/bin/ssh-keygen -q -t $alg -f "$keyfile" -N "" + /usr/bin/ssh-keygen -l -f "$keyfile.pub" } sshd_keygen() From owner-svn-src-stable@freebsd.org Sun Jul 26 10:04:03 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 925503A3816; Sun, 26 Jul 2020 10:04:03 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDz6q3Lkvz4NLn; Sun, 26 Jul 2020 10:04:03 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 560A8AF46; Sun, 26 Jul 2020 10:04:03 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QA43Kq025664; Sun, 26 Jul 2020 10:04:03 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QA43ni025663; Sun, 26 Jul 2020 10:04:03 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007261004.06QA43ni025663@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 10:04:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363554 - stable/12/usr.sbin/nologin X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/usr.sbin/nologin X-SVN-Commit-Revision: 363554 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 10:04:03 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 10:04:02 2020 New Revision: 363554 URL: https://svnweb.freebsd.org/changeset/base/363554 Log: MFC 359967: Document the exit status and the stdout message of nologin(8) Reviewed by: debdrup (earlier version) Differential Revision: https://reviews.freebsd.org/D24196 Modified: stable/12/usr.sbin/nologin/nologin.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/nologin/nologin.8 ============================================================================== --- stable/12/usr.sbin/nologin/nologin.8 Sun Jul 26 10:01:27 2020 (r363553) +++ stable/12/usr.sbin/nologin/nologin.8 Sun Jul 26 10:04:02 2020 (r363554) @@ -28,7 +28,7 @@ .\" @(#)nologin.8 8.1 (Berkeley) 6/19/93 .\" $FreeBSD$ .\" -.Dd June 19, 1993 +.Dd April 15, 2020 .Dt NOLOGIN 8 .Os .Sh NAME @@ -39,14 +39,31 @@ .Sh DESCRIPTION The .Nm -utility displays a message that an account is not available and -exits non-zero. -It is intended as a replacement shell field for accounts that +is intended as a replacement shell field for accounts that have been disabled. .Pp +When executed, +.Nm +first writes about the login attempt to +.Xr syslog 3 +and then a displays a message that an account is not available. +.Pp To disable all logins, investigate .Xr nologin 5 . +.Sh EXIT STATUS +The +.Nm +utility always exits non-zero. +.Sh EXAMPLES +Here is a demonstration of executing +.Nm : +.Bd -literal -offset 4n +$ nologin +This account is currently not available. +$ tail -n 1 /var/log/messages +Mar 30 21:53:07 example.org nologin[65992]: Attempted login by beastie on /dev/pts/18 +.Ed .Sh SEE ALSO .Xr login 1 , .Xr nologin 5 From owner-svn-src-stable@freebsd.org Sun Jul 26 10:08:53 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id CE8C03A3B83; Sun, 26 Jul 2020 10:08:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BDzDP4fWzz4Nsx; Sun, 26 Jul 2020 10:08:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 83758B1F2; Sun, 26 Jul 2020 10:08:53 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QA8rQM025983; Sun, 26 Jul 2020 10:08:53 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QA8rL7025982; Sun, 26 Jul 2020 10:08:53 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007261008.06QA8rL7025982@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 10:08:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363556 - stable/12/lib/libc/locale X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/lib/libc/locale X-SVN-Commit-Revision: 363556 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 10:08:53 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 10:08:53 2020 New Revision: 363556 URL: https://svnweb.freebsd.org/changeset/base/363556 Log: MFC 359504: Use proper mdoc(7) macros for literal text and do not use Tn Tn is deprecated and upsets linters. Modified: stable/12/lib/libc/locale/big5.5 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/locale/big5.5 ============================================================================== --- stable/12/lib/libc/locale/big5.5 Sun Jul 26 10:07:05 2020 (r363555) +++ stable/12/lib/libc/locale/big5.5 Sun Jul 26 10:08:53 2020 (r363556) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 12, 2019 +.Dd April 1, 2020 .Dt BIG5 5 .Os .Sh NAME @@ -39,9 +39,8 @@ encoding for Traditional Chinese text .Dq Big Five is a standard for encoding Traditional Chinese text. Each character is represented by either one or two bytes. -Characters from the -.Tn ASCII -character set are represented as single bytes in the range 0x00 - 0x7F. +Characters from the ASCII character set are represented as +single bytes in the range 0x00 - 0x7F. Traditional Chinese characters are represented by two bytes: the first in the range 0xA1 - 0xFE, the second in the range 0x40 - 0xFE. @@ -51,7 +50,11 @@ the first in the range 0xA1 - 0xFE, the second in the .Xr utf8 5 .Sh BUGS The range of the second byte overlaps some ASCII characters, including -0x5C (`\\') and 0x7C (`|') which may cause problems in program execution or +0x5C +.Pq Ql \e +and 0x7C +.Pq Ql | +which may cause problems in program execution or display. Big5 is considered a legacy standard and only preserved for backward compatibility reason. From owner-svn-src-stable@freebsd.org Sun Jul 26 10:59:32 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BCE003A4B80; Sun, 26 Jul 2020 10:59:32 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF0Lr4NfFz4RLq; Sun, 26 Jul 2020 10:59:32 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 79AE0BBA0; Sun, 26 Jul 2020 10:59:32 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QAxWqU057711; Sun, 26 Jul 2020 10:59:32 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QAxW6Y057710; Sun, 26 Jul 2020 10:59:32 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <202007261059.06QAxW6Y057710@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 26 Jul 2020 10:59:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363557 - stable/12/usr.sbin/efibootmgr X-SVN-Group: stable-12 X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: stable/12/usr.sbin/efibootmgr X-SVN-Commit-Revision: 363557 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 10:59:32 -0000 Author: tsoome Date: Sun Jul 26 10:59:32 2020 New Revision: 363557 URL: https://svnweb.freebsd.org/changeset/base/363557 Log: MFC 363241: efibootmgr: typo in long option name del-timout should be del-timeout Reported by: mjg Modified: stable/12/usr.sbin/efibootmgr/efibootmgr.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/efibootmgr/efibootmgr.c ============================================================================== --- stable/12/usr.sbin/efibootmgr/efibootmgr.c Sun Jul 26 10:08:53 2020 (r363556) +++ stable/12/usr.sbin/efibootmgr/efibootmgr.c Sun Jul 26 10:59:32 2020 (r363557) @@ -99,7 +99,7 @@ static struct option lopts[] = { {"copy", required_argument, NULL, 'C'}, /* Copy boot method */ {"create", no_argument, NULL, 'c'}, {"deactivate", required_argument, NULL, 'A'}, - {"del-timout", no_argument, NULL, 'T'}, + {"del-timeout", no_argument, NULL, 'T'}, {"delete", required_argument, NULL, 'B'}, {"delete-bootnext", required_argument, NULL, 'N'}, {"dry-run", no_argument, NULL, 'D'}, From owner-svn-src-stable@freebsd.org Sun Jul 26 11:01:38 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DB0DB3A4972; Sun, 26 Jul 2020 11:01:38 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF0PG5Ry9z4RSj; Sun, 26 Jul 2020 11:01:38 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 9E53CB6DE; Sun, 26 Jul 2020 11:01:38 +0000 (UTC) (envelope-from tsoome@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QB1c2h062843; Sun, 26 Jul 2020 11:01:38 GMT (envelope-from tsoome@FreeBSD.org) Received: (from tsoome@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QB1cd1062842; Sun, 26 Jul 2020 11:01:38 GMT (envelope-from tsoome@FreeBSD.org) Message-Id: <202007261101.06QB1cd1062842@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: tsoome set sender to tsoome@FreeBSD.org using -f From: Toomas Soome Date: Sun, 26 Jul 2020 11:01:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363558 - stable/11/usr.sbin/efibootmgr X-SVN-Group: stable-11 X-SVN-Commit-Author: tsoome X-SVN-Commit-Paths: stable/11/usr.sbin/efibootmgr X-SVN-Commit-Revision: 363558 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 11:01:38 -0000 Author: tsoome Date: Sun Jul 26 11:01:38 2020 New Revision: 363558 URL: https://svnweb.freebsd.org/changeset/base/363558 Log: MFC 363241: efibootmgr: typo in long option name del-timout should be del-timeout Reported by: mjg Modified: stable/11/usr.sbin/efibootmgr/efibootmgr.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/efibootmgr/efibootmgr.c ============================================================================== --- stable/11/usr.sbin/efibootmgr/efibootmgr.c Sun Jul 26 10:59:32 2020 (r363557) +++ stable/11/usr.sbin/efibootmgr/efibootmgr.c Sun Jul 26 11:01:38 2020 (r363558) @@ -99,7 +99,7 @@ static struct option lopts[] = { {"copy", required_argument, NULL, 'C'}, /* Copy boot method */ {"create", no_argument, NULL, 'c'}, {"deactivate", required_argument, NULL, 'A'}, - {"del-timout", no_argument, NULL, 'T'}, + {"del-timeout", no_argument, NULL, 'T'}, {"delete", required_argument, NULL, 'B'}, {"delete-bootnext", required_argument, NULL, 'N'}, {"device", required_argument, NULL, 'd'}, From owner-svn-src-stable@freebsd.org Sun Jul 26 11:16:44 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 855683A4EC6; Sun, 26 Jul 2020 11:16:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF0kh2zgrz4S9D; Sun, 26 Jul 2020 11:16:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 49E22C00C; Sun, 26 Jul 2020 11:16:44 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QBGied070230; Sun, 26 Jul 2020 11:16:44 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QBGicp070229; Sun, 26 Jul 2020 11:16:44 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007261116.06QBGicp070229@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Sun, 26 Jul 2020 11:16:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363559 - stable/12/usr.sbin/nologin X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/usr.sbin/nologin X-SVN-Commit-Revision: 363559 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 11:16:44 -0000 Author: 0mp (doc,ports committer) Date: Sun Jul 26 11:16:43 2020 New Revision: 363559 URL: https://svnweb.freebsd.org/changeset/base/363559 Log: MFC 359977: Fix a typo Reported by: rgrimes Modified: stable/12/usr.sbin/nologin/nologin.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/nologin/nologin.8 ============================================================================== --- stable/12/usr.sbin/nologin/nologin.8 Sun Jul 26 11:01:38 2020 (r363558) +++ stable/12/usr.sbin/nologin/nologin.8 Sun Jul 26 11:16:43 2020 (r363559) @@ -46,7 +46,7 @@ When executed, .Nm first writes about the login attempt to .Xr syslog 3 -and then a displays a message that an account is not available. +and then displays a message that an account is not available. .Pp To disable all logins, investigate From owner-svn-src-stable@freebsd.org Sun Jul 26 13:07:10 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7D9AF3A7D60; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF3B62kblz4YcT; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3D469D39D; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QD79k7038156; Sun, 26 Jul 2020 13:07:09 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QD79tu038155; Sun, 26 Jul 2020 13:07:09 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202007261307.06QD79tu038155@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Sun, 26 Jul 2020 13:07:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363561 - in stable: 11/usr.sbin/wpa/wpa_supplicant 12/usr.sbin/wpa/wpa_supplicant X-SVN-Group: stable-11 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 11/usr.sbin/wpa/wpa_supplicant 12/usr.sbin/wpa/wpa_supplicant X-SVN-Commit-Revision: 363561 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 13:07:10 -0000 Author: cy Date: Sun Jul 26 13:07:09 2020 New Revision: 363561 URL: https://svnweb.freebsd.org/changeset/base/363561 Log: MFC r362651: Add MATCH option for CONFIG_MATCH_IFACE. If the interfaces on which wpa_supplicant is to run are not known or do not exist, wpa_supplicant can match an interface when it arrives. Each matched interface is separated with -M argument and the -i argument now allows for pattern matching. As an example, the following command would start wpa_supplicant for a specific wired interface called lan0, any interface starting with wlan and lastly any other interface. Each match has its own configuration file, and for the wired interface a specific driver has also been given. wpa_supplicant \ -M -c wpa_wired.conf -ilan0 -D wired \ -M -c wpa1.conf -iwlan* \ -M -c wpa2.conf PR: 247177 Reported by: greg@unrelenting.technology Related to: ports r540412 Modified: stable/11/usr.sbin/wpa/wpa_supplicant/Makefile Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/12/usr.sbin/wpa/wpa_supplicant/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/11/usr.sbin/wpa/wpa_supplicant/Makefile ============================================================================== --- stable/11/usr.sbin/wpa/wpa_supplicant/Makefile Sun Jul 26 12:29:22 2020 (r363560) +++ stable/11/usr.sbin/wpa/wpa_supplicant/Makefile Sun Jul 26 13:07:09 2020 (r363561) @@ -52,7 +52,8 @@ CFLAGS+=-DCONFIG_BACKEND_FILE \ -DCONFIG_TLS=openssl \ -DCONFIG_WPS2 \ -DCONFIG_WPS_UPNP \ - -DPKCS12_FUNCS + -DPKCS12_FUNCS \ + -DCONFIG_MATCH_IFACE #CFLAGS+= -g LIBADD= pcap util From owner-svn-src-stable@freebsd.org Sun Jul 26 13:07:10 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AD96D3A7D62; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF3B64DCjz4YcV; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 6DB3DD39E; Sun, 26 Jul 2020 13:07:10 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QD7AIC038162; Sun, 26 Jul 2020 13:07:10 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QD7As7038161; Sun, 26 Jul 2020 13:07:10 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202007261307.06QD7As7038161@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Sun, 26 Jul 2020 13:07:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363561 - in stable: 11/usr.sbin/wpa/wpa_supplicant 12/usr.sbin/wpa/wpa_supplicant X-SVN-Group: stable-12 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 11/usr.sbin/wpa/wpa_supplicant 12/usr.sbin/wpa/wpa_supplicant X-SVN-Commit-Revision: 363561 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 13:07:10 -0000 Author: cy Date: Sun Jul 26 13:07:09 2020 New Revision: 363561 URL: https://svnweb.freebsd.org/changeset/base/363561 Log: MFC r362651: Add MATCH option for CONFIG_MATCH_IFACE. If the interfaces on which wpa_supplicant is to run are not known or do not exist, wpa_supplicant can match an interface when it arrives. Each matched interface is separated with -M argument and the -i argument now allows for pattern matching. As an example, the following command would start wpa_supplicant for a specific wired interface called lan0, any interface starting with wlan and lastly any other interface. Each match has its own configuration file, and for the wired interface a specific driver has also been given. wpa_supplicant \ -M -c wpa_wired.conf -ilan0 -D wired \ -M -c wpa1.conf -iwlan* \ -M -c wpa2.conf PR: 247177 Reported by: greg@unrelenting.technology Related to: ports r540412 Modified: stable/12/usr.sbin/wpa/wpa_supplicant/Makefile Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/11/usr.sbin/wpa/wpa_supplicant/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/12/usr.sbin/wpa/wpa_supplicant/Makefile ============================================================================== --- stable/12/usr.sbin/wpa/wpa_supplicant/Makefile Sun Jul 26 12:29:22 2020 (r363560) +++ stable/12/usr.sbin/wpa/wpa_supplicant/Makefile Sun Jul 26 13:07:09 2020 (r363561) @@ -52,7 +52,8 @@ CFLAGS+=-DCONFIG_BACKEND_FILE \ -DCONFIG_TLS=openssl \ -DCONFIG_WPS2 \ -DCONFIG_WPS_UPNP \ - -DPKCS12_FUNCS + -DPKCS12_FUNCS \ + -DCONFIG_MATCH_IFACE #CFLAGS+= -g LIBADD= pcap util From owner-svn-src-stable@freebsd.org Sun Jul 26 17:44:03 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E530B366A77; Sun, 26 Jul 2020 17:44:03 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF9Kb69sfz3b4h; Sun, 26 Jul 2020 17:44:03 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B801210A0E; Sun, 26 Jul 2020 17:44:03 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QHi3Yi011160; Sun, 26 Jul 2020 17:44:03 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QHi3iB011159; Sun, 26 Jul 2020 17:44:03 GMT (envelope-from kp@FreeBSD.org) Message-Id: <202007261744.06QHi3iB011159@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Sun, 26 Jul 2020 17:44:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363568 - stable/12/sys/net X-SVN-Group: stable-12 X-SVN-Commit-Author: kp X-SVN-Commit-Paths: stable/12/sys/net X-SVN-Commit-Revision: 363568 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 17:44:04 -0000 Author: kp Date: Sun Jul 26 17:44:03 2020 New Revision: 363568 URL: https://svnweb.freebsd.org/changeset/base/363568 Log: Revert bridge epochification Revert r363492, r363491, r363430, r363429 and r362650. The introduction of epoch in the network stack is incomplete in stable/12, and there are simply too many limitations to make the bridge epoch code work there. The final problem is capability configuration of the bridge member interfaces. if_bridge needs to enable promiscuous mode, which for certain drivers (e1000 for example) can sleep. In stable/12 we may not sleep within epoch. Modified: stable/12/sys/net/if_bridge.c Modified: stable/12/sys/net/if_bridge.c ============================================================================== --- stable/12/sys/net/if_bridge.c Sun Jul 26 17:21:24 2020 (r363567) +++ stable/12/sys/net/if_bridge.c Sun Jul 26 17:44:03 2020 (r363568) @@ -189,14 +189,41 @@ extern void nd6_setmtu(struct ifnet *); */ #define BRIDGE_LOCK_INIT(_sc) do { \ mtx_init(&(_sc)->sc_mtx, "if_bridge", NULL, MTX_DEF); \ + cv_init(&(_sc)->sc_cv, "if_bridge_cv"); \ } while (0) #define BRIDGE_LOCK_DESTROY(_sc) do { \ mtx_destroy(&(_sc)->sc_mtx); \ + cv_destroy(&(_sc)->sc_cv); \ } while (0) #define BRIDGE_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) #define BRIDGE_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) #define BRIDGE_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->sc_mtx, MA_OWNED) #define BRIDGE_UNLOCK_ASSERT(_sc) mtx_assert(&(_sc)->sc_mtx, MA_NOTOWNED) +#define BRIDGE_LOCK2REF(_sc, _err) do { \ + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ + if ((_sc)->sc_iflist_xcnt > 0) \ + (_err) = EBUSY; \ + else \ + (_sc)->sc_iflist_ref++; \ + mtx_unlock(&(_sc)->sc_mtx); \ +} while (0) +#define BRIDGE_UNREF(_sc) do { \ + mtx_lock(&(_sc)->sc_mtx); \ + (_sc)->sc_iflist_ref--; \ + if (((_sc)->sc_iflist_xcnt > 0) && ((_sc)->sc_iflist_ref == 0)) \ + cv_broadcast(&(_sc)->sc_cv); \ + mtx_unlock(&(_sc)->sc_mtx); \ +} while (0) +#define BRIDGE_XLOCK(_sc) do { \ + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ + (_sc)->sc_iflist_xcnt++; \ + while ((_sc)->sc_iflist_ref > 0) \ + cv_wait(&(_sc)->sc_cv, &(_sc)->sc_mtx); \ +} while (0) +#define BRIDGE_XDROP(_sc) do { \ + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ + (_sc)->sc_iflist_xcnt--; \ +} while (0) /* * Bridge interface list entry. @@ -210,8 +237,6 @@ struct bridge_iflist { uint32_t bif_addrmax; /* max # of addresses */ uint32_t bif_addrcnt; /* cur. # of addresses */ uint32_t bif_addrexceeded;/* # of address violations */ - - struct epoch_context bif_epoch_ctx; }; /* @@ -225,9 +250,6 @@ struct bridge_rtnode { uint8_t brt_flags; /* address flags */ uint8_t brt_addr[ETHER_ADDR_LEN]; uint16_t brt_vlan; /* vlan id */ - - struct vnet *brt_vnet; - struct epoch_context brt_epoch_ctx; }; #define brt_ifp brt_dst->bif_ifp @@ -238,10 +260,13 @@ struct bridge_softc { struct ifnet *sc_ifp; /* make this an interface */ LIST_ENTRY(bridge_softc) sc_list; struct mtx sc_mtx; + struct cv sc_cv; uint32_t sc_brtmax; /* max # of addresses */ uint32_t sc_brtcnt; /* cur. # of addresses */ uint32_t sc_brttimeout; /* rt timeout in seconds */ struct callout sc_brcallout; /* bridge callout */ + uint32_t sc_iflist_ref; /* refcount for sc_iflist */ + uint32_t sc_iflist_xcnt; /* refcount for sc_iflist */ CK_LIST_HEAD(, bridge_iflist) sc_iflist; /* member interface list */ CK_LIST_HEAD(, bridge_rtnode) *sc_rthash; /* our forwarding table */ CK_LIST_HEAD(, bridge_rtnode) sc_rtlist; /* list version of above */ @@ -251,8 +276,6 @@ struct bridge_softc { uint32_t sc_brtexceeded; /* # of cache drops */ struct ifnet *sc_ifaddr; /* member mac copied from */ struct ether_addr sc_defaddr; /* Default MAC address */ - - struct epoch_context sc_epoch_ctx; }; VNET_DEFINE_STATIC(struct mtx, bridge_list_mtx); @@ -572,11 +595,6 @@ vnet_bridge_uninit(const void *unused __unused) if_clone_detach(V_bridge_cloner); V_bridge_cloner = NULL; BRIDGE_LIST_LOCK_DESTROY(); - - /* Before we can destroy the uma zone, because there are callbacks that - * use it. */ - epoch_drain_callbacks(net_epoch_preempt); - uma_zdestroy(V_bridge_rtnode_zone); } VNET_SYSUNINIT(vnet_bridge_uninit, SI_SUB_PSEUDO, SI_ORDER_ANY, @@ -739,17 +757,6 @@ bridge_clone_create(struct if_clone *ifc, int unit, ca return (0); } -static void -bridge_clone_destroy_cb(struct epoch_context *ctx) -{ - struct bridge_softc *sc; - - sc = __containerof(ctx, struct bridge_softc, sc_epoch_ctx); - - BRIDGE_LOCK_DESTROY(sc); - free(sc, M_DEVBUF); -} - /* * bridge_clone_destroy: * @@ -760,9 +767,7 @@ bridge_clone_destroy(struct ifnet *ifp) { struct bridge_softc *sc = ifp->if_softc; struct bridge_iflist *bif; - struct epoch_tracker et; - NET_EPOCH_ENTER_ET(et); BRIDGE_LOCK(sc); bridge_stop(ifp, 1); @@ -787,12 +792,11 @@ bridge_clone_destroy(struct ifnet *ifp) BRIDGE_LIST_UNLOCK(); bstp_detach(&sc->sc_stp); - NET_EPOCH_EXIT_ET(et); - ether_ifdetach(ifp); if_free(ifp); - epoch_call(net_epoch_preempt, &sc->sc_epoch_ctx, bridge_clone_destroy_cb); + BRIDGE_LOCK_DESTROY(sc); + free(sc, M_DEVBUF); } /* @@ -818,10 +822,7 @@ bridge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t da struct ifdrv *ifd = (struct ifdrv *) data; const struct bridge_control *bc; int error = 0, oldmtu; - struct epoch_tracker et; - NET_EPOCH_ENTER_ET(et); - switch (cmd) { case SIOCADDMULTI: @@ -942,8 +943,6 @@ bridge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t da break; } - NET_EPOCH_EXIT_ET(et); - return (error); } @@ -958,8 +957,6 @@ bridge_mutecaps(struct bridge_softc *sc) struct bridge_iflist *bif; int enabled, mask; - BRIDGE_LOCK_ASSERT(sc); - /* Initial bitmask of capabilities to test */ mask = BRIDGE_IFCAPS_MASK; @@ -968,6 +965,7 @@ bridge_mutecaps(struct bridge_softc *sc) mask &= bif->bif_savedcaps; } + BRIDGE_XLOCK(sc); CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { enabled = bif->bif_ifp->if_capenable; enabled &= ~BRIDGE_IFCAPS_STRIP; @@ -978,6 +976,8 @@ bridge_mutecaps(struct bridge_softc *sc) bridge_set_ifcap(sc, bif, enabled); BRIDGE_LOCK(sc); } + BRIDGE_XDROP(sc); + } static void @@ -1018,7 +1018,7 @@ bridge_lookup_member(struct bridge_softc *sc, const ch struct bridge_iflist *bif; struct ifnet *ifp; - MPASS(in_epoch(net_epoch_preempt)); + BRIDGE_LOCK_ASSERT(sc); CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { ifp = bif->bif_ifp; @@ -1039,7 +1039,7 @@ bridge_lookup_member_if(struct bridge_softc *sc, struc { struct bridge_iflist *bif; - MPASS(in_epoch(net_epoch_preempt)); + BRIDGE_LOCK_ASSERT(sc); CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { if (bif->bif_ifp == member_ifp) @@ -1049,16 +1049,6 @@ bridge_lookup_member_if(struct bridge_softc *sc, struc return (NULL); } -static void -bridge_delete_member_cb(struct epoch_context *ctx) -{ - struct bridge_iflist *bif; - - bif = __containerof(ctx, struct bridge_iflist, bif_epoch_ctx); - - free(bif, M_DEVBUF); -} - /* * bridge_delete_member: * @@ -1078,7 +1068,9 @@ bridge_delete_member(struct bridge_softc *sc, struct b bstp_disable(&bif->bif_stp); ifs->if_bridge = NULL; + BRIDGE_XLOCK(sc); CK_LIST_REMOVE(bif, bif_next); + BRIDGE_XDROP(sc); /* * If removing the interface that gave the bridge its mac address, set @@ -1137,9 +1129,7 @@ bridge_delete_member(struct bridge_softc *sc, struct b } bstp_destroy(&bif->bif_stp); /* prepare to free */ BRIDGE_LOCK(sc); - - epoch_call(net_epoch_preempt, &bif->bif_epoch_ctx, - bridge_delete_member_cb); + free(bif, M_DEVBUF); } /* @@ -1156,9 +1146,7 @@ bridge_delete_span(struct bridge_softc *sc, struct bri ("%s: not a span interface", __func__)); CK_LIST_REMOVE(bif, bif_next); - - epoch_call(net_epoch_preempt, &bif->bif_epoch_ctx, - bridge_delete_member_cb); + free(bif, M_DEVBUF); } static int @@ -1214,6 +1202,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) * If any, remove all inet6 addresses from the member * interfaces. */ + BRIDGE_XLOCK(sc); CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { if (in6ifa_llaonifp(bif->bif_ifp)) { BRIDGE_UNLOCK(sc); @@ -1226,6 +1215,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) bif->bif_ifp->if_xname); } } + BRIDGE_XDROP(sc); if (in6ifa_llaonifp(ifs)) { BRIDGE_UNLOCK(sc); in6_ifdetach(ifs); @@ -1434,9 +1424,9 @@ bridge_ioctl_gifs(struct bridge_softc *sc, void *arg) bifc->ifbic_len = buflen; return (0); } - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); - if (outbuf == NULL) - return (ENOMEM); + BRIDGE_UNLOCK(sc); + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); + BRIDGE_LOCK(sc); count = 0; buf = outbuf; @@ -1496,9 +1486,9 @@ bridge_ioctl_rts(struct bridge_softc *sc, void *arg) count++; buflen = sizeof(bareq) * count; - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); - if (outbuf == NULL) - return (ENOMEM); + BRIDGE_UNLOCK(sc); + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); + BRIDGE_LOCK(sc); count = 0; buf = outbuf; @@ -1539,17 +1529,12 @@ bridge_ioctl_saddr(struct bridge_softc *sc, void *arg) struct bridge_iflist *bif; int error; - MPASS(in_epoch(net_epoch_preempt)); - bif = bridge_lookup_member(sc, req->ifba_ifsname); if (bif == NULL) return (ENOENT); - /* bridge_rtupdate() may acquire the lock. */ - BRIDGE_UNLOCK(sc); error = bridge_rtupdate(sc, req->ifba_dst, req->ifba_vlan, bif, 1, req->ifba_flags); - BRIDGE_LOCK(sc); return (error); } @@ -1824,9 +1809,9 @@ bridge_ioctl_gifsstp(struct bridge_softc *sc, void *ar return (0); } - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); - if (outbuf == NULL) - return (ENOMEM); + BRIDGE_UNLOCK(sc); + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); + BRIDGE_LOCK(sc); count = 0; buf = outbuf; @@ -1888,7 +1873,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) { struct bridge_softc *sc = ifp->if_bridge; struct bridge_iflist *bif; - struct epoch_tracker et; if (ifp->if_flags & IFF_RENAMING) return; @@ -1899,7 +1883,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) */ return; } - NET_EPOCH_ENTER_ET(et); /* Check if the interface is a bridge member */ if (sc != NULL) { BRIDGE_LOCK(sc); @@ -1909,7 +1892,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) bridge_delete_member(sc, bif, 1); BRIDGE_UNLOCK(sc); - NET_EPOCH_EXIT_ET(et); return; } @@ -1926,7 +1908,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) BRIDGE_UNLOCK(sc); } BRIDGE_LIST_UNLOCK(); - NET_EPOCH_EXIT_ET(et); } /* @@ -2081,26 +2062,23 @@ static int bridge_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *sa, struct rtentry *rt) { - struct epoch_tracker et; struct ether_header *eh; struct ifnet *dst_if; struct bridge_softc *sc; uint16_t vlan; - NET_EPOCH_ENTER_ET(et); - if (m->m_len < ETHER_HDR_LEN) { m = m_pullup(m, ETHER_HDR_LEN); - if (m == NULL) { - NET_EPOCH_EXIT_ET(et); + if (m == NULL) return (0); - } } eh = mtod(m, struct ether_header *); sc = ifp->if_bridge; vlan = VLANTAGOF(m); + BRIDGE_LOCK(sc); + /* * If bridge is down, but the original output interface is up, * go ahead and send out that interface. Otherwise, the packet @@ -2122,10 +2100,16 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struc if (dst_if == NULL) { struct bridge_iflist *bif; struct mbuf *mc; - int used = 0; + int error = 0, used = 0; bridge_span(sc, m); + BRIDGE_LOCK2REF(sc, error); + if (error) { + m_freem(m); + return (0); + } + CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { dst_if = bif->bif_ifp; @@ -2159,7 +2143,7 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struc } if (used == 0) m_freem(m); - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNREF(sc); return (0); } @@ -2171,12 +2155,12 @@ sendunicast: bridge_span(sc, m); if ((dst_if->if_drv_flags & IFF_DRV_RUNNING) == 0) { m_freem(m); - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (0); } + BRIDGE_UNLOCK(sc); bridge_enqueue(sc, dst_if, m); - NET_EPOCH_EXIT_ET(et); return (0); } @@ -2189,28 +2173,25 @@ sendunicast: static int bridge_transmit(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct bridge_softc *sc; struct ether_header *eh; struct ifnet *dst_if; int error = 0; - NET_EPOCH_ENTER_ET(et); - sc = ifp->if_softc; ETHER_BPF_MTAP(ifp, m); eh = mtod(m, struct ether_header *); + BRIDGE_LOCK(sc); if (((m->m_flags & (M_BCAST|M_MCAST)) == 0) && (dst_if = bridge_rtlookup(sc, eh->ether_dhost, 1)) != NULL) { + BRIDGE_UNLOCK(sc); error = bridge_enqueue(sc, dst_if, m); } else bridge_broadcast(sc, ifp, m, 0); - NET_EPOCH_EXIT_ET(et); - return (error); } @@ -2240,8 +2221,6 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ uint8_t *dst; int error; - MPASS(in_epoch(net_epoch_preempt)); - src_if = m->m_pkthdr.rcvif; ifp = sc->sc_ifp; @@ -2320,10 +2299,12 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ || PFIL_HOOKED(&V_inet6_pfil_hook) #endif ) { + BRIDGE_UNLOCK(sc); if (bridge_pfil(&m, ifp, src_if, PFIL_IN) != 0) return; if (m == NULL) return; + BRIDGE_LOCK(sc); } if (dst_if == NULL) { @@ -2351,6 +2332,8 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ dbif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) goto drop; + BRIDGE_UNLOCK(sc); + if (PFIL_HOOKED(&V_inet_pfil_hook) #ifdef INET6 || PFIL_HOOKED(&V_inet6_pfil_hook) @@ -2366,6 +2349,7 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ return; drop: + BRIDGE_UNLOCK(sc); m_freem(m); } @@ -2378,7 +2362,6 @@ drop: static struct mbuf * bridge_input(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct bridge_softc *sc = ifp->if_bridge; struct bridge_iflist *bif, *bif2; struct ifnet *bifp; @@ -2387,12 +2370,8 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) uint16_t vlan; int error; - NET_EPOCH_ENTER_ET(et); - - if ((sc->sc_ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { - NET_EPOCH_EXIT_ET(et); + if ((sc->sc_ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) return (m); - } bifp = sc->sc_ifp; vlan = VLANTAGOF(m); @@ -2409,12 +2388,12 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) if_inc_counter(bifp, IFCOUNTER_IPACKETS, 1); if_inc_counter(bifp, IFCOUNTER_IBYTES, m->m_pkthdr.len); m_freem(m); - NET_EPOCH_EXIT_ET(et); return (NULL); } + BRIDGE_LOCK(sc); bif = bridge_lookup_member_if(sc, ifp); if (bif == NULL) { - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (m); } @@ -2427,13 +2406,13 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) if (memcmp(eh->ether_dhost, bstp_etheraddr, ETHER_ADDR_LEN) == 0) { bstp_input(&bif->bif_stp, ifp, m); /* consumes mbuf */ - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (NULL); } if ((bif->bif_flags & IFBIF_STP) && bif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) { - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (m); } @@ -2444,7 +2423,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) */ mc = m_dup(m, M_NOWAIT); if (mc == NULL) { - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (m); } @@ -2471,13 +2450,12 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) } /* Return the original packet for local processing. */ - NET_EPOCH_EXIT_ET(et); return (m); } if ((bif->bif_flags & IFBIF_STP) && bif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) { - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return (m); } @@ -2517,6 +2495,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) OR_PFIL_HOOKED_INET6)) { \ if (bridge_pfil(&m, NULL, ifp, \ PFIL_IN) != 0 || m == NULL) { \ + BRIDGE_UNLOCK(sc); \ return (NULL); \ } \ eh = mtod(m, struct ether_header *); \ @@ -2526,13 +2505,13 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) error = bridge_rtupdate(sc, eh->ether_shost, \ vlan, bif, 0, IFBAF_DYNAMIC); \ if (error && bif->bif_addrmax) { \ + BRIDGE_UNLOCK(sc); \ m_freem(m); \ - NET_EPOCH_EXIT_ET(et); \ return (NULL); \ } \ } \ m->m_pkthdr.rcvif = iface; \ - NET_EPOCH_EXIT_ET(et); \ + BRIDGE_UNLOCK(sc); \ return (m); \ } \ \ @@ -2540,8 +2519,8 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) if (memcmp(IF_LLADDR((iface)), eh->ether_shost, ETHER_ADDR_LEN) == 0 \ OR_CARP_CHECK_WE_ARE_SRC((iface)) \ ) { \ + BRIDGE_UNLOCK(sc); \ m_freem(m); \ - NET_EPOCH_EXIT_ET(et); \ return (NULL); \ } @@ -2572,7 +2551,6 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) /* Perform the bridge forwarding function. */ bridge_forward(sc, bif, m); - NET_EPOCH_EXIT_ET(et); return (NULL); } @@ -2592,12 +2570,16 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet struct bridge_iflist *dbif, *sbif; struct mbuf *mc; struct ifnet *dst_if; - int used = 0, i; + int error = 0, used = 0, i; - MPASS(in_epoch(net_epoch_preempt)); - sbif = bridge_lookup_member_if(sc, src_if); + BRIDGE_LOCK2REF(sc, error); + if (error) { + m_freem(m); + return; + } + /* Filter on the bridge interface before broadcasting */ if (runfilt && (PFIL_HOOKED(&V_inet_pfil_hook) #ifdef INET6 @@ -2605,9 +2587,9 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet #endif )) { if (bridge_pfil(&m, sc->sc_ifp, NULL, PFIL_OUT) != 0) - return; + goto out; if (m == NULL) - return; + goto out; } CK_LIST_FOREACH(dbif, &sc->sc_iflist, bif_next) { @@ -2670,6 +2652,9 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet } if (used == 0) m_freem(m); + +out: + BRIDGE_UNREF(sc); } /* @@ -2685,8 +2670,6 @@ bridge_span(struct bridge_softc *sc, struct mbuf *m) struct ifnet *dst_if; struct mbuf *mc; - MPASS(in_epoch(net_epoch_preempt)); - if (CK_LIST_EMPTY(&sc->sc_spanlist)) return; @@ -2718,8 +2701,7 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t struct bridge_rtnode *brt; int error; - MPASS(in_epoch(net_epoch_preempt)); - BRIDGE_UNLOCK_ASSERT(sc); + BRIDGE_LOCK_ASSERT(sc); /* Check the source address is valid and not multicast. */ if (ETHER_IS_MULTICAST(dst) || @@ -2736,24 +2718,13 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t * update it, otherwise create a new one. */ if ((brt = bridge_rtnode_lookup(sc, dst, vlan)) == NULL) { - BRIDGE_LOCK(sc); - - /* Check again, now that we have the lock. There could have - * been a race and we only want to insert this once. */ - if ((brt = bridge_rtnode_lookup(sc, dst, vlan)) != NULL) { - BRIDGE_UNLOCK(sc); - return (0); - } - if (sc->sc_brtcnt >= sc->sc_brtmax) { sc->sc_brtexceeded++; - BRIDGE_UNLOCK(sc); return (ENOSPC); } /* Check per interface address limits (if enabled) */ if (bif->bif_addrmax && bif->bif_addrcnt >= bif->bif_addrmax) { bif->bif_addrexceeded++; - BRIDGE_UNLOCK(sc); return (ENOSPC); } @@ -2763,11 +2734,8 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t * address. */ brt = uma_zalloc(V_bridge_rtnode_zone, M_NOWAIT | M_ZERO); - if (brt == NULL) { - BRIDGE_UNLOCK(sc); + if (brt == NULL) return (ENOMEM); - } - brt->brt_vnet = curvnet; if (bif->bif_flags & IFBIF_STICKY) brt->brt_flags = IFBAF_STICKY; @@ -2779,22 +2747,17 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t if ((error = bridge_rtnode_insert(sc, brt)) != 0) { uma_zfree(V_bridge_rtnode_zone, brt); - BRIDGE_UNLOCK(sc); return (error); } brt->brt_dst = bif; bif->bif_addrcnt++; - - BRIDGE_UNLOCK(sc); } if ((brt->brt_flags & IFBAF_TYPEMASK) == IFBAF_DYNAMIC && brt->brt_dst != bif) { - BRIDGE_LOCK(sc); brt->brt_dst->bif_addrcnt--; brt->brt_dst = bif; brt->brt_dst->bif_addrcnt++; - BRIDGE_UNLOCK(sc); } if ((flags & IFBAF_TYPEMASK) == IFBAF_DYNAMIC) @@ -2815,7 +2778,7 @@ bridge_rtlookup(struct bridge_softc *sc, const uint8_t { struct bridge_rtnode *brt; - MPASS(in_epoch(net_epoch_preempt)); + BRIDGE_LOCK_ASSERT(sc); if ((brt = bridge_rtnode_lookup(sc, addr, vlan)) == NULL) return (NULL); @@ -3054,7 +3017,7 @@ bridge_rtnode_lookup(struct bridge_softc *sc, const ui uint32_t hash; int dir; - MPASS(in_epoch(net_epoch_preempt)); + BRIDGE_LOCK_ASSERT(sc); hash = bridge_rthash(sc, addr); CK_LIST_FOREACH(brt, &sc->sc_rthash[hash], brt_hash) { @@ -3117,18 +3080,6 @@ out: return (0); } -static void -bridge_rtnode_destroy_cb(struct epoch_context *ctx) -{ - struct bridge_rtnode *brt; - - brt = __containerof(ctx, struct bridge_rtnode, brt_epoch_ctx); - - CURVNET_SET(brt->brt_vnet); - uma_zfree(V_bridge_rtnode_zone, brt); - CURVNET_RESTORE(); -} - /* * bridge_rtnode_destroy: * @@ -3144,9 +3095,7 @@ bridge_rtnode_destroy(struct bridge_softc *sc, struct CK_LIST_REMOVE(brt, brt_list); sc->sc_brtcnt--; brt->brt_dst->bif_addrcnt--; - - epoch_call(net_epoch_preempt, &brt->brt_epoch_ctx, - bridge_rtnode_destroy_cb); + uma_zfree(V_bridge_rtnode_zone, brt); } /* @@ -3691,20 +3640,17 @@ bridge_linkstate(struct ifnet *ifp) { struct bridge_softc *sc = ifp->if_bridge; struct bridge_iflist *bif; - struct epoch_tracker et; - NET_EPOCH_ENTER_ET(et); - + BRIDGE_LOCK(sc); bif = bridge_lookup_member_if(sc, ifp); if (bif == NULL) { - NET_EPOCH_EXIT_ET(et); + BRIDGE_UNLOCK(sc); return; } bridge_linkcheck(sc); + BRIDGE_UNLOCK(sc); bstp_linkstate(&bif->bif_stp); - - NET_EPOCH_EXIT_ET(et); } static void @@ -3713,8 +3659,7 @@ bridge_linkcheck(struct bridge_softc *sc) struct bridge_iflist *bif; int new_link, hasls; - MPASS(in_epoch(net_epoch_preempt)); - + BRIDGE_LOCK_ASSERT(sc); new_link = LINK_STATE_DOWN; hasls = 0; /* Our link is considered up if at least one of our ports is active */ From owner-svn-src-stable@freebsd.org Sun Jul 26 18:12:55 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0A050367A18; Sun, 26 Jul 2020 18:12:55 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BF9yt6VtSz3cvD; Sun, 26 Jul 2020 18:12:54 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C224D10F13; Sun, 26 Jul 2020 18:12:54 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QICsLu029899; Sun, 26 Jul 2020 18:12:54 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QICsfW029898; Sun, 26 Jul 2020 18:12:54 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007261812.06QICsfW029898@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Sun, 26 Jul 2020 18:12:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363570 - stable/12/usr.bin/whois X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/usr.bin/whois X-SVN-Commit-Revision: 363570 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 18:12:55 -0000 Author: markj Date: Sun Jul 26 18:12:54 2020 New Revision: 363570 URL: https://svnweb.freebsd.org/changeset/base/363570 Log: MFC r363052: whois: Handle referrals to rwhois servers. PR: 243862 Modified: stable/12/usr.bin/whois/whois.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/whois/whois.c ============================================================================== --- stable/12/usr.bin/whois/whois.c Sun Jul 26 17:50:39 2020 (r363569) +++ stable/12/usr.bin/whois/whois.c Sun Jul 26 18:12:54 2020 (r363570) @@ -117,6 +117,7 @@ static struct { WHOIS_REFERRAL("Whois Server:"), WHOIS_REFERRAL("Registrar WHOIS Server:"), /* corporatedomains.com */ WHOIS_REFERRAL("ReferralServer: whois://"), /* ARIN */ + WHOIS_REFERRAL("ReferralServer: rwhois://"), /* ARIN */ WHOIS_REFERRAL("descr: region. Please query"), /* AfriNIC */ { NULL, 0 } }; @@ -156,10 +157,10 @@ reset_rir(void) { static const char *port = DEFAULT_PORT; static const char *choose_server(char *); -static struct addrinfo *gethostinfo(char const *host, int exitnoname); +static struct addrinfo *gethostinfo(const char *, const char *, int); static void s_asprintf(char **ret, const char *format, ...) __printflike(2, 3); static void usage(void); -static void whois(const char *, const char *, int); +static void whois(const char *, const char *, const char *, int); int main(int argc, char *argv[]) @@ -255,11 +256,11 @@ main(int argc, char *argv[]) if (country != NULL) { char *qnichost; s_asprintf(&qnichost, "%s%s", country, QNICHOST_TAIL); - whois(*argv, qnichost, flags); + whois(*argv, qnichost, port, flags); free(qnichost); } else whois(*argv, host != NULL ? host : - choose_server(*argv), flags); + choose_server(*argv), port, flags); reset_rir(); argv++; } @@ -283,7 +284,7 @@ choose_server(char *domain) } static struct addrinfo * -gethostinfo(char const *host, int exit_on_noname) +gethostinfo(const char *host, const char *hport, int exit_on_noname) { struct addrinfo hints, *res; int error; @@ -293,7 +294,7 @@ gethostinfo(char const *host, int exit_on_noname) hints.ai_family = AF_UNSPEC; hints.ai_socktype = SOCK_STREAM; res = NULL; - error = getaddrinfo(host, port, &hints, &res); + error = getaddrinfo(host, hport, &hints, &res); if (error && (exit_on_noname || error != EAI_NONAME)) err(EX_NOHOST, "%s: %s", host, gai_strerror(error)); return (res); @@ -444,15 +445,15 @@ done: } static void -whois(const char *query, const char *hostname, int flags) +whois(const char *query, const char *hostname, const char *hostport, int flags) { FILE *fp; struct addrinfo *hostres; - char *buf, *host, *nhost, *p; + char *buf, *host, *nhost, *nport, *p; int comment, s, f; size_t len, i; - hostres = gethostinfo(hostname, 1); + hostres = gethostinfo(hostname, hostport, 1); s = connect_to_any_host(hostres); if (s == -1) err(EX_OSERR, "connect()"); @@ -532,14 +533,35 @@ whois(const char *query, const char *hostname, int fla SCAN(p, buf+len, *p == ' '); host = p; SCAN(p, buf+len, ishost(*p)); - if (p > host) + if (p > host) { + char *pstr; + s_asprintf(&nhost, "%.*s", (int)(p - host), host); + + if (*p != ':') { + s_asprintf(&nport, "%s", port); + break; + } + + pstr = ++p; + SCAN(p, buf+len, isdigit(*p)); + if (p > pstr && (p - pstr) < 6) { + s_asprintf(&nport, "%.*s", + (int)(p - pstr), pstr); + break; + } + + /* Invalid port; don't recurse */ + free(nhost); + nhost = NULL; + } break; } for (i = 0; actually_arin[i] != NULL; i++) { if (strncmp(buf, actually_arin[i], len) == 0) { s_asprintf(&nhost, "%s", ANICHOST); + s_asprintf(&nport, "%s", port); break; } } @@ -565,17 +587,19 @@ whois(const char *query, const char *hostname, int fla /* Do we need to find an alternative RIR? */ if (try_rir[i].loop != 0 && nhost != NULL && strcasecmp(try_rir[i].host, nhost) == 0) { - free(nhost); - nhost = NULL; - f = 1; + free(nhost); + nhost = NULL; + free(nport); + nport = NULL; + f = 1; } } if (f) { /* Find a replacement RIR */ for (i = 0; try_rir[i].host != NULL; i++) { if (try_rir[i].loop == 0) { - s_asprintf(&nhost, "%s", - try_rir[i].host); + s_asprintf(&nhost, "%s", try_rir[i].host); + s_asprintf(&nport, "%s", port); break; } } @@ -584,9 +608,10 @@ whois(const char *query, const char *hostname, int fla /* Ignore self-referrals */ if (strcasecmp(hostname, nhost) != 0) { printf("# %s\n\n", nhost); - whois(query, nhost, flags); + whois(query, nhost, nport, flags); } free(nhost); + free(nport); } } From owner-svn-src-stable@freebsd.org Sun Jul 26 19:18:56 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AC661368E2B; Sun, 26 Jul 2020 19:18:56 +0000 (UTC) (envelope-from yuripv@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFCR449Btz3gdm; Sun, 26 Jul 2020 19:18:56 +0000 (UTC) (envelope-from yuripv@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 72415118AF; Sun, 26 Jul 2020 19:18:56 +0000 (UTC) (envelope-from yuripv@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06QJIuO3067588; Sun, 26 Jul 2020 19:18:56 GMT (envelope-from yuripv@FreeBSD.org) Received: (from yuripv@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06QJItpH067586; Sun, 26 Jul 2020 19:18:55 GMT (envelope-from yuripv@FreeBSD.org) Message-Id: <202007261918.06QJItpH067586@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: yuripv set sender to yuripv@FreeBSD.org using -f From: Yuri Pankov Date: Sun, 26 Jul 2020 19:18:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363577 - in stable/12/usr.bin/locale: . tests X-SVN-Group: stable-12 X-SVN-Commit-Author: yuripv X-SVN-Commit-Paths: in stable/12/usr.bin/locale: . tests X-SVN-Commit-Revision: 363577 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 19:18:56 -0000 Author: yuripv Date: Sun Jul 26 19:18:55 2020 New Revision: 363577 URL: https://svnweb.freebsd.org/changeset/base/363577 Log: MFC r362146: locale: exit 1 if unknown keyword was specified PR: 241906 Submitted by: Akos Somfai Modified: stable/12/usr.bin/locale/locale.c stable/12/usr.bin/locale/tests/locale_test.sh Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/locale/locale.c ============================================================================== --- stable/12/usr.bin/locale/locale.c Sun Jul 26 18:33:29 2020 (r363576) +++ stable/12/usr.bin/locale/locale.c Sun Jul 26 19:18:55 2020 (r363577) @@ -61,7 +61,7 @@ void list_locales(void); const char *lookup_localecat(int); char *kwval_lconv(int); int kwval_lookup(const char *, char **, int *, int *, int *); -void showdetails(const char *); +int showdetails(const char *); void showkeywordslist(char *substring); void showlocale(void); void usage(void); @@ -414,7 +414,8 @@ main(int argc, char *argv[]) setlocale(LC_ALL, ""); if (argc > 0) { while (argc > 0) { - showdetails(*argv); + if (showdetails(*argv) != 0) + exit(EXIT_FAILURE); argv++; argc--; } @@ -837,19 +838,16 @@ kwval_lookup(const char *kwname, char **kwval, int *ca * Show details about requested keyword according to '-k' and/or '-c' * command line options specified. */ -void +int showdetails(const char *kw) { int type, cat, tmpval, alloc; char *kwval; if (kwval_lookup(kw, &kwval, &cat, &type, &alloc) == 0) { - /* - * invalid keyword specified. - * XXX: any actions? - */ + /* Invalid keyword specified */ fprintf(stderr, "Unknown keyword: `%s'\n", kw); - return; + return (1); } if (prt_categories) { @@ -889,6 +887,8 @@ showdetails(const char *kw) if (alloc) free(kwval); + + return (0); } /* Modified: stable/12/usr.bin/locale/tests/locale_test.sh ============================================================================== --- stable/12/usr.bin/locale/tests/locale_test.sh Sun Jul 26 18:33:29 2020 (r363576) +++ stable/12/usr.bin/locale/tests/locale_test.sh Sun Jul 26 19:18:55 2020 (r363577) @@ -160,8 +160,24 @@ no_flags_posix_body() noexpr } +atf_test_case k_flag_unknown_kw +k_flag_unknown_kw_head() +{ + atf_set "descr" \ + "Verify 'locale -k' exit status is '1' for unknown keywords" +} +k_flag_unknown_kw_body() +{ + export LC_ALL="C" + + # Hopefully the keyword will stay nonexistent + atf_check -s exit:1 -o empty -e ignore locale -k nonexistent +} + + atf_init_test_cases() { atf_add_test_case k_flag_posix atf_add_test_case no_flags_posix + atf_add_test_case k_flag_unknown_kw } From owner-svn-src-stable@freebsd.org Sun Jul 26 19:21:42 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 31B2B369600; Sun, 26 Jul 2020 19:21:42 +0000 (UTC) (envelope-from mike@sentex.net) Received: from pyroxene2a.sentex.ca (pyroxene19.sentex.ca [IPv6:2607:f3e0:0:3::19]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "pyroxene.sentex.ca", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFCVF5Z5nz3yP7; Sun, 26 Jul 2020 19:21:41 +0000 (UTC) (envelope-from mike@sentex.net) Received: from [IPv6:2607:f3e0:0:4:2980:6b12:24a9:1ed7] ([IPv6:2607:f3e0:0:4:2980:6b12:24a9:1ed7]) by pyroxene2a.sentex.ca (8.15.2/8.15.2) with ESMTPS id 06QJLeEM006546 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NO); Sun, 26 Jul 2020 15:21:40 -0400 (EDT) (envelope-from mike@sentex.net) Subject: Re: svn commit: r363568 - stable/12/sys/net To: Kristof Provost , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org References: <202007261744.06QHi3iB011159@repo.freebsd.org> From: mike tancsa Autocrypt: addr=mike@sentex.net; keydata= mQENBFywzOMBCACoNFpwi5MeyEREiCeHtbm6pZJI/HnO+wXdCAWtZkS49weOoVyUj5BEXRZP xflV2ib2hflX4nXqhenaNiia4iaZ9ft3I1ebd7GEbGnsWCvAnob5MvDZyStDAuRxPJK1ya/s +6rOvr+eQiXYNVvfBhrCfrtR/esSkitBGxhUkBjOti8QwzD71JVF5YaOjBAs7jZUKyLGj0kW yDg4jUndudWU7G2yc9GwpHJ9aRSUN8e/mWdIogK0v+QBHfv/dsI6zVB7YuxCC9Fx8WPwfhDH VZC4kdYCQWKXrm7yb4TiVdBh5kgvlO9q3js1yYdfR1x8mjK2bH2RSv4bV3zkNmsDCIxjABEB AAG0HW1pa2UgdGFuY3NhIDxtaWtlQHNlbnRleC5uZXQ+iQFUBBMBCAA+FiEEmuvCXT0aY6hs 4SbWeVOEFl5WrMgFAlywzOYCGwMFCQHhM4AFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQ eVOEFl5WrMhnPAf7Bf+ola0V9t4i8rwCMGvzkssGaxY/5zNSZO9BgSgfN0WzgmBEOy/3R4km Yn5KH94NltJYAAE5hqkFmAwK6psOqAR9cxHrRfU+gV2KO8pCDc6K/htkQcd/mclJYpCHp6Eq EVJOiAxcNaYuHZkeMdXDuvvI5Rk82VHk84BGgxIqIrhLlkguoPbXOOa+8c/Mpb1sRAGZEOuX EzKNC49+GS9gKW6ISbanyPsGEcFyP7GKMzcHBPf3cPrewZQZ6gBoNscasL6IJeAQDqzQAxbU GjO0qBSMRgnLXK7+DJlxrYdHGXqNbV6AYsmHJ6c2WWWiuRviFBqXinlgJ2FnYebZPAfWiQ== Message-ID: <9e260355-3bba-a615-8536-da17c3158141@sentex.net> Date: Sun, 26 Jul 2020 15:21:40 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <202007261744.06QHi3iB011159@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-Rspamd-Queue-Id: 4BFCVF5Z5nz3yP7 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; ASN(0.00)[asn:11647, ipnet:2607:f3e0::/32, country:CA]; REPLY(-4.00)[] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 19:21:42 -0000 Hi Kristof,     First off, thank you for all your efforts in pf and if_bridge.  I have trying to track down a problem with a golang app (sysutils/zrepl) that started acting up around the time the if_bridge stuff was commited (june 26th).  The problem would manifest in stalls of the daemon and am wondering this might have played a role.  The june 10th kernel I had seemed to work just fine with the app, although I just rebooted to that to confirm as around that time we added more RAM to the server in question and put the app under slightly higher load too. I have yet to boot to a kernel post this being reverted.  But apart from the panics some people saw could other 'odd' things pop up as well if traffic was coming in a bridge interface using an igb0 nic ?     ---Mike On 7/26/2020 1:44 PM, Kristof Provost wrote: > Author: kp > Date: Sun Jul 26 17:44:03 2020 > New Revision: 363568 > URL: https://svnweb.freebsd.org/changeset/base/363568 > > Log: > Revert bridge epochification > > Revert r363492, r363491, r363430, r363429 and r362650. > > The introduction of epoch in the network stack is incomplete in stable/12, and > there are simply too many limitations to make the bridge epoch code work there. > > The final problem is capability configuration of the bridge member interfaces. > if_bridge needs to enable promiscuous mode, which for certain drivers (e1000 > for example) can sleep. In stable/12 we may not sleep within epoch. > > Modified: > stable/12/sys/net/if_bridge.c > > Modified: stable/12/sys/net/if_bridge.c > ============================================================================== > --- stable/12/sys/net/if_bridge.c Sun Jul 26 17:21:24 2020 (r363567) > +++ stable/12/sys/net/if_bridge.c Sun Jul 26 17:44:03 2020 (r363568) > @@ -189,14 +189,41 @@ extern void nd6_setmtu(struct ifnet *); > */ > #define BRIDGE_LOCK_INIT(_sc) do { \ > mtx_init(&(_sc)->sc_mtx, "if_bridge", NULL, MTX_DEF); \ > + cv_init(&(_sc)->sc_cv, "if_bridge_cv"); \ > } while (0) > #define BRIDGE_LOCK_DESTROY(_sc) do { \ > mtx_destroy(&(_sc)->sc_mtx); \ > + cv_destroy(&(_sc)->sc_cv); \ > } while (0) > #define BRIDGE_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) > #define BRIDGE_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) > #define BRIDGE_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->sc_mtx, MA_OWNED) > #define BRIDGE_UNLOCK_ASSERT(_sc) mtx_assert(&(_sc)->sc_mtx, MA_NOTOWNED) > +#define BRIDGE_LOCK2REF(_sc, _err) do { \ > + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ > + if ((_sc)->sc_iflist_xcnt > 0) \ > + (_err) = EBUSY; \ > + else \ > + (_sc)->sc_iflist_ref++; \ > + mtx_unlock(&(_sc)->sc_mtx); \ > +} while (0) > +#define BRIDGE_UNREF(_sc) do { \ > + mtx_lock(&(_sc)->sc_mtx); \ > + (_sc)->sc_iflist_ref--; \ > + if (((_sc)->sc_iflist_xcnt > 0) && ((_sc)->sc_iflist_ref == 0)) \ > + cv_broadcast(&(_sc)->sc_cv); \ > + mtx_unlock(&(_sc)->sc_mtx); \ > +} while (0) > +#define BRIDGE_XLOCK(_sc) do { \ > + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ > + (_sc)->sc_iflist_xcnt++; \ > + while ((_sc)->sc_iflist_ref > 0) \ > + cv_wait(&(_sc)->sc_cv, &(_sc)->sc_mtx); \ > +} while (0) > +#define BRIDGE_XDROP(_sc) do { \ > + mtx_assert(&(_sc)->sc_mtx, MA_OWNED); \ > + (_sc)->sc_iflist_xcnt--; \ > +} while (0) > > /* > * Bridge interface list entry. > @@ -210,8 +237,6 @@ struct bridge_iflist { > uint32_t bif_addrmax; /* max # of addresses */ > uint32_t bif_addrcnt; /* cur. # of addresses */ > uint32_t bif_addrexceeded;/* # of address violations */ > - > - struct epoch_context bif_epoch_ctx; > }; > > /* > @@ -225,9 +250,6 @@ struct bridge_rtnode { > uint8_t brt_flags; /* address flags */ > uint8_t brt_addr[ETHER_ADDR_LEN]; > uint16_t brt_vlan; /* vlan id */ > - > - struct vnet *brt_vnet; > - struct epoch_context brt_epoch_ctx; > }; > #define brt_ifp brt_dst->bif_ifp > > @@ -238,10 +260,13 @@ struct bridge_softc { > struct ifnet *sc_ifp; /* make this an interface */ > LIST_ENTRY(bridge_softc) sc_list; > struct mtx sc_mtx; > + struct cv sc_cv; > uint32_t sc_brtmax; /* max # of addresses */ > uint32_t sc_brtcnt; /* cur. # of addresses */ > uint32_t sc_brttimeout; /* rt timeout in seconds */ > struct callout sc_brcallout; /* bridge callout */ > + uint32_t sc_iflist_ref; /* refcount for sc_iflist */ > + uint32_t sc_iflist_xcnt; /* refcount for sc_iflist */ > CK_LIST_HEAD(, bridge_iflist) sc_iflist; /* member interface list */ > CK_LIST_HEAD(, bridge_rtnode) *sc_rthash; /* our forwarding table */ > CK_LIST_HEAD(, bridge_rtnode) sc_rtlist; /* list version of above */ > @@ -251,8 +276,6 @@ struct bridge_softc { > uint32_t sc_brtexceeded; /* # of cache drops */ > struct ifnet *sc_ifaddr; /* member mac copied from */ > struct ether_addr sc_defaddr; /* Default MAC address */ > - > - struct epoch_context sc_epoch_ctx; > }; > > VNET_DEFINE_STATIC(struct mtx, bridge_list_mtx); > @@ -572,11 +595,6 @@ vnet_bridge_uninit(const void *unused __unused) > if_clone_detach(V_bridge_cloner); > V_bridge_cloner = NULL; > BRIDGE_LIST_LOCK_DESTROY(); > - > - /* Before we can destroy the uma zone, because there are callbacks that > - * use it. */ > - epoch_drain_callbacks(net_epoch_preempt); > - > uma_zdestroy(V_bridge_rtnode_zone); > } > VNET_SYSUNINIT(vnet_bridge_uninit, SI_SUB_PSEUDO, SI_ORDER_ANY, > @@ -739,17 +757,6 @@ bridge_clone_create(struct if_clone *ifc, int unit, ca > return (0); > } > > -static void > -bridge_clone_destroy_cb(struct epoch_context *ctx) > -{ > - struct bridge_softc *sc; > - > - sc = __containerof(ctx, struct bridge_softc, sc_epoch_ctx); > - > - BRIDGE_LOCK_DESTROY(sc); > - free(sc, M_DEVBUF); > -} > - > /* > * bridge_clone_destroy: > * > @@ -760,9 +767,7 @@ bridge_clone_destroy(struct ifnet *ifp) > { > struct bridge_softc *sc = ifp->if_softc; > struct bridge_iflist *bif; > - struct epoch_tracker et; > > - NET_EPOCH_ENTER_ET(et); > BRIDGE_LOCK(sc); > > bridge_stop(ifp, 1); > @@ -787,12 +792,11 @@ bridge_clone_destroy(struct ifnet *ifp) > BRIDGE_LIST_UNLOCK(); > > bstp_detach(&sc->sc_stp); > - NET_EPOCH_EXIT_ET(et); > - > ether_ifdetach(ifp); > if_free(ifp); > > - epoch_call(net_epoch_preempt, &sc->sc_epoch_ctx, bridge_clone_destroy_cb); > + BRIDGE_LOCK_DESTROY(sc); > + free(sc, M_DEVBUF); > } > > /* > @@ -818,10 +822,7 @@ bridge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t da > struct ifdrv *ifd = (struct ifdrv *) data; > const struct bridge_control *bc; > int error = 0, oldmtu; > - struct epoch_tracker et; > > - NET_EPOCH_ENTER_ET(et); > - > switch (cmd) { > > case SIOCADDMULTI: > @@ -942,8 +943,6 @@ bridge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t da > break; > } > > - NET_EPOCH_EXIT_ET(et); > - > return (error); > } > > @@ -958,8 +957,6 @@ bridge_mutecaps(struct bridge_softc *sc) > struct bridge_iflist *bif; > int enabled, mask; > > - BRIDGE_LOCK_ASSERT(sc); > - > /* Initial bitmask of capabilities to test */ > mask = BRIDGE_IFCAPS_MASK; > > @@ -968,6 +965,7 @@ bridge_mutecaps(struct bridge_softc *sc) > mask &= bif->bif_savedcaps; > } > > + BRIDGE_XLOCK(sc); > CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { > enabled = bif->bif_ifp->if_capenable; > enabled &= ~BRIDGE_IFCAPS_STRIP; > @@ -978,6 +976,8 @@ bridge_mutecaps(struct bridge_softc *sc) > bridge_set_ifcap(sc, bif, enabled); > BRIDGE_LOCK(sc); > } > + BRIDGE_XDROP(sc); > + > } > > static void > @@ -1018,7 +1018,7 @@ bridge_lookup_member(struct bridge_softc *sc, const ch > struct bridge_iflist *bif; > struct ifnet *ifp; > > - MPASS(in_epoch(net_epoch_preempt)); > + BRIDGE_LOCK_ASSERT(sc); > > CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { > ifp = bif->bif_ifp; > @@ -1039,7 +1039,7 @@ bridge_lookup_member_if(struct bridge_softc *sc, struc > { > struct bridge_iflist *bif; > > - MPASS(in_epoch(net_epoch_preempt)); > + BRIDGE_LOCK_ASSERT(sc); > > CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { > if (bif->bif_ifp == member_ifp) > @@ -1049,16 +1049,6 @@ bridge_lookup_member_if(struct bridge_softc *sc, struc > return (NULL); > } > > -static void > -bridge_delete_member_cb(struct epoch_context *ctx) > -{ > - struct bridge_iflist *bif; > - > - bif = __containerof(ctx, struct bridge_iflist, bif_epoch_ctx); > - > - free(bif, M_DEVBUF); > -} > - > /* > * bridge_delete_member: > * > @@ -1078,7 +1068,9 @@ bridge_delete_member(struct bridge_softc *sc, struct b > bstp_disable(&bif->bif_stp); > > ifs->if_bridge = NULL; > + BRIDGE_XLOCK(sc); > CK_LIST_REMOVE(bif, bif_next); > + BRIDGE_XDROP(sc); > > /* > * If removing the interface that gave the bridge its mac address, set > @@ -1137,9 +1129,7 @@ bridge_delete_member(struct bridge_softc *sc, struct b > } > bstp_destroy(&bif->bif_stp); /* prepare to free */ > BRIDGE_LOCK(sc); > - > - epoch_call(net_epoch_preempt, &bif->bif_epoch_ctx, > - bridge_delete_member_cb); > + free(bif, M_DEVBUF); > } > > /* > @@ -1156,9 +1146,7 @@ bridge_delete_span(struct bridge_softc *sc, struct bri > ("%s: not a span interface", __func__)); > > CK_LIST_REMOVE(bif, bif_next); > - > - epoch_call(net_epoch_preempt, &bif->bif_epoch_ctx, > - bridge_delete_member_cb); > + free(bif, M_DEVBUF); > } > > static int > @@ -1214,6 +1202,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) > * If any, remove all inet6 addresses from the member > * interfaces. > */ > + BRIDGE_XLOCK(sc); > CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { > if (in6ifa_llaonifp(bif->bif_ifp)) { > BRIDGE_UNLOCK(sc); > @@ -1226,6 +1215,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) > bif->bif_ifp->if_xname); > } > } > + BRIDGE_XDROP(sc); > if (in6ifa_llaonifp(ifs)) { > BRIDGE_UNLOCK(sc); > in6_ifdetach(ifs); > @@ -1434,9 +1424,9 @@ bridge_ioctl_gifs(struct bridge_softc *sc, void *arg) > bifc->ifbic_len = buflen; > return (0); > } > - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); > - if (outbuf == NULL) > - return (ENOMEM); > + BRIDGE_UNLOCK(sc); > + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); > + BRIDGE_LOCK(sc); > > count = 0; > buf = outbuf; > @@ -1496,9 +1486,9 @@ bridge_ioctl_rts(struct bridge_softc *sc, void *arg) > count++; > buflen = sizeof(bareq) * count; > > - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); > - if (outbuf == NULL) > - return (ENOMEM); > + BRIDGE_UNLOCK(sc); > + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); > + BRIDGE_LOCK(sc); > > count = 0; > buf = outbuf; > @@ -1539,17 +1529,12 @@ bridge_ioctl_saddr(struct bridge_softc *sc, void *arg) > struct bridge_iflist *bif; > int error; > > - MPASS(in_epoch(net_epoch_preempt)); > - > bif = bridge_lookup_member(sc, req->ifba_ifsname); > if (bif == NULL) > return (ENOENT); > > - /* bridge_rtupdate() may acquire the lock. */ > - BRIDGE_UNLOCK(sc); > error = bridge_rtupdate(sc, req->ifba_dst, req->ifba_vlan, bif, 1, > req->ifba_flags); > - BRIDGE_LOCK(sc); > > return (error); > } > @@ -1824,9 +1809,9 @@ bridge_ioctl_gifsstp(struct bridge_softc *sc, void *ar > return (0); > } > > - outbuf = malloc(buflen, M_TEMP, M_NOWAIT | M_ZERO); > - if (outbuf == NULL) > - return (ENOMEM); > + BRIDGE_UNLOCK(sc); > + outbuf = malloc(buflen, M_TEMP, M_WAITOK | M_ZERO); > + BRIDGE_LOCK(sc); > > count = 0; > buf = outbuf; > @@ -1888,7 +1873,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) > { > struct bridge_softc *sc = ifp->if_bridge; > struct bridge_iflist *bif; > - struct epoch_tracker et; > > if (ifp->if_flags & IFF_RENAMING) > return; > @@ -1899,7 +1883,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) > */ > return; > } > - NET_EPOCH_ENTER_ET(et); > /* Check if the interface is a bridge member */ > if (sc != NULL) { > BRIDGE_LOCK(sc); > @@ -1909,7 +1892,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) > bridge_delete_member(sc, bif, 1); > > BRIDGE_UNLOCK(sc); > - NET_EPOCH_EXIT_ET(et); > return; > } > > @@ -1926,7 +1908,6 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) > BRIDGE_UNLOCK(sc); > } > BRIDGE_LIST_UNLOCK(); > - NET_EPOCH_EXIT_ET(et); > } > > /* > @@ -2081,26 +2062,23 @@ static int > bridge_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *sa, > struct rtentry *rt) > { > - struct epoch_tracker et; > struct ether_header *eh; > struct ifnet *dst_if; > struct bridge_softc *sc; > uint16_t vlan; > > - NET_EPOCH_ENTER_ET(et); > - > if (m->m_len < ETHER_HDR_LEN) { > m = m_pullup(m, ETHER_HDR_LEN); > - if (m == NULL) { > - NET_EPOCH_EXIT_ET(et); > + if (m == NULL) > return (0); > - } > } > > eh = mtod(m, struct ether_header *); > sc = ifp->if_bridge; > vlan = VLANTAGOF(m); > > + BRIDGE_LOCK(sc); > + > /* > * If bridge is down, but the original output interface is up, > * go ahead and send out that interface. Otherwise, the packet > @@ -2122,10 +2100,16 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struc > if (dst_if == NULL) { > struct bridge_iflist *bif; > struct mbuf *mc; > - int used = 0; > + int error = 0, used = 0; > > bridge_span(sc, m); > > + BRIDGE_LOCK2REF(sc, error); > + if (error) { > + m_freem(m); > + return (0); > + } > + > CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { > dst_if = bif->bif_ifp; > > @@ -2159,7 +2143,7 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struc > } > if (used == 0) > m_freem(m); > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNREF(sc); > return (0); > } > > @@ -2171,12 +2155,12 @@ sendunicast: > bridge_span(sc, m); > if ((dst_if->if_drv_flags & IFF_DRV_RUNNING) == 0) { > m_freem(m); > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (0); > } > > + BRIDGE_UNLOCK(sc); > bridge_enqueue(sc, dst_if, m); > - NET_EPOCH_EXIT_ET(et); > return (0); > } > > @@ -2189,28 +2173,25 @@ sendunicast: > static int > bridge_transmit(struct ifnet *ifp, struct mbuf *m) > { > - struct epoch_tracker et; > struct bridge_softc *sc; > struct ether_header *eh; > struct ifnet *dst_if; > int error = 0; > > - NET_EPOCH_ENTER_ET(et); > - > sc = ifp->if_softc; > > ETHER_BPF_MTAP(ifp, m); > > eh = mtod(m, struct ether_header *); > > + BRIDGE_LOCK(sc); > if (((m->m_flags & (M_BCAST|M_MCAST)) == 0) && > (dst_if = bridge_rtlookup(sc, eh->ether_dhost, 1)) != NULL) { > + BRIDGE_UNLOCK(sc); > error = bridge_enqueue(sc, dst_if, m); > } else > bridge_broadcast(sc, ifp, m, 0); > > - NET_EPOCH_EXIT_ET(et); > - > return (error); > } > > @@ -2240,8 +2221,6 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ > uint8_t *dst; > int error; > > - MPASS(in_epoch(net_epoch_preempt)); > - > src_if = m->m_pkthdr.rcvif; > ifp = sc->sc_ifp; > > @@ -2320,10 +2299,12 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ > || PFIL_HOOKED(&V_inet6_pfil_hook) > #endif > ) { > + BRIDGE_UNLOCK(sc); > if (bridge_pfil(&m, ifp, src_if, PFIL_IN) != 0) > return; > if (m == NULL) > return; > + BRIDGE_LOCK(sc); > } > > if (dst_if == NULL) { > @@ -2351,6 +2332,8 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ > dbif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) > goto drop; > > + BRIDGE_UNLOCK(sc); > + > if (PFIL_HOOKED(&V_inet_pfil_hook) > #ifdef INET6 > || PFIL_HOOKED(&V_inet6_pfil_hook) > @@ -2366,6 +2349,7 @@ bridge_forward(struct bridge_softc *sc, struct bridge_ > return; > > drop: > + BRIDGE_UNLOCK(sc); > m_freem(m); > } > > @@ -2378,7 +2362,6 @@ drop: > static struct mbuf * > bridge_input(struct ifnet *ifp, struct mbuf *m) > { > - struct epoch_tracker et; > struct bridge_softc *sc = ifp->if_bridge; > struct bridge_iflist *bif, *bif2; > struct ifnet *bifp; > @@ -2387,12 +2370,8 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > uint16_t vlan; > int error; > > - NET_EPOCH_ENTER_ET(et); > - > - if ((sc->sc_ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { > - NET_EPOCH_EXIT_ET(et); > + if ((sc->sc_ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) > return (m); > - } > > bifp = sc->sc_ifp; > vlan = VLANTAGOF(m); > @@ -2409,12 +2388,12 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > if_inc_counter(bifp, IFCOUNTER_IPACKETS, 1); > if_inc_counter(bifp, IFCOUNTER_IBYTES, m->m_pkthdr.len); > m_freem(m); > - NET_EPOCH_EXIT_ET(et); > return (NULL); > } > + BRIDGE_LOCK(sc); > bif = bridge_lookup_member_if(sc, ifp); > if (bif == NULL) { > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (m); > } > > @@ -2427,13 +2406,13 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > if (memcmp(eh->ether_dhost, bstp_etheraddr, > ETHER_ADDR_LEN) == 0) { > bstp_input(&bif->bif_stp, ifp, m); /* consumes mbuf */ > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (NULL); > } > > if ((bif->bif_flags & IFBIF_STP) && > bif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) { > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (m); > } > > @@ -2444,7 +2423,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > */ > mc = m_dup(m, M_NOWAIT); > if (mc == NULL) { > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (m); > } > > @@ -2471,13 +2450,12 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > } > > /* Return the original packet for local processing. */ > - NET_EPOCH_EXIT_ET(et); > return (m); > } > > if ((bif->bif_flags & IFBIF_STP) && > bif->bif_stp.bp_state == BSTP_IFSTATE_DISCARDING) { > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return (m); > } > > @@ -2517,6 +2495,7 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > OR_PFIL_HOOKED_INET6)) { \ > if (bridge_pfil(&m, NULL, ifp, \ > PFIL_IN) != 0 || m == NULL) { \ > + BRIDGE_UNLOCK(sc); \ > return (NULL); \ > } \ > eh = mtod(m, struct ether_header *); \ > @@ -2526,13 +2505,13 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > error = bridge_rtupdate(sc, eh->ether_shost, \ > vlan, bif, 0, IFBAF_DYNAMIC); \ > if (error && bif->bif_addrmax) { \ > + BRIDGE_UNLOCK(sc); \ > m_freem(m); \ > - NET_EPOCH_EXIT_ET(et); \ > return (NULL); \ > } \ > } \ > m->m_pkthdr.rcvif = iface; \ > - NET_EPOCH_EXIT_ET(et); \ > + BRIDGE_UNLOCK(sc); \ > return (m); \ > } \ > \ > @@ -2540,8 +2519,8 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > if (memcmp(IF_LLADDR((iface)), eh->ether_shost, ETHER_ADDR_LEN) == 0 \ > OR_CARP_CHECK_WE_ARE_SRC((iface)) \ > ) { \ > + BRIDGE_UNLOCK(sc); \ > m_freem(m); \ > - NET_EPOCH_EXIT_ET(et); \ > return (NULL); \ > } > > @@ -2572,7 +2551,6 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) > /* Perform the bridge forwarding function. */ > bridge_forward(sc, bif, m); > > - NET_EPOCH_EXIT_ET(et); > return (NULL); > } > > @@ -2592,12 +2570,16 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet > struct bridge_iflist *dbif, *sbif; > struct mbuf *mc; > struct ifnet *dst_if; > - int used = 0, i; > + int error = 0, used = 0, i; > > - MPASS(in_epoch(net_epoch_preempt)); > - > sbif = bridge_lookup_member_if(sc, src_if); > > + BRIDGE_LOCK2REF(sc, error); > + if (error) { > + m_freem(m); > + return; > + } > + > /* Filter on the bridge interface before broadcasting */ > if (runfilt && (PFIL_HOOKED(&V_inet_pfil_hook) > #ifdef INET6 > @@ -2605,9 +2587,9 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet > #endif > )) { > if (bridge_pfil(&m, sc->sc_ifp, NULL, PFIL_OUT) != 0) > - return; > + goto out; > if (m == NULL) > - return; > + goto out; > } > > CK_LIST_FOREACH(dbif, &sc->sc_iflist, bif_next) { > @@ -2670,6 +2652,9 @@ bridge_broadcast(struct bridge_softc *sc, struct ifnet > } > if (used == 0) > m_freem(m); > + > +out: > + BRIDGE_UNREF(sc); > } > > /* > @@ -2685,8 +2670,6 @@ bridge_span(struct bridge_softc *sc, struct mbuf *m) > struct ifnet *dst_if; > struct mbuf *mc; > > - MPASS(in_epoch(net_epoch_preempt)); > - > if (CK_LIST_EMPTY(&sc->sc_spanlist)) > return; > > @@ -2718,8 +2701,7 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t > struct bridge_rtnode *brt; > int error; > > - MPASS(in_epoch(net_epoch_preempt)); > - BRIDGE_UNLOCK_ASSERT(sc); > + BRIDGE_LOCK_ASSERT(sc); > > /* Check the source address is valid and not multicast. */ > if (ETHER_IS_MULTICAST(dst) || > @@ -2736,24 +2718,13 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t > * update it, otherwise create a new one. > */ > if ((brt = bridge_rtnode_lookup(sc, dst, vlan)) == NULL) { > - BRIDGE_LOCK(sc); > - > - /* Check again, now that we have the lock. There could have > - * been a race and we only want to insert this once. */ > - if ((brt = bridge_rtnode_lookup(sc, dst, vlan)) != NULL) { > - BRIDGE_UNLOCK(sc); > - return (0); > - } > - > if (sc->sc_brtcnt >= sc->sc_brtmax) { > sc->sc_brtexceeded++; > - BRIDGE_UNLOCK(sc); > return (ENOSPC); > } > /* Check per interface address limits (if enabled) */ > if (bif->bif_addrmax && bif->bif_addrcnt >= bif->bif_addrmax) { > bif->bif_addrexceeded++; > - BRIDGE_UNLOCK(sc); > return (ENOSPC); > } > > @@ -2763,11 +2734,8 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t > * address. > */ > brt = uma_zalloc(V_bridge_rtnode_zone, M_NOWAIT | M_ZERO); > - if (brt == NULL) { > - BRIDGE_UNLOCK(sc); > + if (brt == NULL) > return (ENOMEM); > - } > - brt->brt_vnet = curvnet; > > if (bif->bif_flags & IFBIF_STICKY) > brt->brt_flags = IFBAF_STICKY; > @@ -2779,22 +2747,17 @@ bridge_rtupdate(struct bridge_softc *sc, const uint8_t > > if ((error = bridge_rtnode_insert(sc, brt)) != 0) { > uma_zfree(V_bridge_rtnode_zone, brt); > - BRIDGE_UNLOCK(sc); > return (error); > } > brt->brt_dst = bif; > bif->bif_addrcnt++; > - > - BRIDGE_UNLOCK(sc); > } > > if ((brt->brt_flags & IFBAF_TYPEMASK) == IFBAF_DYNAMIC && > brt->brt_dst != bif) { > - BRIDGE_LOCK(sc); > brt->brt_dst->bif_addrcnt--; > brt->brt_dst = bif; > brt->brt_dst->bif_addrcnt++; > - BRIDGE_UNLOCK(sc); > } > > if ((flags & IFBAF_TYPEMASK) == IFBAF_DYNAMIC) > @@ -2815,7 +2778,7 @@ bridge_rtlookup(struct bridge_softc *sc, const uint8_t > { > struct bridge_rtnode *brt; > > - MPASS(in_epoch(net_epoch_preempt)); > + BRIDGE_LOCK_ASSERT(sc); > > if ((brt = bridge_rtnode_lookup(sc, addr, vlan)) == NULL) > return (NULL); > @@ -3054,7 +3017,7 @@ bridge_rtnode_lookup(struct bridge_softc *sc, const ui > uint32_t hash; > int dir; > > - MPASS(in_epoch(net_epoch_preempt)); > + BRIDGE_LOCK_ASSERT(sc); > > hash = bridge_rthash(sc, addr); > CK_LIST_FOREACH(brt, &sc->sc_rthash[hash], brt_hash) { > @@ -3117,18 +3080,6 @@ out: > return (0); > } > > -static void > -bridge_rtnode_destroy_cb(struct epoch_context *ctx) > -{ > - struct bridge_rtnode *brt; > - > - brt = __containerof(ctx, struct bridge_rtnode, brt_epoch_ctx); > - > - CURVNET_SET(brt->brt_vnet); > - uma_zfree(V_bridge_rtnode_zone, brt); > - CURVNET_RESTORE(); > -} > - > /* > * bridge_rtnode_destroy: > * > @@ -3144,9 +3095,7 @@ bridge_rtnode_destroy(struct bridge_softc *sc, struct > CK_LIST_REMOVE(brt, brt_list); > sc->sc_brtcnt--; > brt->brt_dst->bif_addrcnt--; > - > - epoch_call(net_epoch_preempt, &brt->brt_epoch_ctx, > - bridge_rtnode_destroy_cb); > + uma_zfree(V_bridge_rtnode_zone, brt); > } > > /* > @@ -3691,20 +3640,17 @@ bridge_linkstate(struct ifnet *ifp) > { > struct bridge_softc *sc = ifp->if_bridge; > struct bridge_iflist *bif; > - struct epoch_tracker et; > > - NET_EPOCH_ENTER_ET(et); > - > + BRIDGE_LOCK(sc); > bif = bridge_lookup_member_if(sc, ifp); > if (bif == NULL) { > - NET_EPOCH_EXIT_ET(et); > + BRIDGE_UNLOCK(sc); > return; > } > bridge_linkcheck(sc); > + BRIDGE_UNLOCK(sc); > > bstp_linkstate(&bif->bif_stp); > - > - NET_EPOCH_EXIT_ET(et); > } > > static void > @@ -3713,8 +3659,7 @@ bridge_linkcheck(struct bridge_softc *sc) > struct bridge_iflist *bif; > int new_link, hasls; > > - MPASS(in_epoch(net_epoch_preempt)); > - > + BRIDGE_LOCK_ASSERT(sc); > new_link = LINK_STATE_DOWN; > hasls = 0; > /* Our link is considered up if at least one of our ports is active */ > _______________________________________________ > svn-src-stable-12@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/svn-src-stable-12 > To unsubscribe, send any mail to "svn-src-stable-12-unsubscribe@freebsd.org" > From owner-svn-src-stable@freebsd.org Sun Jul 26 20:36:24 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A487A36B036; Sun, 26 Jul 2020 20:36:24 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFF8S3vz1z43RQ; Sun, 26 Jul 2020 20:36:24 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mx1.codepro.be", Issuer "Let's Encrypt Authority X3" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4FDA0169B2; Sun, 26 Jul 2020 20:36:24 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id C5F234A418; Sun, 26 Jul 2020 22:36:22 +0200 (CEST) From: "Kristof Provost" To: "mike tancsa" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: Re: svn commit: r363568 - stable/12/sys/net Date: Sun, 26 Jul 2020 22:36:19 +0200 X-Mailer: MailMate (1.13.1r5671) Message-ID: In-Reply-To: <9e260355-3bba-a615-8536-da17c3158141@sentex.net> References: <202007261744.06QHi3iB011159@repo.freebsd.org> <9e260355-3bba-a615-8536-da17c3158141@sentex.net> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jul 2020 20:36:24 -0000 On 26 Jul 2020, at 21:21, mike tancsa wrote: > Hi Kristof, > >     First off, thank you for all your efforts in pf and > if_bridge.  I > have trying to track down a problem with a golang app (sysutils/zrepl) > that started acting up around the time the if_bridge stuff was > commited > (june 26th).  The problem would manifest in stalls of the daemon and > am > wondering this might have played a role.  The june 10th kernel I had > seemed to work just fine with the app, although I just rebooted to > that > to confirm as around that time we added more RAM to the server in > question and put the app under slightly higher load too. I have yet to > boot to a kernel post this being reverted.  But apart from the panics > some people saw could other 'odd' things pop up as well if traffic was > coming in a bridge interface using an igb0 nic ? > I wouldn’t think so, no. The epoch change mostly removed locks and opportunities to stall (I know it fixes at least one deadlock). If there are bugs it’s pretty much always going to manifest as a crash (or assertion failure). Best regards, Kristof From owner-svn-src-stable@freebsd.org Mon Jul 27 00:25:57 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1A18037113C; Mon, 27 Jul 2020 00:25:57 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFLFJ6xFpz4FdM; Mon, 27 Jul 2020 00:25:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CCB94155EA; Mon, 27 Jul 2020 00:25:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06R0PuqG058435; Mon, 27 Jul 2020 00:25:56 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06R0PuNF058434; Mon, 27 Jul 2020 00:25:56 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202007270025.06R0PuNF058434@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 27 Jul 2020 00:25:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363588 - stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h X-SVN-Commit-Revision: 363588 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 00:25:57 -0000 Author: mav Date: Mon Jul 27 00:25:56 2020 New Revision: 363588 URL: https://svnweb.freebsd.org/changeset/base/363588 Log: MFC r355666: libpmc: sort some amdfam17h entries to make valid json Modified: stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/core.json stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/memory.json Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/core.json ============================================================================== --- stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/core.json Sun Jul 26 23:13:10 2020 (r363587) +++ stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/core.json Mon Jul 27 00:25:56 2020 (r363588) @@ -2,20 +2,20 @@ { "EventName": "ex_ret_instr", "EventCode": "0xc0", + "SampleAfterValue": "2000003", "BriefDescription": "Retired Instructions." - "SampleAfterValue": "2000003", }, { "EventName": "ex_ret_cops", "EventCode": "0xc1", + "SampleAfterValue": "2000003", "BriefDescription": "The number of uOps retired. This includes all processor activity (instructions, exceptions, interrupts, microcode assists, etc.). The number of events logged per cycle can vary from 0 to 4." - "SampleAfterValue": "2000003", }, { "EventName": "ex_ret_brn", "EventCode": "0xc2", + "SampleAfterValue": "2000003", "BriefDescription": "The number of branch instructions retired. This includes all types of architectural control flow changes, including exceptions and interrupts." - "SampleAfterValue": "2000003", }, { "EventName": "ex_ret_brn_misp", Modified: stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/memory.json ============================================================================== --- stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/memory.json Sun Jul 26 23:13:10 2020 (r363587) +++ stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/memory.json Mon Jul 27 00:25:56 2020 (r363588) @@ -220,7 +220,7 @@ { "EventName": "ls_not_halted_cyc", "EventCode": "0x76", - "BriefDescription": "Cycles not in Halt." "SampleAfterValue": "2000003", + "BriefDescription": "Cycles not in Halt." } ] From owner-svn-src-stable@freebsd.org Mon Jul 27 00:26:55 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B9E06371291; Mon, 27 Jul 2020 00:26:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFLGR4Y0vz4GBf; Mon, 27 Jul 2020 00:26:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 7FBEA15172; Mon, 27 Jul 2020 00:26:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06R0QtRT058533; Mon, 27 Jul 2020 00:26:55 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06R0Qt1B058532; Mon, 27 Jul 2020 00:26:55 GMT (envelope-from mav@FreeBSD.org) Message-Id: <202007270026.06R0Qt1B058532@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 27 Jul 2020 00:26:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363589 - in stable/12/lib/libpmc/pmu-events/arch/x86: . amdfam17h amdzen1 amdzen2 X-SVN-Group: stable-12 X-SVN-Commit-Author: mav X-SVN-Commit-Paths: in stable/12/lib/libpmc/pmu-events/arch/x86: . amdfam17h amdzen1 amdzen2 X-SVN-Commit-Revision: 363589 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 00:26:55 -0000 Author: mav Date: Mon Jul 27 00:26:54 2020 New Revision: 363589 URL: https://svnweb.freebsd.org/changeset/base/363589 Log: MFC r363157: Update AMD Zen1 and add Zen2 events mapping. Added: stable/12/lib/libpmc/pmu-events/arch/x86/amdzen1/ - copied from r363157, head/lib/libpmc/pmu-events/arch/x86/amdzen1/ stable/12/lib/libpmc/pmu-events/arch/x86/amdzen2/ - copied from r363157, head/lib/libpmc/pmu-events/arch/x86/amdzen2/ Deleted: stable/12/lib/libpmc/pmu-events/arch/x86/amdfam17h/ Modified: stable/12/lib/libpmc/pmu-events/arch/x86/mapfile.csv Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libpmc/pmu-events/arch/x86/mapfile.csv ============================================================================== --- stable/12/lib/libpmc/pmu-events/arch/x86/mapfile.csv Mon Jul 27 00:25:56 2020 (r363588) +++ stable/12/lib/libpmc/pmu-events/arch/x86/mapfile.csv Mon Jul 27 00:26:54 2020 (r363589) @@ -37,9 +37,6 @@ GenuineIntel-6-55-[56789ABCDEF],v1,cascadelakex,core GenuineIntel-6-7D,v1,icelake,core GenuineIntel-6-7E,v1,icelake,core GenuineIntel-6-86,v1,tremontx,core -AuthenticAMD-23-01,v1,amdfam17h,core -AuthenticAMD-23-02,v1,amdfam17h,core -AuthenticAMD-23-03,v1,amdfam17h,core -AuthenticAMD-23-04,v1,amdfam17h,core -AuthenticAMD-23-05,v1,amdfam17h,core -HygonGenuine-24-00,v1,amdfam17h,core +AuthenticAMD-23-[012][0-9A-F],v2,amdzen1,core +AuthenticAMD-23-[[:xdigit:]]+,v1,amdzen2,core +HygonGenuine-24-00,v2,amdzen1,core From owner-svn-src-stable@freebsd.org Mon Jul 27 01:38:15 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 90743372F63; Mon, 27 Jul 2020 01:38:15 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFMrl3JRnz4K9b; Mon, 27 Jul 2020 01:38:15 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 51AF115F67; Mon, 27 Jul 2020 01:38:15 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06R1cF4h001414; Mon, 27 Jul 2020 01:38:15 GMT (envelope-from mmacy@FreeBSD.org) Received: (from mmacy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06R1cFwL001413; Mon, 27 Jul 2020 01:38:15 GMT (envelope-from mmacy@FreeBSD.org) Message-Id: <202007270138.06R1cFwL001413@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmacy set sender to mmacy@FreeBSD.org using -f From: Matt Macy Date: Mon, 27 Jul 2020 01:38:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363592 - stable/12/sys/net X-SVN-Group: stable-12 X-SVN-Commit-Author: mmacy X-SVN-Commit-Paths: stable/12/sys/net X-SVN-Commit-Revision: 363592 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 01:38:15 -0000 Author: mmacy Date: Mon Jul 27 01:38:14 2020 New Revision: 363592 URL: https://svnweb.freebsd.org/changeset/base/363592 Log: Fix panics when using iflib pseudo device support Reviewed by: gallatin@, hselasky@ Sponsored by: Netgate, Inc. Differential Revision: https://reviews.freebsd.org/D23710 Modified: stable/12/sys/net/iflib.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/net/iflib.c ============================================================================== --- stable/12/sys/net/iflib.c Mon Jul 27 01:20:49 2020 (r363591) +++ stable/12/sys/net/iflib.c Mon Jul 27 01:38:14 2020 (r363592) @@ -4874,6 +4874,7 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc if_setgetcounterfn(ctx->ifc_ifp, iflib_if_get_counter); iflib_add_device_sysctl_post(ctx); ctx->ifc_flags |= IFC_INIT_DONE; + CTX_UNLOCK(ctx); return (0); } _iflib_pre_assert(scctx); @@ -5325,7 +5326,8 @@ iflib_register(if_ctx_t ctx) device_t dev = ctx->ifc_dev; if_t ifp; - _iflib_assert(sctx); + if ((sctx->isc_flags & IFLIB_PSEUDO) == 0) + _iflib_assert(sctx); CTX_LOCK_INIT(ctx); STATE_LOCK_INIT(ctx, device_get_nameunit(ctx->ifc_dev)); From owner-svn-src-stable@freebsd.org Mon Jul 27 01:53:28 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0CB603733C4; Mon, 27 Jul 2020 01:53:28 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFNBH6dDWz4L6l; Mon, 27 Jul 2020 01:53:27 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C69F116623; Mon, 27 Jul 2020 01:53:27 +0000 (UTC) (envelope-from mmacy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06R1rRcr013874; Mon, 27 Jul 2020 01:53:27 GMT (envelope-from mmacy@FreeBSD.org) Received: (from mmacy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06R1rREL013872; Mon, 27 Jul 2020 01:53:27 GMT (envelope-from mmacy@FreeBSD.org) Message-Id: <202007270153.06R1rREL013872@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmacy set sender to mmacy@FreeBSD.org using -f From: Matt Macy Date: Mon, 27 Jul 2020 01:53:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363594 - stable/12/sys/net X-SVN-Group: stable-12 X-SVN-Commit-Author: mmacy X-SVN-Commit-Paths: stable/12/sys/net X-SVN-Commit-Revision: 363594 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 01:53:28 -0000 Author: mmacy Date: Mon Jul 27 01:53:27 2020 New Revision: 363594 URL: https://svnweb.freebsd.org/changeset/base/363594 Log: iflib: fix cloneattach fail and generalize pseudo device handling - a cloneattach failure will not currently be handled correctly, jump to the right target - pseudo devices are all treat as if they're ethernet devices - this often doesn't make sense Sponsored by: Netgate, Inc. Differential Revision: https://reviews.freebsd.org/D25083 Modified: stable/12/sys/net/iflib.c stable/12/sys/net/iflib.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/net/iflib.c ============================================================================== --- stable/12/sys/net/iflib.c Mon Jul 27 01:51:33 2020 (r363593) +++ stable/12/sys/net/iflib.c Mon Jul 27 01:53:27 2020 (r363594) @@ -4838,11 +4838,8 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc if ((err = IFDI_CLONEATTACH(ctx, clctx->cc_ifc, clctx->cc_name, clctx->cc_params)) != 0) { device_printf(dev, "IFDI_CLONEATTACH failed %d\n", err); - goto fail_ctx_free; + goto fail_unlock; } - ifmedia_add(&ctx->ifc_media, IFM_ETHER | IFM_1000_T | IFM_FDX, 0, NULL); - ifmedia_add(&ctx->ifc_media, IFM_ETHER | IFM_AUTO, 0, NULL); - ifmedia_set(&ctx->ifc_media, IFM_ETHER | IFM_AUTO); #ifdef INVARIANTS if (scctx->isc_capabilities & IFCAP_TXCSUM) @@ -4854,8 +4851,16 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc ifp->if_flags |= IFF_NOGROUP; if (sctx->isc_flags & IFLIB_PSEUDO) { - ether_ifattach(ctx->ifc_ifp, ctx->ifc_mac); + ifmedia_add(&ctx->ifc_media, IFM_ETHER | IFM_AUTO, 0, NULL); + ifmedia_set(&ctx->ifc_media, IFM_ETHER | IFM_AUTO); + if (sctx->isc_flags & IFLIB_PSEUDO_ETHER) { + ether_ifattach(ctx->ifc_ifp, ctx->ifc_mac); + } else { + if_attach(ctx->ifc_ifp); + bpfattach(ctx->ifc_ifp, DLT_NULL, sizeof(u_int32_t)); + } + if ((err = IFDI_ATTACH_POST(ctx)) != 0) { device_printf(dev, "IFDI_ATTACH_POST failed %d\n", err); goto fail_detach; @@ -4877,6 +4882,10 @@ iflib_pseudo_register(device_t dev, if_shared_ctx_t sc CTX_UNLOCK(ctx); return (0); } + ifmedia_add(&ctx->ifc_media, IFM_ETHER | IFM_1000_T | IFM_FDX, 0, NULL); + ifmedia_add(&ctx->ifc_media, IFM_ETHER | IFM_AUTO, 0, NULL); + ifmedia_set(&ctx->ifc_media, IFM_ETHER | IFM_AUTO); + _iflib_pre_assert(scctx); ctx->ifc_txrx = *scctx->isc_txrx; @@ -4992,6 +5001,7 @@ int iflib_pseudo_deregister(if_ctx_t ctx) { if_t ifp = ctx->ifc_ifp; + if_shared_ctx_t sctx = ctx->ifc_sctx; iflib_txq_t txq; iflib_rxq_t rxq; int i, j; @@ -5001,7 +5011,13 @@ iflib_pseudo_deregister(if_ctx_t ctx) /* Unregister VLAN event handlers early */ iflib_unregister_vlan_handlers(ctx); - ether_ifdetach(ifp); + if ((sctx->isc_flags & IFLIB_PSEUDO) && + (sctx->isc_flags & IFLIB_PSEUDO_ETHER) == 0) { + bpfdetach(ifp); + if_detach(ifp); + } else { + ether_ifdetach(ifp); + } /* XXX drain any dependent tasks */ tqg = qgroup_if_io_tqg; for (txq = ctx->ifc_txqs, i = 0; i < NTXQSETS(ctx); i++, txq++) { @@ -5325,13 +5341,22 @@ iflib_register(if_ctx_t ctx) driver_t *driver = sctx->isc_driver; device_t dev = ctx->ifc_dev; if_t ifp; + u_char type; + int iflags; if ((sctx->isc_flags & IFLIB_PSEUDO) == 0) _iflib_assert(sctx); CTX_LOCK_INIT(ctx); STATE_LOCK_INIT(ctx, device_get_nameunit(ctx->ifc_dev)); - ifp = ctx->ifc_ifp = if_alloc(IFT_ETHER); + if (sctx->isc_flags & IFLIB_PSEUDO) { + if (sctx->isc_flags & IFLIB_PSEUDO_ETHER) + type = IFT_ETHER; + else + type = IFT_PPP; + } else + type = IFT_ETHER; + ifp = ctx->ifc_ifp = if_alloc(type); if (ifp == NULL) { device_printf(dev, "can not allocate ifnet structure\n"); return (ENOMEM); @@ -5356,8 +5381,14 @@ iflib_register(if_ctx_t ctx) if_settransmitfn(ifp, iflib_if_transmit); #endif if_setqflushfn(ifp, iflib_if_qflush); - if_setflags(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST); + iflags = IFF_MULTICAST; + if ((sctx->isc_flags & IFLIB_PSEUDO) && + (sctx->isc_flags & IFLIB_PSEUDO_ETHER) == 0) + iflags |= IFF_POINTOPOINT; + else + iflags |= IFF_BROADCAST | IFF_SIMPLEX; + if_setflags(ifp, iflags); ctx->ifc_vlan_attach_event = EVENTHANDLER_REGISTER(vlan_config, iflib_vlan_register, ctx, EVENTHANDLER_PRI_FIRST); Modified: stable/12/sys/net/iflib.h ============================================================================== --- stable/12/sys/net/iflib.h Mon Jul 27 01:51:33 2020 (r363593) +++ stable/12/sys/net/iflib.h Mon Jul 27 01:53:27 2020 (r363594) @@ -366,6 +366,11 @@ typedef enum { * interrupts instead of doing combined RX/TX processing. */ #define IFLIB_SINGLE_IRQ_RX_ONLY 0x40000 +/* + * Don't need/want most of the niceties of + * emulating ethernet + */ +#define IFLIB_PSEUDO_ETHER 0x80000 /* From owner-svn-src-stable@freebsd.org Mon Jul 27 14:08:30 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 693A83636DC; Mon, 27 Jul 2020 14:08:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhVQ23vfz3WsY; Mon, 27 Jul 2020 14:08:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 26C481EABB; Mon, 27 Jul 2020 14:08:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RE8TTB063098; Mon, 27 Jul 2020 14:08:29 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RE8TH3063097; Mon, 27 Jul 2020 14:08:29 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271408.06RE8TH3063097@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:08:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363600 - stable/12/contrib/elftoolchain/libdwarf X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/contrib/elftoolchain/libdwarf X-SVN-Commit-Revision: 363600 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:08:30 -0000 Author: markj Date: Mon Jul 27 14:08:29 2020 New Revision: 363600 URL: https://svnweb.freebsd.org/changeset/base/363600 Log: MFC r363375: libdwarf: Hide SHT_NOBITS sections. PR: 239516 Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Directory Properties: stable/12/ (props changed) Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c ============================================================================== --- stable/12/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Mon Jul 27 11:42:22 2020 (r363599) +++ stable/12/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Mon Jul 27 14:08:29 2020 (r363600) @@ -260,6 +260,9 @@ _dwarf_elf_init(Dwarf_Debug dbg, Elf *elf, Dwarf_Error goto fail_cleanup; } + if (sh.sh_type == SHT_NOBITS) + continue; + if ((name = elf_strptr(elf, e->eo_strndx, sh.sh_name)) == NULL) { DWARF_SET_ELF_ERROR(dbg, error); @@ -312,6 +315,9 @@ _dwarf_elf_init(Dwarf_Debug dbg, Elf *elf, Dwarf_Error ret = DW_DLE_ELF; goto fail_cleanup; } + + if (sh.sh_type == SHT_NOBITS) + continue; memcpy(&e->eo_shdr[j], &sh, sizeof(sh)); From owner-svn-src-stable@freebsd.org Mon Jul 27 14:09:38 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A2D02363859; Mon, 27 Jul 2020 14:09:38 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhWk3ty2z3XHb; Mon, 27 Jul 2020 14:09:38 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 696551ED32; Mon, 27 Jul 2020 14:09:38 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RE9cRb063209; Mon, 27 Jul 2020 14:09:38 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RE9cq3063208; Mon, 27 Jul 2020 14:09:38 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271409.06RE9cq3063208@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:09:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363601 - stable/11/contrib/elftoolchain/libdwarf X-SVN-Group: stable-11 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/11/contrib/elftoolchain/libdwarf X-SVN-Commit-Revision: 363601 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:09:38 -0000 Author: markj Date: Mon Jul 27 14:09:37 2020 New Revision: 363601 URL: https://svnweb.freebsd.org/changeset/base/363601 Log: MFC r363375: libdwarf: Hide SHT_NOBITS sections. PR: 239516 Modified: stable/11/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Directory Properties: stable/11/ (props changed) Modified: stable/11/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c ============================================================================== --- stable/11/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Mon Jul 27 14:08:29 2020 (r363600) +++ stable/11/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c Mon Jul 27 14:09:37 2020 (r363601) @@ -260,6 +260,9 @@ _dwarf_elf_init(Dwarf_Debug dbg, Elf *elf, Dwarf_Error goto fail_cleanup; } + if (sh.sh_type == SHT_NOBITS) + continue; + if ((name = elf_strptr(elf, e->eo_strndx, sh.sh_name)) == NULL) { DWARF_SET_ELF_ERROR(dbg, error); @@ -312,6 +315,9 @@ _dwarf_elf_init(Dwarf_Debug dbg, Elf *elf, Dwarf_Error ret = DW_DLE_ELF; goto fail_cleanup; } + + if (sh.sh_type == SHT_NOBITS) + continue; memcpy(&e->eo_shdr[j], &sh, sizeof(sh)); From owner-svn-src-stable@freebsd.org Mon Jul 27 14:10:13 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7D347363A4E; Mon, 27 Jul 2020 14:10:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhXP2mjpz3XLj; Mon, 27 Jul 2020 14:10:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 423E81ED33; Mon, 27 Jul 2020 14:10:13 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06READkK063331; Mon, 27 Jul 2020 14:10:13 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06READ2l063330; Mon, 27 Jul 2020 14:10:13 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271410.06READ2l063330@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:10:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363602 - stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 363602 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:10:13 -0000 Author: markj Date: Mon Jul 27 14:10:12 2020 New Revision: 363602 URL: https://svnweb.freebsd.org/changeset/base/363602 Log: MFC r363373: Fix a memory leak in dsl_scan_visitbp(). PR: 247445 Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c ============================================================================== --- stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Jul 27 14:09:37 2020 (r363601) +++ stable/12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Jul 27 14:10:12 2020 (r363602) @@ -1786,7 +1786,7 @@ dsl_scan_visitbp(blkptr_t *bp, const zbookmark_phys_t *bp_toread = *bp; if (dsl_scan_recurse(scn, ds, ostype, dnp, bp_toread, zb, tx) != 0) - return; + goto out; /* * If dsl_scan_ddt() has already visited this block, it will have From owner-svn-src-stable@freebsd.org Mon Jul 27 14:11:09 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 67C5C363CBA; Mon, 27 Jul 2020 14:11:09 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhYT29zjz3XSf; Mon, 27 Jul 2020 14:11:09 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2E50E1ED3B; Mon, 27 Jul 2020 14:11:09 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06REB9lc066837; Mon, 27 Jul 2020 14:11:09 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06REB9Hs066836; Mon, 27 Jul 2020 14:11:09 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271411.06REB9Hs066836@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:11:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363603 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Commit-Revision: 363603 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:11:09 -0000 Author: markj Date: Mon Jul 27 14:11:08 2020 New Revision: 363603 URL: https://svnweb.freebsd.org/changeset/base/363603 Log: MFC r363373: Fix a memory leak in dsl_scan_visitbp(). PR: 247445 Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Jul 27 14:10:12 2020 (r363602) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c Mon Jul 27 14:11:08 2020 (r363603) @@ -1791,7 +1791,7 @@ dsl_scan_visitbp(blkptr_t *bp, const zbookmark_phys_t *bp_toread = *bp; if (dsl_scan_recurse(scn, ds, ostype, dnp, bp_toread, zb, tx) != 0) - return; + goto out; /* * If dsl_scan_ddt() has already visited this block, it will have From owner-svn-src-stable@freebsd.org Mon Jul 27 14:14:08 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 30AC6363C56; Mon, 27 Jul 2020 14:14:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhcw0cfXz3Xlf; Mon, 27 Jul 2020 14:14:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EC9171F130; Mon, 27 Jul 2020 14:14:07 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06REE7J9069190; Mon, 27 Jul 2020 14:14:07 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06REE6Ec069185; Mon, 27 Jul 2020 14:14:06 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271414.06REE6Ec069185@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:14:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363604 - stable/12/sys/fs/ext2fs X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/fs/ext2fs X-SVN-Commit-Revision: 363604 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:14:08 -0000 Author: markj Date: Mon Jul 27 14:14:06 2020 New Revision: 363604 URL: https://svnweb.freebsd.org/changeset/base/363604 Log: MFC r363367: ext2fs: Stop checking for failures from malloc(M_WAITOK). PR: 240545 Modified: stable/12/sys/fs/ext2fs/ext2_acl.c stable/12/sys/fs/ext2fs/ext2_alloc.c stable/12/sys/fs/ext2fs/ext2_extents.c stable/12/sys/fs/ext2fs/ext2_lookup.c stable/12/sys/fs/ext2fs/ext2_vnops.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/ext2fs/ext2_acl.c ============================================================================== --- stable/12/sys/fs/ext2fs/ext2_acl.c Mon Jul 27 14:11:08 2020 (r363603) +++ stable/12/sys/fs/ext2fs/ext2_acl.c Mon Jul 27 14:14:06 2020 (r363604) @@ -234,8 +234,6 @@ ext2_getacl_posix1e(struct vop_getacl_args *ap) len = sizeof(*ap->a_aclp) + sizeof(struct ext2_acl_header); value = malloc(len, M_ACL, M_WAITOK); - if (!value) - return (ENOMEM); error = vn_extattr_get(ap->a_vp, IO_NODELOCKED, attrnamespace, attrname, &len, value, ap->a_td); Modified: stable/12/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/12/sys/fs/ext2fs/ext2_alloc.c Mon Jul 27 14:11:08 2020 (r363603) +++ stable/12/sys/fs/ext2fs/ext2_alloc.c Mon Jul 27 14:14:06 2020 (r363604) @@ -424,9 +424,6 @@ ext2_valloc(struct vnode *pvp, int mode, struct ucred } ip = malloc(sizeof(struct inode), M_EXT2NODE, M_WAITOK | M_ZERO); - if (ip == NULL) { - return (ENOMEM); - } /* Allocate a new vnode/inode. */ if ((error = getnewvnode("ext2fs", ump->um_mountp, &ext2_vnodeops, &vp)) != 0) { Modified: stable/12/sys/fs/ext2fs/ext2_extents.c ============================================================================== --- stable/12/sys/fs/ext2fs/ext2_extents.c Mon Jul 27 14:11:08 2020 (r363603) +++ stable/12/sys/fs/ext2fs/ext2_extents.c Mon Jul 27 14:14:06 2020 (r363604) @@ -319,9 +319,6 @@ ext4_ext_fill_path_bdata(struct ext4_extent_path *path ("ext4_ext_fill_path_bdata: bad ep_data")); path->ep_data = malloc(bp->b_bufsize, M_EXT2EXTENTS, M_WAITOK); - if (!path->ep_data) - return (ENOMEM); - memcpy(path->ep_data, bp->b_data, bp->b_bufsize); path->ep_blk = blk; @@ -394,9 +391,6 @@ ext4_ext_find_extent(struct inode *ip, daddr_t block, path = malloc(EXT4_EXT_DEPTH_MAX * sizeof(struct ext4_extent_path), M_EXT2EXTENTS, M_WAITOK | M_ZERO); - if (!path) - return (ENOMEM); - *ppath = path; alloc = 1; } @@ -758,8 +752,6 @@ ext4_ext_split(struct inode *ip, struct ext4_extent_pa /* Allocate new blocks. */ ablks = malloc(sizeof(e4fs_daddr_t) * depth, M_EXT2EXTENTS, M_WAITOK | M_ZERO); - if (!ablks) - return (ENOMEM); for (a = 0; a < depth - at; a++) { newblk = ext4_ext_alloc_meta(ip); if (newblk == 0) @@ -1510,9 +1502,6 @@ ext4_ext_remove_space(struct inode *ip, off_t length, path = malloc(sizeof(struct ext4_extent_path) * (depth + 1), M_EXT2EXTENTS, M_WAITOK | M_ZERO); - if (!path) - return (ENOMEM); - path[0].ep_header = ehp; path[0].ep_depth = depth; i = 0; Modified: stable/12/sys/fs/ext2fs/ext2_lookup.c ============================================================================== --- stable/12/sys/fs/ext2fs/ext2_lookup.c Mon Jul 27 14:11:08 2020 (r363603) +++ stable/12/sys/fs/ext2fs/ext2_lookup.c Mon Jul 27 14:14:06 2020 (r363604) @@ -891,10 +891,6 @@ ext2_add_first_entry(struct vnode *dvp, struct ext2fs_ EXT2F_ROCOMPAT_METADATA_CKSUM)) { entry->e2d_reclen = dirblksize - sizeof(struct ext2fs_direct_tail); buf = malloc(dirblksize, M_TEMP, M_WAITOK); - if (!buf) { - error = ENOMEM; - goto out; - } memcpy(buf, entry, EXT2_DIR_REC_LEN(entry->e2d_namlen)); ext2_init_dirent_tail(EXT2_DIRENT_TAIL(buf, dirblksize)); ext2_dirent_csum_set(dp, (struct ext2fs_direct_2 *)buf); Modified: stable/12/sys/fs/ext2fs/ext2_vnops.c ============================================================================== --- stable/12/sys/fs/ext2fs/ext2_vnops.c Mon Jul 27 14:11:08 2020 (r363603) +++ stable/12/sys/fs/ext2fs/ext2_vnops.c Mon Jul 27 14:14:06 2020 (r363604) @@ -1075,10 +1075,6 @@ abortit: ext2_dec_nlink(dp); dp->i_flag |= IN_CHANGE; dirbuf = malloc(dp->i_e2fs->e2fs_bsize, M_TEMP, M_WAITOK | M_ZERO); - if (!dirbuf) { - error = ENOMEM; - goto bad; - } error = vn_rdwr(UIO_READ, fvp, (caddr_t)dirbuf, ip->i_e2fs->e2fs_bsize, (off_t)0, UIO_SYSSPACE, IO_NODELOCKED | IO_NOMACCHECK, @@ -1388,12 +1384,6 @@ ext2_mkdir(struct vop_mkdir_args *ap) #define DIRBLKSIZ VTOI(dvp)->i_e2fs->e2fs_bsize dirtemplate.dotdot_reclen = DIRBLKSIZ - 12; buf = malloc(DIRBLKSIZ, M_TEMP, M_WAITOK | M_ZERO); - if (!buf) { - error = ENOMEM; - ext2_dec_nlink(dp); - dp->i_flag |= IN_CHANGE; - goto bad; - } if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) { dirtemplate.dotdot_reclen -= sizeof(struct ext2fs_direct_tail); ext2_init_dirent_tail(EXT2_DIRENT_TAIL(buf, DIRBLKSIZ)); From owner-svn-src-stable@freebsd.org Mon Jul 27 14:15:52 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1F918364253; Mon, 27 Jul 2020 14:15:52 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhfw0MJgz3YNM; Mon, 27 Jul 2020 14:15:52 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E440D1F196; Mon, 27 Jul 2020 14:15:51 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06REFpN2069366; Mon, 27 Jul 2020 14:15:51 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06REFoI5069357; Mon, 27 Jul 2020 14:15:50 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271415.06REFoI5069357@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:15:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363605 - stable/12/sbin/ipfw X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sbin/ipfw X-SVN-Commit-Revision: 363605 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:15:52 -0000 Author: markj Date: Mon Jul 27 14:15:50 2020 New Revision: 363605 URL: https://svnweb.freebsd.org/changeset/base/363605 Log: MFC r363164, r363166: ipfw(8): Fix most warnings with the default WARNS level. Modified: stable/12/sbin/ipfw/Makefile stable/12/sbin/ipfw/altq.c stable/12/sbin/ipfw/dummynet.c stable/12/sbin/ipfw/ipfw2.c stable/12/sbin/ipfw/ipfw2.h stable/12/sbin/ipfw/ipv6.c stable/12/sbin/ipfw/main.c stable/12/sbin/ipfw/nat.c stable/12/sbin/ipfw/nat64clat.c stable/12/sbin/ipfw/nat64lsn.c stable/12/sbin/ipfw/nat64stl.c stable/12/sbin/ipfw/nptv6.c stable/12/sbin/ipfw/tables.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/ipfw/Makefile ============================================================================== --- stable/12/sbin/ipfw/Makefile Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/Makefile Mon Jul 27 14:15:50 2020 (r363605) @@ -6,7 +6,6 @@ PACKAGE=ipfw PROG= ipfw SRCS= ipfw2.c dummynet.c ipv6.c main.c nat.c tables.c SRCS+= nat64clat.c nat64lsn.c nat64stl.c nptv6.c -WARNS?= 2 .if ${MK_PF} != "no" SRCS+= altq.c @@ -17,3 +16,5 @@ LIBADD= jail util MAN= ipfw.8 .include + +CWARNFLAGS+= -Wno-cast-align Modified: stable/12/sbin/ipfw/altq.c ============================================================================== --- stable/12/sbin/ipfw/altq.c Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/altq.c Mon Jul 27 14:15:50 2020 (r363605) @@ -140,7 +140,7 @@ altq_qid_to_name(u_int32_t qid) } void -print_altq_cmd(struct buf_pr *bp, ipfw_insn_altq *altqptr) +print_altq_cmd(struct buf_pr *bp, const ipfw_insn_altq *altqptr) { if (altqptr) { const char *qname; Modified: stable/12/sbin/ipfw/dummynet.c ============================================================================== --- stable/12/sbin/ipfw/dummynet.c Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/dummynet.c Mon Jul 27 14:15:50 2020 (r363605) @@ -166,8 +166,8 @@ enum { #define PIE_SCALE (1L<type, oid->id); break; case DN_SCH: { @@ -636,7 +636,7 @@ list_pipes(struct dn_id *oid, struct dn_id *end) sprintf(bwbuf, "%7.3f bit/s ", b); if (humanize_number(burst, sizeof(burst), p->burst, - "", HN_AUTOSCALE, 0) < 0 || co.verbose) + "", HN_AUTOSCALE, 0) < 0 || g_co.verbose) sprintf(burst, "%d", (int)p->burst); sprintf(buf, "%05d: %s %4d ms burst %s", p->link_nr % DN_MAX_ID, bwbuf, p->delay, burst); @@ -1317,7 +1317,7 @@ ipfw_config_pipe(int ac, char **av) o_next(&buf, sizeof(struct dn_id), DN_CMD_CONFIG); base->id = DN_API_VERSION; - switch (co.do_pipe) { + switch (g_co.do_pipe) { case 1: /* "pipe N config ..." */ /* Allocate space for the WF2Q+ scheduler, its link * and the FIFO flowset. Set the number, but leave @@ -1893,7 +1893,7 @@ parse_range(int ac, char *av[], uint32_t *v, int len) } n++; /* translate if 'pipe list' */ - if (co.do_pipe == 1) { + if (g_co.do_pipe == 1) { v[0] += DN_MAX_ID; v[1] += DN_MAX_ID; } @@ -1947,7 +1947,7 @@ dummynet_list(int ac, char *av[], int show_counters) if (max_size < sizeof(struct dn_flow)) max_size = sizeof(struct dn_flow); - switch (co.do_pipe) { + switch (g_co.do_pipe) { case 1: oid->subtype = DN_LINK; /* list pipe */ break; Modified: stable/12/sbin/ipfw/ipfw2.c ============================================================================== --- stable/12/sbin/ipfw/ipfw2.c Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/ipfw2.c Mon Jul 27 14:15:50 2020 (r363605) @@ -57,7 +57,7 @@ #include #include -struct cmdline_opts co; /* global options */ +struct cmdline_opts g_co; /* global options */ struct format_opts { int bcwidth; @@ -74,7 +74,7 @@ struct format_opts { int resvd_set_number = RESVD_SET; -int ipfw_socket = -1; +static int ipfw_socket = -1; #define CHECK_LENGTH(v, len) do { \ if ((v) < (len)) \ @@ -395,8 +395,8 @@ static int ipfw_show_config(struct cmdline_opts *co, s static void ipfw_list_tifaces(void); struct tidx; -static uint16_t pack_object(struct tidx *tstate, char *name, int otype); -static uint16_t pack_table(struct tidx *tstate, char *name); +static uint16_t pack_object(struct tidx *tstate, const char *name, int otype); +static uint16_t pack_table(struct tidx *tstate, const char *name); static char *table_search_ctlv(ipfw_obj_ctlv *ctlv, uint16_t idx); static void object_sort_ctlv(ipfw_obj_ctlv *ctlv); @@ -456,7 +456,7 @@ bp_flush(struct buf_pr *b) * Returns number of bytes that should have been printed. */ int -bprintf(struct buf_pr *b, char *format, ...) +bprintf(struct buf_pr *b, const char *format, ...) { va_list args; int i; @@ -466,7 +466,7 @@ bprintf(struct buf_pr *b, char *format, ...) i = vsnprintf(b->ptr, b->avail, format, args); va_end(args); - if (i > b->avail || i < 0) { + if (i < 0 || (size_t)i > b->avail) { /* Overflow or print error */ b->avail = 0; } else { @@ -501,7 +501,7 @@ bprint_uint_arg(struct buf_pr *bp, const char *str, ui * otherwise, return the required width. */ int -pr_u64(struct buf_pr *b, uint64_t *pd, int width) +pr_u64(struct buf_pr *b, void *pd, int width) { #ifdef TCC #define U64_FMT "I64" @@ -569,7 +569,7 @@ do_cmd(int optname, void *optval, uintptr_t optlen) { int i; - if (co.test_only) + if (g_co.test_only) return 0; if (ipfw_socket == -1) @@ -606,7 +606,7 @@ int do_set3(int optname, ip_fw3_opheader *op3, size_t optlen) { - if (co.test_only) + if (g_co.test_only) return (0); if (ipfw_socket == -1) @@ -635,7 +635,7 @@ do_get3(int optname, ip_fw3_opheader *op3, size_t *opt int error; socklen_t len; - if (co.test_only) + if (g_co.test_only) return (0); if (ipfw_socket == -1) @@ -725,7 +725,8 @@ match_value(struct _s_x *p, int value) } size_t -concat_tokens(char *buf, size_t bufsize, struct _s_x *table, char *delimiter) +concat_tokens(char *buf, size_t bufsize, struct _s_x *table, + const char *delimiter) { struct _s_x *pt; int l; @@ -788,7 +789,7 @@ print_flags_buffer(char *buf, size_t sz, struct _s_x * set &= ~list[i].x; l = snprintf(buf, sz, "%s%s", comma, list[i].s); - if (l >= sz) + if (l < 0 || (size_t)l >= sz) return; comma = ","; buf += l; @@ -856,13 +857,13 @@ print_port(struct buf_pr *bp, int proto, uint16_t port if (proto == IPPROTO_ETHERTYPE) { char const *s; - if (co.do_resolv && (s = match_value(ether_types, port)) ) + if (g_co.do_resolv && (s = match_value(ether_types, port)) ) bprintf(bp, "%s", s); else bprintf(bp, "0x%04x", port); } else { struct servent *se = NULL; - if (co.do_resolv) { + if (g_co.do_resolv) { struct protoent *pe = getprotobynumber(proto); se = getservbyport(htons(port), pe ? pe->p_name : NULL); @@ -893,9 +894,9 @@ static struct _s_x _port_name[] = { * XXX todo: add support for mask. */ static void -print_newports(struct buf_pr *bp, ipfw_insn_u16 *cmd, int proto, int opcode) +print_newports(struct buf_pr *bp, const ipfw_insn_u16 *cmd, int proto, int opcode) { - uint16_t *p = cmd->ports; + const uint16_t *p = cmd->ports; int i; char const *sep; @@ -906,7 +907,7 @@ print_newports(struct buf_pr *bp, ipfw_insn_u16 *cmd, bprintf(bp, " %s", sep); } sep = " "; - for (i = F_LEN((ipfw_insn *)cmd) - 1; i > 0; i--, p += 2) { + for (i = F_LEN((const ipfw_insn *)cmd) - 1; i > 0; i--, p += 2) { bprintf(bp, "%s", sep); print_port(bp, proto, p[0]); if (p[0] != p[1]) { @@ -1134,7 +1135,7 @@ print_reject_code(struct buf_pr *bp, uint16_t code) * len is the max length in bits. */ int -contigmask(uint8_t *p, int len) +contigmask(const uint8_t *p, int len) { int i, n; @@ -1152,7 +1153,7 @@ contigmask(uint8_t *p, int len) * There is a specialized check for f_tcpflags. */ static void -print_flags(struct buf_pr *bp, char const *name, ipfw_insn *cmd, +print_flags(struct buf_pr *bp, char const *name, const ipfw_insn *cmd, struct _s_x *list) { char const *comma = ""; @@ -1185,12 +1186,13 @@ print_flags(struct buf_pr *bp, char const *name, ipfw_ * Print the ip address contained in a command. */ static void -print_ip(struct buf_pr *bp, const struct format_opts *fo, ipfw_insn_ip *cmd) +print_ip(struct buf_pr *bp, const struct format_opts *fo, + const ipfw_insn_ip *cmd) { struct hostent *he = NULL; - struct in_addr *ia; - uint32_t len = F_LEN((ipfw_insn *)cmd); - uint32_t *a = ((ipfw_insn_u32 *)cmd)->d; + const struct in_addr *ia; + const uint32_t *a = ((const ipfw_insn_u32 *)cmd)->d; + uint32_t len = F_LEN((const ipfw_insn *)cmd); char *t; bprintf(bp, " "); @@ -1200,7 +1202,8 @@ print_ip(struct buf_pr *bp, const struct format_opts * if (d < sizeof(lookup_key)/sizeof(lookup_key[0])) arg = match_value(rule_options, lookup_key[d]); - t = table_search_ctlv(fo->tstate, ((ipfw_insn *)cmd)->arg1); + t = table_search_ctlv(fo->tstate, + ((const ipfw_insn *)cmd)->arg1); bprintf(bp, "lookup %s %s", arg, t); return; } @@ -1210,7 +1213,8 @@ print_ip(struct buf_pr *bp, const struct format_opts * } if (cmd->o.opcode == O_IP_SRC_LOOKUP || cmd->o.opcode == O_IP_DST_LOOKUP) { - t = table_search_ctlv(fo->tstate, ((ipfw_insn *)cmd)->arg1); + t = table_search_ctlv(fo->tstate, + ((const ipfw_insn *)cmd)->arg1); bprintf(bp, "table(%s", t); if (len == F_INSN_SIZE(ipfw_insn_u32)) bprintf(bp, ",%u", *a); @@ -1218,16 +1222,18 @@ print_ip(struct buf_pr *bp, const struct format_opts * return; } if (cmd->o.opcode == O_IP_SRC_SET || cmd->o.opcode == O_IP_DST_SET) { - uint32_t x, *map = (uint32_t *)&(cmd->mask); + const uint32_t *map = (const uint32_t *)&cmd->mask; + struct in_addr addr; + uint32_t x; int i, j; char comma = '{'; x = cmd->o.arg1 - 1; - x = htonl( ~x ); - cmd->addr.s_addr = htonl(cmd->addr.s_addr); - bprintf(bp, "%s/%d", inet_ntoa(cmd->addr), - contigmask((uint8_t *)&x, 32)); - x = cmd->addr.s_addr = htonl(cmd->addr.s_addr); + x = htonl(~x); + addr.s_addr = htonl(cmd->addr.s_addr); + bprintf(bp, "%s/%d", inet_ntoa(addr), + contigmask((uint8_t *)&x, 32)); + x = cmd->addr.s_addr; x &= 0xff; /* base */ /* * Print bits and ranges. @@ -1258,19 +1264,19 @@ print_ip(struct buf_pr *bp, const struct format_opts * for (len = len / 2; len > 0; len--, a += 2) { int mb = /* mask length */ (cmd->o.opcode == O_IP_SRC || cmd->o.opcode == O_IP_DST) ? - 32 : contigmask((uint8_t *)&(a[1]), 32); - if (mb == 32 && co.do_resolv) - he = gethostbyaddr((char *)&(a[0]), sizeof(in_addr_t), + 32 : contigmask((const uint8_t *)&(a[1]), 32); + if (mb == 32 && g_co.do_resolv) + he = gethostbyaddr((const char *)&(a[0]), sizeof(in_addr_t), AF_INET); if (he != NULL) /* resolved to name */ bprintf(bp, "%s", he->h_name); else if (mb == 0) /* any */ bprintf(bp, "any"); else { /* numeric IP followed by some kind of mask */ - ia = (struct in_addr *)&a[0]; + ia = (const struct in_addr *)&a[0]; bprintf(bp, "%s", inet_ntoa(*ia)); if (mb < 0) { - ia = (struct in_addr *)&a[1]; + ia = (const struct in_addr *)&a[1]; bprintf(bp, ":%s", inet_ntoa(*ia)); } else if (mb < 32) bprintf(bp, "/%d", mb); @@ -1284,7 +1290,7 @@ print_ip(struct buf_pr *bp, const struct format_opts * * prints a MAC address/mask pair */ static void -format_mac(struct buf_pr *bp, uint8_t *addr, uint8_t *mask) +format_mac(struct buf_pr *bp, const uint8_t *addr, const uint8_t *mask) { int l = contigmask(mask, 48); @@ -1303,7 +1309,7 @@ format_mac(struct buf_pr *bp, uint8_t *addr, uint8_t * } static void -print_mac(struct buf_pr *bp, ipfw_insn_mac *mac) +print_mac(struct buf_pr *bp, const ipfw_insn_mac *mac) { bprintf(bp, " MAC"); @@ -1336,7 +1342,7 @@ fill_icmptypes(ipfw_insn_u32 *cmd, char *av) } static void -print_icmptypes(struct buf_pr *bp, ipfw_insn_u32 *cmd) +print_icmptypes(struct buf_pr *bp, const ipfw_insn_u32 *cmd) { int i; char sep= ' '; @@ -1351,12 +1357,12 @@ print_icmptypes(struct buf_pr *bp, ipfw_insn_u32 *cmd) } static void -print_dscp(struct buf_pr *bp, ipfw_insn_u32 *cmd) +print_dscp(struct buf_pr *bp, const ipfw_insn_u32 *cmd) { + const uint32_t *v; + const char *code; int i = 0; - uint32_t *v; char sep= ' '; - const char *code; bprintf(bp, " dscp"); v = cmd->d; @@ -1374,7 +1380,7 @@ print_dscp(struct buf_pr *bp, ipfw_insn_u32 *cmd) } } -#define insntod(cmd, type) ((ipfw_insn_ ## type *)(cmd)) +#define insntod(cmd, type) ((const ipfw_insn_ ## type *)(cmd)) struct show_state { struct ip_fw_rule *rule; const ipfw_insn *eaction; @@ -1443,7 +1449,7 @@ print_limit_mask(struct buf_pr *bp, const ipfw_insn_li static int print_instruction(struct buf_pr *bp, const struct format_opts *fo, - struct show_state *state, ipfw_insn *cmd) + struct show_state *state, const ipfw_insn *cmd) { struct protoent *pe; struct passwd *pwd; @@ -1685,7 +1691,7 @@ print_instruction(struct buf_pr *bp, const struct form bprintf(bp, " ipsec"); break; case O_NOP: - bprintf(bp, " // %s", (char *)(cmd + 1)); + bprintf(bp, " // %s", (const char *)(cmd + 1)); break; case O_KEEP_STATE: if (state->flags & HAVE_PROBE_STATE) @@ -1777,8 +1783,8 @@ static void print_fwd(struct buf_pr *bp, const ipfw_insn *cmd) { char buf[INET6_ADDRSTRLEN + IF_NAMESIZE + 2]; - ipfw_insn_sa6 *sa6; - ipfw_insn_sa *sa; + const ipfw_insn_sa6 *sa6; + const ipfw_insn_sa *sa; uint16_t port; if (cmd->opcode == O_FORWARD_IP) { @@ -2056,7 +2062,7 @@ print_proto(struct buf_pr *bp, struct format_opts *fo, static int match_opcode(int opcode, const int opcodes[], size_t nops) { - int i; + size_t i; for (i = 0; i < nops; i++) if (opcode == opcodes[i]) @@ -2138,10 +2144,10 @@ static void show_static_rule(struct cmdline_opts *co, struct format_opts *fo, struct buf_pr *bp, struct ip_fw_rule *rule, struct ip_fw_bcounter *cntr) { + static int twidth = 0; struct show_state state; ipfw_insn *cmd; - static int twidth = 0; - int i; + size_t i; /* Print # DISABLED or skip the rule */ if ((fo->set_mask & (1 << rule->set)) == 0) { @@ -2361,7 +2367,7 @@ void ipfw_sets_handler(char *av[]) { ipfw_range_tlv rt; - char *msg; + const char *msg; size_t size; uint32_t masks[2]; int i; @@ -2378,7 +2384,7 @@ ipfw_sets_handler(char *av[]) ipfw_cfg_lheader *cfg; memset(&fo, 0, sizeof(fo)); - if (ipfw_get_config(&co, &fo, &cfg, &size) != 0) + if (ipfw_get_config(&g_co, &fo, &cfg, &size) != 0) err(EX_OSERR, "requesting config failed"); for (i = 0, msg = "disable"; i < RESVD_SET; i++) @@ -2507,7 +2513,7 @@ typedef void state_cb(struct cmdline_opts *co, struct static void prepare_format_dyn(struct cmdline_opts *co, struct format_opts *fo, - void *arg, void *_state) + void *arg __unused, void *_state) { ipfw_dyn_rule *d; int width; @@ -2701,11 +2707,11 @@ ipfw_list(int ac, char *av[], int show_counters) uint32_t rnum; char *endptr; - if (co.test_only) { + if (g_co.test_only) { fprintf(stderr, "Testing only, list disabled\n"); return; } - if (co.do_pipe) { + if (g_co.do_pipe) { dummynet_list(ac, av, show_counters); return; } @@ -2731,17 +2737,17 @@ ipfw_list(int ac, char *av[], int show_counters) /* get configuraion from kernel */ cfg = NULL; sfo.show_counters = show_counters; - sfo.show_time = co.do_time; - if (co.do_dynamic != 2) + sfo.show_time = g_co.do_time; + if (g_co.do_dynamic != 2) sfo.flags |= IPFW_CFG_GET_STATIC; - if (co.do_dynamic != 0) + if (g_co.do_dynamic != 0) sfo.flags |= IPFW_CFG_GET_STATES; if ((sfo.show_counters | sfo.show_time) != 0) sfo.flags |= IPFW_CFG_GET_COUNTERS; - if (ipfw_get_config(&co, &sfo, &cfg, &sz) != 0) + if (ipfw_get_config(&g_co, &sfo, &cfg, &sz) != 0) err(EX_OSERR, "retrieving config failed"); - error = ipfw_show_config(&co, &sfo, cfg, sz, ac, av); + error = ipfw_show_config(&g_co, &sfo, cfg, sz, ac, av); free(cfg); @@ -2974,7 +2980,8 @@ ipfw_check_object_name(const char *name) return (0); } -static char *default_state_name = "default"; +static const char *default_state_name = "default"; + static int state_check_name(const char *name) { @@ -3000,10 +3007,10 @@ eaction_check_name(const char *name) } static uint16_t -pack_object(struct tidx *tstate, char *name, int otype) +pack_object(struct tidx *tstate, const char *name, int otype) { - int i; ipfw_obj_ntlv *ntlv; + uint32_t i; for (i = 0; i < tstate->count; i++) { if (strcmp(tstate->idx[i].name, name) != 0) @@ -3037,7 +3044,7 @@ pack_object(struct tidx *tstate, char *name, int otype } static uint16_t -pack_table(struct tidx *tstate, char *name) +pack_table(struct tidx *tstate, const char *name) { if (table_check_name(name) != 0) @@ -3116,7 +3123,7 @@ fill_ip(ipfw_insn_ip *cmd, char *av, int cblen, struct int masklen; char md, nd = '\0'; - CHECK_LENGTH(cblen, F_INSN_SIZE(ipfw_insn) + 2 + len); + CHECK_LENGTH(cblen, (int)F_INSN_SIZE(ipfw_insn) + 2 + len); if (p) { md = *p; @@ -3314,7 +3321,7 @@ ipfw_delete(char *av[]) /* Do not allow using the following syntax: * ipfw set N delete set M */ - if (co.use_set) + if (g_co.use_set) errx(EX_DATAERR, "invalid syntax"); do_set = 1; /* delete set */ av++; @@ -3327,10 +3334,10 @@ ipfw_delete(char *av[]) if (*sep== '-') j = strtol(sep + 1, NULL, 10); av++; - if (co.do_nat) { + if (g_co.do_nat) { exitval = ipfw_delete_nat(i); - } else if (co.do_pipe) { - exitval = ipfw_delete_pipe(co.do_pipe, i); + } else if (g_co.do_pipe) { + exitval = ipfw_delete_pipe(g_co.do_pipe, i); } else { memset(&rt, 0, sizeof(rt)); if (do_set != 0) { @@ -3343,24 +3350,24 @@ ipfw_delete(char *av[]) rt.flags |= IPFW_RCFLAG_ALL; else rt.flags |= IPFW_RCFLAG_RANGE; - if (co.use_set != 0) { - rt.set = co.use_set - 1; + if (g_co.use_set != 0) { + rt.set = g_co.use_set - 1; rt.flags |= IPFW_RCFLAG_SET; } } - if (co.do_dynamic == 2) + if (g_co.do_dynamic == 2) rt.flags |= IPFW_RCFLAG_DYNAMIC; i = do_range_cmd(IP_FW_XDEL, &rt); if (i != 0) { exitval = EX_UNAVAILABLE; - if (co.do_quiet) + if (g_co.do_quiet) continue; warn("rule %u: setsockopt(IP_FW_XDEL)", rt.start_rule); } else if (rt.new_set == 0 && do_set == 0 && - co.do_dynamic != 2) { + g_co.do_dynamic != 2) { exitval = EX_UNAVAILABLE; - if (co.do_quiet) + if (g_co.do_quiet) continue; if (rt.start_rule != rt.end_rule) warnx("no rules rules in %u-%u range", @@ -3371,7 +3378,7 @@ ipfw_delete(char *av[]) } } } - if (exitval != EX_OK && co.do_force == 0) + if (exitval != EX_OK && g_co.do_force == 0) exit(exitval); } @@ -3696,7 +3703,7 @@ add_src(ipfw_insn *cmd, char *av, u_char proto, int cb struct in6_addr a; char *host, *ch, buf[INET6_ADDRSTRLEN]; ipfw_insn *ret = NULL; - int len; + size_t len; /* Copy first address in set if needed */ if ((ch = strpbrk(av, "/,")) != NULL) { @@ -3727,7 +3734,7 @@ add_dst(ipfw_insn *cmd, char *av, u_char proto, int cb struct in6_addr a; char *host, *ch, buf[INET6_ADDRSTRLEN]; ipfw_insn *ret = NULL; - int len; + size_t len; /* Copy first address in set if needed */ if ((ch = strpbrk(av, "/,")) != NULL) { @@ -3764,7 +3771,7 @@ add_dst(ipfw_insn *cmd, char *av, u_char proto, int cb * various match patterns, log/altq actions, and the actual action. * */ -void +static void compile_rule(char *av[], uint32_t *rbuf, int *rbufsize, struct tidx *tstate) { /* @@ -4250,7 +4257,7 @@ chkarg: len = sizeof(c->max_log); if (sysctlbyname("net.inet.ip.fw.verbose_limit", &c->max_log, &len, NULL, 0) == -1) { - if (co.test_only) { + if (g_co.test_only) { c->max_log = 0; break; } @@ -5138,10 +5145,10 @@ done: static int compare_ntlv(const void *_a, const void *_b) { - ipfw_obj_ntlv *a, *b; + const ipfw_obj_ntlv *a, *b; - a = (ipfw_obj_ntlv *)_a; - b = (ipfw_obj_ntlv *)_b; + a = (const ipfw_obj_ntlv *)_a; + b = (const ipfw_obj_ntlv *)_b; if (a->set < b->set) return (-1); @@ -5178,11 +5185,11 @@ struct object_kt { static int compare_object_kntlv(const void *k, const void *v) { - ipfw_obj_ntlv *ntlv; + const ipfw_obj_ntlv *ntlv; struct object_kt key; - key = *((struct object_kt *)k); - ntlv = (ipfw_obj_ntlv *)v; + key = *((const struct object_kt *)k); + ntlv = (const ipfw_obj_ntlv *)v; if (key.uidx < ntlv->idx) return (-1); @@ -5318,14 +5325,14 @@ ipfw_add(char *av[]) if (do_get3(IP_FW_XADD, op3, &sz) != 0) err(EX_UNAVAILABLE, "getsockopt(%s)", "IP_FW_XADD"); - if (!co.do_quiet) { + if (!g_co.do_quiet) { struct format_opts sfo; struct buf_pr bp; memset(&sfo, 0, sizeof(sfo)); sfo.tstate = tstate; sfo.set_mask = (uint32_t)(-1); bp_alloc(&bp, 4096); - show_static_rule(&co, &sfo, &bp, rule, NULL); + show_static_rule(&g_co, &sfo, &bp, rule, NULL); printf("%s", bp.buf); bp_free(&bp); } @@ -5361,7 +5368,7 @@ ipfw_zero(int ac, char *av[], int optname) rt.flags = IPFW_RCFLAG_ALL; if (do_range_cmd(optname, &rt) < 0) err(EX_UNAVAILABLE, "setsockopt(IP_FW_X%s)", name); - if (!co.do_quiet) + if (!g_co.do_quiet) printf("%s.\n", optname == IP_FW_XZERO ? "Accounting cleared":"Logging counts reset"); @@ -5379,8 +5386,8 @@ ipfw_zero(int ac, char *av[], int optname) rt.start_rule = arg; rt.end_rule = arg; rt.flags |= IPFW_RCFLAG_RANGE; - if (co.use_set != 0) { - rt.set = co.use_set - 1; + if (g_co.use_set != 0) { + rt.set = g_co.use_set - 1; rt.flags |= IPFW_RCFLAG_SET; } if (do_range_cmd(optname, &rt) != 0) { @@ -5390,7 +5397,7 @@ ipfw_zero(int ac, char *av[], int optname) } else if (rt.new_set == 0) { printf("Entry %d not found\n", arg); failed = EX_UNAVAILABLE; - } else if (!co.do_quiet) + } else if (!g_co.do_quiet) printf("Entry %d %s.\n", arg, optname == IP_FW_XZERO ? "cleared" : "logging count reset"); @@ -5408,7 +5415,7 @@ ipfw_flush(int force) { ipfw_range_tlv rt; - if (!force && !co.do_quiet) { /* need to ask user */ + if (!force && !g_co.do_quiet) { /* need to ask user */ int c; printf("Are you sure? [yn] "); @@ -5423,21 +5430,21 @@ ipfw_flush(int force) if (c == 'N') /* user said no */ return; } - if (co.do_pipe) { + if (g_co.do_pipe) { dummynet_flush(); return; } /* `ipfw set N flush` - is the same that `ipfw delete set N` */ memset(&rt, 0, sizeof(rt)); - if (co.use_set != 0) { - rt.set = co.use_set - 1; + if (g_co.use_set != 0) { + rt.set = g_co.use_set - 1; rt.flags = IPFW_RCFLAG_SET; } else rt.flags = IPFW_RCFLAG_ALL; if (do_range_cmd(IP_FW_XDEL, &rt) != 0) err(EX_UNAVAILABLE, "setsockopt(IP_FW_XDEL)"); - if (!co.do_quiet) - printf("Flushed all %s.\n", co.do_pipe ? "pipes" : "rules"); + if (!g_co.do_quiet) + printf("Flushed all %s.\n", g_co.do_pipe ? "pipes" : "rules"); } static struct _s_x intcmds[] = { @@ -5473,13 +5480,13 @@ lookup_eaction_name(ipfw_obj_ntlv *ntlv, int cnt, uint } static void -ipfw_list_objects(int ac, char *av[]) +ipfw_list_objects(int ac __unused, char *av[] __unused) { ipfw_obj_lheader req, *olh; ipfw_obj_ntlv *ntlv; const char *name; size_t sz; - int i; + uint32_t i; memset(&req, 0, sizeof(req)); sz = sizeof(req); @@ -5577,10 +5584,10 @@ ipfw_get_tracked_ifaces(ipfw_obj_lheader **polh) static int ifinfo_cmp(const void *a, const void *b) { - ipfw_iface_info *ia, *ib; + const ipfw_iface_info *ia, *ib; - ia = (ipfw_iface_info *)a; - ib = (ipfw_iface_info *)b; + ia = (const ipfw_iface_info *)a; + ib = (const ipfw_iface_info *)b; return (stringnum_cmp(ia->ifname, ib->ifname)); } @@ -5591,11 +5598,12 @@ ifinfo_cmp(const void *a, const void *b) * Returns 0 on success. */ static void -ipfw_list_tifaces() +ipfw_list_tifaces(void) { ipfw_obj_lheader *olh; ipfw_iface_info *info; - int i, error; + uint32_t i; + int error; if ((error = ipfw_get_tracked_ifaces(&olh)) != 0) err(EX_OSERR, "Unable to request ipfw tracked interface list"); Modified: stable/12/sbin/ipfw/ipfw2.h ============================================================================== --- stable/12/sbin/ipfw/ipfw2.h Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/ipfw2.h Mon Jul 27 14:15:50 2020 (r363605) @@ -51,7 +51,7 @@ struct cmdline_opts { int do_sort; /* field to sort results (0 = no) */ /* valid fields are 1 and above */ - int use_set; /* work with specified set number */ + uint32_t use_set; /* work with specified set number */ /* 0 means all sets, otherwise apply to set use_set - 1 */ }; @@ -62,7 +62,7 @@ enum { TIMESTAMP_NUMERIC, }; -extern struct cmdline_opts co; +extern struct cmdline_opts g_co; /* * _s_x is a structure that stores a string <-> token pairs, used in @@ -328,10 +328,10 @@ struct buf_pr { size_t needed; /* length needed */ }; -int pr_u64(struct buf_pr *bp, uint64_t *pd, int width); +int pr_u64(struct buf_pr *bp, void *pd, int width); int bp_alloc(struct buf_pr *b, size_t size); void bp_free(struct buf_pr *b); -int bprintf(struct buf_pr *b, char *format, ...); +int bprintf(struct buf_pr *b, const char *format, ...); /* memory allocation support */ @@ -349,7 +349,7 @@ int match_token_relaxed(struct _s_x *table, const char int get_token(struct _s_x *table, const char *string, const char *errbase); char const *match_value(struct _s_x *p, int value); size_t concat_tokens(char *buf, size_t bufsize, struct _s_x *table, - char *delimiter); + const char *delimiter); int fill_flags(struct _s_x *flags, char *p, char **e, uint32_t *set, uint32_t *clear); void print_flags_buffer(char *buf, size_t sz, struct _s_x *list, uint32_t set); @@ -361,7 +361,7 @@ int do_get3(int optname, struct _ip_fw3_opheader *op3, struct in6_addr; void n2mask(struct in6_addr *mask, int n); -int contigmask(uint8_t *p, int len); +int contigmask(const uint8_t *p, int len); /* * Forward declarations to avoid include way too many headers. @@ -409,7 +409,7 @@ int ipfw_check_nat64prefix(const struct in6_addr *pref /* altq.c */ void altq_set_enabled(int enabled); u_int32_t altq_name_to_qid(const char *name); -void print_altq_cmd(struct buf_pr *bp, struct _ipfw_insn_altq *altqptr); +void print_altq_cmd(struct buf_pr *bp, const struct _ipfw_insn_altq *altqptr); #else #define NO_ALTQ #endif @@ -421,10 +421,10 @@ int ipfw_delete_pipe(int pipe_or_queue, int n); /* ipv6.c */ void print_unreach6_code(struct buf_pr *bp, uint16_t code); -void print_ip6(struct buf_pr *bp, struct _ipfw_insn_ip6 *cmd); -void print_flow6id(struct buf_pr *bp, struct _ipfw_insn_u32 *cmd); -void print_icmp6types(struct buf_pr *bp, struct _ipfw_insn_u32 *cmd); -void print_ext6hdr(struct buf_pr *bp, struct _ipfw_insn *cmd ); +void print_ip6(struct buf_pr *bp, const struct _ipfw_insn_ip6 *cmd); +void print_flow6id(struct buf_pr *bp, const struct _ipfw_insn_u32 *cmd); +void print_icmp6types(struct buf_pr *bp, const struct _ipfw_insn_u32 *cmd); +void print_ext6hdr(struct buf_pr *bp, const struct _ipfw_insn *cmd); struct tidx; struct _ipfw_insn *add_srcip6(struct _ipfw_insn *cmd, char *av, int cblen, Modified: stable/12/sbin/ipfw/ipv6.c ============================================================================== --- stable/12/sbin/ipfw/ipv6.c Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/ipv6.c Mon Jul 27 14:15:50 2020 (r363605) @@ -85,14 +85,14 @@ print_unreach6_code(struct buf_pr *bp, uint16_t code) * Print the ip address contained in a command. */ void -print_ip6(struct buf_pr *bp, ipfw_insn_ip6 *cmd) +print_ip6(struct buf_pr *bp, const ipfw_insn_ip6 *cmd) { char trad[255]; struct hostent *he = NULL; - struct in6_addr *a = &(cmd->addr6); + const struct in6_addr *a = &(cmd->addr6); int len, mb; - len = F_LEN((ipfw_insn *) cmd) - 1; + len = F_LEN((const ipfw_insn *)cmd) - 1; if (cmd->o.opcode == O_IP6_SRC_ME || cmd->o.opcode == O_IP6_DST_ME) { bprintf(bp, " me6"); return; @@ -112,10 +112,11 @@ print_ip6(struct buf_pr *bp, ipfw_insn_ip6 *cmd) /* mask length */ mb = (cmd->o.opcode == O_IP6_SRC || cmd->o.opcode == O_IP6_DST) ? 128: - contigmask((uint8_t *)&(a[1]), 128); + contigmask((const uint8_t *)&(a[1]), 128); - if (mb == 128 && co.do_resolv) - he = gethostbyaddr((char *)a, sizeof(*a), AF_INET6); + if (mb == 128 && g_co.do_resolv) + he = gethostbyaddr((const char *)a, sizeof(*a), + AF_INET6); if (he != NULL) /* resolved to name */ bprintf(bp, "%s", he->h_name); @@ -142,7 +143,7 @@ fill_icmp6types(ipfw_insn_icmp6 *cmd, char *av, int cb { uint8_t type; - CHECK_LENGTH(cblen, F_INSN_SIZE(ipfw_insn_icmp6)); + CHECK_LENGTH(cblen, (int)F_INSN_SIZE(ipfw_insn_icmp6)); memset(cmd, 0, sizeof(*cmd)); while (*av) { if (*av == ',') @@ -165,7 +166,7 @@ fill_icmp6types(ipfw_insn_icmp6 *cmd, char *av, int cb } void -print_icmp6types(struct buf_pr *bp, ipfw_insn_u32 *cmd) +print_icmp6types(struct buf_pr *bp, const ipfw_insn_u32 *cmd) { int i, j; char sep= ' '; @@ -181,7 +182,7 @@ print_icmp6types(struct buf_pr *bp, ipfw_insn_u32 *cmd } void -print_flow6id(struct buf_pr *bp, ipfw_insn_u32 *cmd) +print_flow6id(struct buf_pr *bp, const ipfw_insn_u32 *cmd) { uint16_t i, limit = cmd->o.arg1; char sep = ','; @@ -257,7 +258,7 @@ fill_ext6hdr( ipfw_insn *cmd, char *av) } void -print_ext6hdr(struct buf_pr *bp, ipfw_insn *cmd ) +print_ext6hdr(struct buf_pr *bp, const ipfw_insn *cmd ) { char sep = ' '; @@ -364,7 +365,8 @@ fill_ip6(ipfw_insn_ip6 *cmd, char *av, int cblen, stru int masklen; char md = '\0'; - CHECK_LENGTH(cblen, 1 + len + 2 * F_INSN_SIZE(struct in6_addr)); + CHECK_LENGTH(cblen, + 1 + len + 2 * (int)F_INSN_SIZE(struct in6_addr)); if ((q = strchr(av, ',')) ) { *q = '\0'; @@ -453,7 +455,8 @@ fill_flow6( ipfw_insn_u32 *cmd, char *av, int cblen) cmd->d[0] = 0; /* Initializing the base number*/ while (s) { - CHECK_LENGTH(cblen, F_INSN_SIZE(ipfw_insn_u32) + nflow + 1); + CHECK_LENGTH(cblen, + (int)F_INSN_SIZE(ipfw_insn_u32) + nflow + 1); av = strsep( &s, ",") ; type = strtoul(av, &av, 0); Modified: stable/12/sbin/ipfw/main.c ============================================================================== --- stable/12/sbin/ipfw/main.c Mon Jul 27 14:14:06 2020 (r363604) +++ stable/12/sbin/ipfw/main.c Mon Jul 27 14:15:50 2020 (r363605) @@ -226,8 +226,8 @@ ipfw_main(int oldac, char **oldav) av[ac] = NULL; /* Set the force flag for non-interactive processes */ - if (!co.do_force) - co.do_force = !isatty(STDIN_FILENO); + if (!g_co.do_force) + g_co.do_force = !isatty(STDIN_FILENO); #ifdef EMULATE_SYSCTL /* sysctl emulation */ if ( ac >= 2 && !strcmp(av[1], "sysctl")) { @@ -269,20 +269,20 @@ ipfw_main(int oldac, char **oldav) break; case 'b': - co.comment_only = 1; - co.do_compact = 1; + g_co.comment_only = 1; + g_co.do_compact = 1; break; case 'c': - co.do_compact = 1; + g_co.do_compact = 1; break; case 'd': - co.do_dynamic = 1; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-stable@freebsd.org Mon Jul 27 14:16:28 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4FB6A364152; Mon, 27 Jul 2020 14:16:28 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFhgc1Trhz3YVs; Mon, 27 Jul 2020 14:16:28 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 16BB31F20B; Mon, 27 Jul 2020 14:16:28 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06REGRZQ069440; Mon, 27 Jul 2020 14:16:27 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06REGRZZ069439; Mon, 27 Jul 2020 14:16:27 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271416.06REGRZZ069439@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:16:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363606 - stable/12/sys/opencrypto X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/opencrypto X-SVN-Commit-Revision: 363606 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:16:28 -0000 Author: markj Date: Mon Jul 27 14:16:27 2020 New Revision: 363606 URL: https://svnweb.freebsd.org/changeset/base/363606 Log: MFC r363374: crypto(9): Stop checking for failures from malloc(M_WAITOK). PR: 240545 Modified: stable/12/sys/opencrypto/cryptodev.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/opencrypto/cryptodev.c ============================================================================== --- stable/12/sys/opencrypto/cryptodev.c Mon Jul 27 14:15:50 2020 (r363605) +++ stable/12/sys/opencrypto/cryptodev.c Mon Jul 27 14:16:27 2020 (r363606) @@ -1256,11 +1256,7 @@ cryptodev_key(struct crypt_kop *kop) return (EINVAL); } - krp = (struct cryptkop *)malloc(sizeof *krp, M_XDATA, M_WAITOK|M_ZERO); - if (!krp) { - SDT_PROBE1(opencrypto, dev, ioctl, error, __LINE__); - return (ENOMEM); - } + krp = malloc(sizeof(*krp), M_XDATA, M_WAITOK | M_ZERO); krp->krp_op = kop->crk_op; krp->krp_status = kop->crk_status; krp->krp_iparams = kop->crk_iparams; From owner-svn-src-stable@freebsd.org Mon Jul 27 14:41:25 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 35C8F364E99; Mon, 27 Jul 2020 14:41:25 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFjDP14KLz3bXF; Mon, 27 Jul 2020 14:41:25 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id E22221F518; Mon, 27 Jul 2020 14:41:24 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06REfOuc087187; Mon, 27 Jul 2020 14:41:24 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06REfNKl087181; Mon, 27 Jul 2020 14:41:23 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271441.06REfNKl087181@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 14:41:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363609 - in stable/12: share/man/man4 sys/modules sys/modules/sctp sys/netinet X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in stable/12: share/man/man4 sys/modules sys/modules/sctp sys/netinet X-SVN-Commit-Revision: 363609 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 14:41:25 -0000 Author: markj Date: Mon Jul 27 14:41:23 2020 New Revision: 363609 URL: https://svnweb.freebsd.org/changeset/base/363609 Log: MFC r363079, r363080, r363129, r363133: Provide support for building SCTP as a loadable module. Added: stable/12/sys/modules/sctp/ - copied from r363079, head/sys/modules/sctp/ stable/12/sys/netinet/sctp_module.c - copied unchanged from r363079, head/sys/netinet/sctp_module.c Modified: stable/12/share/man/man4/sctp.4 stable/12/sys/modules/Makefile stable/12/sys/netinet/sctp_os_bsd.h stable/12/sys/netinet/sctp_syscalls.c stable/12/sys/netinet/sctp_usrreq.c Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man4/sctp.4 ============================================================================== --- stable/12/share/man/man4/sctp.4 Mon Jul 27 14:28:55 2020 (r363608) +++ stable/12/share/man/man4/sctp.4 Mon Jul 27 14:41:23 2020 (r363609) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 18, 2020 +.Dd July 9, 2020 .Dt SCTP 4 .Os .Sh NAME @@ -144,8 +144,18 @@ The transport protocol also provides a unordered service as well. The unordered service allows a message to be sent and delivered with no regard to the ordering of any other message. +.Pp +The +.Tn SCTP +kernel implementation may either be compiled into the kernel, or loaded +dynamically as a module. +To support dynamic loading of the stack, the kernel must be compiled +with +.Cd "options SCTP_SUPPORT" . .Ss Extensions -The FreeBSD implementation of +The +.Fx +implementation of .Tn SCTP also supports the following extensions: .Bl -tag -width "sctp partial reliability" @@ -609,3 +619,7 @@ Maximum outgoing SCTP buffer size. .Xr sctp_recvmsg 3 , .Xr sctp_sendmsg 3 , .Xr blackhole 4 +.Sh BUGS +The +.Nm +kernel module cannot be unloaded. Modified: stable/12/sys/modules/Makefile ============================================================================== --- stable/12/sys/modules/Makefile Mon Jul 27 14:28:55 2020 (r363608) +++ stable/12/sys/modules/Makefile Mon Jul 27 14:41:23 2020 (r363609) @@ -343,6 +343,7 @@ SUBDIR= \ ${_sbni} \ scc \ ${_scsi_low} \ + ${_sctp} \ sdhci \ ${_sdhci_acpi} \ sdhci_pci \ @@ -460,6 +461,9 @@ _if_gre= if_gre _ipfw_pmod= ipfw_pmod .if ${MK_IPSEC_SUPPORT} != "no" _ipsec= ipsec +.endif +.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} +_sctp= sctp .endif .endif Copied: stable/12/sys/netinet/sctp_module.c (from r363079, head/sys/netinet/sctp_module.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/sys/netinet/sctp_module.c Mon Jul 27 14:41:23 2020 (r363609, copy of r363079, head/sys/netinet/sctp_module.c) @@ -0,0 +1,197 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2019-2020 The FreeBSD Foundation + * + * This software was developed by Mark Johnston under sponsorship from + * the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include "opt_inet.h" +#include "opt_inet6.h" + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#ifdef INET +extern struct domain inetdomain; + +struct protosw sctp_stream_protosw = { + .pr_type = SOCK_STREAM, + .pr_domain = &inetdomain, + .pr_protocol = IPPROTO_SCTP, + .pr_flags = PR_CONNREQUIRED|PR_WANTRCVD|PR_LASTHDR, + .pr_input = sctp_input, + .pr_ctlinput = sctp_ctlinput, + .pr_ctloutput = sctp_ctloutput, + .pr_drain = sctp_drain, + .pr_usrreqs = &sctp_usrreqs, +}; + +struct protosw sctp_seqpacket_protosw = { + .pr_type = SOCK_SEQPACKET, + .pr_domain = &inetdomain, + .pr_protocol = IPPROTO_SCTP, + .pr_flags = PR_WANTRCVD|PR_LASTHDR, + .pr_input = sctp_input, + .pr_ctlinput = sctp_ctlinput, + .pr_ctloutput = sctp_ctloutput, + .pr_drain = sctp_drain, + .pr_usrreqs = &sctp_usrreqs, +}; +#endif + +#ifdef INET6 +extern struct domain inet6domain; + +struct protosw sctp6_stream_protosw = { + .pr_type = SOCK_STREAM, + .pr_domain = &inet6domain, + .pr_protocol = IPPROTO_SCTP, + .pr_flags = PR_CONNREQUIRED|PR_WANTRCVD|PR_LASTHDR, + .pr_input = sctp6_input, + .pr_ctlinput = sctp6_ctlinput, + .pr_ctloutput = sctp_ctloutput, + .pr_init = sctp_init, + .pr_drain = sctp_drain, + .pr_usrreqs = &sctp6_usrreqs, +}; + +struct protosw sctp6_seqpacket_protosw = { + .pr_type = SOCK_SEQPACKET, + .pr_domain = &inet6domain, + .pr_protocol = IPPROTO_SCTP, + .pr_flags = PR_WANTRCVD|PR_LASTHDR, + .pr_input = sctp6_input, + .pr_ctlinput = sctp6_ctlinput, + .pr_ctloutput = sctp_ctloutput, +#ifndef INET /* Do not call initialization and drain routines twice. */ + .pr_init = sctp_init, + .pr_drain = sctp_drain, +#endif + .pr_usrreqs = &sctp6_usrreqs, +}; +#endif + +static int +sctp_module_load(void) +{ + int error; + +#ifdef INET + error = pf_proto_register(PF_INET, &sctp_stream_protosw); + if (error != 0) + return (error); + error = pf_proto_register(PF_INET, &sctp_seqpacket_protosw); + if (error != 0) + return (error); + error = ipproto_register(IPPROTO_SCTP); + if (error != 0) + return (error); +#endif +#ifdef INET6 + error = pf_proto_register(PF_INET6, &sctp6_stream_protosw); + if (error != 0) + return (error); + error = pf_proto_register(PF_INET6, &sctp6_seqpacket_protosw); + if (error != 0) + return (error); + error = ip6proto_register(IPPROTO_SCTP); + if (error != 0) + return (error); +#endif + error = sctp_syscalls_init(); + if (error != 0) + return (error); + return (0); +} + +static int __unused +sctp_module_unload(void) +{ + + (void)sctp_syscalls_uninit(); + +#ifdef INET + (void)ipproto_unregister(IPPROTO_SCTP); + (void)pf_proto_unregister(PF_INET, IPPROTO_SCTP, SOCK_STREAM); + (void)pf_proto_unregister(PF_INET, IPPROTO_SCTP, SOCK_SEQPACKET); +#endif +#ifdef INET6 + (void)ip6proto_unregister(IPPROTO_SCTP); + (void)pf_proto_unregister(PF_INET6, IPPROTO_SCTP, SOCK_STREAM); + (void)pf_proto_unregister(PF_INET6, IPPROTO_SCTP, SOCK_SEQPACKET); +#endif + return (0); +} + +static int +sctp_modload(struct module *module, int cmd, void *arg) +{ + int error; + + switch (cmd) { + case MOD_LOAD: + error = sctp_module_load(); + break; + case MOD_UNLOAD: + /* + * Unloading SCTP is currently unsupported. Currently, SCTP + * iterator threads are not stopped during unload. + */ + error = EOPNOTSUPP; + break; + default: + error = 0; + break; + } + return (error); +} + +static moduledata_t sctp_mod = { + "sctp", + &sctp_modload, + NULL, +}; + +DECLARE_MODULE(sctp, sctp_mod, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY); +MODULE_VERSION(sctp, 1); Modified: stable/12/sys/netinet/sctp_os_bsd.h ============================================================================== --- stable/12/sys/netinet/sctp_os_bsd.h Mon Jul 27 14:28:55 2020 (r363608) +++ stable/12/sys/netinet/sctp_os_bsd.h Mon Jul 27 14:41:23 2020 (r363609) @@ -45,9 +45,12 @@ __FBSDID("$FreeBSD$"); #include "opt_sctp.h" #include +#include +#include #include #include #include +#include #include #include #include @@ -83,7 +86,6 @@ __FBSDID("$FreeBSD$"); #include #ifdef INET6 -#include #include #include #include @@ -477,5 +479,8 @@ sctp_get_mbuf_for_msg(unsigned int space_needed, #endif #define SCTP_IS_LISTENING(inp) ((inp->sctp_flags & SCTP_PCB_FLAGS_ACCEPTING) != 0) + +int sctp_syscalls_init(void); +int sctp_syscalls_uninit(void); #endif Modified: stable/12/sys/netinet/sctp_syscalls.c ============================================================================== --- stable/12/sys/netinet/sctp_syscalls.c Mon Jul 27 14:28:55 2020 (r363608) +++ stable/12/sys/netinet/sctp_syscalls.c Mon Jul 27 14:41:23 2020 (r363609) @@ -32,8 +32,6 @@ __FBSDID("$FreeBSD$"); #include "opt_capsicum.h" -#include "opt_inet.h" -#include "opt_inet6.h" #include "opt_sctp.h" #include "opt_ktrace.h" @@ -69,6 +67,8 @@ __FBSDID("$FreeBSD$"); #include #endif #ifdef COMPAT_FREEBSD32 +#include +#include #include #endif @@ -78,6 +78,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include static struct syscall_helper_data sctp_syscalls[] = { @@ -88,28 +89,54 @@ static struct syscall_helper_data sctp_syscalls[] = { SYSCALL_INIT_LAST }; -static void -sctp_syscalls_init(void *unused __unused) +#ifdef COMPAT_FREEBSD32 +static struct syscall_helper_data sctp32_syscalls[] = { + SYSCALL32_INIT_HELPER_COMPAT(sctp_peeloff), + SYSCALL32_INIT_HELPER_COMPAT(sctp_generic_sendmsg), + SYSCALL32_INIT_HELPER_COMPAT(sctp_generic_sendmsg_iov), + SYSCALL32_INIT_HELPER_COMPAT(sctp_generic_recvmsg), + SYSCALL_INIT_LAST +}; +#endif + +int +sctp_syscalls_init(void) { - int error __unused; + int error; - error = syscall_helper_register(sctp_syscalls, SY_THR_STATIC); - KASSERT((error == 0), - ("%s: syscall_helper_register failed for sctp syscalls", __func__)); + error = syscall_helper_register(sctp_syscalls, SY_THR_STATIC_KLD); + if (error != 0) + return (error); #ifdef COMPAT_FREEBSD32 - error = syscall32_helper_register(sctp_syscalls, SY_THR_STATIC); - KASSERT((error == 0), - ("%s: syscall32_helper_register failed for sctp syscalls", - __func__)); + error = syscall32_helper_register(sctp32_syscalls, SY_THR_STATIC_KLD); + if (error != 0) + return (error); #endif + return (0); } + +#ifdef SCTP SYSINIT(sctp_syscalls, SI_SUB_SYSCALLS, SI_ORDER_ANY, sctp_syscalls_init, NULL); +#endif +int +sctp_syscalls_uninit(void) +{ + int error; + +#ifdef COMPAT_FREEBSD32 + error = syscall32_helper_unregister(sctp32_syscalls); + if (error != 0) + return (error); +#endif + error = syscall_helper_unregister(sctp_syscalls); + if (error != 0) + return (error); + return (0); +} + /* * SCTP syscalls. - * Functionality only compiled in if SCTP is defined in the kernel Makefile, - * otherwise all return EOPNOTSUPP. - * XXX: We should make this loadable one day. */ int sys_sctp_peeloff(td, uap) @@ -119,7 +146,6 @@ sys_sctp_peeloff(td, uap) caddr_t name; } */ *uap; { -#if (defined(INET) || defined(INET6)) && defined(SCTP) struct file *headfp, *nfp = NULL; struct socket *head, *so; cap_rights_t rights; @@ -181,9 +207,6 @@ done: fdrop(headfp, td); done2: return (error); -#else /* SCTP */ - return (EOPNOTSUPP); -#endif /* SCTP */ } int @@ -199,7 +222,6 @@ sys_sctp_generic_sendmsg (td, uap) int flags } */ *uap; { -#if (defined(INET) || defined(INET6)) && defined(SCTP) struct sctp_sndrcvinfo sinfo, *u_sinfo = NULL; struct socket *so; struct file *fp = NULL; @@ -294,9 +316,6 @@ sctp_bad: sctp_bad2: free(to, M_SONAME); return (error); -#else /* SCTP */ - return (EOPNOTSUPP); -#endif /* SCTP */ } int @@ -312,7 +331,6 @@ sys_sctp_generic_sendmsg_iov(td, uap) int flags } */ *uap; { -#if (defined(INET) || defined(INET6)) && defined(SCTP) struct sctp_sndrcvinfo sinfo, *u_sinfo = NULL; struct socket *so; struct file *fp = NULL; @@ -424,9 +442,6 @@ sctp_bad1: sctp_bad2: free(to, M_SONAME); return (error); -#else /* SCTP */ - return (EOPNOTSUPP); -#endif /* SCTP */ } int @@ -442,7 +457,6 @@ sys_sctp_generic_recvmsg(td, uap) int *msg_flags } */ *uap; { -#if (defined(INET) || defined(INET6)) && defined(SCTP) uint8_t sockbufstore[256]; struct uio auio; struct iovec *iov, *tiov; @@ -572,7 +586,4 @@ out1: fdrop(fp, td); return (error); -#else /* SCTP */ - return (EOPNOTSUPP); -#endif /* SCTP */ } Modified: stable/12/sys/netinet/sctp_usrreq.c ============================================================================== --- stable/12/sys/netinet/sctp_usrreq.c Mon Jul 27 14:28:55 2020 (r363608) +++ stable/12/sys/netinet/sctp_usrreq.c Mon Jul 27 14:41:23 2020 (r363609) @@ -98,6 +98,7 @@ sctp_init(void) static void sctp_finish(void *unused __unused) { + EVENTHANDLER_DEREGISTER(rt_addrmsg, SCTP_BASE_VAR(eh_tag)); sctp_pcb_finish(); } From owner-svn-src-stable@freebsd.org Mon Jul 27 15:09:08 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4B4C9365DC6; Mon, 27 Jul 2020 15:09:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFjrN1Jssz3dG9; Mon, 27 Jul 2020 15:09:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 103FE1F764; Mon, 27 Jul 2020 15:09:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RF97WL000791; Mon, 27 Jul 2020 15:09:07 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RF97wB000790; Mon, 27 Jul 2020 15:09:07 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271509.06RF97wB000790@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 15:09:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363610 - stable/12/sys/modules X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/modules X-SVN-Commit-Revision: 363610 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 15:09:08 -0000 Author: markj Date: Mon Jul 27 15:09:07 2020 New Revision: 363610 URL: https://svnweb.freebsd.org/changeset/base/363610 Log: Update the expression used to decide whether to build sctp.ko. This is a direct commit to stable/12. Reported by: Jenkins Modified: stable/12/sys/modules/Makefile Modified: stable/12/sys/modules/Makefile ============================================================================== --- stable/12/sys/modules/Makefile Mon Jul 27 14:41:23 2020 (r363609) +++ stable/12/sys/modules/Makefile Mon Jul 27 15:09:07 2020 (r363610) @@ -462,7 +462,7 @@ _ipfw_pmod= ipfw_pmod .if ${MK_IPSEC_SUPPORT} != "no" _ipsec= ipsec .endif -.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} +.if ${MK_SCTP_SUPPORT} != "no" || ${MK_SCTP} != "no" _sctp= sctp .endif .endif From owner-svn-src-stable@freebsd.org Mon Jul 27 15:34:08 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id AAB9E366A12; Mon, 27 Jul 2020 15:34:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFkPD3v2Nz3fgy; Mon, 27 Jul 2020 15:34:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 68D632018E; Mon, 27 Jul 2020 15:34:08 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RFY8To018931; Mon, 27 Jul 2020 15:34:08 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RFY88O018929; Mon, 27 Jul 2020 15:34:08 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007271534.06RFY88O018929@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Mon, 27 Jul 2020 15:34:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363612 - stable/12/sys/netinet X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/netinet X-SVN-Commit-Revision: 363612 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 15:34:08 -0000 Author: markj Date: Mon Jul 27 15:34:07 2020 New Revision: 363612 URL: https://svnweb.freebsd.org/changeset/base/363612 Log: MFC r354018 (by tuexen): Store a handle for the event handler. Modified: stable/12/sys/netinet/sctp_pcb.h stable/12/sys/netinet/sctp_usrreq.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/netinet/sctp_pcb.h ============================================================================== --- stable/12/sys/netinet/sctp_pcb.h Mon Jul 27 15:25:04 2020 (r363611) +++ stable/12/sys/netinet/sctp_pcb.h Mon Jul 27 15:34:07 2020 (r363612) @@ -259,6 +259,7 @@ struct sctp_base_info { int packet_log_end; uint8_t packet_log_buffer[SCTP_PACKET_LOG_SIZE]; #endif + eventhandler_tag eh_tag; }; /*- Modified: stable/12/sys/netinet/sctp_usrreq.c ============================================================================== --- stable/12/sys/netinet/sctp_usrreq.c Mon Jul 27 15:25:04 2020 (r363611) +++ stable/12/sys/netinet/sctp_usrreq.c Mon Jul 27 15:34:07 2020 (r363612) @@ -90,8 +90,8 @@ sctp_init(void) SCTP_BASE_VAR(packet_log_end) = 0; memset(&SCTP_BASE_VAR(packet_log_buffer), 0, SCTP_PACKET_LOG_SIZE); #endif - EVENTHANDLER_REGISTER(rt_addrmsg, sctp_addr_change_event_handler, - NULL, EVENTHANDLER_PRI_FIRST); + SCTP_BASE_VAR(eh_tag) = EVENTHANDLER_REGISTER(rt_addrmsg, + sctp_addr_change_event_handler, NULL, EVENTHANDLER_PRI_FIRST); } #ifdef VIMAGE From owner-svn-src-stable@freebsd.org Mon Jul 27 23:18:15 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6FDF9371FC5; Mon, 27 Jul 2020 23:18:15 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFwhl2RMBz4TBk; Mon, 27 Jul 2020 23:18:15 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3394A25933; Mon, 27 Jul 2020 23:18:15 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RNIF3Q005207; Mon, 27 Jul 2020 23:18:15 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RNIFjV005206; Mon, 27 Jul 2020 23:18:15 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007272318.06RNIFjV005206@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Mon, 27 Jul 2020 23:18:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363625 - stable/12/usr.sbin/mountd X-SVN-Group: stable-12 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/12/usr.sbin/mountd X-SVN-Commit-Revision: 363625 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 23:18:15 -0000 Author: brooks Date: Mon Jul 27 23:18:14 2020 New Revision: 363625 URL: https://svnweb.freebsd.org/changeset/base/363625 Log: MFC r363439: Correct a type-mismatch between xdr_long and the variable "bad". Way back in r28911 (August 1997, CVS rev 1.22) we imported a NetBSD information leak fix via OpenBSD. Unfortunatly we failed to track the followup commit that fixed the type of the error code. Apply the change from int to long now. Reviewed by: emaste Reported by: CHERI Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25779 Modified: stable/12/usr.sbin/mountd/mountd.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/mountd/mountd.c ============================================================================== --- stable/12/usr.sbin/mountd/mountd.c Mon Jul 27 21:19:41 2020 (r363624) +++ stable/12/usr.sbin/mountd/mountd.c Mon Jul 27 23:18:14 2020 (r363625) @@ -1087,7 +1087,8 @@ mntsrv(struct svc_req *rqstp, SVCXPRT *transp) struct sockaddr *saddr; u_short sport; char rpcpath[MNTPATHLEN + 1], dirpath[MAXPATHLEN]; - int bad = 0, defset, hostset; + int defset, hostset; + long bad = 0; sigset_t sighup_mask; int numsecflavors, *secflavorsp; From owner-svn-src-stable@freebsd.org Mon Jul 27 23:19:47 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 11213372519; Mon, 27 Jul 2020 23:19:47 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BFwkV6DMdz4TYm; Mon, 27 Jul 2020 23:19:46 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B940D25759; Mon, 27 Jul 2020 23:19:46 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06RNJkOh005325; Mon, 27 Jul 2020 23:19:46 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06RNJkk4005324; Mon, 27 Jul 2020 23:19:46 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007272319.06RNJkk4005324@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Mon, 27 Jul 2020 23:19:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363626 - stable/11/usr.sbin/mountd X-SVN-Group: stable-11 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/11/usr.sbin/mountd X-SVN-Commit-Revision: 363626 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jul 2020 23:19:47 -0000 Author: brooks Date: Mon Jul 27 23:19:46 2020 New Revision: 363626 URL: https://svnweb.freebsd.org/changeset/base/363626 Log: MFC r363439: Correct a type-mismatch between xdr_long and the variable "bad". Way back in r28911 (August 1997, CVS rev 1.22) we imported a NetBSD information leak fix via OpenBSD. Unfortunatly we failed to track the followup commit that fixed the type of the error code. Apply the change from int to long now. Reviewed by: emaste Reported by: CHERI Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25779 Modified: stable/11/usr.sbin/mountd/mountd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/mountd/mountd.c ============================================================================== --- stable/11/usr.sbin/mountd/mountd.c Mon Jul 27 23:18:14 2020 (r363625) +++ stable/11/usr.sbin/mountd/mountd.c Mon Jul 27 23:19:46 2020 (r363626) @@ -1085,7 +1085,8 @@ mntsrv(struct svc_req *rqstp, SVCXPRT *transp) struct sockaddr *saddr; u_short sport; char rpcpath[MNTPATHLEN + 1], dirpath[MAXPATHLEN]; - int bad = 0, defset, hostset; + int defset, hostset; + long bad = 0; sigset_t sighup_mask; int numsecflavors, *secflavorsp; From owner-svn-src-stable@freebsd.org Tue Jul 28 02:53:46 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4F60D37911A; Tue, 28 Jul 2020 02:53:46 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BG1TQ1V6Nz3Sfn; Tue, 28 Jul 2020 02:53:46 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 169CB27DFE; Tue, 28 Jul 2020 02:53:46 +0000 (UTC) (envelope-from freqlabs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06S2rjtF040047; Tue, 28 Jul 2020 02:53:45 GMT (envelope-from freqlabs@FreeBSD.org) Received: (from freqlabs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06S2rjrq040043; Tue, 28 Jul 2020 02:53:45 GMT (envelope-from freqlabs@FreeBSD.org) Message-Id: <202007280253.06S2rjrq040043@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: freqlabs set sender to freqlabs@FreeBSD.org using -f From: Ryan Moeller Date: Tue, 28 Jul 2020 02:53:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363629 - in stable/12/sys: dev/coretemp dev/hwpmc x86/include X-SVN-Group: stable-12 X-SVN-Commit-Author: freqlabs X-SVN-Commit-Paths: in stable/12/sys: dev/coretemp dev/hwpmc x86/include X-SVN-Commit-Revision: 363629 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 02:53:46 -0000 Author: freqlabs Date: Tue Jul 28 02:53:44 2020 New Revision: 363629 URL: https://svnweb.freebsd.org/changeset/base/363629 Log: MFC r363206: hwpmc: Always set pmc_cpuid to something pmc_cpuid was uninitialized for most AMD processor families. We can still populate this string for unimplemented families. Also added a CPUID_TO_STEPPING macro and converted existing code to use it. Reviewed by: mav Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D25673 Modified: stable/12/sys/dev/coretemp/coretemp.c stable/12/sys/dev/hwpmc/hwpmc_amd.c stable/12/sys/dev/hwpmc/hwpmc_intel.c stable/12/sys/x86/include/specialreg.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/coretemp/coretemp.c ============================================================================== --- stable/12/sys/dev/coretemp/coretemp.c Tue Jul 28 01:05:40 2020 (r363628) +++ stable/12/sys/dev/coretemp/coretemp.c Tue Jul 28 02:53:44 2020 (r363629) @@ -165,7 +165,7 @@ coretemp_attach(device_t dev) sc->sc_dev = dev; pdev = device_get_parent(dev); cpu_model = CPUID_TO_MODEL(cpu_id); - cpu_stepping = cpu_id & CPUID_STEPPING; + cpu_stepping = CPUID_TO_STEPPING(cpu_id); /* * Some CPUs, namely the PIII, don't have thermal sensors, but Modified: stable/12/sys/dev/hwpmc/hwpmc_amd.c ============================================================================== --- stable/12/sys/dev/hwpmc/hwpmc_amd.c Tue Jul 28 01:05:40 2020 (r363628) +++ stable/12/sys/dev/hwpmc/hwpmc_amd.c Tue Jul 28 02:53:44 2020 (r363629) @@ -1073,7 +1073,7 @@ pmc_amd_initialize(void) enum pmc_cputype cputype; struct pmc_mdep *pmc_mdep; enum pmc_class class; - int model, stepping; + int family, model, stepping; char *name; /* @@ -1085,14 +1085,16 @@ pmc_amd_initialize(void) */ name = NULL; - model = ((cpu_id & 0xF0000) >> 12) | ((cpu_id & 0xF0) >> 4); - stepping = cpu_id & 0xF; - if (CPUID_TO_FAMILY(cpu_id) == 0x17) - snprintf(pmc_cpuid, sizeof(pmc_cpuid), "AuthenticAMD-%d-%02X-%X", - CPUID_TO_FAMILY(cpu_id), model, stepping); - if (CPUID_TO_FAMILY(cpu_id) == 0x18) + family = CPUID_TO_FAMILY(cpu_id); + model = CPUID_TO_MODEL(cpu_id); + stepping = CPUID_TO_STEPPING(cpu_id); + + if (family == 0x18) snprintf(pmc_cpuid, sizeof(pmc_cpuid), "HygonGenuine-%d-%02X-%X", - CPUID_TO_FAMILY(cpu_id), model, stepping); + family, model, stepping); + else + snprintf(pmc_cpuid, sizeof(pmc_cpuid), "AuthenticAMD-%d-%02X-%X", + family, model, stepping); switch (cpu_id & 0xF00) { #if defined(__i386__) Modified: stable/12/sys/dev/hwpmc/hwpmc_intel.c ============================================================================== --- stable/12/sys/dev/hwpmc/hwpmc_intel.c Tue Jul 28 01:05:40 2020 (r363628) +++ stable/12/sys/dev/hwpmc/hwpmc_intel.c Tue Jul 28 02:53:44 2020 (r363629) @@ -80,7 +80,7 @@ pmc_intel_initialize(void) { struct pmc_mdep *pmc_mdep; enum pmc_cputype cputype; - int error, model, nclasses, ncpus, stepping, verov; + int error, family, model, nclasses, ncpus, stepping, verov; KASSERT(cpu_vendor_id == CPU_VENDOR_INTEL, ("[intel,%d] Initializing non-intel processor", __LINE__)); @@ -91,11 +91,13 @@ pmc_intel_initialize(void) nclasses = 2; error = 0; verov = 0; - model = ((cpu_id & 0xF0000) >> 12) | ((cpu_id & 0xF0) >> 4); - stepping = cpu_id & 0xF; + family = CPUID_TO_FAMILY(cpu_id); + model = CPUID_TO_MODEL(cpu_id); + stepping = CPUID_TO_STEPPING(cpu_id); snprintf(pmc_cpuid, sizeof(pmc_cpuid), "GenuineIntel-%d-%02X-%X", - (cpu_id & 0xF00) >> 8, model, stepping); + family, model, stepping); + switch (cpu_id & 0xF00) { case 0x600: /* Pentium Pro, Celeron, Pentium II & III */ switch (model) { Modified: stable/12/sys/x86/include/specialreg.h ============================================================================== --- stable/12/sys/x86/include/specialreg.h Tue Jul 28 01:05:40 2020 (r363628) +++ stable/12/sys/x86/include/specialreg.h Tue Jul 28 02:53:44 2020 (r363629) @@ -293,6 +293,7 @@ ((((id) & CPUID_FAMILY) >> 8) + \ (((id) & CPUID_EXT_FAMILY) >> 20)) #endif +#define CPUID_TO_STEPPING(id) ((id) & CPUID_STEPPING) /* * CPUID instruction 1 ebx info From owner-svn-src-stable@freebsd.org Tue Jul 28 04:58:02 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 728AF37CF36; Tue, 28 Jul 2020 04:58:02 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BG4Dp2NLDz3bQ8; Tue, 28 Jul 2020 04:58:02 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 34F2F9772; Tue, 28 Jul 2020 04:58:02 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06S4w2Gl014909; Tue, 28 Jul 2020 04:58:02 GMT (envelope-from kevans@FreeBSD.org) Received: (from kevans@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06S4w28H014908; Tue, 28 Jul 2020 04:58:02 GMT (envelope-from kevans@FreeBSD.org) Message-Id: <202007280458.06S4w28H014908@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kevans set sender to kevans@FreeBSD.org using -f From: Kyle Evans Date: Tue, 28 Jul 2020 04:58:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363632 - stable/12/stand/efi/loader X-SVN-Group: stable-12 X-SVN-Commit-Author: kevans X-SVN-Commit-Paths: stable/12/stand/efi/loader X-SVN-Commit-Revision: 363632 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 04:58:02 -0000 Author: kevans Date: Tue Jul 28 04:58:01 2020 New Revision: 363632 URL: https://svnweb.freebsd.org/changeset/base/363632 Log: MFC r355132: Support kernels larger than EFI_STAGING_SIZE in loader.efi With a very large kernel or module the staging area may be too small to hold it. When this is the case try to allocate more space before failing in the efi copyin/copyout/readin functions. Modified: stable/12/stand/efi/loader/copy.c Directory Properties: stable/12/ (props changed) Modified: stable/12/stand/efi/loader/copy.c ============================================================================== --- stable/12/stand/efi/loader/copy.c Tue Jul 28 03:25:31 2020 (r363631) +++ stable/12/stand/efi/loader/copy.c Tue Jul 28 04:58:01 2020 (r363632) @@ -185,7 +185,7 @@ out: #endif #endif -EFI_PHYSICAL_ADDRESS staging, staging_end; +EFI_PHYSICAL_ADDRESS staging, staging_end, staging_base; int stage_offset_set = 0; ssize_t stage_offset; @@ -224,6 +224,7 @@ efi_copy_init(void) EFI_ERROR_CODE(status)); return (status); } + staging_base = staging; staging_end = staging + nr_pages * EFI_PAGE_SIZE; #if defined(__aarch64__) || defined(__arm__) @@ -240,6 +241,66 @@ efi_copy_init(void) return (0); } +static bool +efi_check_space(vm_offset_t end) +{ + EFI_PHYSICAL_ADDRESS addr; + EFI_STATUS status; + unsigned long nr_pages; + + /* There is already enough space */ + if (end <= staging_end) + return (true); + + end = roundup2(end, EFI_PAGE_SIZE); + nr_pages = EFI_SIZE_TO_PAGES(end - staging_end); + +#if defined(__i386__) || defined(__amd64__) + /* X86 needs all memory to be allocated under the 1G boundary */ + if (end > 1024*1024*1024) + goto before_staging; +#endif + + /* Try to allocate more space after the previous allocation */ + addr = staging_end; + status = BS->AllocatePages(AllocateAddress, EfiLoaderData, nr_pages, + &addr); + if (!EFI_ERROR(status)) { + staging_end = staging_end + nr_pages * EFI_PAGE_SIZE; + return (true); + } + +before_staging: + /* Try allocating space before the previous allocation */ + if (staging < nr_pages * EFI_PAGE_SIZE) { + printf("Not enough space before allocation\n"); + return (false); + } + addr = staging - nr_pages * EFI_PAGE_SIZE; +#if defined(__aarch64__) || defined(__arm__) + /* See efi_copy_init for why this is needed */ + addr = rounddown2(addr, 2 * 1024 * 1024); +#endif + nr_pages = EFI_SIZE_TO_PAGES(staging_base - addr); + status = BS->AllocatePages(AllocateAddress, EfiLoaderData, nr_pages, + &addr); + if (!EFI_ERROR(status)) { + /* + * Move the old allocation and update the state so + * translation still works. + */ + staging_base = addr; + memmove((void *)staging_base, (void *)staging, + staging_end - staging); + stage_offset -= (staging - staging_base); + staging = staging_base; + return (true); + } + + printf("efi_check_space: Unable to expand staging area\n"); + return (false); +} + void * efi_translate(vm_offset_t ptr) { @@ -257,7 +318,7 @@ efi_copyin(const void *src, vm_offset_t dest, const si } /* XXX: Callers do not check for failure. */ - if (dest + stage_offset + len > staging_end) { + if (!efi_check_space(dest + stage_offset + len)) { errno = ENOMEM; return (-1); } @@ -283,7 +344,7 @@ ssize_t efi_readin(readin_handle_t fd, vm_offset_t dest, const size_t len) { - if (dest + stage_offset + len > staging_end) { + if (!efi_check_space(dest + stage_offset + len)) { errno = ENOMEM; return (-1); } From owner-svn-src-stable@freebsd.org Tue Jul 28 07:04:46 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E9BED37E76D; Tue, 28 Jul 2020 07:04:46 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BG7325tKmz3yRR; Tue, 28 Jul 2020 07:04:46 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id ACFBAB323; Tue, 28 Jul 2020 07:04:46 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06S74kNj094260; Tue, 28 Jul 2020 07:04:46 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06S74kDK094259; Tue, 28 Jul 2020 07:04:46 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <202007280704.06S74kDK094259@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 28 Jul 2020 07:04:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363633 - stable/12/sys/amd64/include X-SVN-Group: stable-12 X-SVN-Commit-Author: mjg X-SVN-Commit-Paths: stable/12/sys/amd64/include X-SVN-Commit-Revision: 363633 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 07:04:47 -0000 Author: mjg Date: Tue Jul 28 07:04:46 2020 New Revision: 363633 URL: https://svnweb.freebsd.org/changeset/base/363633 Log: MFC r363242: amd64: patch ffsl to use the compiler builtin Modified: stable/12/sys/amd64/include/cpufunc.h Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/amd64/include/cpufunc.h ============================================================================== --- stable/12/sys/amd64/include/cpufunc.h Tue Jul 28 04:58:01 2020 (r363632) +++ stable/12/sys/amd64/include/cpufunc.h Tue Jul 28 07:04:46 2020 (r363633) @@ -167,7 +167,8 @@ enable_intr(void) static __inline __pure2 int ffsl(long mask) { - return (mask == 0 ? mask : (int)bsfq((u_long)mask) + 1); + + return (__builtin_ffsl(mask)); } #define HAVE_INLINE_FFSLL From owner-svn-src-stable@freebsd.org Tue Jul 28 07:05:50 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 34F0737ED31; Tue, 28 Jul 2020 07:05:50 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BG74G0dxFz3yST; Tue, 28 Jul 2020 07:05:50 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id EE187B270; Tue, 28 Jul 2020 07:05:49 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06S75nSA094371; Tue, 28 Jul 2020 07:05:49 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06S75nUG094370; Tue, 28 Jul 2020 07:05:49 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <202007280705.06S75nUG094370@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 28 Jul 2020 07:05:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363634 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: mjg X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 363634 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 07:05:50 -0000 Author: mjg Date: Tue Jul 28 07:05:49 2020 New Revision: 363634 URL: https://svnweb.freebsd.org/changeset/base/363634 Log: MFC r363511: Do a lockless check in kthread_suspend_check Modified: stable/12/sys/kern/kern_kthread.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/kern_kthread.c ============================================================================== --- stable/12/sys/kern/kern_kthread.c Tue Jul 28 07:04:46 2020 (r363633) +++ stable/12/sys/kern/kern_kthread.c Tue Jul 28 07:05:49 2020 (r363634) @@ -444,12 +444,15 @@ kthread_suspend_check(void) panic("%s: curthread is not a valid kthread", __func__); /* - * As long as the double-lock protection is used when accessing the - * TDF_KTH_SUSP flag, synchronizing the read operation via proc mutex - * is fine. + * Setting the TDF_KTH_SUSP flag is protected by process lock. + * + * Do an unlocked read first to avoid serializing with all other threads + * in the common case of not suspending. */ + if ((td->td_flags & TDF_KTH_SUSP) == 0) + return; PROC_LOCK(p); - while (td->td_flags & TDF_KTH_SUSP) { + while ((td->td_flags & TDF_KTH_SUSP) != 0) { wakeup(&td->td_flags); msleep(&td->td_flags, &p->p_mtx, PPAUSE, "ktsusp", 0); } From owner-svn-src-stable@freebsd.org Tue Jul 28 07:07:39 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4443A37EF2B; Tue, 28 Jul 2020 07:07:39 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BG76M13vBz3ysP; Tue, 28 Jul 2020 07:07:39 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 06F66B144; Tue, 28 Jul 2020 07:07:39 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06S77crn094520; Tue, 28 Jul 2020 07:07:38 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06S77cvt094518; Tue, 28 Jul 2020 07:07:38 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <202007280707.06S77cvt094518@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 28 Jul 2020 07:07:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363635 - in stable/12/sys: sys vm X-SVN-Group: stable-12 X-SVN-Commit-Author: mjg X-SVN-Commit-Paths: in stable/12/sys: sys vm X-SVN-Commit-Revision: 363635 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 07:07:39 -0000 Author: mjg Date: Tue Jul 28 07:07:38 2020 New Revision: 363635 URL: https://svnweb.freebsd.org/changeset/base/363635 Log: MFC r363444,r363513: vm: annotate swap_reserved with __exclusive_cache_line Remove leftover macros for long gone vmsize mtx Modified: stable/12/sys/sys/resourcevar.h stable/12/sys/vm/swap_pager.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/sys/resourcevar.h ============================================================================== --- stable/12/sys/sys/resourcevar.h Tue Jul 28 07:05:49 2020 (r363634) +++ stable/12/sys/sys/resourcevar.h Tue Jul 28 07:07:38 2020 (r363635) @@ -109,9 +109,6 @@ struct uidinfo { #endif }; -#define UIDINFO_VMSIZE_LOCK(ui) mtx_lock(&((ui)->ui_vmsize_mtx)) -#define UIDINFO_VMSIZE_UNLOCK(ui) mtx_unlock(&((ui)->ui_vmsize_mtx)) - struct proc; struct rusage_ext; struct thread; Modified: stable/12/sys/vm/swap_pager.c ============================================================================== --- stable/12/sys/vm/swap_pager.c Tue Jul 28 07:05:49 2020 (r363634) +++ stable/12/sys/vm/swap_pager.c Tue Jul 28 07:07:38 2020 (r363635) @@ -152,7 +152,7 @@ static int nswapdev; /* Number of swap devices */ int swap_pager_avail; static struct sx swdev_syscall_lock; /* serialize swap(on|off) */ -static u_long swap_reserved; +static __exclusive_cache_line u_long swap_reserved; static u_long swap_total; static int sysctl_page_shift(SYSCTL_HANDLER_ARGS); SYSCTL_PROC(_vm, OID_AUTO, swap_reserved, CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_MPSAFE, From owner-svn-src-stable@freebsd.org Tue Jul 28 15:16:30 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C939636CBC0; Tue, 28 Jul 2020 15:16:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGKyQ504Qz4WmQ; Tue, 28 Jul 2020 15:16:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8E58011300; Tue, 28 Jul 2020 15:16:30 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06SFGUW7096376; Tue, 28 Jul 2020 15:16:30 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06SFGUoN096372; Tue, 28 Jul 2020 15:16:30 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007281516.06SFGUoN096372@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Tue, 28 Jul 2020 15:16:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363648 - stable/12/usr.sbin/traceroute6 X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/usr.sbin/traceroute6 X-SVN-Commit-Revision: 363648 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 15:16:30 -0000 Author: markj Date: Tue Jul 28 15:16:29 2020 New Revision: 363648 URL: https://svnweb.freebsd.org/changeset/base/363648 Log: MFC r363395: traceroute6: Fix most warnings at the default WARNS level. Modified: stable/12/usr.sbin/traceroute6/Makefile stable/12/usr.sbin/traceroute6/traceroute6.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/traceroute6/Makefile ============================================================================== --- stable/12/usr.sbin/traceroute6/Makefile Tue Jul 28 11:32:45 2020 (r363647) +++ stable/12/usr.sbin/traceroute6/Makefile Tue Jul 28 15:16:29 2020 (r363648) @@ -25,8 +25,8 @@ BINMODE= 4555 CFLAGS+= -DIPSEC -DHAVE_POLL CFLAGS+= -I${.CURDIR} -I${TRACEROUTE_DISTDIR} -I. -WARNS?= 3 - LIBADD= ipsec .include + +CWARNFLAGS+= -Wno-cast-align Modified: stable/12/usr.sbin/traceroute6/traceroute6.c ============================================================================== --- stable/12/usr.sbin/traceroute6/traceroute6.c Tue Jul 28 11:32:45 2020 (r363647) +++ stable/12/usr.sbin/traceroute6/traceroute6.c Tue Jul 28 15:16:29 2020 (r363648) @@ -294,16 +294,14 @@ static const char rcsid[] = #define freehostent(x) #endif -u_char packet[512]; /* last inbound (icmp) packet */ -char *outpacket; /* last output packet */ +static u_char packet[512]; /* last inbound (icmp) packet */ +static char *outpacket; /* last output packet */ int main(int, char *[]); int wait_for_reply(int, struct msghdr *); -#ifdef IPSEC -#ifdef IPSEC_POLICY_IPSEC +#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) int setpolicy(int so, char *policy); #endif -#endif void send_probe(int, u_long); void *get_uphdr(struct ip6_hdr *, u_char *); int get_hoplim(struct msghdr *); @@ -318,40 +316,40 @@ u_int16_t tcp_chksum(struct sockaddr_in6 *, struct soc void *, u_int32_t); void usage(void); -int rcvsock; /* receive (icmp) socket file descriptor */ -int sndsock; /* send (raw/udp) socket file descriptor */ +static int rcvsock; /* receive (icmp) socket file descriptor */ +static int sndsock; /* send (raw/udp) socket file descriptor */ -struct msghdr rcvmhdr; -struct iovec rcviov[2]; -int rcvhlim; -struct in6_pktinfo *rcvpktinfo; +static struct msghdr rcvmhdr; +static struct iovec rcviov[2]; +static int rcvhlim; +static struct in6_pktinfo *rcvpktinfo; -struct sockaddr_in6 Src, Dst, Rcv; -u_long datalen = 20; /* How much data */ +static struct sockaddr_in6 Src, Dst, Rcv; +static u_long datalen = 20; /* How much data */ #define ICMP6ECHOLEN 8 /* XXX: 2064 = 127(max hops in type 0 rthdr) * sizeof(ip6_hdr) + 16(margin) */ -char rtbuf[2064]; -struct ip6_rthdr *rth; -struct cmsghdr *cmsg; +static char rtbuf[2064]; +static struct ip6_rthdr *rth; +static struct cmsghdr *cmsg; -char *source = NULL; -char *hostname; +static char *source = NULL; +static char *hostname; -u_long nprobes = 3; -u_long first_hop = 1; -u_long max_hops = 30; -u_int16_t srcport; -u_int16_t port = 32768+666; /* start udp dest port # for probe packets */ -u_int16_t ident; -int options; /* socket options */ -int verbose; -int waittime = 5; /* time to wait for response (in seconds) */ -int nflag; /* print addresses numerically */ -int useproto = IPPROTO_UDP; /* protocol to use to send packet */ -int lflag; /* print both numerical address & hostname */ -int as_path; /* print as numbers for each hop */ -char *as_server = NULL; -void *asn; +static u_long nprobes = 3; +static u_long first_hop = 1; +static u_long max_hops = 30; +static u_int16_t srcport; +static u_int16_t port = 32768+666; /* start udp dest port # for probe packets */ +static u_int16_t ident; +static int options; /* socket options */ +static int verbose; +static int waittime = 5; /* time to wait for response (in seconds) */ +static int nflag; /* print addresses numerically */ +static int useproto = IPPROTO_UDP; /* protocol to use to send packet */ +static int lflag; /* print both numerical address & hostname */ +static int as_path; /* print as numbers for each hop */ +static char *as_server = NULL; +static void *asn; int main(int argc, char *argv[]) @@ -366,6 +364,10 @@ main(int argc, char *argv[]) size_t size, minlen; uid_t uid; u_char type, code; +#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) + char ipsec_inpolicy[] = "in bypass"; + char ipsec_outpolicy[] = "out bypass"; +#endif /* * Receive ICMP @@ -628,7 +630,7 @@ main(int argc, char *argv[]) fprintf(stderr, "traceroute6: Warning: %s has multiple " "addresses; using %s\n", hostname, hbuf); } - + freeaddrinfo(res); if (*++argv) { ep = NULL; errno = 0; @@ -705,15 +707,14 @@ main(int argc, char *argv[]) if (options & SO_DONTROUTE) (void) setsockopt(rcvsock, SOL_SOCKET, SO_DONTROUTE, (char *)&on, sizeof(on)); -#ifdef IPSEC -#ifdef IPSEC_POLICY_IPSEC +#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) /* * do not raise error even if setsockopt fails, kernel may have ipsec * turned off. */ - if (setpolicy(rcvsock, "in bypass") < 0) + if (setpolicy(rcvsock, ipsec_inpolicy) < 0) errx(1, "%s", ipsec_strerror()); - if (setpolicy(rcvsock, "out bypass") < 0) + if (setpolicy(rcvsock, ipsec_outpolicy) < 0) errx(1, "%s", ipsec_strerror()); #else { @@ -735,8 +736,7 @@ main(int argc, char *argv[]) sizeof(level)); #endif } -#endif /*IPSEC_POLICY_IPSEC*/ -#endif /*IPSEC*/ +#endif /* !(IPSEC && IPSEC_POLICY_IPSEC) */ #ifdef SO_SNDBUF i = datalen; @@ -763,15 +763,14 @@ main(int argc, char *argv[]) exit(1); } } -#ifdef IPSEC -#ifdef IPSEC_POLICY_IPSEC +#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) /* * do not raise error even if setsockopt fails, kernel may have ipsec * turned off. */ - if (setpolicy(sndsock, "in bypass") < 0) + if (setpolicy(sndsock, ipsec_inpolicy) < 0) errx(1, "%s", ipsec_strerror()); - if (setpolicy(sndsock, "out bypass") < 0) + if (setpolicy(sndsock, ipsec_outpolicy) < 0) errx(1, "%s", ipsec_strerror()); #else { @@ -793,17 +792,13 @@ main(int argc, char *argv[]) sizeof(level)); #endif } -#endif /*IPSEC_POLICY_IPSEC*/ -#endif /*IPSEC*/ +#endif /* !(IPSEC && IPSEC_POLICY_IPSEC) */ /* * Source selection */ bzero(&Src, sizeof(Src)); if (source) { - struct addrinfo hints, *res; - int error; - memset(&hints, 0, sizeof(hints)); hints.ai_family = AF_INET6; hints.ai_socktype = SOCK_DGRAM; /*dummy*/ @@ -1018,12 +1013,9 @@ wait_for_reply(int sock, struct msghdr *mhdr) #endif } -#ifdef IPSEC -#ifdef IPSEC_POLICY_IPSEC +#if defined(IPSEC) && defined(IPSEC_POLICY_IPSEC) int -setpolicy(so, policy) - int so; - char *policy; +setpolicy(int so, char *policy) { char *buf; @@ -1040,7 +1032,6 @@ setpolicy(so, policy) return 0; } #endif -#endif void send_probe(int seq, u_long hops) @@ -1627,11 +1618,11 @@ static u_int32_t crc_c[256] = { }; u_int32_t -sctp_crc32c(void *packet, u_int32_t len) +sctp_crc32c(void *pack, u_int32_t len) { u_int32_t i, crc32c; u_int8_t byte0, byte1, byte2, byte3; - u_int8_t *buf = (u_int8_t *)packet; + u_int8_t *buf = (u_int8_t *)pack; crc32c = ~0; for (i = 0; i < len; i++) From owner-svn-src-stable@freebsd.org Tue Jul 28 16:10:53 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 217A336E1D3; Tue, 28 Jul 2020 16:10:53 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGM9859R2z4ZjP; Tue, 28 Jul 2020 16:10:52 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 136D611A35; Tue, 28 Jul 2020 16:10:52 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06SGApWw027761; Tue, 28 Jul 2020 16:10:51 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06SGApIP027760; Tue, 28 Jul 2020 16:10:51 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202007281610.06SGApIP027760@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Tue, 28 Jul 2020 16:10:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363651 - stable/12/lib/geom/eli X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/lib/geom/eli X-SVN-Commit-Revision: 363651 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 16:10:53 -0000 Author: gbe (doc committer) Date: Tue Jul 28 16:10:51 2020 New Revision: 363651 URL: https://svnweb.freebsd.org/changeset/base/363651 Log: MFC r363363, r363416: geli(8): new example with file based storage r363363: geli(8): Add an example on how to use geli(8) with a file as encrypted storage Reviewed by: bcr (mentor) Approved by: bcr (mentor) Differential Revision: https://reviews.freebsd.org/D25741 r363416: geli(8): Add missing commands in the EXAMPLES section Reported by: Fabian Keil Reviewed by: bcr (mentor) Approved by: bcr (mentor) Differential Revision: https://reviews.freebsd.org/D25761 Modified: stable/12/lib/geom/eli/geli.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/geom/eli/geli.8 ============================================================================== --- stable/12/lib/geom/eli/geli.8 Tue Jul 28 16:08:14 2020 (r363650) +++ stable/12/lib/geom/eli/geli.8 Tue Jul 28 16:10:51 2020 (r363651) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 19, 2020 +.Dd July 22, 2020 .Dt GELI 8 .Os .Sh NAME @@ -1094,6 +1094,66 @@ resuming the laptop: # geli resume gpt/private Enter passphrase: .Ed +.Pp +To create a +.Nm +encrypted filesystem with a file as storage device follow this example. +First a file named private0 is created in +.Pa /usr +and attached as a memory disk like +.Pa /dev/md0 +for example. +.Bd -literal -offset indent +# dd if=/dev/zero of=/usr/private0 bs=1m count=256 +# chmod 0600 /usr/private0 +# mdconfig -t vnode -f /usr/private0 +.Ed +.Pp +It is recommended to place the following line in +.Xr rc.conf 5 +to have the memory disk automatically created during boot. +.Bd -literal -offset indent +mdconfig_md0="-t vnode -f /usr/private0" +.Ed +.Pp +After +.Pa /dev/md0 +is created a random key has to be generated and stored in a secure location, +like +.Pa /root +for example. +This key should be protected by a passphrase, which +is requested when geli init is called. +.Bd -literal -offset indent +# dd if=/dev/random of=/root/private0.key bs=64 count=1 +# geli init -K /root/private0.key -s 4096 /dev/md0 +Enter new passphrase: +Reenter new passphrase: +# geli attach -k /root/private0.key /dev/md0 +Enter passphrase: +# dd if=/dev/random of=/dev/md0.eli bs=1m +.Ed +.Pp +Once the initialization of the +.Pa /dev/md0.eli +device is ready create a UFS filesystem and mount it for example in +.Pa /private . +.Bd -literal -offset indent +# newfs /dev/md0.eli +# mount /dev/md0.eli /private +.Ed +.Pp +After a system reboot the +.Nm +device can be mounted again with the following commands. +The call of geli attach will ask for the passphrase. +It is recommended to do this procedure after the boot, because otherwise +the boot process would be waiting for the passphrase input. +.Bd -literal -offset indent +# geli attach -k /root/private0.key /dev/md0 +Enter passphrase: +# mount /dev/md0.eli /private +.Ed .Sh ENCRYPTION MODES .Nm supports two encryption modes: @@ -1156,7 +1216,9 @@ block cipher was implemented by Yoshisato Yanagisawa i .Pp Highest .Nm GELI -metadata version supported by the given FreeBSD version: +metadata version supported by the given +.Fx +version: .Bl -column -offset indent ".Sy FreeBSD" ".Sy version" .It Sy FreeBSD Ta Sy GELI .It Sy version Ta Sy version From owner-svn-src-stable@freebsd.org Tue Jul 28 19:35:25 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 85F3A372363; Tue, 28 Jul 2020 19:35:25 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGRj92yX5z3Xhd; Tue, 28 Jul 2020 19:35:25 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 49D6C13DFC; Tue, 28 Jul 2020 19:35:25 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06SJZPIO060357; Tue, 28 Jul 2020 19:35:25 GMT (envelope-from truckman@FreeBSD.org) Received: (from truckman@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06SJZPbm060356; Tue, 28 Jul 2020 19:35:25 GMT (envelope-from truckman@FreeBSD.org) Message-Id: <202007281935.06SJZPbm060356@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: truckman set sender to truckman@FreeBSD.org using -f From: Don Lewis Date: Tue, 28 Jul 2020 19:35:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363653 - stable/11 X-SVN-Group: stable-11 X-SVN-Commit-Author: truckman X-SVN-Commit-Paths: stable/11 X-SVN-Commit-Revision: 363653 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jul 2020 19:35:25 -0000 Author: truckman Date: Tue Jul 28 19:35:24 2020 New Revision: 363653 URL: https://svnweb.freebsd.org/changeset/base/363653 Log: Make lex a bootstrap tool when cross-building on recent 13-CURRENT. The import of flex 2.6.4 into -CURRENT changed the type of yy_n_chars in the lex skeleton from yy_size_t to int, which breaks the build of binutils/ld when using the host copy of lex. ldlex.c:3216:3: error: incompatible pointer types passing 'int *' to parameter of type 'yy_size_t *' (aka 'unsigned long *') [-Werror,-Wincompatible-pointer-types] ...YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This is a direct commit to stable/11 since binutils/ld has been removed from -CURRENT, and it would require a different fix there since the bootstrap tool version of lex would also cause breakage. Modified: stable/11/Makefile.inc1 Modified: stable/11/Makefile.inc1 ============================================================================== --- stable/11/Makefile.inc1 Tue Jul 28 17:09:15 2020 (r363652) +++ stable/11/Makefile.inc1 Tue Jul 28 19:35:24 2020 (r363653) @@ -1724,10 +1724,14 @@ _vtfontcvt= usr.bin/vtfontcvt .if ${BOOTSTRAPPING} < 1000033 _libopenbsd= lib/libopenbsd _m4= usr.bin/m4 -_lex= usr.bin/lex ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 +.endif + +# flex 2.6.4 introduced in 13-CURRRENT r362333 breaks binutils/ld build +.if ${BOOTSTRAPPING} < 1000033 || ${BOOTSTRAPPING} > 1300098 +_lex= usr.bin/lex .endif # r245440 mtree -N support added From owner-svn-src-stable@freebsd.org Wed Jul 29 04:36:46 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6282337DCAC; Wed, 29 Jul 2020 04:36:46 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGgjp2328z4Hpx; Wed, 29 Jul 2020 04:36:46 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 293721A3C2; Wed, 29 Jul 2020 04:36:46 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06T4akP8093973; Wed, 29 Jul 2020 04:36:46 GMT (envelope-from truckman@FreeBSD.org) Received: (from truckman@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06T4akES093972; Wed, 29 Jul 2020 04:36:46 GMT (envelope-from truckman@FreeBSD.org) Message-Id: <202007290436.06T4akES093972@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: truckman set sender to truckman@FreeBSD.org using -f From: Don Lewis Date: Wed, 29 Jul 2020 04:36:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363658 - stable/12 X-SVN-Group: stable-12 X-SVN-Commit-Author: truckman X-SVN-Commit-Paths: stable/12 X-SVN-Commit-Revision: 363658 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 04:36:46 -0000 Author: truckman Date: Wed Jul 29 04:36:45 2020 New Revision: 363658 URL: https://svnweb.freebsd.org/changeset/base/363658 Log: Make lex a bootstrap tool when cross-building on recent 13-CURRENT if binutils/ld is going to be built. The latter is no longer true by default. The import of flex 2.6.4 into -CURRENT changed the type of yy_n_chars in the lex skeleton from yy_size_t to int, which breaks the build of binutils/ld when using the host copy of lex. ldlex.c:3216:3: error: incompatible pointer types passing 'int *' to parameter of type 'yy_size_t *' (aka 'unsigned long *') [-Werror,-Wincompatible-pointer-types] ...YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This is a direct commit to stable/12 since binutils/ld has been removed from -CURRENT, and it would require a different fix there since the bootstrap tool version of lex would also cause breakage. This is similar to the stable/11 change in r363653, but in stable/12 we only need to build lex as a bootstrap tool if binutils/ld is going to be built. Modified: stable/12/Makefile.inc1 Modified: stable/12/Makefile.inc1 ============================================================================== --- stable/12/Makefile.inc1 Wed Jul 29 00:34:24 2020 (r363657) +++ stable/12/Makefile.inc1 Wed Jul 29 04:36:45 2020 (r363658) @@ -2066,10 +2066,15 @@ _vtfontcvt= usr.bin/vtfontcvt .if ${BOOTSTRAPPING} < 1000033 _m4= usr.bin/m4 -_lex= usr.bin/lex ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 +.endif + +# flex 2.6.4 introduced in 13-CURRRENT r362333 breaks binutils/ld build +.if ${BOOTSTRAPPING} < 1000033 || \ + (${BOOTSTRAPPING} > 1300098 && ${MK_LLD_IS_LD} == "no") +_lex= usr.bin/lex .endif # r245440 mtree -N support added From owner-svn-src-stable@freebsd.org Wed Jul 29 14:30:45 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id C2F5D3AC217; Wed, 29 Jul 2020 14:30:45 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGwv94pHnz3btT; Wed, 29 Jul 2020 14:30:45 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8956820E63; Wed, 29 Jul 2020 14:30:45 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06TEUjVu056881; Wed, 29 Jul 2020 14:30:45 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06TEUhjT056869; Wed, 29 Jul 2020 14:30:43 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007291430.06TEUhjT056869@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Wed, 29 Jul 2020 14:30:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363664 - in stable/12/sys: compat/linuxkpi/common/src dev/sound/usb dev/usb dev/usb/input dev/usb/storage X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in stable/12/sys: compat/linuxkpi/common/src dev/sound/usb dev/usb dev/usb/input dev/usb/storage X-SVN-Commit-Revision: 363664 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 14:30:45 -0000 Author: markj Date: Wed Jul 29 14:30:42 2020 New Revision: 363664 URL: https://svnweb.freebsd.org/changeset/base/363664 Log: MFC r363420: usb(4): Stop checking for failures from malloc(M_WAITOK). Modified: stable/12/sys/compat/linuxkpi/common/src/linux_usb.c stable/12/sys/dev/sound/usb/uaudio.c stable/12/sys/dev/usb/input/uhid.c stable/12/sys/dev/usb/input/uhid_snes.c stable/12/sys/dev/usb/storage/ustorage_fs.c stable/12/sys/dev/usb/usb_dev.c stable/12/sys/dev/usb/usb_device.c stable/12/sys/dev/usb/usb_freebsd.h stable/12/sys/dev/usb/usb_freebsd_loader.h stable/12/sys/dev/usb/usb_generic.c stable/12/sys/dev/usb/usb_mbuf.c stable/12/sys/dev/usb/usb_transfer.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/compat/linuxkpi/common/src/linux_usb.c ============================================================================== --- stable/12/sys/compat/linuxkpi/common/src/linux_usb.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/compat/linuxkpi/common/src/linux_usb.c Wed Jul 29 14:30:42 2020 (r363664) @@ -707,8 +707,6 @@ usb_control_msg(struct usb_device *dev, struct usb_hos * 0xFFFF is a FreeBSD specific magic value. */ urb = usb_alloc_urb(0xFFFF, size); - if (urb == NULL) - return (-ENOMEM); urb->dev = dev; urb->endpoint = uhe; @@ -1008,16 +1006,14 @@ usb_alloc_urb(uint16_t iso_packets, uint16_t mem_flags } urb = malloc(size, M_USBDEV, M_WAITOK | M_ZERO); - if (urb) { - cv_init(&urb->cv_wait, "URBWAIT"); - if (iso_packets == 0xFFFF) { - urb->setup_packet = (void *)(urb + 1); - urb->transfer_buffer = (void *)(urb->setup_packet + - sizeof(struct usb_device_request)); - } else { - urb->number_of_packets = iso_packets; - } + cv_init(&urb->cv_wait, "URBWAIT"); + if (iso_packets == 0xFFFF) { + urb->setup_packet = (void *)(urb + 1); + urb->transfer_buffer = (void *)(urb->setup_packet + + sizeof(struct usb_device_request)); + } else { + urb->number_of_packets = iso_packets; } return (urb); } @@ -1722,8 +1718,6 @@ usb_bulk_msg(struct usb_device *udev, struct usb_host_ return (err); urb = usb_alloc_urb(0, 0); - if (urb == NULL) - return (-ENOMEM); usb_fill_bulk_urb(urb, udev, uhe, data, len, usb_linux_wait_complete, NULL); Modified: stable/12/sys/dev/sound/usb/uaudio.c ============================================================================== --- stable/12/sys/dev/sound/usb/uaudio.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/sound/usb/uaudio.c Wed Jul 29 14:30:42 2020 (r363664) @@ -4964,10 +4964,6 @@ uaudio_mixer_fill_info(struct uaudio_softc *sc, iot = malloc(sizeof(struct uaudio_terminal_node) * 256, M_TEMP, M_WAITOK | M_ZERO); - if (iot == NULL) { - DPRINTF("no memory!\n"); - goto done; - } while ((desc = usb_desc_foreach(cd, desc))) { dp = desc; Modified: stable/12/sys/dev/usb/input/uhid.c ============================================================================== --- stable/12/sys/dev/usb/input/uhid.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/input/uhid.c Wed Jul 29 14:30:42 2020 (r363664) @@ -450,10 +450,6 @@ uhid_get_report(struct uhid_softc *sc, uint8_t type, if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; } err = usbd_req_get_report(sc->sc_udev, NULL, kern_data, @@ -486,10 +482,6 @@ uhid_set_report(struct uhid_softc *sc, uint8_t type, if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; err = copyin(user_data, kern_data, len); if (err) { Modified: stable/12/sys/dev/usb/input/uhid_snes.c ============================================================================== --- stable/12/sys/dev/usb/input/uhid_snes.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/input/uhid_snes.c Wed Jul 29 14:30:42 2020 (r363664) @@ -168,10 +168,6 @@ uhid_get_report(struct uhid_snes_softc *sc, uint8_t ty if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; } err = usbd_req_get_report(sc->sc_udev, NULL, kern_data, @@ -203,10 +199,6 @@ uhid_set_report(struct uhid_snes_softc *sc, uint8_t ty if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; err = copyin(user_data, kern_data, len); if (err) { Modified: stable/12/sys/dev/usb/storage/ustorage_fs.c ============================================================================== --- stable/12/sys/dev/usb/storage/ustorage_fs.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/storage/ustorage_fs.c Wed Jul 29 14:30:42 2020 (r363664) @@ -380,10 +380,6 @@ ustorage_fs_attach(device_t dev) ustorage_fs_ramdisk = malloc(USTORAGE_FS_RAM_SECT << 9, M_USB, M_ZERO | M_WAITOK); - - if (ustorage_fs_ramdisk == NULL) { - return (ENOMEM); - } } sc->sc_lun[0].memory_image = ustorage_fs_ramdisk; sc->sc_lun[0].num_sectors = USTORAGE_FS_RAM_SECT; Modified: stable/12/sys/dev/usb/usb_dev.c ============================================================================== --- stable/12/sys/dev/usb/usb_dev.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_dev.c Wed Jul 29 14:30:42 2020 (r363664) @@ -385,13 +385,11 @@ usb_fifo_alloc(struct mtx *mtx) struct usb_fifo *f; f = malloc(sizeof(*f), M_USBDEV, M_WAITOK | M_ZERO); - if (f != NULL) { - cv_init(&f->cv_io, "FIFO-IO"); - cv_init(&f->cv_drain, "FIFO-DRAIN"); - f->priv_mtx = mtx; - f->refcount = 1; - knlist_init_mtx(&f->selinfo.si_note, mtx); - } + cv_init(&f->cv_io, "FIFO-IO"); + cv_init(&f->cv_drain, "FIFO-DRAIN"); + f->priv_mtx = mtx; + f->refcount = 1; + knlist_init_mtx(&f->selinfo.si_note, mtx); return (f); } @@ -2308,9 +2306,6 @@ usb_alloc_symlink(const char *target) struct usb_symlink *ps; ps = malloc(sizeof(*ps), M_USBDEV, M_WAITOK); - if (ps == NULL) { - return (ps); - } /* XXX no longer needed */ strlcpy(ps->src_path, target, sizeof(ps->src_path)); ps->src_len = strlen(ps->src_path); Modified: stable/12/sys/dev/usb/usb_device.c ============================================================================== --- stable/12/sys/dev/usb/usb_device.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_device.c Wed Jul 29 14:30:42 2020 (r363664) @@ -1785,9 +1785,11 @@ usb_alloc_device(device_t parent_dev, struct usb_bus * return (NULL); } udev = malloc(sizeof(*udev), M_USB, M_WAITOK | M_ZERO); +#if (USB_HAVE_MALLOC_WAITOK == 0) if (udev == NULL) { return (NULL); } +#endif /* initialise our SX-lock */ sx_init_flags(&udev->enum_sx, "USB config SX lock", SX_DUPOK); sx_init_flags(&udev->sr_sx, "USB suspend and resume SX lock", SX_NOWITNESS); Modified: stable/12/sys/dev/usb/usb_freebsd.h ============================================================================== --- stable/12/sys/dev/usb/usb_freebsd.h Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_freebsd.h Wed Jul 29 14:30:42 2020 (r363664) @@ -53,6 +53,7 @@ #define USB_HAVE_FIXED_CONFIG 0 #define USB_HAVE_FIXED_PORT 0 #define USB_HAVE_DISABLE_ENUM 1 +#define USB_HAVE_MALLOC_WAITOK 1 /* define zero ticks callout value */ #define USB_CALLOUT_ZERO_TICKS 1 Modified: stable/12/sys/dev/usb/usb_freebsd_loader.h ============================================================================== --- stable/12/sys/dev/usb/usb_freebsd_loader.h Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_freebsd_loader.h Wed Jul 29 14:30:42 2020 (r363664) @@ -53,6 +53,7 @@ #define USB_HAVE_FIXED_CONFIG 0 #define USB_HAVE_FIXED_PORT 0 #define USB_HAVE_DISABLE_ENUM 0 +#define USB_HAVE_MALLOC_WAITOK 0 #define USB_CALLOUT_ZERO_TICKS 1 Modified: stable/12/sys/dev/usb/usb_generic.c ============================================================================== --- stable/12/sys/dev/usb/usb_generic.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_generic.c Wed Jul 29 14:30:42 2020 (r363664) @@ -2338,11 +2338,6 @@ ugen_ioctl_post(struct usb_fifo *f, u_long cmd, void * } f->fs_xfer = malloc(sizeof(f->fs_xfer[0]) * u.pinit->ep_index_max, M_USB, M_WAITOK | M_ZERO); - if (f->fs_xfer == NULL) { - usb_fifo_free_buffer(f); - error = ENOMEM; - break; - } f->fs_ep_max = u.pinit->ep_index_max; f->fs_ep_ptr = u.pinit->pEndpoints; break; Modified: stable/12/sys/dev/usb/usb_mbuf.c ============================================================================== --- stable/12/sys/dev/usb/usb_mbuf.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_mbuf.c Wed Jul 29 14:30:42 2020 (r363664) @@ -78,15 +78,10 @@ usb_alloc_mbufs(struct malloc_type *type, struct usb_i alloc_size = (block_size + sizeof(struct usb_mbuf)) * nblocks; free_ptr = malloc(alloc_size, type, M_WAITOK | M_ZERO); - - if (free_ptr == NULL) { - goto done; - } m_ptr = free_ptr; data_ptr = (void *)(m_ptr + nblocks); while (nblocks--) { - m_ptr->cur_data_ptr = m_ptr->min_data_ptr = data_ptr; @@ -99,6 +94,5 @@ usb_alloc_mbufs(struct malloc_type *type, struct usb_i data_ptr += block_size; } } -done: return (free_ptr); } Modified: stable/12/sys/dev/usb/usb_transfer.c ============================================================================== --- stable/12/sys/dev/usb/usb_transfer.c Wed Jul 29 13:23:27 2020 (r363663) +++ stable/12/sys/dev/usb/usb_transfer.c Wed Jul 29 14:30:42 2020 (r363664) @@ -1342,14 +1342,15 @@ usbd_transfer_setup(struct usb_device *udev, /* allocate zeroed memory */ buf = malloc(parm->size[0], M_USB, M_WAITOK | M_ZERO); - +#if (USB_HAVE_MALLOC_WAITOK == 0) if (buf == NULL) { parm->err = USB_ERR_NOMEM; DPRINTFN(0, "cannot allocate memory block for " "configuration (%d bytes)\n", parm->size[0]); goto done; - } + } +#endif parm->dma_tag_p = USB_ADD_BYTES(buf, parm->size[1]); parm->dma_page_ptr = USB_ADD_BYTES(buf, parm->size[3]); parm->dma_page_cache_ptr = USB_ADD_BYTES(buf, parm->size[4]); From owner-svn-src-stable@freebsd.org Wed Jul 29 14:33:34 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6F8DB3AC454; Wed, 29 Jul 2020 14:33:34 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BGwyQ2NMrz3cLS; Wed, 29 Jul 2020 14:33:34 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 34B52213F5; Wed, 29 Jul 2020 14:33:34 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06TEXXGc062655; Wed, 29 Jul 2020 14:33:33 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06TEXVah062644; Wed, 29 Jul 2020 14:33:31 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007291433.06TEXVah062644@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Wed, 29 Jul 2020 14:33:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363665 - in stable/11/sys: compat/linuxkpi/common/src dev/sound/usb dev/usb dev/usb/input dev/usb/storage X-SVN-Group: stable-11 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: in stable/11/sys: compat/linuxkpi/common/src dev/sound/usb dev/usb dev/usb/input dev/usb/storage X-SVN-Commit-Revision: 363665 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 14:33:34 -0000 Author: markj Date: Wed Jul 29 14:33:31 2020 New Revision: 363665 URL: https://svnweb.freebsd.org/changeset/base/363665 Log: MFC r363420: usb(4): Stop checking for failures from malloc(M_WAITOK). Modified: stable/11/sys/compat/linuxkpi/common/src/linux_usb.c stable/11/sys/dev/sound/usb/uaudio.c stable/11/sys/dev/usb/input/uhid.c stable/11/sys/dev/usb/storage/ustorage_fs.c stable/11/sys/dev/usb/usb_dev.c stable/11/sys/dev/usb/usb_device.c stable/11/sys/dev/usb/usb_freebsd.h stable/11/sys/dev/usb/usb_freebsd_loader.h stable/11/sys/dev/usb/usb_generic.c stable/11/sys/dev/usb/usb_mbuf.c stable/11/sys/dev/usb/usb_transfer.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/compat/linuxkpi/common/src/linux_usb.c ============================================================================== --- stable/11/sys/compat/linuxkpi/common/src/linux_usb.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/compat/linuxkpi/common/src/linux_usb.c Wed Jul 29 14:33:31 2020 (r363665) @@ -707,8 +707,6 @@ usb_control_msg(struct usb_device *dev, struct usb_hos * 0xFFFF is a FreeBSD specific magic value. */ urb = usb_alloc_urb(0xFFFF, size); - if (urb == NULL) - return (-ENOMEM); urb->dev = dev; urb->endpoint = uhe; @@ -1008,16 +1006,14 @@ usb_alloc_urb(uint16_t iso_packets, uint16_t mem_flags } urb = malloc(size, M_USBDEV, M_WAITOK | M_ZERO); - if (urb) { - cv_init(&urb->cv_wait, "URBWAIT"); - if (iso_packets == 0xFFFF) { - urb->setup_packet = (void *)(urb + 1); - urb->transfer_buffer = (void *)(urb->setup_packet + - sizeof(struct usb_device_request)); - } else { - urb->number_of_packets = iso_packets; - } + cv_init(&urb->cv_wait, "URBWAIT"); + if (iso_packets == 0xFFFF) { + urb->setup_packet = (void *)(urb + 1); + urb->transfer_buffer = (void *)(urb->setup_packet + + sizeof(struct usb_device_request)); + } else { + urb->number_of_packets = iso_packets; } return (urb); } @@ -1722,8 +1718,6 @@ usb_bulk_msg(struct usb_device *udev, struct usb_host_ return (err); urb = usb_alloc_urb(0, 0); - if (urb == NULL) - return (-ENOMEM); usb_fill_bulk_urb(urb, udev, uhe, data, len, usb_linux_wait_complete, NULL); Modified: stable/11/sys/dev/sound/usb/uaudio.c ============================================================================== --- stable/11/sys/dev/sound/usb/uaudio.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/sound/usb/uaudio.c Wed Jul 29 14:33:31 2020 (r363665) @@ -4962,10 +4962,6 @@ uaudio_mixer_fill_info(struct uaudio_softc *sc, iot = malloc(sizeof(struct uaudio_terminal_node) * 256, M_TEMP, M_WAITOK | M_ZERO); - if (iot == NULL) { - DPRINTF("no memory!\n"); - goto done; - } while ((desc = usb_desc_foreach(cd, desc))) { dp = desc; Modified: stable/11/sys/dev/usb/input/uhid.c ============================================================================== --- stable/11/sys/dev/usb/input/uhid.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/input/uhid.c Wed Jul 29 14:33:31 2020 (r363665) @@ -448,10 +448,6 @@ uhid_get_report(struct uhid_softc *sc, uint8_t type, if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; } err = usbd_req_get_report(sc->sc_udev, NULL, kern_data, @@ -484,10 +480,6 @@ uhid_set_report(struct uhid_softc *sc, uint8_t type, if (kern_data == NULL) { kern_data = malloc(len, M_USBDEV, M_WAITOK); - if (kern_data == NULL) { - err = ENOMEM; - goto done; - } free_data = 1; err = copyin(user_data, kern_data, len); if (err) { Modified: stable/11/sys/dev/usb/storage/ustorage_fs.c ============================================================================== --- stable/11/sys/dev/usb/storage/ustorage_fs.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/storage/ustorage_fs.c Wed Jul 29 14:33:31 2020 (r363665) @@ -378,10 +378,6 @@ ustorage_fs_attach(device_t dev) ustorage_fs_ramdisk = malloc(USTORAGE_FS_RAM_SECT << 9, M_USB, M_ZERO | M_WAITOK); - - if (ustorage_fs_ramdisk == NULL) { - return (ENOMEM); - } } sc->sc_lun[0].memory_image = ustorage_fs_ramdisk; sc->sc_lun[0].num_sectors = USTORAGE_FS_RAM_SECT; Modified: stable/11/sys/dev/usb/usb_dev.c ============================================================================== --- stable/11/sys/dev/usb/usb_dev.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_dev.c Wed Jul 29 14:33:31 2020 (r363665) @@ -383,13 +383,11 @@ usb_fifo_alloc(struct mtx *mtx) struct usb_fifo *f; f = malloc(sizeof(*f), M_USBDEV, M_WAITOK | M_ZERO); - if (f != NULL) { - cv_init(&f->cv_io, "FIFO-IO"); - cv_init(&f->cv_drain, "FIFO-DRAIN"); - f->priv_mtx = mtx; - f->refcount = 1; - knlist_init_mtx(&f->selinfo.si_note, mtx); - } + cv_init(&f->cv_io, "FIFO-IO"); + cv_init(&f->cv_drain, "FIFO-DRAIN"); + f->priv_mtx = mtx; + f->refcount = 1; + knlist_init_mtx(&f->selinfo.si_note, mtx); return (f); } @@ -2318,9 +2316,6 @@ usb_alloc_symlink(const char *target) struct usb_symlink *ps; ps = malloc(sizeof(*ps), M_USBDEV, M_WAITOK); - if (ps == NULL) { - return (ps); - } /* XXX no longer needed */ strlcpy(ps->src_path, target, sizeof(ps->src_path)); ps->src_len = strlen(ps->src_path); Modified: stable/11/sys/dev/usb/usb_device.c ============================================================================== --- stable/11/sys/dev/usb/usb_device.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_device.c Wed Jul 29 14:33:31 2020 (r363665) @@ -1783,9 +1783,11 @@ usb_alloc_device(device_t parent_dev, struct usb_bus * return (NULL); } udev = malloc(sizeof(*udev), M_USB, M_WAITOK | M_ZERO); +#if (USB_HAVE_MALLOC_WAITOK == 0) if (udev == NULL) { return (NULL); } +#endif /* initialise our SX-lock */ sx_init_flags(&udev->enum_sx, "USB config SX lock", SX_DUPOK); sx_init_flags(&udev->sr_sx, "USB suspend and resume SX lock", SX_NOWITNESS); Modified: stable/11/sys/dev/usb/usb_freebsd.h ============================================================================== --- stable/11/sys/dev/usb/usb_freebsd.h Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_freebsd.h Wed Jul 29 14:33:31 2020 (r363665) @@ -51,6 +51,7 @@ #define USB_HAVE_FIXED_CONFIG 0 #define USB_HAVE_FIXED_PORT 0 #define USB_HAVE_DISABLE_ENUM 1 +#define USB_HAVE_MALLOC_WAITOK 1 /* define zero ticks callout value */ #define USB_CALLOUT_ZERO_TICKS 1 Modified: stable/11/sys/dev/usb/usb_freebsd_loader.h ============================================================================== --- stable/11/sys/dev/usb/usb_freebsd_loader.h Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_freebsd_loader.h Wed Jul 29 14:33:31 2020 (r363665) @@ -51,6 +51,7 @@ #define USB_HAVE_FIXED_CONFIG 0 #define USB_HAVE_FIXED_PORT 0 #define USB_HAVE_DISABLE_ENUM 0 +#define USB_HAVE_MALLOC_WAITOK 0 #define USB_CALLOUT_ZERO_TICKS 1 Modified: stable/11/sys/dev/usb/usb_generic.c ============================================================================== --- stable/11/sys/dev/usb/usb_generic.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_generic.c Wed Jul 29 14:33:31 2020 (r363665) @@ -2336,11 +2336,6 @@ ugen_ioctl_post(struct usb_fifo *f, u_long cmd, void * } f->fs_xfer = malloc(sizeof(f->fs_xfer[0]) * u.pinit->ep_index_max, M_USB, M_WAITOK | M_ZERO); - if (f->fs_xfer == NULL) { - usb_fifo_free_buffer(f); - error = ENOMEM; - break; - } f->fs_ep_max = u.pinit->ep_index_max; f->fs_ep_ptr = u.pinit->pEndpoints; break; Modified: stable/11/sys/dev/usb/usb_mbuf.c ============================================================================== --- stable/11/sys/dev/usb/usb_mbuf.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_mbuf.c Wed Jul 29 14:33:31 2020 (r363665) @@ -76,15 +76,10 @@ usb_alloc_mbufs(struct malloc_type *type, struct usb_i alloc_size = (block_size + sizeof(struct usb_mbuf)) * nblocks; free_ptr = malloc(alloc_size, type, M_WAITOK | M_ZERO); - - if (free_ptr == NULL) { - goto done; - } m_ptr = free_ptr; data_ptr = (void *)(m_ptr + nblocks); while (nblocks--) { - m_ptr->cur_data_ptr = m_ptr->min_data_ptr = data_ptr; @@ -97,6 +92,5 @@ usb_alloc_mbufs(struct malloc_type *type, struct usb_i data_ptr += block_size; } } -done: return (free_ptr); } Modified: stable/11/sys/dev/usb/usb_transfer.c ============================================================================== --- stable/11/sys/dev/usb/usb_transfer.c Wed Jul 29 14:30:42 2020 (r363664) +++ stable/11/sys/dev/usb/usb_transfer.c Wed Jul 29 14:33:31 2020 (r363665) @@ -1341,14 +1341,15 @@ usbd_transfer_setup(struct usb_device *udev, /* allocate zeroed memory */ buf = malloc(parm->size[0], M_USB, M_WAITOK | M_ZERO); - +#if (USB_HAVE_MALLOC_WAITOK == 0) if (buf == NULL) { parm->err = USB_ERR_NOMEM; DPRINTFN(0, "cannot allocate memory block for " "configuration (%d bytes)\n", parm->size[0]); goto done; - } + } +#endif parm->dma_tag_p = USB_ADD_BYTES(buf, parm->size[1]); parm->dma_page_ptr = USB_ADD_BYTES(buf, parm->size[3]); parm->dma_page_cache_ptr = USB_ADD_BYTES(buf, parm->size[4]); From owner-svn-src-stable@freebsd.org Wed Jul 29 20:30:16 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BAA8B36BAA4; Wed, 29 Jul 2020 20:30:16 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BH4t03qXhz4DK0; Wed, 29 Jul 2020 20:30:16 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 63991254F8; Wed, 29 Jul 2020 20:30:16 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06TKUGeO077008; Wed, 29 Jul 2020 20:30:16 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06TKUGRr077007; Wed, 29 Jul 2020 20:30:16 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007292030.06TKUGRr077007@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Wed, 29 Jul 2020 20:30:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363672 - stable/12/usr.sbin/mountd X-SVN-Group: stable-12 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/12/usr.sbin/mountd X-SVN-Commit-Revision: 363672 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 20:30:16 -0000 Author: brooks Date: Wed Jul 29 20:30:15 2020 New Revision: 363672 URL: https://svnweb.freebsd.org/changeset/base/363672 Log: MFC r363435: Avoid reading one byte before the path buffer. This happens when there's only one component (e.g. "/foo"). This (mostly-harmless) bug has been present since June 1990 when it was commited to mountd.c SCCS version 5.9. Note: the bug is on the second changed line, the first line is changed for visual consistency. Reviewed by: cem, emaste, mckusick, rmacklem Reported by: CHERI Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25759 Modified: stable/12/usr.sbin/mountd/mountd.c Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.sbin/mountd/mountd.c ============================================================================== --- stable/12/usr.sbin/mountd/mountd.c Wed Jul 29 19:38:49 2020 (r363671) +++ stable/12/usr.sbin/mountd/mountd.c Wed Jul 29 20:30:15 2020 (r363672) @@ -3140,9 +3140,9 @@ do_mount(struct exportlist *ep, struct grouplist *grp, goto error_exit; } /* back up over the last component */ - while (*cp == '/' && cp > dirp) + while (cp > dirp && *cp == '/') cp--; - while (*(cp - 1) != '/' && cp > dirp) + while (cp > dirp && *(cp - 1) != '/') cp--; if (cp == dirp) { if (debug) From owner-svn-src-stable@freebsd.org Wed Jul 29 20:31:12 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0E56C36BD1E; Wed, 29 Jul 2020 20:31:12 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BH4v36bY3z4DyC; Wed, 29 Jul 2020 20:31:11 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C6FBE257A0; Wed, 29 Jul 2020 20:31:11 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06TKVBso080151; Wed, 29 Jul 2020 20:31:11 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06TKVBPD080150; Wed, 29 Jul 2020 20:31:11 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007292031.06TKVBPD080150@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Wed, 29 Jul 2020 20:31:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363673 - stable/11/usr.sbin/mountd X-SVN-Group: stable-11 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/11/usr.sbin/mountd X-SVN-Commit-Revision: 363673 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 20:31:12 -0000 Author: brooks Date: Wed Jul 29 20:31:11 2020 New Revision: 363673 URL: https://svnweb.freebsd.org/changeset/base/363673 Log: MFC r363435: Avoid reading one byte before the path buffer. This happens when there's only one component (e.g. "/foo"). This (mostly-harmless) bug has been present since June 1990 when it was commited to mountd.c SCCS version 5.9. Note: the bug is on the second changed line, the first line is changed for visual consistency. Reviewed by: cem, emaste, mckusick, rmacklem Reported by: CHERI Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25759 Modified: stable/11/usr.sbin/mountd/mountd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/mountd/mountd.c ============================================================================== --- stable/11/usr.sbin/mountd/mountd.c Wed Jul 29 20:30:15 2020 (r363672) +++ stable/11/usr.sbin/mountd/mountd.c Wed Jul 29 20:31:11 2020 (r363673) @@ -3142,9 +3142,9 @@ do_mount(struct exportlist *ep, struct grouplist *grp, goto error_exit; } /* back up over the last component */ - while (*cp == '/' && cp > dirp) + while (cp > dirp && *cp == '/') cp--; - while (*(cp - 1) != '/' && cp > dirp) + while (cp > dirp && *(cp - 1) != '/') cp--; if (cp == dirp) { if (debug) From owner-svn-src-stable@freebsd.org Wed Jul 29 22:10:25 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EE89E36DFBA; Wed, 29 Jul 2020 22:10:25 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BH75Y4jhKz4KVZ; Wed, 29 Jul 2020 22:10:25 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 78BE926CCE; Wed, 29 Jul 2020 22:10:25 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06TMAPxH039576; Wed, 29 Jul 2020 22:10:25 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06TMAPdZ039575; Wed, 29 Jul 2020 22:10:25 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007292210.06TMAPdZ039575@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Wed, 29 Jul 2020 22:10:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363676 - stable/12/sys/kern X-SVN-Group: stable-12 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/12/sys/kern X-SVN-Commit-Revision: 363676 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jul 2020 22:10:26 -0000 Author: brooks Date: Wed Jul 29 22:10:25 2020 New Revision: 363676 URL: https://svnweb.freebsd.org/changeset/base/363676 Log: MFC r363438: Use SI_ORDER_(FOURTH|FIFTH) rather than bespoke versions. No functional change. When these SYSINITs were added these macros didn't exist. Reviewed by: imp Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25758 Modified: stable/12/sys/kern/init_main.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/kern/init_main.c ============================================================================== --- stable/12/sys/kern/init_main.c Wed Jul 29 22:08:54 2020 (r363675) +++ stable/12/sys/kern/init_main.c Wed Jul 29 22:10:25 2020 (r363676) @@ -367,18 +367,18 @@ SYSINIT(version, SI_SUB_COPYRIGHT, SI_ORDER_THIRD, pri #ifdef WITNESS static char wit_warn[] = "WARNING: WITNESS option enabled, expect reduced performance.\n"; -SYSINIT(witwarn, SI_SUB_COPYRIGHT, SI_ORDER_THIRD + 1, +SYSINIT(witwarn, SI_SUB_COPYRIGHT, SI_ORDER_FOURTH, print_caddr_t, wit_warn); -SYSINIT(witwarn2, SI_SUB_LAST, SI_ORDER_THIRD + 1, +SYSINIT(witwarn2, SI_SUB_LAST, SI_ORDER_FOURTH, print_caddr_t, wit_warn); #endif #ifdef DIAGNOSTIC static char diag_warn[] = "WARNING: DIAGNOSTIC option enabled, expect reduced performance.\n"; -SYSINIT(diagwarn, SI_SUB_COPYRIGHT, SI_ORDER_THIRD + 2, +SYSINIT(diagwarn, SI_SUB_COPYRIGHT, SI_ORDER_FIFTH, print_caddr_t, diag_warn); -SYSINIT(diagwarn2, SI_SUB_LAST, SI_ORDER_THIRD + 2, +SYSINIT(diagwarn2, SI_SUB_LAST, SI_ORDER_FIFTH, print_caddr_t, diag_warn); #endif From owner-svn-src-stable@freebsd.org Thu Jul 30 01:52:42 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A7C82372C18; Thu, 30 Jul 2020 01:52:42 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-TO1-obe.outbound.protection.outlook.com (mail-to1can01on0620.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe5d::620]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHD1x63qNz4XJB; Thu, 30 Jul 2020 01:52:37 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n3xbzEDJL6nKNIaTZz6vnIR144WNtJZKcmswdVFF70nd6bvZsnSstRcwSfcbKdB3Drlm+eDXmebvXLAfDefMXVnJwuP+GnYMS8jwnBmex98IZoC8BE8eYmBupZP371xoUEAJi6j1646MkUETTnXJdl3cljuJcdEdQbPVHeZ1DyEpmg4qfiQS3zfU9dBS701dKtbqNUAyioKexwSk0J26sSK49iPsGbYShIk8AlzFaLq0rvbux3mpupLCkQDWFa14YkhjkoQnaUuF7U7Zd4MitlJzq+0EdRmvel04lJZyxCPQw5Yjd93T9IIWXFgkvzq+363W5aW5de2IsLRCcx0Axw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0X7tqfjSl26kPG2eZDYItDp+CifDQaVOdAWnm+GooZk=; b=UVKbP9qnc9G9GWFmtY5UZ2sAsneYFMtfs7sdlSH0hwcqFjj5eDHlvurk2OmoOHa7fIb7gHxR6TGUyv2zlQ8vECLWlRsh2TVMi60x4moA/zuC9trGIehPE7MS3e49EzZN4Fzri0buLUTc4Yug84c/B97o5+aamei+PbVNMXMXioTDsIcWhS0e5hqWdTKXosd4hxDesIpAWBvTh68a6NOtfZdZkcs5t42Gzf1meNo432cTlWhiJ4r+aNUxEmvJ8DhQSW2mplqjNoBTZjZbirjcbHZNX9mEq9ZNrmPoDcaHk6NT5ykeTht1EV5XrNlxvAi2HcQoMKp4hg2BpUnpOgudrQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uoguelph.ca; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0X7tqfjSl26kPG2eZDYItDp+CifDQaVOdAWnm+GooZk=; b=ucc7SHI+S44VLo7syNHe42MeVsBiXWz/FH4RYr051SA/nZvPfqVFVN9MoY/9j76Q43MPIyJUCmMDiYYTMuA+q9vvgrM69RlsgAmVRHu+pAsFTp3D6wxHXY1Fa9z2u2kNsBu3K1w2zCITRmSJdDFo4IzhpYYoEDuUPrsLkP4TRy29C3YbDMXfP6XUvVtyMGSWG5PxEp7RehRCtDUU9C1HskDFQexhzReBtvANVYDXFK0rEUA+PLZh7j57aE0vSi8z6zEzhNXh6mcfa6egHHKfJMIPREhHvK+W+h/6TJE2OR+NBNtIDOFqJDhty7goCo1wwvhjVXdZVbgNH+hIiL+eWQ== Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:38::14) by YQBPR0101MB1940.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:8::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.28; Thu, 30 Jul 2020 01:52:35 +0000 Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91]) by QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91%7]) with mapi id 15.20.3216.033; Thu, 30 Jul 2020 01:52:35 +0000 From: Rick Macklem To: Brooks Davis , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Topic: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Index: AQHWZGw7l3AA2GANGkmYHY+WWlMRT6kfVzKs Date: Thu, 30 Jul 2020 01:52:35 +0000 Message-ID: References: <202007272318.06RNIFjV005206@repo.freebsd.org> In-Reply-To: <202007272318.06RNIFjV005206@repo.freebsd.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 07933a14-c3df-49d3-1c6d-08d8342b3b3f x-ms-traffictypediagnostic: YQBPR0101MB1940: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5516; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: siACDIdhffcmbtaAL0qImLDdF4nhz0gHPkNnfIWUXlt4AKs1V9HP+JGZTe/dheWMLAcS2xAvsGJmg6vrItaNJh2tUtV0TWUtWvcfVQ701j2WbDjo4JaPn0saxDH0jApbw+CI8bph/qoDjbYKZiNWyFBPigaimQjc48qFs9BBy6W7GyE4XfcRJR4Ar2MFgc/rHFLmo8UPGRZ25/rn4XHmo9gu6s925UVdzz0vPOGyNxo0AET7xGCDVagrtQp2akkr4fA2uY+oUJjJ/XkNyvyPjdmQosnTiaw3JF93IXNxZdEKZU7SpECyA9s1Erk3MdJLVjOCNc3t8nFkL02daUC6ZqT7bw2e+2pKRIDthwxynTsijApazjE3q5a5d0AKmUn3cbb9jDeOSFv0ScqylsNR1w== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFTY:; SFS:(396003)(346002)(39860400002)(136003)(376002)(366004)(478600001)(966005)(2906002)(9686003)(786003)(316002)(55016002)(110136005)(71200400001)(5660300002)(8936002)(52536014)(66446008)(186003)(450100002)(76116006)(91956017)(66476007)(33656002)(83380400001)(7696005)(66946007)(6506007)(86362001)(64756008)(66556008)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: GSb1TaJP9Rqsb5L1NO7EjMCyq0A0RwGgQKi+KikXb45lP1ugsqejaafABvhvpXlI9+a5xdiDiO+HgrysAiCWLLQ2cGtCFd/zDCPDJmwnGDXJCSXu5XYSq1wzpteNdmZySUFzNx6crKWCBK9gGgwhPP2+ltkoQ+EwveoOO+BOOEqHIEwIYFYrLz5GWP7kt/vQTf0jssvM5/hCPDpLxMzW/Wa+yGiqjwzT0AW1Aya47aOkIhlrNL2jX2e4FFwvvS4GqJ92XBOlbIECWJAqAdWnZpDLFCRQ+fNJwCRTxbjekMSn50GebqKBOMXkcYtRH7s8FeMjA+6hOXcyQnPGtfDx2Y5Aq8ZEWG6l94vQN6+aCwOSnvH4HTQ+vkf7tYr2mfiaVUZZ4alF++eEF2c83lwcW8jWivgSQoCTY8Jwnz//IFZOKMLnNgeJnexO+kbSigwEMT+9y5xX5ozfic/EOroXxq/tCPBJAqgoxcC0PxTRyaTnHwJY+P+0I+n2kONh3+n8+eS+hGW41sgjpNh0HUgEs1mXZmgg1U53GB0pQWIaUBLZYEv3vPhqTtULaHPJRN6G x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 07933a14-c3df-49d3-1c6d-08d8342b3b3f X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2020 01:52:35.4295 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Nrsw0j8vPjlixyDmDCeI2gFXjP23WMHOs+eyRoPp3OTdYWCIQ08YR2TGiso0ejArawQqZSMGlypuvNlRr0jD7A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YQBPR0101MB1940 X-Rspamd-Queue-Id: 4BHD1x63qNz4XJB X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=uoguelph.ca header.s=selector1 header.b=ucc7SHI+; dmarc=none; spf=pass (mx1.freebsd.org: domain of rmacklem@uoguelph.ca designates 2a01:111:f400:fe5d::620 as permitted sender) smtp.mailfrom=rmacklem@uoguelph.ca X-Spamd-Result: default: False [-5.17 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; NEURAL_HAM_MEDIUM(-0.98)[-0.981]; R_DKIM_ALLOW(-0.20)[uoguelph.ca:s=selector1]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a01:111:f400::/48]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[uoguelph.ca]; NEURAL_HAM_LONG(-1.03)[-1.027]; RCPT_COUNT_FIVE(0.00)[5]; DWL_DNSWL_LOW(-1.00)[uoguelph.ca:dkim]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[uoguelph.ca:+]; NEURAL_HAM_SHORT(-0.67)[-0.666]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:8075, ipnet:2a01:111:f000::/36, country:US]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector9901:i=1] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 01:52:42 -0000 Brooks Davis wrote:=0A= >Author: brooks=0A= >Date: Mon Jul 27 23:18:14 2020=0A= >New Revision: 363625=0A= >URL: https://svnweb.freebsd.org/changeset/base/363625=0A= >=0A= >Log:=0A= > MFC r363439:=0A= >=0A= > Correct a type-mismatch between xdr_long and the variable "bad".=0A= >=0A= > Way back in r28911 (August 1997, CVS rev 1.22) we imported a NetBSD=0A= > information leak fix via OpenBSD. Unfortunatly we failed to track the= =0A= > followup commit that fixed the type of the error code. Apply the change= =0A= > from int to long now.=0A= I don't think this is correct.=0A= RFC-1813 defines the error return for a MNT RPC as a 32bit quantity.=0A= =0A= Way back when this stuff was written it was in K&R days and "long" was=0A= always a 32bit integer.=0A= =0A= If you look at head/lib/libc/xdr/xdr.c you'll see "long" used to refer to 3= 2bit=0A= numbers throughout it. Look near the end, where it does a "longlong" (64bit= s)=0A= using 2 longs.=0A= =0A= The good news w.r.t. this ancient code is that XDR_PUTLONG() assumes 32bits= .=0A= =0A= Also, note that xdr_int() and xdr_long() do exactly the same thing.=0A= =0A= I support int32_t would be preferred to "int" to make sure "bad" is 32bits= =0A= and then you can use xdr_int32_t(), which does exactly the same thing as=0A= xdr_int() and about the same thing as xdr_long(). { They all assume a "long= "=0A= is 32bits. Scary to look at now that "long" isn't always 32bits. }=0A= --> I can't see how the xdr.c code would work for a machine that is BIG_END= IAN=0A= and where "long" is 64bits, but we don't have any of those.=0A= =0A= I don't think "int bad" was wrong and "long bad" definitely seems wrong for= =0A= 64bit systems, although the xdr.c code simply ends up putting the low order= =0A= 32bits on the wire, I think?=0A= =0A= rick=0A= =0A= Reviewed by: emaste=0A= Reported by: CHERI=0A= Obtained from: CheriBSD=0A= Sponsored by: DARPA=0A= Differential Revision: https://reviews.freebsd.org/D25779=0A= =0A= Modified:=0A= stable/12/usr.sbin/mountd/mountd.c=0A= Directory Properties:=0A= stable/12/ (props changed)=0A= =0A= Modified: stable/12/usr.sbin/mountd/mountd.c=0A= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=0A= --- stable/12/usr.sbin/mountd/mountd.c Mon Jul 27 21:19:41 2020 (r3= 63624)=0A= +++ stable/12/usr.sbin/mountd/mountd.c Mon Jul 27 23:18:14 2020 (r3= 63625)=0A= @@ -1087,7 +1087,8 @@ mntsrv(struct svc_req *rqstp, SVCXPRT *transp)=0A= struct sockaddr *saddr;=0A= u_short sport;=0A= char rpcpath[MNTPATHLEN + 1], dirpath[MAXPATHLEN];=0A= - int bad =3D 0, defset, hostset;=0A= + int defset, hostset;=0A= + long bad =3D 0;=0A= sigset_t sighup_mask;=0A= int numsecflavors, *secflavorsp;=0A= =0A= From owner-svn-src-stable@freebsd.org Thu Jul 30 02:52:56 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 885B93743FD; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHFMX36pjz4Zvb; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4E6D6A314; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06U2quru017630; Thu, 30 Jul 2020 02:52:56 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06U2quGX017629; Thu, 30 Jul 2020 02:52:56 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202007300252.06U2quGX017629@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 30 Jul 2020 02:52:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363685 - in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Group: stable-12 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Commit-Revision: 363685 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 02:52:56 -0000 Author: cy Date: Thu Jul 30 02:52:55 2020 New Revision: 363685 URL: https://svnweb.freebsd.org/changeset/base/363685 Log: MFC r363453: Document the IPFILTER_PREDEFINED environment variable. PR: 248088 Reported by: joeb1@a1poweruser.com Modified: stable/12/contrib/ipfilter/man/ipf.8 Directory Properties: stable/12/ (props changed) Changes in other areas also in this revision: Modified: stable/10/contrib/ipfilter/man/ipf.8 stable/11/contrib/ipfilter/man/ipf.8 Directory Properties: stable/10/ (props changed) stable/11/ (props changed) Modified: stable/12/contrib/ipfilter/man/ipf.8 ============================================================================== --- stable/12/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:37:15 2020 (r363684) +++ stable/12/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:52:55 2020 (r363685) @@ -158,6 +158,15 @@ display the statistics prior to them being zeroed. Zero global statistics held in the kernel for filtering only (this doesn't affect fragment or state statistics). .DT +.SH ENVIRONMENT +.NM utilizes the following environment variable. +.TP +.B IPF_PREDEFINED +ipfilter variables, see VARIABLES in ipf(5), can be specified in this +environment variable providing shell access to ipfilter and ipnat variables. +For example, +.br +IPF_PREDEFINED='my_server="10.1.1.1"; my_client="10.1.1.2";' .SH FILES /dev/ipauth .br From owner-svn-src-stable@freebsd.org Thu Jul 30 02:52:56 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 36D1C374559; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHFMX0jQrz4Zrg; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F08DDA0C8; Thu, 30 Jul 2020 02:52:55 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06U2qtB3017623; Thu, 30 Jul 2020 02:52:55 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06U2qtgr017622; Thu, 30 Jul 2020 02:52:55 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202007300252.06U2qtgr017622@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 30 Jul 2020 02:52:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363685 - in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Group: stable-11 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Commit-Revision: 363685 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 02:52:56 -0000 Author: cy Date: Thu Jul 30 02:52:55 2020 New Revision: 363685 URL: https://svnweb.freebsd.org/changeset/base/363685 Log: MFC r363453: Document the IPFILTER_PREDEFINED environment variable. PR: 248088 Reported by: joeb1@a1poweruser.com Modified: stable/11/contrib/ipfilter/man/ipf.8 Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/contrib/ipfilter/man/ipf.8 stable/12/contrib/ipfilter/man/ipf.8 Directory Properties: stable/10/ (props changed) stable/12/ (props changed) Modified: stable/11/contrib/ipfilter/man/ipf.8 ============================================================================== --- stable/11/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:37:15 2020 (r363684) +++ stable/11/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:52:55 2020 (r363685) @@ -158,6 +158,15 @@ display the statistics prior to them being zeroed. Zero global statistics held in the kernel for filtering only (this doesn't affect fragment or state statistics). .DT +.SH ENVIRONMENT +.NM utilizes the following environment variable. +.TP +.B IPF_PREDEFINED +ipfilter variables, see VARIABLES in ipf(5), can be specified in this +environment variable providing shell access to ipfilter and ipnat variables. +For example, +.br +IPF_PREDEFINED='my_server="10.1.1.1"; my_client="10.1.1.2";' .SH FILES /dev/ipauth .br From owner-svn-src-stable@freebsd.org Thu Jul 30 02:52:56 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id EB0793744AF; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHFMX5Xnsz4b9r; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A2BC99F5E; Thu, 30 Jul 2020 02:52:56 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06U2quWj017636; Thu, 30 Jul 2020 02:52:56 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06U2quuO017635; Thu, 30 Jul 2020 02:52:56 GMT (envelope-from cy@FreeBSD.org) Message-Id: <202007300252.06U2quuO017635@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Thu, 30 Jul 2020 02:52:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r363685 - in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Group: stable-10 X-SVN-Commit-Author: cy X-SVN-Commit-Paths: in stable: 10/contrib/ipfilter/man 11/contrib/ipfilter/man 12/contrib/ipfilter/man X-SVN-Commit-Revision: 363685 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 02:52:57 -0000 Author: cy Date: Thu Jul 30 02:52:55 2020 New Revision: 363685 URL: https://svnweb.freebsd.org/changeset/base/363685 Log: MFC r363453: Document the IPFILTER_PREDEFINED environment variable. PR: 248088 Reported by: joeb1@a1poweruser.com Modified: stable/10/contrib/ipfilter/man/ipf.8 Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/contrib/ipfilter/man/ipf.8 stable/12/contrib/ipfilter/man/ipf.8 Directory Properties: stable/11/ (props changed) stable/12/ (props changed) Modified: stable/10/contrib/ipfilter/man/ipf.8 ============================================================================== --- stable/10/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:37:15 2020 (r363684) +++ stable/10/contrib/ipfilter/man/ipf.8 Thu Jul 30 02:52:55 2020 (r363685) @@ -158,6 +158,15 @@ display the statistics prior to them being zeroed. Zero global statistics held in the kernel for filtering only (this doesn't affect fragment or state statistics). .DT +.SH ENVIRONMENT +.NM utilizes the following environment variable. +.TP +.B IPF_PREDEFINED +ipfilter variables, see VARIABLES in ipf(5), can be specified in this +environment variable providing shell access to ipfilter and ipnat variables. +For example, +.br +IPF_PREDEFINED='my_server="10.1.1.1"; my_client="10.1.1.2";' .SH FILES /dev/ipauth .br From owner-svn-src-stable@freebsd.org Thu Jul 30 03:25:59 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 055A5376257 for ; Thu, 30 Jul 2020 03:25:59 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound5a.ore.mailhop.org (outbound5a.ore.mailhop.org [44.233.67.66]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHG5f3mdZz4dLh for ; Thu, 30 Jul 2020 03:25:58 +0000 (UTC) (envelope-from ian@freebsd.org) ARC-Seal: i=1; a=rsa-sha256; t=1596079551; cv=none; d=outbound.mailhop.org; s=arc-outbound20181012; b=rUPzpAlCEzzn77SDh0hZ52DKIuLEgFUG9fG0oql5aSIOa9bS+mmDJYdMXyhav828yhyJrfltFtLm4 P7oq5JXQz7kloawp/Y32UWrYn/tUXVaZzXpILjOSkKeSHxb4BHRKnKO6vVGoztsm54xfFsIAL55gLJ wXSidZhWsaZeYGaL375COTMeu+MtWJ2mCKDK+Q8UmhYV3Nn3K2yWILjs9avQ4pUSvIp/NpXbW/IFk5 WRXnyXX0yBf0BbTkfxhhmmpII6hVt8aA6jJ3lU3/fGyVdZrQFVMNIjf1Dipg/45BfyZXxvJzMKW/Dj N2JyHDGqa8cuIe+yKDOYZ0O3HnsAP5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=arc-outbound20181012; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:dkim-signature:from; bh=wySEfhvHdHrb73jnhAtNPtKULYaiAr9lKq8KXug6fSg=; b=lcZ3oc0v1OY4leKmOo/vwMa7yB4QjNuDThKKGIYYgT2bipvV7Xcnj5k303YtwBDiLNN6En+1zoscE lC/Q1aM+XQxiG7gh6ru6z1oMEYqTlzZoo0ZrVCwfo6AUkQDxZ6VFTYIpvo+2XdHTaVRdVIL8wr2Ho0 Ixm7f0yqNI2LnU5oLL/w+lRW8/jLjv8BVkkkNAU6WR0riNj6+pgZ5vyUPkBhwvtmLoRThF4XrbcUvq yictyrkfNWw9avQ/pJCS61dqDh/BiWx4eJZDV3/71BrPBDGogZ/SMtAFLS1HGAW5krJKXn1KYSlgZ/ LNS8h7BP+sCcBtZi4LDg8oTDtArOm7Q== ARC-Authentication-Results: i=1; outbound3.ore.mailhop.org; spf=softfail smtp.mailfrom=freebsd.org smtp.remote-ip=67.177.211.60; dmarc=none header.from=freebsd.org; arc=none header.oldest-pass=0; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outbound.mailhop.org; s=dkim-high; h=content-transfer-encoding:mime-version:content-type:references:in-reply-to: date:to:from:subject:message-id:from; bh=wySEfhvHdHrb73jnhAtNPtKULYaiAr9lKq8KXug6fSg=; b=Sr5xQ3lnvuoLHBb9KWEqxtrvW7KjDt2mKjoAwQqcUP79rcROLCnPldV2prLioEZz8dNFVmpOi/1qz 1JZAmKdC+kmEXb206+tPnymegfzLYGYhX03KPyMhNEr94q9LJ5UPvBBcHHntbMXlPMg3018eC5hapj 2xVGi5NIspnU13olqvkiJpoFhqvGBO2VUkss3qRFH3w3NRQTd1VMbrVQF9ZpJhiNfjQEpjmJu22M2b VjdWL8v9v4wyhem1hWXov1NKe1cBVttoph78zSCwyj0X6acPzsR7jDEHsJhkEIKikDtL1xpFsic62y n10jkiSj+E65yeE19NMPVwittOJ0+iA== X-MHO-RoutePath: aGlwcGll X-MHO-User: 5cbffb2e-d214-11ea-a2ba-9f0c275c2f69 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 67.177.211.60 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (c-67-177-211-60.hsd1.co.comcast.net [67.177.211.60]) by outbound3.ore.mailhop.org (Halon) with ESMTPSA id 5cbffb2e-d214-11ea-a2ba-9f0c275c2f69; Thu, 30 Jul 2020 03:25:49 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id 06U3PmDl008570; Wed, 29 Jul 2020 21:25:48 -0600 (MDT) (envelope-from ian@freebsd.org) Message-ID: <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd From: Ian Lepore To: Rick Macklem , Brooks Davis , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Date: Wed, 29 Jul 2020 21:25:48 -0600 In-Reply-To: References: <202007272318.06RNIFjV005206@repo.freebsd.org> Content-Type: text/plain; charset="ASCII" X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4BHG5f3mdZz4dLh X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [0.00 / 15.00]; ASN(0.00)[asn:16509, ipnet:44.224.0.0/11, country:US]; local_wl_from(0.00)[freebsd.org] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 03:25:59 -0000 On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote: > Brooks Davis wrote: > > Author: brooks > > Date: Mon Jul 27 23:18:14 2020 > > New Revision: 363625 > > URL: https://svnweb.freebsd.org/changeset/base/363625 > > > > Log: > > MFC r363439: > > > > Correct a type-mismatch between xdr_long and the variable "bad". > > > > [...] > --> I can't see how the xdr.c code would work for a machine that is > BIG_ENDIAN and where "long" is 64bits, but we don't have any of > those. > mips64 and powerpc64 are both big endian with 64-bit long. -- Ian From owner-svn-src-stable@freebsd.org Thu Jul 30 07:03:37 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 876DB37B021; Thu, 30 Jul 2020 07:03:37 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-QB1-obe.outbound.protection.outlook.com (mail-qb1can01on061b.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe5c::61b]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHLwn1FmCz3bV8; Thu, 30 Jul 2020 07:03:36 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qo1EwlOZ5PnH/k6QrqjqHomS4tnWVaqijJrVH9pktwxNm1L0AZxH82fKE/Vyj/jF9RZNJat9sjVKFT25Iij5QYwhIqDagthh79tuVtn2xFJx3iR9oCDN2IXXKfv3+XqNR+xPzVP/PGbapL4k0zpMMJvKB5JbwWJ72EjE1qNiXHHjvHd2TtfXwsg6fiytAmdx1AYsLcIP77Zu1MAbk4R6ubsTZehzwgBkCfSweKyFbDtYdB2NOdEqgwitKaGSWdujOxSwvqcPHlcjIPolUE7xn2kkylZrn6I99T/b4s/TVp+M8Fb2sGA2FTpjf/++wluSzhDj7TZO1NyE1w4znGfqGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GUH7hEdbcCkO9sDeuQUJywSt9df2IgZBiathivs8GYw=; b=MOt/0HPugDVe8i2XWAWXBrx/M0eiHzwTw3eWD66xy1o3284HPNpX2Duqjx4iPAs0ychfI8uk3Tsw1o8rLwK79y4hX425ug7wYd/cRHLZeLPCfVBCWf8qjFIZuf+L4Gk1KAzDVFdCsqyapaxjwwKGwUci8ayY/52htZQhgaSOvbPNHESwixFrBQf/WX6nnSw5ByJgULpWsP6AHwN0ibVJSxWdz2cz2juQNsZE7UyKbYE/vLZO9JdsEwhR3Q84SuXpGD2OqnYkI0bz0o88CWCeTcPW5YG/L7xypCLPovWD9nH+siid/JPwEUsjyVHO/DWbn4cW0Ry9Q0zQeO7UegHEew== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uoguelph.ca; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GUH7hEdbcCkO9sDeuQUJywSt9df2IgZBiathivs8GYw=; b=kgNxKcoqsF0XdHZiuNvkyCtG/Lfwfl8CjqCCYFhcnR6Cln60MIO/5NRNR3dX83qhPcq7Ord8VuRkaRA4HNSdcGCmJj39Jqw8FlHB3OkEpHT7Uid3X23lcyIsj+hRDNS+dQ534E9RVihhVukNLToii7KV/cw9stRFkNqA0xwFGg0gb0ClfTOUDeDG9g2MmQH3CSJjD8/bBkshCrcqbm0BgAO8tS9O+Zf9V9uLheLEKH8Xt78jFCD/dGNoZSWH6xHP16ogwsV1lgTG6zf1eJ259UElG7mEfuvR9UQBgVExazboFB9ZG8HwHUhdTnVD0NxxXmVkTefrFs+5vGCcpPwUEg== Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:38::14) by YQXPR0101MB2007.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:1a::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.21; Thu, 30 Jul 2020 07:03:34 +0000 Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91]) by QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91%7]) with mapi id 15.20.3216.033; Thu, 30 Jul 2020 07:03:27 +0000 From: Rick Macklem To: Ian Lepore , Brooks Davis , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Topic: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Index: AQHWZGw7l3AA2GANGkmYHY+WWlMRT6kfVzKsgAAiMQCAADpv4g== Date: Thu, 30 Jul 2020 07:03:27 +0000 Message-ID: References: <202007272318.06RNIFjV005206@repo.freebsd.org> , <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> In-Reply-To: <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: aa208615-02fc-4811-bee0-08d83456a88a x-ms-traffictypediagnostic: YQXPR0101MB2007: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: G2W9MSScjiq2bp31BOUjbgiwqQb5SNEgmCyYOJnR9QlUSetssG2t6pBwkPUepRIYJOKMHHekLQIbNxrsGRoohh4c9djUADXZ0T+yMu/SS2nagEISY0Zme/ysuVyw0gi5Tju3KuJB8i/8uw20cAG0g/792Bx8rC0/0uRrhED4z7zP3aGyJg1sYZ9/5/OmlS7qfjULms2mj7d5rMpvh5qe77xRjz17PV3CLuudH4cI7UHyi5kdPFV05GAQpN31fvxv4aocaasfQ7w/C4hIoHuiQoZpzXs5iLFr8GJ9hqZwG2iWOWF0PIvw9FAIeSChn9sYyKMDBKWZWy+t9FFfbaJR2kitIuRrZT76KUrkRa7fm0HxYgI/Nsmu59nd7FkKeSHnuun8BF9ynicJiOxKi6fq7A== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFTY:; SFS:(136003)(376002)(346002)(366004)(396003)(39860400002)(66476007)(110136005)(2906002)(83380400001)(186003)(66446008)(64756008)(66556008)(5660300002)(52536014)(91956017)(76116006)(66946007)(6506007)(33656002)(86362001)(478600001)(966005)(71200400001)(316002)(786003)(55016002)(7696005)(450100002)(9686003)(8676002)(8936002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: gu97slwXZKmCjd8PL+cjXA73YghfTJinedCqumZT+9G/R55p164glMNQaSdWr8Qsj3pg9ueHqAD9pCd+TB7F5TDnS5dLFPhN1VcR7tBSMvJuGdW8Y1komJNtMcE5UOi7dFjwiyAO1w2J+gqNfYXVoKM/DwWSO449riVALU+WFE7fADE3q5Ofer+qIXcvYxNI/2xHs5DA/BL8ARxFx0xp1mUr0S3OkOwI5kAblUieTTRaucidAHkUPxarinGvJaX2Tmk02mrXf3aIesIkxa51NnKlrzBVgN4zB3b//u1rg/x9L7dHFo7HtiqzgoTx2a0gmjhwX59dWIikuT1s6iEHG469mu4eJPKAwo7/8An25rdafUtz6Bg6kioLCgnoxmhI9TYzN/GpkW1cxVi9diYYMChyP615VoQBhBf8H+A6J9o7VSmZRJ7hHDA+5e6YFIeYI4exndjUk2h2Bn3l5MwnYcrbsKehCy9/bB5F+ZNrdNp+T2Eyph3uUDZvdVeMM6S1zcR8erM7yNJvXh0D+4hrt9KsKTK7A5KJ3CDdJsoGSOBShOQKwvA7/gYV7MJcU6wF x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: aa208615-02fc-4811-bee0-08d83456a88a X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2020 07:03:27.1282 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: n23s8LIh9VDW9n5xxO34ubx6tHhy1euP4lr/yFs3nsHBjxhcpZfVRNXn5oni0ICguuZZ1py+o77MamUz+jfXJQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YQXPR0101MB2007 X-Rspamd-Queue-Id: 4BHLwn1FmCz3bV8 X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; ASN(0.00)[asn:8075, ipnet:2a01:111:f000::/36, country:US]; REPLY(-4.00)[] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 07:03:37 -0000 Ian Lepore wrote:=0A= >On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote:=0A= >> Brooks Davis wrote:=0A= >> > Author: brooks=0A= >> > Date: Mon Jul 27 23:18:14 2020=0A= >> > New Revision: 363625=0A= >> > URL: https://svnweb.freebsd.org/changeset/base/363625=0A= >> >=0A= >> > Log:=0A= >> > MFC r363439:=0A= >> >=0A= >> > Correct a type-mismatch between xdr_long and the variable "bad".=0A= >> >=0A= >> > [...]=0A= >> --> I can't see how the xdr.c code would work for a machine that is=0A= >> BIG_ENDIAN and where "long" is 64bits, but we don't have any of=0A= >> those.=0A= >>=0A= >=0A= >mips64 and powerpc64 are both big endian with 64-bit long.=0A= Oops, I didn't know that. In the past, I've run PowerPC and MIPS, but thoug= ht=0A= they both were little endian. (I recall the arches can be run either way.)= =0A= =0A= Anyhow, take a look at head/lib/libc/xdr/xdr.c and it looks to me like it= =0A= has been broken "forever" (ever since we stopped using a K&R compiler=0A= that would have always made "long" 32bits).=0A= =0A= If anyone has either of these and can set up an NFS server on one of=0A= them and then try and do an NFSv3 mount that is not allowed, it would=0A= be interesting to see the packet trace and if the MNT RPC fails, because=0A= it looks like it will put the high order 32bits on the wire and they'll=0A= always be 0?=0A= =0A= Just to clarify. The behaviour wasn't broken by this commit. I just=0A= don't see how the commit fixes anything?=0A= =0A= rick, who doesn't have these arches to test on.=0A= =0A= -- Ian=0A= =0A= =0A= =0A= From owner-svn-src-stable@freebsd.org Thu Jul 30 12:59:24 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 04BD83A4F6A; Thu, 30 Jul 2020 12:59:24 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHVqH6KM8z4LcD; Thu, 30 Jul 2020 12:59:23 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BD8501149C; Thu, 30 Jul 2020 12:59:23 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UCxNF7094601; Thu, 30 Jul 2020 12:59:23 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UCxNAV094600; Thu, 30 Jul 2020 12:59:23 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301259.06UCxNAV094600@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 12:59:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363690 - stable/12/sys/dev/sound/pci/hda X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: stable/12/sys/dev/sound/pci/hda X-SVN-Commit-Revision: 363690 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 12:59:24 -0000 Author: avg Date: Thu Jul 30 12:59:23 2020 New Revision: 363690 URL: https://svnweb.freebsd.org/changeset/base/363690 Log: MFC r362294,r362647: hdac_intr_handler: keep working until global interrupt status clears It is plausible that the hardware interrupts a host only when GIS goes from zero to one. GIS is formed by OR-ing multiple hardware statuses, so it's possible that a previously cleared status gets set again while another status has not been cleared yet. Thus, there will be no new interrupt as GIS always stayed set. If we don't re-examine GIS then we can leave it set and never get another interrupt again. Without this change I frequently saw a problem where snd_hda would stop working. Setting dev.hdac.1.polling=1 would bring it back to life and afterwards I could set polling back to zero. Sometimes the problem started right after a boot, sometimes it happened after resuming from S3, frequently it would occur when sound output and input are active concurrently (such as during conferencing). I looked at HDAC_INTSTS while the sound was not working and I saw that both HDAC_INTSTS_GIS and HDAC_INTSTS_CIS were set, but there were no interrupts. Modified: stable/12/sys/dev/sound/pci/hda/hdac.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/sound/pci/hda/hdac.c ============================================================================== --- stable/12/sys/dev/sound/pci/hda/hdac.c Thu Jul 30 07:26:11 2020 (r363689) +++ stable/12/sys/dev/sound/pci/hda/hdac.c Thu Jul 30 12:59:23 2020 (r363690) @@ -302,34 +302,36 @@ hdac_config_fetch(struct hdac_softc *sc, uint32_t *on, } } -/**************************************************************************** - * void hdac_intr_handler(void *) - * - * Interrupt handler. Processes interrupts received from the hdac. - ****************************************************************************/ static void -hdac_intr_handler(void *context) +hdac_one_intr(struct hdac_softc *sc, uint32_t intsts) { - struct hdac_softc *sc; device_t dev; - uint32_t intsts; uint8_t rirbsts; int i; - sc = (struct hdac_softc *)context; - hdac_lock(sc); - - /* Do we have anything to do? */ - intsts = HDAC_READ_4(&sc->mem, HDAC_INTSTS); - if ((intsts & HDAC_INTSTS_GIS) == 0) { - hdac_unlock(sc); - return; - } - /* Was this a controller interrupt? */ if (intsts & HDAC_INTSTS_CIS) { - rirbsts = HDAC_READ_1(&sc->mem, HDAC_RIRBSTS); + /* + * Placeholder: if we ever enable any bits in HDAC_WAKEEN, then + * we will need to check and clear HDAC_STATESTS. + * That event is used to report codec status changes such as + * a reset or a wake-up event. + */ + /* + * Placeholder: if we ever enable HDAC_CORBCTL_CMEIE, then we + * will need to check and clear HDAC_CORBSTS_CMEI in + * HDAC_CORBSTS. + * That event is used to report CORB memory errors. + */ + /* + * Placeholder: if we ever enable HDAC_RIRBCTL_RIRBOIC, then we + * will need to check and clear HDAC_RIRBSTS_RIRBOIS in + * HDAC_RIRBSTS. + * That event is used to report response FIFO overruns. + */ + /* Get as many responses that we can */ + rirbsts = HDAC_READ_1(&sc->mem, HDAC_RIRBSTS); while (rirbsts & HDAC_RIRBSTS_RINTFL) { HDAC_WRITE_1(&sc->mem, HDAC_RIRBSTS, HDAC_RIRBSTS_RINTFL); @@ -345,16 +347,45 @@ hdac_intr_handler(void *context) if ((intsts & (1 << i)) == 0) continue; HDAC_WRITE_1(&sc->mem, (i << 5) + HDAC_SDSTS, - HDAC_SDSTS_DESE | HDAC_SDSTS_FIFOE | HDAC_SDSTS_BCIS ); + HDAC_SDSTS_DESE | HDAC_SDSTS_FIFOE | HDAC_SDSTS_BCIS); if ((dev = sc->streams[i].dev) != NULL) { HDAC_STREAM_INTR(dev, sc->streams[i].dir, sc->streams[i].stream); } } } +} - HDAC_WRITE_4(&sc->mem, HDAC_INTSTS, intsts); - hdac_unlock(sc); +/**************************************************************************** + * void hdac_intr_handler(void *) + * + * Interrupt handler. Processes interrupts received from the hdac. + ****************************************************************************/ +static void +hdac_intr_handler(void *context) +{ + struct hdac_softc *sc; + uint32_t intsts; + + sc = (struct hdac_softc *)context; + + /* + * Loop until HDAC_INTSTS_GIS gets clear. + * It is plausible that hardware interrupts a host only when GIS goes + * from zero to one. GIS is formed by OR-ing multiple hardware + * statuses, so it's possible that a previously cleared status gets set + * again while another status has not been cleared yet. Thus, there + * will be no new interrupt as GIS always stayed set. If we don't + * re-examine GIS then we can leave it set and never get an interrupt + * again. + */ + intsts = HDAC_READ_4(&sc->mem, HDAC_INTSTS); + while ((intsts & HDAC_INTSTS_GIS) != 0) { + hdac_lock(sc); + hdac_one_intr(sc, intsts); + hdac_unlock(sc); + intsts = HDAC_READ_4(&sc->mem, HDAC_INTSTS); + } } static void @@ -1508,6 +1539,24 @@ hdac_attach2(void *arg) device_printf(sc->dev, "Starting RIRB Engine...\n"); ); hdac_rirb_start(sc); + + /* + * Clear HDAC_WAKEEN as at present we have no use for SDI wake + * (status change) interrupts. The documentation says that we + * should not make any assumptions about the state of this register + * and set it explicitly. + * NB: this needs to be done before the interrupt is enabled as + * the handler does not expect this interrupt source. + */ + HDAC_WRITE_2(&sc->mem, HDAC_WAKEEN, 0); + + /* + * Read and clear post-reset SDI wake status. + * Each set bit corresponds to a codec that came out of reset. + */ + statests = HDAC_READ_2(&sc->mem, HDAC_STATESTS); + HDAC_WRITE_2(&sc->mem, HDAC_STATESTS, statests); + HDA_BOOTHVERBOSE( device_printf(sc->dev, "Enabling controller interrupt...\n"); @@ -1523,7 +1572,6 @@ hdac_attach2(void *arg) HDA_BOOTHVERBOSE( device_printf(sc->dev, "Scanning HDA codecs ...\n"); ); - statests = HDAC_READ_2(&sc->mem, HDAC_STATESTS); hdac_unlock(sc); for (i = 0; i < HDAC_CODEC_MAX; i++) { if (HDAC_STATESTS_SDIWAKE(statests, i)) { @@ -1637,6 +1685,19 @@ hdac_resume(device_t dev) device_printf(dev, "Starting RIRB Engine...\n"); ); hdac_rirb_start(sc); + + /* + * Clear HDAC_WAKEEN as at present we have no use for SDI wake + * (status change) events. The documentation says that we should + * not make any assumptions about the state of this register and + * set it explicitly. + * Also, clear HDAC_STATESTS. + * NB: this needs to be done before the interrupt is enabled as + * the handler does not expect this interrupt source. + */ + HDAC_WRITE_2(&sc->mem, HDAC_WAKEEN, 0); + HDAC_WRITE_2(&sc->mem, HDAC_STATESTS, HDAC_STATESTS_SDIWAKE_MASK); + HDA_BOOTHVERBOSE( device_printf(dev, "Enabling controller interrupt...\n"); ); From owner-svn-src-stable@freebsd.org Thu Jul 30 13:17:02 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9246E3A547F; Thu, 30 Jul 2020 13:17:02 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHWCf3MFnz4MHH; Thu, 30 Jul 2020 13:17:02 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5683F11564; Thu, 30 Jul 2020 13:17:02 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UDH2kU006815; Thu, 30 Jul 2020 13:17:02 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UDH2Bg006814; Thu, 30 Jul 2020 13:17:02 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301317.06UDH2Bg006814@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 13:17:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363691 - stable/12/sys/dev/gpio X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: stable/12/sys/dev/gpio X-SVN-Commit-Revision: 363691 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 13:17:02 -0000 Author: avg Date: Thu Jul 30 13:17:01 2020 New Revision: 363691 URL: https://svnweb.freebsd.org/changeset/base/363691 Log: MFC r362492: gpiobus_release_pin: remove incorrect prefix from error messages Modified: stable/12/sys/dev/gpio/gpiobus.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/gpio/gpiobus.c ============================================================================== --- stable/12/sys/dev/gpio/gpiobus.c Thu Jul 30 12:59:23 2020 (r363690) +++ stable/12/sys/dev/gpio/gpiobus.c Thu Jul 30 13:17:01 2020 (r363691) @@ -421,13 +421,13 @@ gpiobus_release_pin(device_t bus, uint32_t pin) /* Consistency check. */ if (pin >= sc->sc_npins) { device_printf(bus, - "gpiobus_acquire_pin: invalid pin %d, max=%d\n", + "invalid pin %d, max=%d\n", pin, sc->sc_npins - 1); return (-1); } if (!sc->sc_pins[pin].mapped) { - device_printf(bus, "gpiobus_acquire_pin: pin %d is not mapped\n", pin); + device_printf(bus, "pin %d is not mapped\n", pin); return (-1); } sc->sc_pins[pin].mapped = 0; From owner-svn-src-stable@freebsd.org Thu Jul 30 13:55:06 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1C9593A61AA; Thu, 30 Jul 2020 13:55:06 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHX3Y6Vtvz4PCv; Thu, 30 Jul 2020 13:55:05 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C279611EAD; Thu, 30 Jul 2020 13:55:05 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UDt5TH031160; Thu, 30 Jul 2020 13:55:05 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UDt50o031158; Thu, 30 Jul 2020 13:55:05 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301355.06UDt50o031158@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 13:55:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363694 - in stable/12/sys: dev/ena modules/ena X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: in stable/12/sys: dev/ena modules/ena X-SVN-Commit-Revision: 363694 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 13:55:06 -0000 Author: avg Date: Thu Jul 30 13:55:05 2020 New Revision: 363694 URL: https://svnweb.freebsd.org/changeset/base/363694 Log: MFC r362530: teach ena driver about RSS kernel option Networking is broken if the driver configures its (virtual) hardware to use a hash algorithm (or a key) different from the one that the network stack (software RSS) uses. This can be seen with connections initiated from the host. The PCB will be placed into the hash table based on the hash value calculated by the software. The hardware-calculated hash value in reponse packets will be different, so the PCB won't be found. Tested with a kernel compiled with 'options RSS' on an instance with ena driver. Modified: stable/12/sys/dev/ena/ena.c stable/12/sys/modules/ena/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/ena/ena.c ============================================================================== --- stable/12/sys/dev/ena/ena.c Thu Jul 30 13:36:24 2020 (r363693) +++ stable/12/sys/dev/ena/ena.c Thu Jul 30 13:55:05 2020 (r363694) @@ -30,6 +30,8 @@ #include __FBSDID("$FreeBSD$"); +#include "opt_rss.h" + #include #include #include @@ -62,6 +64,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#ifdef RSS +#include +#endif #include #include @@ -1424,6 +1429,19 @@ ena_rx_hash_mbuf(struct ena_ring *rx_ring, struct ena_ if (likely(adapter->rss_support)) { mbuf->m_pkthdr.flowid = ena_rx_ctx->hash; +#ifdef RSS + /* + * Hardware and software RSS are in agreement only when both are + * configured to Toeplitz algorithm. This driver configures + * that algorithm only when software RSS is enabled and uses it. + */ + if (adapter->ena_dev->rss.hash_func != ENA_ADMIN_TOEPLITZ && + ena_rx_ctx->l3_proto != ENA_ETH_IO_L3_PROTO_UNKNOWN) { + M_HASHTYPE_SET(mbuf, M_HASHTYPE_OPAQUE_HASH); + return; + } +#endif + if (ena_rx_ctx->frag && (ena_rx_ctx->l3_proto != ENA_ETH_IO_L3_PROTO_UNKNOWN)) { M_HASHTYPE_SET(mbuf, M_HASHTYPE_OPAQUE_HASH); @@ -3106,6 +3124,16 @@ ena_rss_init_default(struct ena_adapter *adapter) } } +#ifdef RSS + uint8_t rss_algo = rss_gethashalgo(); + if (rss_algo == RSS_HASH_TOEPLITZ) { + uint8_t hash_key[RSS_KEYSIZE]; + + rss_getkey(hash_key); + rc = ena_com_fill_hash_function(ena_dev, ENA_ADMIN_TOEPLITZ, + hash_key, RSS_KEYSIZE, 0xFFFFFFFF); + } else +#endif rc = ena_com_fill_hash_function(ena_dev, ENA_ADMIN_CRC32, NULL, ENA_HASH_KEY_SIZE, 0xFFFFFFFF); if (unlikely((rc != 0) && (rc != EOPNOTSUPP))) { Modified: stable/12/sys/modules/ena/Makefile ============================================================================== --- stable/12/sys/modules/ena/Makefile Thu Jul 30 13:36:24 2020 (r363693) +++ stable/12/sys/modules/ena/Makefile Thu Jul 30 13:55:05 2020 (r363694) @@ -36,6 +36,7 @@ KMOD = if_ena SRCS = ena.c ena_com.c ena_eth_com.c ena_sysctl.c SRCS += device_if.h bus_if.h pci_if.h +SRCS += opt_rss.h CFLAGS += -I${SRCTOP}/sys/contrib .include From owner-svn-src-stable@freebsd.org Thu Jul 30 13:56:46 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 517DD3A6538; Thu, 30 Jul 2020 13:56:46 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHX5V1Swqz4PXq; Thu, 30 Jul 2020 13:56:46 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1600E11EAE; Thu, 30 Jul 2020 13:56:46 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UDujEN031300; Thu, 30 Jul 2020 13:56:45 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UDujjh031299; Thu, 30 Jul 2020 13:56:45 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301356.06UDujjh031299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 13:56:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363695 - stable/12/sys/modules/dtb/allwinner X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: stable/12/sys/modules/dtb/allwinner X-SVN-Commit-Revision: 363695 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 13:56:46 -0000 Author: avg Date: Thu Jul 30 13:56:45 2020 New Revision: 363695 URL: https://svnweb.freebsd.org/changeset/base/363695 Log: MFC r363232: build DTS for Orange Pi PC Plus as well Modified: stable/12/sys/modules/dtb/allwinner/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/modules/dtb/allwinner/Makefile ============================================================================== --- stable/12/sys/modules/dtb/allwinner/Makefile Thu Jul 30 13:55:05 2020 (r363694) +++ stable/12/sys/modules/dtb/allwinner/Makefile Thu Jul 30 13:56:45 2020 (r363695) @@ -21,6 +21,7 @@ DTS= \ sun8i-h3-nanopi-neo.dts \ sun8i-h3-orangepi-one.dts \ sun8i-h3-orangepi-pc.dts \ + sun8i-h3-orangepi-pc-plus.dts \ sun8i-h3-orangepi-plus2e.dts DTSO= sun8i-a83t-sid.dtso \ From owner-svn-src-stable@freebsd.org Thu Jul 30 14:01:55 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 060503A6741; Thu, 30 Jul 2020 14:01:55 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHXCQ6QbJz4Q0h; Thu, 30 Jul 2020 14:01:54 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BFD7F120AD; Thu, 30 Jul 2020 14:01:54 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UE1sE2034018; Thu, 30 Jul 2020 14:01:54 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UE1sXj034017; Thu, 30 Jul 2020 14:01:54 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301401.06UE1sXj034017@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 14:01:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363696 - stable/12/sys/dev/gpio X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: stable/12/sys/dev/gpio X-SVN-Commit-Revision: 363696 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:01:55 -0000 Author: avg Date: Thu Jul 30 14:01:54 2020 New Revision: 363696 URL: https://svnweb.freebsd.org/changeset/base/363696 Log: MFC r363382: gpioiic: never drive lines active high Few drivers support GPIO_PIN_OPENDRAIN. Modified: stable/12/sys/dev/gpio/gpioiic.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/gpio/gpioiic.c ============================================================================== --- stable/12/sys/dev/gpio/gpioiic.c Thu Jul 30 13:56:45 2020 (r363695) +++ stable/12/sys/dev/gpio/gpioiic.c Thu Jul 30 14:01:54 2020 (r363696) @@ -191,16 +191,14 @@ static void gpioiic_setsda(device_t dev, int val) { struct gpioiic_softc *sc = device_get_softc(dev); - int err; - /* - * Some controllers cannot set an output value while a pin is in input - * mode; in that case we set the pin again after changing mode. - */ - err = gpio_pin_set_active(sc->sdapin, val); - gpio_pin_setflags(sc->sdapin, GPIO_PIN_OUTPUT | GPIO_PIN_OPENDRAIN); - if (err != 0) - gpio_pin_set_active(sc->sdapin, val); + if (val) { + gpio_pin_setflags(sc->sdapin, GPIO_PIN_INPUT); + } else { + gpio_pin_setflags(sc->sdapin, + GPIO_PIN_OUTPUT | GPIO_PIN_OPENDRAIN); + gpio_pin_set_active(sc->sdapin, 0); + } } static void @@ -208,8 +206,13 @@ gpioiic_setscl(device_t dev, int val) { struct gpioiic_softc *sc = device_get_softc(dev); - gpio_pin_setflags(sc->sclpin, GPIO_PIN_OUTPUT | GPIO_PIN_OPENDRAIN); - gpio_pin_set_active(sc->sclpin, val); + if (val) { + gpio_pin_setflags(sc->sclpin, GPIO_PIN_INPUT); + } else { + gpio_pin_setflags(sc->sclpin, + GPIO_PIN_OUTPUT | GPIO_PIN_OPENDRAIN); + gpio_pin_set_active(sc->sclpin, 0); + } } static int From owner-svn-src-stable@freebsd.org Thu Jul 30 14:05:25 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 569843A6871; Thu, 30 Jul 2020 14:05:25 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHXHT1dynz4Q8T; Thu, 30 Jul 2020 14:05:25 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 01873121B7; Thu, 30 Jul 2020 14:05:25 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UE5Oij037294; Thu, 30 Jul 2020 14:05:24 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UE5Ovs037292; Thu, 30 Jul 2020 14:05:24 GMT (envelope-from avg@FreeBSD.org) Message-Id: <202007301405.06UE5Ovs037292@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Thu, 30 Jul 2020 14:05:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363697 - in stable/12/sys/cddl/dev: dtrace/arm fbt/arm X-SVN-Group: stable-12 X-SVN-Commit-Author: avg X-SVN-Commit-Paths: in stable/12/sys/cddl/dev: dtrace/arm fbt/arm X-SVN-Commit-Revision: 363697 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:05:25 -0000 Author: avg Date: Thu Jul 30 14:05:24 2020 New Revision: 363697 URL: https://svnweb.freebsd.org/changeset/base/363697 Log: MFC r363383: dtrace/fbt: fix return probe arguments on arm arg0 should be an offset of the return point within the function, arg1 should be the return value. Previously the return probe had arguments as if for the entry probe. Tested on armv7. andrew noted that the same problem seems to be present on arm64, mips, and riscv. I am not sure if I will get around to fixing those. So, platform users or anyone looking to make a contribution please be aware of this opportunity. Modified: stable/12/sys/cddl/dev/dtrace/arm/dtrace_subr.c stable/12/sys/cddl/dev/fbt/arm/fbt_isa.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/cddl/dev/dtrace/arm/dtrace_subr.c ============================================================================== --- stable/12/sys/cddl/dev/dtrace/arm/dtrace_subr.c Thu Jul 30 14:01:54 2020 (r363696) +++ stable/12/sys/cddl/dev/dtrace/arm/dtrace_subr.c Thu Jul 30 14:05:24 2020 (r363697) @@ -248,7 +248,7 @@ dtrace_invop_start(struct trapframe *frame) register_t *r0, *sp; int data, invop, reg, update_sp; - invop = dtrace_invop(frame->tf_pc, frame, frame->tf_pc); + invop = dtrace_invop(frame->tf_pc, frame, frame->tf_r0); switch (invop & DTRACE_INVOP_MASK) { case DTRACE_INVOP_PUSHM: sp = (register_t *)frame->tf_svc_sp; Modified: stable/12/sys/cddl/dev/fbt/arm/fbt_isa.c ============================================================================== --- stable/12/sys/cddl/dev/fbt/arm/fbt_isa.c Thu Jul 30 14:01:54 2020 (r363696) +++ stable/12/sys/cddl/dev/fbt/arm/fbt_isa.c Thu Jul 30 14:05:24 2020 (r363697) @@ -56,9 +56,12 @@ fbt_invop(uintptr_t addr, struct trapframe *frame, uin register_t fifthparam; for (; fbt != NULL; fbt = fbt->fbtp_hashnext) { - if ((uintptr_t)fbt->fbtp_patchpoint == addr) { - cpu->cpu_dtrace_caller = addr; + if ((uintptr_t)fbt->fbtp_patchpoint != addr) + continue; + cpu->cpu_dtrace_caller = addr; + + if (fbt->fbtp_roffset == 0) { /* Get 5th parameter from stack */ DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); fifthparam = *(register_t *)frame->tf_svc_sp; @@ -67,11 +70,13 @@ fbt_invop(uintptr_t addr, struct trapframe *frame, uin dtrace_probe(fbt->fbtp_id, frame->tf_r0, frame->tf_r1, frame->tf_r2, frame->tf_r3, fifthparam); - - cpu->cpu_dtrace_caller = 0; - - return (fbt->fbtp_rval | (fbt->fbtp_savedval << DTRACE_INVOP_SHIFT)); + } else { + dtrace_probe(fbt->fbtp_id, fbt->fbtp_roffset, rval, + 0, 0, 0); } + + cpu->cpu_dtrace_caller = 0; + return (fbt->fbtp_rval | (fbt->fbtp_savedval << DTRACE_INVOP_SHIFT)); } return (0); @@ -178,6 +183,7 @@ again: fbt->fbtp_rval = DTRACE_INVOP_B; else fbt->fbtp_rval = DTRACE_INVOP_POPM; + fbt->fbtp_roffset = (uintptr_t)instr - (uintptr_t)symval->value; fbt->fbtp_savedval = *instr; fbt->fbtp_patchval = FBT_BREAKPOINT; fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; From owner-svn-src-stable@freebsd.org Thu Jul 30 14:41:42 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 2473D3A768D; Thu, 30 Jul 2020 14:41:42 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHY5L0Bq9z4S13; Thu, 30 Jul 2020 14:41:42 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id DF2061282D; Thu, 30 Jul 2020 14:41:41 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UEffsu060943; Thu, 30 Jul 2020 14:41:41 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UEffeA060942; Thu, 30 Jul 2020 14:41:41 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202007301441.06UEffeA060942@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 30 Jul 2020 14:41:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363698 - stable/12/sbin/md5 X-SVN-Group: stable-12 X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: stable/12/sbin/md5 X-SVN-Commit-Revision: 363698 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:41:42 -0000 Author: emaste Date: Thu Jul 30 14:41:41 2020 New Revision: 363698 URL: https://svnweb.freebsd.org/changeset/base/363698 Log: MFC r363457: md5: return non-zero if built-in tests (-x) fail Modified: stable/12/sbin/md5/md5.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/md5/md5.c ============================================================================== --- stable/12/sbin/md5/md5.c Thu Jul 30 14:05:24 2020 (r363697) +++ stable/12/sbin/md5/md5.c Thu Jul 30 14:41:41 2020 (r363698) @@ -498,10 +498,12 @@ MDTestSuite(const Algorithm_t *alg) for (i = 0; i < MDTESTCOUNT; i++) { (*alg->Data)(MDTestInput[i], strlen(MDTestInput[i]), buffer); printf("%s (\"%s\") = %s", alg->name, MDTestInput[i], buffer); - if (strcmp(buffer, (*alg->TestOutput)[i]) == 0) + if (strcmp(buffer, (*alg->TestOutput)[i]) == 0) { printf(" - verified correct\n"); - else + } else { printf(" - INCORRECT RESULT!\n"); + failed++; + } } } From owner-svn-src-stable@freebsd.org Thu Jul 30 14:42:51 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 23B903A77D3; Thu, 30 Jul 2020 14:42:51 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHY6g05Bjz4SJY; Thu, 30 Jul 2020 14:42:51 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D9E26127ED; Thu, 30 Jul 2020 14:42:50 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UEgo7G061781; Thu, 30 Jul 2020 14:42:50 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UEgogV061780; Thu, 30 Jul 2020 14:42:50 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <202007301442.06UEgogV061780@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Thu, 30 Jul 2020 14:42:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363699 - stable/12/usr.bin/fortune X-SVN-Group: stable-12 X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: stable/12/usr.bin/fortune X-SVN-Commit-Revision: 363699 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:42:51 -0000 Author: emaste Date: Thu Jul 30 14:42:50 2020 New Revision: 363699 URL: https://svnweb.freebsd.org/changeset/base/363699 Log: MFC r361596: fortune: remove warning about potentially offensive fortunes They were removed long ago. PR: 246736 Submitted by: Ruby Lazuli Lord Modified: stable/12/usr.bin/fortune/README Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/fortune/README ============================================================================== --- stable/12/usr.bin/fortune/README Thu Jul 30 14:41:41 2020 (r363698) +++ stable/12/usr.bin/fortune/README Thu Jul 30 14:42:50 2020 (r363699) @@ -1,13 +1,6 @@ # @(#)README 8.1 (Berkeley) 5/31/93 # $FreeBSD$ -The potentially offensive fortunes are installed by default on FreeBSD -systems. If you're absolutely, *positively*, without-a-shadow-of-a-doubt -sure that your user community goes berzerk/sues your pants off/drops dead -upon reading one of them, edit the Makefile in the subdirectory datfiles, -and do "make all install". - -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Some years ago, my neighbor Avery said to me: "There has not been an adequate jokebook published since "Joe_Miller", which came out in 1739 and which, incidentally, was the most miserable no-good ... jokebook in the From owner-svn-src-stable@freebsd.org Thu Jul 30 14:48:49 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 07CC03A7940; Thu, 30 Jul 2020 14:48:49 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHYFX6Nvyz4SSR; Thu, 30 Jul 2020 14:48:48 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BF89D12A86; Thu, 30 Jul 2020 14:48:48 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UEmmGH062382; Thu, 30 Jul 2020 14:48:48 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UEmmjT062381; Thu, 30 Jul 2020 14:48:48 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007301448.06UEmmjT062381@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 30 Jul 2020 14:48:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363701 - stable/12/sys/fs/cuse X-SVN-Group: stable-12 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/12/sys/fs/cuse X-SVN-Commit-Revision: 363701 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:48:49 -0000 Author: markj Date: Thu Jul 30 14:48:48 2020 New Revision: 363701 URL: https://svnweb.freebsd.org/changeset/base/363701 Log: MFC r363446: cuse: Stop checking for failures from malloc(M_WAITOK). Modified: stable/12/sys/fs/cuse/cuse.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/fs/cuse/cuse.c ============================================================================== --- stable/12/sys/fs/cuse/cuse.c Thu Jul 30 14:45:05 2020 (r363700) +++ stable/12/sys/fs/cuse/cuse.c Thu Jul 30 14:48:48 2020 (r363701) @@ -425,8 +425,6 @@ cuse_server_alloc_memory(struct cuse_server *pcs, uint int error; mem = malloc(sizeof(*mem), M_CUSE, M_WAITOK | M_ZERO); - if (mem == NULL) - return (ENOMEM); object = vm_pager_allocate(OBJT_SWAP, NULL, PAGE_SIZE * page_count, VM_PROT_DEFAULT, 0, curthread->td_ucred); @@ -748,8 +746,6 @@ cuse_server_open(struct cdev *dev, int fflags, int dev struct cuse_server *pcs; pcs = malloc(sizeof(*pcs), M_CUSE, M_WAITOK | M_ZERO); - if (pcs == NULL) - return (ENOMEM); if (devfs_set_cdevpriv(pcs, &cuse_server_free)) { printf("Cuse: Cannot set cdevpriv.\n"); @@ -1217,10 +1213,6 @@ cuse_server_ioctl(struct cdev *dev, unsigned long cmd, pcsd = malloc(sizeof(*pcsd), M_CUSE, M_WAITOK | M_ZERO); - if (pcsd == NULL) { - error = ENOMEM; - break; - } pcsd->server = pcs; pcsd->user_dev = pcd->dev; @@ -1430,11 +1422,6 @@ cuse_client_open(struct cdev *dev, int fflags, int dev } pcc = malloc(sizeof(*pcc), M_CUSE, M_WAITOK | M_ZERO); - if (pcc == NULL) { - /* drop reference on server */ - cuse_server_unref(pcs); - return (ENOMEM); - } if (devfs_set_cdevpriv(pcc, &cuse_client_free)) { printf("Cuse: Cannot set cdevpriv.\n"); /* drop reference on server */ From owner-svn-src-stable@freebsd.org Thu Jul 30 14:50:44 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9504D3A78DE; Thu, 30 Jul 2020 14:50:44 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHYHm3TLMz4Svs; Thu, 30 Jul 2020 14:50:44 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5BDC212A8E; Thu, 30 Jul 2020 14:50:44 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UEoiSF064855; Thu, 30 Jul 2020 14:50:44 GMT (envelope-from markj@FreeBSD.org) Received: (from markj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UEoivM064854; Thu, 30 Jul 2020 14:50:44 GMT (envelope-from markj@FreeBSD.org) Message-Id: <202007301450.06UEoivM064854@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: markj set sender to markj@FreeBSD.org using -f From: Mark Johnston Date: Thu, 30 Jul 2020 14:50:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363702 - stable/11/sys/fs/cuse X-SVN-Group: stable-11 X-SVN-Commit-Author: markj X-SVN-Commit-Paths: stable/11/sys/fs/cuse X-SVN-Commit-Revision: 363702 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 14:50:44 -0000 Author: markj Date: Thu Jul 30 14:50:43 2020 New Revision: 363702 URL: https://svnweb.freebsd.org/changeset/base/363702 Log: MFC r363446: cuse: Stop checking for failures from malloc(M_WAITOK). Modified: stable/11/sys/fs/cuse/cuse.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/fs/cuse/cuse.c ============================================================================== --- stable/11/sys/fs/cuse/cuse.c Thu Jul 30 14:48:48 2020 (r363701) +++ stable/11/sys/fs/cuse/cuse.c Thu Jul 30 14:50:43 2020 (r363702) @@ -427,8 +427,6 @@ cuse_server_alloc_memory(struct cuse_server *pcs, uint int error; mem = malloc(sizeof(*mem), M_CUSE, M_WAITOK | M_ZERO); - if (mem == NULL) - return (ENOMEM); object = vm_pager_allocate(OBJT_SWAP, NULL, PAGE_SIZE * page_count, VM_PROT_DEFAULT, 0, curthread->td_ucred); @@ -750,8 +748,6 @@ cuse_server_open(struct cdev *dev, int fflags, int dev struct cuse_server *pcs; pcs = malloc(sizeof(*pcs), M_CUSE, M_WAITOK | M_ZERO); - if (pcs == NULL) - return (ENOMEM); if (devfs_set_cdevpriv(pcs, &cuse_server_free)) { printf("Cuse: Cannot set cdevpriv.\n"); @@ -1219,10 +1215,6 @@ cuse_server_ioctl(struct cdev *dev, unsigned long cmd, pcsd = malloc(sizeof(*pcsd), M_CUSE, M_WAITOK | M_ZERO); - if (pcsd == NULL) { - error = ENOMEM; - break; - } pcsd->server = pcs; pcsd->user_dev = pcd->dev; @@ -1432,11 +1424,6 @@ cuse_client_open(struct cdev *dev, int fflags, int dev } pcc = malloc(sizeof(*pcc), M_CUSE, M_WAITOK | M_ZERO); - if (pcc == NULL) { - /* drop reference on server */ - cuse_server_unref(pcs); - return (ENOMEM); - } if (devfs_set_cdevpriv(pcc, &cuse_client_free)) { printf("Cuse: Cannot set cdevpriv.\n"); /* drop reference on server */ From owner-svn-src-stable@freebsd.org Thu Jul 30 15:48:47 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E793A3A8CC1; Thu, 30 Jul 2020 15:48:47 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-QB1-obe.outbound.protection.outlook.com (mail-eopbgr660078.outbound.protection.outlook.com [40.107.66.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHZZk5lXJz4XRR; Thu, 30 Jul 2020 15:48:46 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RxEkNwD+dX53mGR0PtUlNMNktq5twAV2Hffpx4h211bPdnNyn1gF4wU7Kjc0Nv3s6c8/Q6XVdE4Jv3L4zhFS0ANZOyxlxZRnTi29f30NcwU7z0kag3jKeny4GxOUx2YPIs8l2fBLmCUwfv8ZkdfAAJiO29AzBT0jtnmoQzikf8rnY2A/aCZzJiUpy7NGCAvcDBdOP/T6nmWhHpOeRMQ4NUKkgesBlhkiJ1R6NFIo4qymB2JSzgfzHIPyQIeMhtUJV7cQHh2s+SiDfpHNt1QejoyhBfZ1Tf6Sr9JhwcYjLKuyROdZR0BI98X7Ygh5oWe9WbIV1Ewg+JwYcfI1+9ynlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9CcKBRaEJuijOJrMKnRObEjUu9L+pimPLQOTaCpWh8Q=; b=FM1XAaw/F+ZisXA399VOpGVHLAu9D480Ym4DmLr6NNEXOI4N6SN8ECZRB4WrnHqsE1FFPIFoXGNAAYA9ATTuu9z2+P4gaab9sxf/hMFqyWfvOjd/yU+yqiOcMQz0kMi6z3WTfcMLH0x/4MtPSE6zoEwtBQrTkw/xWaVhsqLLdb3T7aSqsr0r89B4ARYXv5QUDUt8PX+M5hZMEwH/Awcj9mQn74Gqdbr3/nfCz1PPHB5LeLpsM4BeN6BPIGKVY0ltmiXP0Eh+Kc41+6qJZfr9X7zcSgo8uYuaFzl8IYpi518rVA6D5j7z9SkWdUfUqW+JkM1/sEsYSsYqQHJcdVibyQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uoguelph.ca; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9CcKBRaEJuijOJrMKnRObEjUu9L+pimPLQOTaCpWh8Q=; b=rHTxbyL/29l/rQjCWBrM6PefFaRzlbzGzCjVpIkThOkhW/JDDXGpOzN9EpCsqD27EuAukN213I+YFwUKWQqDHOZ+QsXR/P/FhNhL3LIIVKs7JB8CL0SGINoyyPsmEcC9WjUHKmCq1UG26PwOlhHvL1ujcKFaQgS9SZv8DjxH2WLqn5jSom986iKYKtMfY3SHrZ9eeIAEHrOxiwM3646SsjhyU2yGk2S6kYC/2l78U9d0gKtHa8hv/tPSHZmMWy4hcBv9d7PDSUpJ5tJAUXurSfe3YWMHS4xafXqUtOskq3bv40DNL2ixmgRVPgCciB7FInbxGp1Qhni7g6rndMV8yA== Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:38::14) by YQXPR0101MB1845.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:1e::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3239.16; Thu, 30 Jul 2020 15:48:44 +0000 Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91]) by QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91%7]) with mapi id 15.20.3216.033; Thu, 30 Jul 2020 15:48:34 +0000 From: Rick Macklem To: Ian Lepore , Brooks Davis , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Topic: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Index: AQHWZGw7l3AA2GANGkmYHY+WWlMRT6kfVzKsgAAiMQCAADpv4oAAiFtW Date: Thu, 30 Jul 2020 15:48:34 +0000 Message-ID: References: <202007272318.06RNIFjV005206@repo.freebsd.org> , <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org>, In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 00af6f22-fa8d-4352-c19f-08d834a00479 x-ms-traffictypediagnostic: YQXPR0101MB1845: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: MjzssD9sqDpP/QBV42oV3RFf90tfXtXtCDFa4S8/7bwbPrSLKRNi0JFcheaRICLI698xIfYGVkeV2EOfNXZ2Iaf+2CdlT0GLmeCOQx+4Ud9598HfgDDfEuzkltS07/VuPR5oarn0E3Q1fd05SZHVvPjOosIMbItrHuU9cK6gJHb/Jd/fwJdmWJ1LILpNJtD0MZ+0Wnysh48bAkECEKlp+4iAEb0byaI4K4txwcpMAKBVUtJcfSZM/IfgQ6kqXHwEFHEJD62BclQNi1evAQvdOXHrrPB9Tps22Df7V6Th67kHS9AHktBcjaM78V+vaozwbvT0hgin48Se3haNj7Ksiov7oZKwT84bt2PnxYG6qy/hy6lFFwZja2Fpn6d3xA1go8cCnZt67j/GsAVhu3BrxQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFTY:; SFS:(39860400002)(346002)(376002)(136003)(396003)(366004)(450100002)(7696005)(6506007)(33656002)(52536014)(5660300002)(64756008)(71200400001)(66946007)(66446008)(66476007)(66556008)(86362001)(91956017)(76116006)(316002)(786003)(83380400001)(2906002)(55016002)(110136005)(9686003)(8936002)(2940100002)(966005)(478600001)(186003)(8676002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: TyzyOW4eTkefbN+Hmbi4z/aOJsytD6rxsm13itq7Jlq+8PznlqdUvAut/992Vq9C0GH4gCH4Mjuh1ohw1nW374NGm+QOdxWOqADzs6E8nJ3OzXQDivjksZiHn0K8HeSoFCjYX4Gdm7cN5wQz6txAYM7AKDlA8Neq2kwZtTw0NeKGPtLHCSAq0iiuERqHAagqI1E3NuPLhbr+tYOibcpgbE/8KyYtubV3qxsw17wJsBcVzkC5iBmBVvf/WFbKFfor3ekniPkDcjZIYPqL5X0ZlIdsY2E7pJmkXBKBIhfM8vUm96HfLRbW2XgYFudjAVxZB7ZnXJHuIjQPtd+b/V26ghOvKtspHE2NPLxNeeYmtFRqdklWNKDcCLmVZzwwElt6nqXazHsfeiXpfxTweZWcIllQccuolVN4XQXvK14PEsq+Zyd0zeUVcqaUBkTlJgK64xHkKEn7w5IGLDYwVFtuagARZfT82fUX5QRQioHCflNHrofW596aXEdoQUuXyq6Taw78fAvP+GjxRaki3BEeD0V2iVYATPpOgOUoz9BCOtiJMeL1MRhY82qe7XCUeLX0xgShHlI3GeBWMIgYHmQrOSQf0owb01Hz72YlJLUzsId9PRad6xp1erhIp9rcnKpjC9qYiZSXxAq11yNP3J7aPiby9QNjy55MHY06QKx9Xy/u9LNTwD8bi/yznG3iajrPdvUm0S5XBizdgOZ4EFxkPQ== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 00af6f22-fa8d-4352-c19f-08d834a00479 X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2020 15:48:34.6325 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: U9wkhxTVIA9wjLRCZF8KVWJHTii023a1avHhyx9pl6+w21UTy7t4IXQQN04l6+YPOT3xF7keKQrj0n+G4yS/bA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YQXPR0101MB1845 X-Rspamd-Queue-Id: 4BHZZk5lXJz4XRR X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=uoguelph.ca header.s=selector1 header.b=rHTxbyL/; dmarc=none; spf=pass (mx1.freebsd.org: domain of rmacklem@uoguelph.ca designates 40.107.66.78 as permitted sender) smtp.mailfrom=rmacklem@uoguelph.ca X-Spamd-Result: default: False [-4.66 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-0.995]; R_DKIM_ALLOW(-0.20)[uoguelph.ca:s=selector1]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:40.107.0.0/16]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[uoguelph.ca]; NEURAL_HAM_LONG(-1.04)[-1.036]; RCPT_COUNT_FIVE(0.00)[6]; DWL_DNSWL_LOW(-1.00)[uoguelph.ca:dkim]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[uoguelph.ca:+]; NEURAL_HAM_SHORT(-0.13)[-0.133]; RCVD_IN_DNSWL_NONE(0.00)[40.107.66.78:from]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:8075, ipnet:40.104.0.0/14, country:US]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector9901:i=1]; RWL_MAILSPIKE_POSSIBLE(0.00)[40.107.66.78:from] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 15:48:48 -0000 Rick Macklem wrote:=0A= >Ian Lepore wrote:=0A= >>On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote:=0A= >>> Brooks Davis wrote:=0A= >>> > Author: brooks=0A= >>> > Date: Mon Jul 27 23:18:14 2020=0A= >>> > New Revision: 363625=0A= >>> > URL: https://svnweb.freebsd.org/changeset/base/363625=0A= >>> >=0A= >>> > Log:=0A= >>> > MFC r363439:=0A= >>> >=0A= >>> > Correct a type-mismatch between xdr_long and the variable "bad".=0A= >>> >=0A= >>> > [...]=0A= >>> --> I can't see how the xdr.c code would work for a machine that is=0A= >>> BIG_ENDIAN and where "long" is 64bits, but we don't have any of=0A= >>> those.=0A= >>>=0A= >>=0A= >>mips64 and powerpc64 are both big endian with 64-bit long.=0A= >Oops, I didn't know that. In the past, I've run PowerPC and MIPS, but thou= ght=0A= >they both were little endian. (I recall the arches can be run either way.)= =0A= >=0A= >Anyhow, take a look at head/lib/libc/xdr/xdr.c and it looks to me like it= =0A= >has been broken "forever" (ever since we stopped using a K&R compiler=0A= >that would have always made "long" 32bits).=0A= OK, I took another look at xdr.c and it isn't broken as I thought.=0A= =0A= xdr_long() takes a "long *" argument ("long" in Sun XDR is 32bits),=0A= but then it only passes it as an argument to XDR_PUTLONG(), which is actual= ly=0A= a call to xdrmem_putlong_aligned() or xdrmem_putlong_unaligned().=0A= For xdrmem_putlong_aligned(), the line is:=0A= *(u_int32_t *)xdrs->x_private =3D htonl((u_int32_t)*lp);=0A= --> where lp is a "long *"=0A= =0A= I'll admit I'm not 100% sure if "(u_int32_t)*lp" gets the correct 32bits of= a 64bit=0A= long pointer for all arches? (I'm not very good at knowing what type casts = do.)=0A= If this is the equivalent of "u_int32_t t; t =3D *lp; htonl(t); then I thin= k the code is ok?=0A= (At least it makes it clear that it is using 32bits of the value pointed to= by the=0A= argument.)=0A= =0A= For xdrmem_putlong_unaligned(), it does the same thing via:=0A= u_int32_t l;=0A= =85.=0A= l =3D htonl((u_int32_t)*lp);=0A= =0A= --> At least the man page for xdr_long() should be clarified to note it=0A= puts a 32bit quantity on the wire.=0A= =0A= >If anyone has either of these and can set up an NFS server on one of=0A= >them and then try and do an NFSv3 mount that is not allowed, it would=0A= >be interesting to see the packet trace and if the MNT RPC fails, because= =0A= >it looks like it will put the high order 32bits on the wire and they'll=0A= >always be 0?=0A= It would still be interesting to test this on a 64bit big endian, but so lo= ng as=0A= the above cast works, it does look like it works for all arches.=0A= =0A= >Just to clarify. The behaviour wasn't broken by this commit. I just=0A= >don't see how the commit fixes anything?=0A= My mistake. Sorry for the noise.=0A= =0A= I now think the commit is correct since it uses "*lp" to get the value befo= re=0A= casting it down to 32bits. Passing in an "int *" was incorrect.=0A= =0A= The code does seem to handle "long *" for 64bit arches, although it=0A= only puts 32bits "on-the-wire".=0A= =0A= rick, who was confused because he knew there was only supposed to be=0A= 32bits go on the wire.=0A= =0A= -- Ian=0A= =0A= =0A= =0A= From owner-svn-src-stable@freebsd.org Thu Jul 30 17:10:23 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 965BC3AAC97; Thu, 30 Jul 2020 17:10:23 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHcNt5LgMz4fNF; Thu, 30 Jul 2020 17:10:22 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 70A4B3C0199; Thu, 30 Jul 2020 17:10:16 +0000 (UTC) Date: Thu, 30 Jul 2020 17:10:16 +0000 From: Brooks Davis To: Rick Macklem Cc: Ian Lepore , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd Message-ID: <20200730171016.GC94620@spindle.one-eyed-alien.net> References: <202007272318.06RNIFjV005206@repo.freebsd.org> <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="LKTjZJSUETSlgu2t" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) X-Rspamd-Queue-Id: 4BHcNt5LgMz4fNF X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of brooks@spindle.one-eyed-alien.net has no SPF policy when checking 199.48.129.229) smtp.mailfrom=brooks@spindle.one-eyed-alien.net X-Spamd-Result: default: False [-2.97 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.26)[-0.259]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-0.72)[-0.716]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; DMARC_NA(0.00)[freebsd.org]; AUTH_NA(1.00)[]; RCPT_COUNT_FIVE(0.00)[6]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_HAM_SHORT(-1.10)[-1.098]; SIGNED_PGP(-2.00)[]; FORGED_SENDER(0.30)[brooks@freebsd.org,brooks@spindle.one-eyed-alien.net]; RCVD_COUNT_ZERO(0.00)[0]; R_SPF_NA(0.00)[no SPF record]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:36236, ipnet:199.48.128.0/22, country:US]; FROM_NEQ_ENVFROM(0.00)[brooks@freebsd.org,brooks@spindle.one-eyed-alien.net] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 17:10:23 -0000 --LKTjZJSUETSlgu2t Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jul 30, 2020 at 03:48:34PM +0000, Rick Macklem wrote: > Rick Macklem wrote: > >Ian Lepore wrote: > >>On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote: > >>> Brooks Davis wrote: > >>> > Author: brooks > >>> > Date: Mon Jul 27 23:18:14 2020 > >>> > New Revision: 363625 > >>> > URL: https://svnweb.freebsd.org/changeset/base/363625 > >>> > > >>> > Log: > >>> > MFC r363439: > >>> > > >>> > Correct a type-mismatch between xdr_long and the variable "bad". > >>> > > >>> > [...] > >>> --> I can't see how the xdr.c code would work for a machine that is > >>> BIG_ENDIAN and where "long" is 64bits, but we don't have any of > >>> those. > >>> > >> > >>mips64 and powerpc64 are both big endian with 64-bit long. > >Oops, I didn't know that. In the past, I've run PowerPC and MIPS, but th= ought > >they both were little endian. (I recall the arches can be run either way= =2E) > > > >Anyhow, take a look at head/lib/libc/xdr/xdr.c and it looks to me like it > >has been broken "forever" (ever since we stopped using a K&R compiler > >that would have always made "long" 32bits). > OK, I took another look at xdr.c and it isn't broken as I thought. >=20 > xdr_long() takes a "long *" argument ("long" in Sun XDR is 32bits), > but then it only passes it as an argument to XDR_PUTLONG(), which is actu= ally > a call to xdrmem_putlong_aligned() or xdrmem_putlong_unaligned(). > For xdrmem_putlong_aligned(), the line is: > *(u_int32_t *)xdrs->x_private =3D htonl((u_int32_t)*lp); > --> where lp is a "long *" >=20 > I'll admit I'm not 100% sure if "(u_int32_t)*lp" gets the correct 32bits = of a 64bit > long pointer for all arches? (I'm not very good at knowing what type cast= s do.) > If this is the equivalent of "u_int32_t t; t =3D *lp; htonl(t); then I th= ink the code is ok? > (At least it makes it clear that it is using 32bits of the value pointed = to by the > argument.) >=20 > For xdrmem_putlong_unaligned(), it does the same thing via: > u_int32_t l; > ?. > l =3D htonl((u_int32_t)*lp); >=20 > --> At least the man page for xdr_long() should be clarified to note it > puts a 32bit quantity on the wire. >=20 > >If anyone has either of these and can set up an NFS server on one of > >them and then try and do an NFSv3 mount that is not allowed, it would > >be interesting to see the packet trace and if the MNT RPC fails, because > >it looks like it will put the high order 32bits on the wire and they'll > >always be 0? > It would still be interesting to test this on a 64bit big endian, but so = long as > the above cast works, it does look like it works for all arches. >=20 > >Just to clarify. The behaviour wasn't broken by this commit. I just > >don't see how the commit fixes anything? > My mistake. Sorry for the noise. >=20 > I now think the commit is correct since it uses "*lp" to get the value be= fore > casting it down to 32bits. Passing in an "int *" was incorrect. >=20 > The code does seem to handle "long *" for 64bit arches, although it > only puts 32bits "on-the-wire". >=20 > rick, who was confused because he knew there was only supposed to be > 32bits go on the wire. Thank you for all the analysis. I'd initially changed all the uses of bad to use xdr_int(), but switched to this "fix" because it's what NetBSD and OpenBSD have been using for over a decade (and there was less churn). I'm happy to flip it the other way if that seems more correct/less confusing. The previous code does in fact cause a 64-bit load of a pointer to an int on 64-bit platforms. I hit this in CheriBSD because that pointer had 4-byte bounds. -- Brooks --LKTjZJSUETSlgu2t Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJfIv72AAoJEKzQXbSebgfAH8EIAIlWUTJIM1GhDrwSAqFMnh38 jJbuQ2WT6LkuO+kghcC+MpOm4pQDEa/0yzmJp3U45LEeTomXi9gm4KkzMRipJzF3 6Lyx3/jaEAI+lf6WoShO9Nx9rR+aLLfY9EkpzzvXoyJg3HC1R6tAx0HIJgKFyDyZ F5rU6blO5XPIJ/iPXNjgoJF+lbXeohfiBobz30vQYR6Vq7fDnCtZh378La0Lce65 4OXAGkfsrGVyq5LAWs52T2MK7G64siw53c2VH/4kXvnTPeLLXGagJZfl7MWPedZY TlJ5obhZ875PWCkPNQsZ7DyQosPjpu4QCu5zMNxkCb62vUsvzxnfCRQthsKEB9s= =i3lH -----END PGP SIGNATURE----- --LKTjZJSUETSlgu2t-- From owner-svn-src-stable@freebsd.org Thu Jul 30 17:18:43 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 977263AAF0D; Thu, 30 Jul 2020 17:18:43 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHcZW3XGtz4g2b; Thu, 30 Jul 2020 17:18:43 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 581B914347; Thu, 30 Jul 2020 17:18:43 +0000 (UTC) (envelope-from brooks@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UHIhv6055750; Thu, 30 Jul 2020 17:18:43 GMT (envelope-from brooks@FreeBSD.org) Received: (from brooks@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UHIhYJ055749; Thu, 30 Jul 2020 17:18:43 GMT (envelope-from brooks@FreeBSD.org) Message-Id: <202007301718.06UHIhYJ055749@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brooks set sender to brooks@FreeBSD.org using -f From: Brooks Davis Date: Thu, 30 Jul 2020 17:18:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363709 - stable/11/sys/kern X-SVN-Group: stable-11 X-SVN-Commit-Author: brooks X-SVN-Commit-Paths: stable/11/sys/kern X-SVN-Commit-Revision: 363709 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 17:18:43 -0000 Author: brooks Date: Thu Jul 30 17:18:42 2020 New Revision: 363709 URL: https://svnweb.freebsd.org/changeset/base/363709 Log: MFC r363438: Use SI_ORDER_(FOURTH|FIFTH) rather than bespoke versions. No functional change. When these SYSINITs were added these macros didn't exist. Reviewed by: imp Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D25758 Modified: stable/11/sys/kern/init_main.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/init_main.c ============================================================================== --- stable/11/sys/kern/init_main.c Thu Jul 30 15:50:51 2020 (r363708) +++ stable/11/sys/kern/init_main.c Thu Jul 30 17:18:42 2020 (r363709) @@ -370,18 +370,18 @@ SYSINIT(version, SI_SUB_COPYRIGHT, SI_ORDER_THIRD, pri #ifdef WITNESS static char wit_warn[] = "WARNING: WITNESS option enabled, expect reduced performance.\n"; -SYSINIT(witwarn, SI_SUB_COPYRIGHT, SI_ORDER_THIRD + 1, +SYSINIT(witwarn, SI_SUB_COPYRIGHT, SI_ORDER_FOURTH, print_caddr_t, wit_warn); -SYSINIT(witwarn2, SI_SUB_LAST, SI_ORDER_THIRD + 1, +SYSINIT(witwarn2, SI_SUB_LAST, SI_ORDER_FOURTH, print_caddr_t, wit_warn); #endif #ifdef DIAGNOSTIC static char diag_warn[] = "WARNING: DIAGNOSTIC option enabled, expect reduced performance.\n"; -SYSINIT(diagwarn, SI_SUB_COPYRIGHT, SI_ORDER_THIRD + 2, +SYSINIT(diagwarn, SI_SUB_COPYRIGHT, SI_ORDER_FIFTH, print_caddr_t, diag_warn); -SYSINIT(diagwarn2, SI_SUB_LAST, SI_ORDER_THIRD + 2, +SYSINIT(diagwarn2, SI_SUB_LAST, SI_ORDER_FIFTH, print_caddr_t, diag_warn); #endif From owner-svn-src-stable@freebsd.org Thu Jul 30 18:31:25 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D0D093ABBCD; Thu, 30 Jul 2020 18:31:25 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHfBP5064z3Vff; Thu, 30 Jul 2020 18:31:25 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8EBA814CF2; Thu, 30 Jul 2020 18:31:25 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UIVPOi004414; Thu, 30 Jul 2020 18:31:25 GMT (envelope-from erj@FreeBSD.org) Received: (from erj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UIVPGM004413; Thu, 30 Jul 2020 18:31:25 GMT (envelope-from erj@FreeBSD.org) Message-Id: <202007301831.06UIVPGM004413@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: erj set sender to erj@FreeBSD.org using -f From: Eric Joyner Date: Thu, 30 Jul 2020 18:31:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363711 - stable/12/sys/dev/e1000 X-SVN-Group: stable-12 X-SVN-Commit-Author: erj X-SVN-Commit-Paths: stable/12/sys/dev/e1000 X-SVN-Commit-Revision: 363711 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 18:31:25 -0000 Author: erj Date: Thu Jul 30 18:31:25 2020 New Revision: 363711 URL: https://svnweb.freebsd.org/changeset/base/363711 Log: MFC r362063: em(4): Always reinit interface when adding/removing VLAN PR: 240818 Sponsored by: Intel Corporation Modified: stable/12/sys/dev/e1000/if_em.c Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/dev/e1000/if_em.c ============================================================================== --- stable/12/sys/dev/e1000/if_em.c Thu Jul 30 17:43:23 2020 (r363710) +++ stable/12/sys/dev/e1000/if_em.c Thu Jul 30 18:31:25 2020 (r363711) @@ -4042,7 +4042,6 @@ em_if_needs_restart(if_ctx_t ctx __unused, enum iflib_ { switch (event) { case IFLIB_RESTART_VLAN_CONFIG: - return (false); default: return (true); } From owner-svn-src-stable@freebsd.org Thu Jul 30 19:11:03 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0D8B63ACAE3; Thu, 30 Jul 2020 19:11:03 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHg466gQxz3XGb; Thu, 30 Jul 2020 19:11:02 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C821615B06; Thu, 30 Jul 2020 19:11:02 +0000 (UTC) (envelope-from erj@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06UJB2YD028779; Thu, 30 Jul 2020 19:11:02 GMT (envelope-from erj@FreeBSD.org) Received: (from erj@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06UJB2iI028774; Thu, 30 Jul 2020 19:11:02 GMT (envelope-from erj@FreeBSD.org) Message-Id: <202007301911.06UJB2iI028774@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: erj set sender to erj@FreeBSD.org using -f From: Eric Joyner Date: Thu, 30 Jul 2020 19:11:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363712 - in stable/12/sys: conf modules powerpc/conf X-SVN-Group: stable-12 X-SVN-Commit-Author: erj X-SVN-Commit-Paths: in stable/12/sys: conf modules powerpc/conf X-SVN-Commit-Revision: 363712 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 19:11:03 -0000 Author: erj Date: Thu Jul 30 19:11:01 2020 New Revision: 363712 URL: https://svnweb.freebsd.org/changeset/base/363712 Log: MFC r358908: Enable ixl device on PowerPC64 Relnotes: yes Modified: stable/12/sys/conf/files.powerpc stable/12/sys/conf/options.powerpc stable/12/sys/modules/Makefile stable/12/sys/powerpc/conf/GENERIC64 Directory Properties: stable/12/ (props changed) Modified: stable/12/sys/conf/files.powerpc ============================================================================== --- stable/12/sys/conf/files.powerpc Thu Jul 30 18:31:25 2020 (r363711) +++ stable/12/sys/conf/files.powerpc Thu Jul 30 19:11:01 2020 (r363712) @@ -43,6 +43,43 @@ dev/iicbus/max6690.c optional max6690 powermac dev/iicbus/ofw_iicbus.c optional iicbus aim dev/ipmi/ipmi.c optional ipmi dev/ipmi/ipmi_opal.c optional powernv ipmi +dev/ixl/if_ixl.c optional ixl pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_pf_main.c optional ixl pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_pf_qmgr.c optional ixl pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_pf_iov.c optional ixl pci pci_iov powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_pf_i2c.c optional ixl pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/if_iavf.c optional iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/iavf_vc.c optional iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_txrx.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_osdep.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_lan_hmc.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_hmc.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_common.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_nvm.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_adminq.c optional ixl pci powerpc64 | \ + iavf pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_dcb.c optional ixl pci powerpc64 \ + compile-with "${NORMAL_C} -I$S/dev/ixl" dev/nand/nfc_fsl.c optional nand mpc85xx dev/nand/nfc_rb.c optional nand mpc85xx # Most ofw stuff below is brought in by conf/files for options FDT, but Modified: stable/12/sys/conf/options.powerpc ============================================================================== --- stable/12/sys/conf/options.powerpc Thu Jul 30 18:31:25 2020 (r363711) +++ stable/12/sys/conf/options.powerpc Thu Jul 30 19:11:01 2020 (r363712) @@ -35,3 +35,6 @@ OFWCONS_POLL_HZ opt_ofw.h AGP_DEBUG opt_agp.h MIKROTIK + +# iWARP client interface support in ixl +IXL_IW opt_ixl.h Modified: stable/12/sys/modules/Makefile ============================================================================== --- stable/12/sys/modules/Makefile Thu Jul 30 18:31:25 2020 (r363711) +++ stable/12/sys/modules/Makefile Thu Jul 30 19:11:01 2020 (r363712) @@ -824,6 +824,8 @@ _wi= wi _drm2= drm2 .endif _ipmi= ipmi +_ixl= ixl +_nvram= opal_nvram .endif .if ${MACHINE_ARCH} == "powerpc64" || ${MACHINE_ARCH} == "powerpc" # Don't build powermac_nvram for powerpcspe, it's never supported. Modified: stable/12/sys/powerpc/conf/GENERIC64 ============================================================================== --- stable/12/sys/powerpc/conf/GENERIC64 Thu Jul 30 18:31:25 2020 (r363711) +++ stable/12/sys/powerpc/conf/GENERIC64 Thu Jul 30 19:11:01 2020 (r363712) @@ -146,6 +146,7 @@ device iflib # Ethernet hardware device em # Intel PRO/1000 Gigabit Ethernet Family device ix # Intel PRO/10GbE PCIE PF Ethernet Family +device ixl # Intel 700 Series Physical Function device ixv # Intel PRO/10GbE PCIE VF Ethernet Family device glc # Sony Playstation 3 Ethernet device llan # IBM pSeries Virtual Ethernet From owner-svn-src-stable@freebsd.org Thu Jul 30 22:38:07 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5BFE1368D34; Thu, 30 Jul 2020 22:38:07 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-TO1-obe.outbound.protection.outlook.com (mail-eopbgr670054.outbound.protection.outlook.com [40.107.67.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHlg26zTdz430B; Thu, 30 Jul 2020 22:38:06 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YYF91y3Y/CXMyePEE+kYYz96fnOZPFQamWtO/I4Q2eOHEDuNO/pXn9MEHZhRlTJYLXahF4z4FruE2RwK7hIVS9MEQoQsdP53K7yvVPWEk+n5demncgzwcqo6cJfhFI8gYIjceLCHuGJ1ki6QrN1F9U+uVZQz41Pdnr5jIug8xop+FtVyRLyxOIYh167vrcn6mqWZzH0rKGY83qqJ6/P4Em14mRjyG0szWnt24QJNpbkwBbyheGN7kYOwgl5R2ZqfS5L4hLEbx/nDHO5mulhO6NZnADO0Fs7yfXzVOn+EUpdbMznu3akaNoNvDg+NEH0DItult8mcPzdaK3CJnUclUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nNrRhr4G5sufYSwcoRyZTVnUlce0Bo/4cGlqg7R39Ug=; b=Pt9se5sl7fvkb8t6kZqqNe0erV3AfUO81w1VFYkTjkQkjyuIS7Hc1xk41NDQHFmnhbuR9eMMY2dOWbORdNECUa40AyyrF0URzQwj/bGVbKSlfDlTW0IzBTtzYXbvt2HkC6r9A0nVy7qo+pAy8lHgWQYp3gMkp5vF7hQ3oPhwjkTykRGr/T/VFh2LFWXAKDMFVcfRG8IBdXgFiSQ0gEBefpFHV/kq68Irj7fW86PHtrL1Hb7lLn9XV6jO3yWp8LrzfNc5eogLlY/elMVjpSj1HWTTQNf8N5hDxGaa8APAbg8BYq9J8q1a0/5LEv2exN+s85dL3FM1fr0gt4tKQQGsjw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uoguelph.ca; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nNrRhr4G5sufYSwcoRyZTVnUlce0Bo/4cGlqg7R39Ug=; b=rUCyB+6pIV0cnlYRbKNBHmucNHjmHMLHCkj0N29Cg2fn3YeRbO0JKJlpszUj70KLlMj1pKCCHKqLB8lFo11nW85tiVqnG+eOWtJ6bSkCgphHH0Q2/6u01a/Hofc+6RlAUu+onq6VV+J2EQo2TbQmJJp5FWmg5zrm9WpRx9TEw8GrwhzHzwOaN9C+aCQ4Sj4ncRoukGO5WTqqYvl13Zy+QSsUtTCvpe7BsNORPPHPxkOdz4p2IxNiNitqme1vKw7GvJeNXX54vCsJPXvRUCtqK6CeRD0A4t+dF2Qm7cyHr1CUsJll56TjeUBo4eAoseRi0HNKH/NZ/cCM67GSj0MxsQ== Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:38::14) by QB1PR01MB2515.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00:36::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.26; Thu, 30 Jul 2020 22:38:04 +0000 Received: from QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91]) by QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM ([fe80::60f3:4ca2:8a4a:1e91%7]) with mapi id 15.20.3216.033; Thu, 30 Jul 2020 22:38:04 +0000 From: Rick Macklem To: Brooks Davis CC: Ian Lepore , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Topic: svn commit: r363625 - stable/12/usr.sbin/mountd Thread-Index: AQHWZGw7l3AA2GANGkmYHY+WWlMRT6kfVzKsgAAiMQCAADpv4oAAiFtWgAAjkQCAAFdClw== Date: Thu, 30 Jul 2020 22:38:04 +0000 Message-ID: References: <202007272318.06RNIFjV005206@repo.freebsd.org> <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> , <20200730171016.GC94620@spindle.one-eyed-alien.net> In-Reply-To: <20200730171016.GC94620@spindle.one-eyed-alien.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 88f6fb09-c62a-46d2-43b6-08d834d9396a x-ms-traffictypediagnostic: QB1PR01MB2515: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Vhy9BBG6oO5huWh3erBx3rs5VirzEYUkiZzxGYxT0BW0ebAhBxeMqEOleelXIjOtZ75QMeQCOzW4zHras6+XSD53xiAiWhl3fBYJyyEc4+1KGFawdQW8CMvSijOZntR+vmH7ZXMqp9GSLkuBrTCYKE4crsMl8wEDUW9GrDzKRAoDO7ohTuW3CFUNv8eSPbKALIfkCXtF2weZwE1SQLNb6s8ilxxczzqMQJ7nRGj5pKOuVKJ4hlyFlLWVzJaEugPDXtyJuih2l7sduoE2hon3aSlw1Kb0Pr02w9naN7sat9c5cZ3Nqft5UmUVDFAV8Ro/sroRd2VBKrY3Z8OlZCWpMLnWzX9yaYbAqs8aXGsKsgPxXWYe31Toz/XCBZ7Mte50Ih8MDXbzXUROvdNUrJwovQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFTY:; SFS:(346002)(366004)(376002)(396003)(39860400002)(136003)(7696005)(966005)(33656002)(76116006)(450100002)(478600001)(6916009)(86362001)(5660300002)(83380400001)(8936002)(9686003)(2906002)(186003)(54906003)(8676002)(55016002)(6506007)(786003)(64756008)(91956017)(71200400001)(66556008)(66946007)(66446008)(4326008)(66476007)(52536014)(316002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: yJEJzL/no5UUDMJ2ak1VTp4eAgHXkeiy18Y6ueEAkhQTn6Waj8pi8SDiU7bims7mJ7ocMsbs4YglyMMikSCIar+2SQ1WScPM481De9ihaWv2H6lqlm1aBNubm03aivChOZVWDcnfZqrmQbXkQ+z3tqzdHJmZTggOA7t/nd7o5KDQ3T1jukPQF3zd89gtkC8rjJn5q6/4hV8agcQbUQpFOx+/CvNlIkcB8yL7pOy7ZLvqrNPNv6WngFLkaLBMI+aDv4e4vy6nMZHq/Y08jeyBsaxsaIoefX+a36TkusTMR68hYW+haLj4Mp24CdfKPiUcbWLwydtHS5M3Upv59SsEQ+p64qCic71uWcg3f9HsfpjEgZnweWwfx/uXWTLDANMEZvO2s1caCOZWmrO4b7UjB8zqHHnzUaY9hpP0FsXRvryLfArOo4uBunjRPG+Bvd8WPIpJlUrj924P+FaHdje0I/k903jelS4kEc64DG+b1Cfe/PU4tc/4C06hrax6pi75BsFVg8dJkLChkYnY5N0aLzhoYWJhuDxUSfVw1jYmtsQ= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: QB1PR01MB3364.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 88f6fb09-c62a-46d2-43b6-08d834d9396a X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jul 2020 22:38:04.7349 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ThcPlmXmcC7vHK0ixmaLvxDBjQzWJMSyPT23+Bn6PWfBxUuZSMqlISpfZuQUjLwmtjjCPXQDZmX2AVqWmhUwUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: QB1PR01MB2515 X-Rspamd-Queue-Id: 4BHlg26zTdz430B X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:8075, ipnet:40.104.0.0/14, country:US] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 22:38:07 -0000 Brooks Davis wrote:=0A= >On Thu, Jul 30, 2020 at 03:48:34PM +0000, Rick Macklem wrote:=0A= >> Rick Macklem wrote:=0A= >> >Ian Lepore wrote:=0A= >> >>On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote:=0A= >> >>> Brooks Davis wrote:=0A= >> >>> > Author: brooks=0A= >> >>> > Date: Mon Jul 27 23:18:14 2020=0A= >> >>> > New Revision: 363625=0A= >> >>> > URL: https://svnweb.freebsd.org/changeset/base/363625=0A= >> >>> >=0A= >> >>> > Log:=0A= >> >>> > MFC r363439:=0A= >> >>> >=0A= >> >>> > Correct a type-mismatch between xdr_long and the variable "bad".= =0A= >> >>> >=0A= >> >>> > [...]=0A= >> >>> --> I can't see how the xdr.c code would work for a machine that is= =0A= >> >>> BIG_ENDIAN and where "long" is 64bits, but we don't have any of=0A= >> >>> those.=0A= >> >>>=0A= >> >>=0A= >> >>mips64 and powerpc64 are both big endian with 64-bit long.=0A= >> >Oops, I didn't know that. In the past, I've run PowerPC and MIPS, but t= hought=0A= >> >they both were little endian. (I recall the arches can be run either wa= y.)=0A= >> >=0A= >> >Anyhow, take a look at head/lib/libc/xdr/xdr.c and it looks to me like = it=0A= >> >has been broken "forever" (ever since we stopped using a K&R compiler= =0A= >> >that would have always made "long" 32bits).=0A= >> OK, I took another look at xdr.c and it isn't broken as I thought.=0A= >>=0A= >> xdr_long() takes a "long *" argument ("long" in Sun XDR is 32bits),=0A= >> but then it only passes it as an argument to XDR_PUTLONG(), which is act= ually=0A= >> a call to xdrmem_putlong_aligned() or xdrmem_putlong_unaligned().=0A= >> For xdrmem_putlong_aligned(), the line is:=0A= >> *(u_int32_t *)xdrs->x_private =3D htonl((u_int32_t)*lp);=0A= >> --> where lp is a "long *"=0A= >>=0A= >> I'll admit I'm not 100% sure if "(u_int32_t)*lp" gets the correct 32bits= of a 64bit=0A= >> long pointer for all arches? (I'm not very good at knowing what type cas= ts do.)=0A= >> If this is the equivalent of "u_int32_t t; t =3D *lp; htonl(t); then I t= hink the code is ok?=0A= >> (At least it makes it clear that it is using 32bits of the value pointed= to by the=0A= >> argument.)=0A= >>=0A= >> For xdrmem_putlong_unaligned(), it does the same thing via:=0A= >> u_int32_t l;=0A= >> ?.=0A= >> l =3D htonl((u_int32_t)*lp);=0A= >>=0A= >> --> At least the man page for xdr_long() should be clarified to note it= =0A= >> puts a 32bit quantity on the wire.=0A= I think I will try and come up with a man page patch, noting that xdr_long(= )=0A= always puts 32bits on the wire, even if long is 64bits for the arch.=0A= =0A= >>=0A= >> >If anyone has either of these and can set up an NFS server on one of=0A= >> >them and then try and do an NFSv3 mount that is not allowed, it would= =0A= >> >be interesting to see the packet trace and if the MNT RPC fails, becaus= e=0A= >> >it looks like it will put the high order 32bits on the wire and they'll= =0A= >> >always be 0?=0A= >> It would still be interesting to test this on a 64bit big endian, but so= long as=0A= >> the above cast works, it does look like it works for all arches.=0A= >>=0A= >> >Just to clarify. The behaviour wasn't broken by this commit. I just=0A= >> >don't see how the commit fixes anything?=0A= >> My mistake. Sorry for the noise.=0A= >>=0A= >> I now think the commit is correct since it uses "*lp" to get the value b= efore=0A= >> casting it down to 32bits. Passing in an "int *" was incorrect.=0A= >>=0A= >> The code does seem to handle "long *" for 64bit arches, although it=0A= >> only puts 32bits "on-the-wire".=0A= >>=0A= >> rick, who was confused because he knew there was only supposed to be=0A= >> 32bits go on the wire.=0A= >=0A= >Thank you for all the analysis. I'd initially changed all the uses=0A= >of bad to use xdr_int(), but switched to this "fix" because it's what=0A= >NetBSD and OpenBSD have been using for over a decade (and there was=0A= >less churn). I'm happy to flip it the other way if that seems more=0A= >correct/less confusing.=0A= I think your current patch is fine. The confusion is w.r.t. what xdr_long()= does=0A= for a 64bit long and I think a man page update may be the way to go.=0A= --> If you look in xdr.c, xdr_int() assigns the value to a long and then en= ds=0A= up truncating it back down, similar to xdr_long().=0A= --> Some of the stuff in xdr.c is pretty scary for 64bit longs, but i= t all=0A= seems to work, once you look at it for a while.;-)=0A= =0A= >The previous code does in fact cause a 64-bit load of a pointer to an=0A= >int on 64-bit platforms. I hit this in CheriBSD because that pointer=0A= >had 4-byte bounds.=0A= Yes. The first time I looked at the code (it was late evening), I misread= =0A= ((u_int32_t)*lp) as *((u_int32_t *)lp) and that was why I thought your= patch=0A= was broken.=0A= =0A= Thanks for doing this and sorry about the noise, rick=0A= ps: Personally, I've never understood why ANSI C allowed "long" to be 64bit= s=0A= on some arches. I still bump into hassles because the old K&R code was= =0A= written assuming long to be 32bits.=0A= =0A= -- Brooks=0A= From owner-svn-src-stable@freebsd.org Thu Jul 30 22:55:31 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 96E95368EEA for ; Thu, 30 Jul 2020 22:55:31 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f68.google.com (mail-wm1-f68.google.com [209.85.128.68]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHm370Hxdz43dW for ; Thu, 30 Jul 2020 22:55:30 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: by mail-wm1-f68.google.com with SMTP id q76so6410076wme.4 for ; Thu, 30 Jul 2020 15:55:30 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=ju1VdFRxCoO59mLAC28bUSbPuU5zG1TcmqC2zSCcAns=; b=RAKckSSdk5kdutlVCMtqI+uWGF4Qhs7JYkmUdyp8ZUGSFdFXJSmYhBTVB4TCjkaZpc OuLoRwYMPElMbWk/GMflk6ExUnNrgn7RBfjrcuMMhIasTszSIyumYzoPQCNvZeoDqWmW m4XGF5kodxV4MUp8QMuGDbXTDn3ONNBw7P9+CPts+w8e10o1TSloZ//PGMRv69EK1rG/ qvI6/jriAjbi0WxFZqwoOxK9I4i7oGqVX9lafj3Lx0Uh1SwVRhcBhokh22xU40ndLyg4 VEjcPXT+0nacvC8moofWiCktPzpfWBWvt9vYEeUy6eB1GwB/yv09HcLwAW9Hq1Q6reBo aaJA== X-Gm-Message-State: AOAM531qm05wt9hpRgEJJQ2934p+A9eOnZn9OHLUU32K5Usz3qCIvql+ Q8t/I0QKGqfUAebMWjHXbg6PSw== X-Google-Smtp-Source: ABdhPJy0MCaEenksD67PeY1obTFbZr6O2AUrIO0qcwBeo+zvYDYaT2X6qGof4HxUxLxVoCMK78mBCA== X-Received: by 2002:a7b:c00c:: with SMTP id c12mr1306063wmb.54.1596149729706; Thu, 30 Jul 2020 15:55:29 -0700 (PDT) Received: from [192.168.149.251] (trinity-students-nat.trin.cam.ac.uk. [131.111.193.104]) by smtp.gmail.com with ESMTPSA id m4sm10171010wmi.48.2020.07.30.15.55.28 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 30 Jul 2020 15:55:29 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\)) Subject: Re: svn commit: r363625 - stable/12/usr.sbin/mountd From: Jessica Clarke In-Reply-To: Date: Thu, 30 Jul 2020 23:55:28 +0100 Cc: Brooks Davis , Ian Lepore , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-12@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <4110A1E0-BAFD-416C-A455-CDB8C2F8E208@freebsd.org> References: <202007272318.06RNIFjV005206@repo.freebsd.org> <4d5b871fad9412661c3914a64c8ca0b7a01d1dc6.camel@freebsd.org> <20200730171016.GC94620@spindle.one-eyed-alien.net> To: Rick Macklem X-Mailer: Apple Mail (2.3608.80.23.2.2) X-Rspamd-Queue-Id: 4BHm370Hxdz43dW X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of jrtc27@jrtc27.com designates 209.85.128.68 as permitted sender) smtp.mailfrom=jrtc27@jrtc27.com X-Spamd-Result: default: False [-2.09 / 15.00]; TO_DN_EQ_ADDR_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[svn-src-stable@freebsd.org]; ARC_NA(0.00)[]; DMARC_NA(0.00)[freebsd.org]; NEURAL_HAM_LONG(-1.06)[-1.059]; RCVD_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_HAM_SHORT(-0.53)[-0.532]; RCPT_COUNT_SEVEN(0.00)[7]; RCVD_IN_DNSWL_NONE(0.00)[209.85.128.68:from]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FORGED_SENDER(0.30)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.128.68:from]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; RCVD_TLS_ALL(0.00)[] X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jul 2020 22:55:31 -0000 On 30 Jul 2020, at 23:38, Rick Macklem wrote: > Brooks Davis wrote: >> On Thu, Jul 30, 2020 at 03:48:34PM +0000, Rick Macklem wrote: >>> Rick Macklem wrote: >>>> Ian Lepore wrote: >>>>> On Thu, 2020-07-30 at 01:52 +0000, Rick Macklem wrote: >>>>>> Brooks Davis wrote: >>>>>>> Author: brooks >>>>>>> Date: Mon Jul 27 23:18:14 2020 >>>>>>> New Revision: 363625 >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/363625 >>>>>>>=20 >>>>>>> Log: >>>>>>> MFC r363439: >>>>>>>=20 >>>>>>> Correct a type-mismatch between xdr_long and the variable "bad". >>>>>>>=20 >>>>>>> [...] >>>>>> --> I can't see how the xdr.c code would work for a machine that = is >>>>>> BIG_ENDIAN and where "long" is 64bits, but we don't have any of >>>>>> those. >>>>>>=20 >>>>>=20 >>>>> mips64 and powerpc64 are both big endian with 64-bit long. >>>> Oops, I didn't know that. In the past, I've run PowerPC and MIPS, = but thought >>>> they both were little endian. (I recall the arches can be run = either way.) >>>>=20 >>>> Anyhow, take a look at head/lib/libc/xdr/xdr.c and it looks to me = like it >>>> has been broken "forever" (ever since we stopped using a K&R = compiler >>>> that would have always made "long" 32bits). >>> OK, I took another look at xdr.c and it isn't broken as I thought. >>>=20 >>> xdr_long() takes a "long *" argument ("long" in Sun XDR is 32bits), >>> but then it only passes it as an argument to XDR_PUTLONG(), which is = actually >>> a call to xdrmem_putlong_aligned() or xdrmem_putlong_unaligned(). >>> For xdrmem_putlong_aligned(), the line is: >>> *(u_int32_t *)xdrs->x_private =3D htonl((u_int32_t)*lp); >>> --> where lp is a "long *" >>>=20 >>> I'll admit I'm not 100% sure if "(u_int32_t)*lp" gets the correct = 32bits of a 64bit >>> long pointer for all arches? (I'm not very good at knowing what type = casts do.) >>> If this is the equivalent of "u_int32_t t; t =3D *lp; htonl(t); then = I think the code is ok? >>> (At least it makes it clear that it is using 32bits of the value = pointed to by the >>> argument.) >>>=20 >>> For xdrmem_putlong_unaligned(), it does the same thing via: >>> u_int32_t l; >>> ?. >>> l =3D htonl((u_int32_t)*lp); >>>=20 >>> --> At least the man page for xdr_long() should be clarified to note = it >>> puts a 32bit quantity on the wire. > I think I will try and come up with a man page patch, noting that = xdr_long() > always puts 32bits on the wire, even if long is 64bits for the arch. >=20 >>>=20 >>>> If anyone has either of these and can set up an NFS server on one = of >>>> them and then try and do an NFSv3 mount that is not allowed, it = would >>>> be interesting to see the packet trace and if the MNT RPC fails, = because >>>> it looks like it will put the high order 32bits on the wire and = they'll >>>> always be 0? >>> It would still be interesting to test this on a 64bit big endian, = but so long as >>> the above cast works, it does look like it works for all arches. >>>=20 >>>> Just to clarify. The behaviour wasn't broken by this commit. I just >>>> don't see how the commit fixes anything? >>> My mistake. Sorry for the noise. >>>=20 >>> I now think the commit is correct since it uses "*lp" to get the = value before >>> casting it down to 32bits. Passing in an "int *" was incorrect. >>>=20 >>> The code does seem to handle "long *" for 64bit arches, although it >>> only puts 32bits "on-the-wire". >>>=20 >>> rick, who was confused because he knew there was only supposed to be >>> 32bits go on the wire. >>=20 >> Thank you for all the analysis. I'd initially changed all the uses >> of bad to use xdr_int(), but switched to this "fix" because it's what >> NetBSD and OpenBSD have been using for over a decade (and there was >> less churn). I'm happy to flip it the other way if that seems more >> correct/less confusing. > I think your current patch is fine. The confusion is w.r.t. what = xdr_long() does > for a 64bit long and I think a man page update may be the way to go. > --> If you look in xdr.c, xdr_int() assigns the value to a long and = then ends > up truncating it back down, similar to xdr_long(). > --> Some of the stuff in xdr.c is pretty scary for 64bit longs, = but it all > seems to work, once you look at it for a while.;-) >=20 >> The previous code does in fact cause a 64-bit load of a pointer to an >> int on 64-bit platforms. I hit this in CheriBSD because that pointer >> had 4-byte bounds. > Yes. The first time I looked at the code (it was late evening), I = misread > ((u_int32_t)*lp) as *((u_int32_t *)lp) and that was why I thought = your patch > was broken. >=20 > Thanks for doing this and sorry about the noise, rick > ps: Personally, I've never understood why ANSI C allowed "long" to be = 64bits > on some arches. I still bump into hassles because the old K&R code = was > written assuming long to be 32bits. Yeah, c.f. XChangeProperty(3) which has a similarly weird interface (but slightly more so) that seriously confused me a few years ago. If you pass 8 for the number of bits to return to you it wants a char, for 16 it wants a short and for 32 it wants a long. XGetWindowProperty(3) also talks about long_offset and long_length when it really means int32_offset/length, or just int_offset/length these days in POSIX. As for _why_ it's done, well, char is 8, short is 16, int is 32 so then why make long 32 too when it could be 64 and still efficient (in terms of instructions, not necessarily space; also means long long is free for int128 on 128-bit machines!). Plus maybe more often than not people wanted a machine word, not a 32-bit value, though by now hopefully people have learnt to use size_t/uintptr_t as appropriate (CHERI work suggests that's _mostly_ true). But then we have to have Windows which decided to keep a 32-bit long, so it's all a mess anyway. Jess From owner-svn-src-stable@freebsd.org Fri Jul 31 07:37:08 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DC5E03726D8; Fri, 31 Jul 2020 07:37:08 +0000 (UTC) (envelope-from pstef@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BHzd05Gkcz4T5D; Fri, 31 Jul 2020 07:37:08 +0000 (UTC) (envelope-from pstef@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 984221E709; Fri, 31 Jul 2020 07:37:08 +0000 (UTC) (envelope-from pstef@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06V7b8pM092490; Fri, 31 Jul 2020 07:37:08 GMT (envelope-from pstef@FreeBSD.org) Received: (from pstef@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06V7b8bp092489; Fri, 31 Jul 2020 07:37:08 GMT (envelope-from pstef@FreeBSD.org) Message-Id: <202007310737.06V7b8bp092489@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pstef set sender to pstef@FreeBSD.org using -f From: Piotr Pawel Stefaniak Date: Fri, 31 Jul 2020 07:37:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363724 - stable/12/share/man/man7 X-SVN-Group: stable-12 X-SVN-Commit-Author: pstef X-SVN-Commit-Paths: stable/12/share/man/man7 X-SVN-Commit-Revision: 363724 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 07:37:08 -0000 Author: pstef Date: Fri Jul 31 07:37:08 2020 New Revision: 363724 URL: https://svnweb.freebsd.org/changeset/base/363724 Log: MFC r363268: Promote use of unprivileged users for building ports by documenting SU_CMD. Phrasing by Daniel O'Connor. Reviewed by: 0mp Differential Revision: https://reviews.freebsd.org/D25433 Modified: stable/12/share/man/man7/ports.7 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man7/ports.7 ============================================================================== --- stable/12/share/man/man7/ports.7 Fri Jul 31 02:21:19 2020 (r363723) +++ stable/12/share/man/man7/ports.7 Fri Jul 31 07:37:08 2020 (r363724) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 16, 2018 +.Dd July 17, 2020 .Dt PORTS 7 .Os .Sh NAME @@ -390,6 +390,14 @@ Where to find/put distfiles, normally .Pa distfiles/ in .Va PORTSDIR . +.It Va SU_CMD +Command used to elevate privilege to configure and install a port. +The unprivileged user must have write access to +.Va WRKDIRPREFIX +and +.Va DISTDIR . +The default is +.Ql /usr/bin/su root -c .It Va PACKAGES Used only for the .Cm package From owner-svn-src-stable@freebsd.org Fri Jul 31 10:40:48 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 51456375AE6; Fri, 31 Jul 2020 10:40:48 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ3hw1R2mz4bnw; Fri, 31 Jul 2020 10:40:48 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1482E2080C; Fri, 31 Jul 2020 10:40:48 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VAelAV003912; Fri, 31 Jul 2020 10:40:47 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VAelnJ003911; Fri, 31 Jul 2020 10:40:47 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311040.06VAelnJ003911@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 10:40:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363726 - stable/12/share/man/man8 X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/share/man/man8 X-SVN-Commit-Revision: 363726 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 10:40:48 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 10:40:47 2020 New Revision: 363726 URL: https://svnweb.freebsd.org/changeset/base/363726 Log: MFC 363473: Document that force_depend() supports only /etc/rc.d scripts Currently, force_depend() from rc.subr(8) does not support depending on scripts outside of /etc/rc.d (like /usr/local/etc/rc.d). The /etc/rc.d path is hard-coded into force_depend(). Modified: stable/12/share/man/man8/rc.subr.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man8/rc.subr.8 ============================================================================== --- stable/12/share/man/man8/rc.subr.8 Fri Jul 31 10:03:32 2020 (r363725) +++ stable/12/share/man/man8/rc.subr.8 Fri Jul 31 10:40:47 2020 (r363726) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 15, 2019 +.Dd July 24, 2020 .Dt RC.SUBR 8 .Os .Sh NAME @@ -237,8 +237,13 @@ The .Ar name argument is the .Xr basename 1 -component of the path to the script, usually -.Pa /etc/rc.d/name . +component of the path to the script located at +.Pa /etc/rc.d +(scripts stored in other locations like +.Pa /usr/local/etc/rc.d +cannot be contolled with +.Ic force_depend +currently). If the script fails for any reason it will output a warning and return with a return value of 1. If it was successful From owner-svn-src-stable@freebsd.org Fri Jul 31 10:45:22 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 068F2375F35; Fri, 31 Jul 2020 10:45:22 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ3p96Ppvz4cYR; Fri, 31 Jul 2020 10:45:21 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BF3BD20743; Fri, 31 Jul 2020 10:45:21 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VAjLJm008425; Fri, 31 Jul 2020 10:45:21 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VAjLpp008424; Fri, 31 Jul 2020 10:45:21 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311045.06VAjLpp008424@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 10:45:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363727 - stable/11/share/man/man8 X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/share/man/man8 X-SVN-Commit-Revision: 363727 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 10:45:22 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 10:45:21 2020 New Revision: 363727 URL: https://svnweb.freebsd.org/changeset/base/363727 Log: MFC 363473: Document that force_depend() supports only /etc/rc.d scripts Currently, force_depend() from rc.subr(8) does not support depending on scripts outside of /etc/rc.d (like /usr/local/etc/rc.d). The /etc/rc.d path is hard-coded into force_depend(). Modified: stable/11/share/man/man8/rc.subr.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/share/man/man8/rc.subr.8 ============================================================================== --- stable/11/share/man/man8/rc.subr.8 Fri Jul 31 10:40:47 2020 (r363726) +++ stable/11/share/man/man8/rc.subr.8 Fri Jul 31 10:45:21 2020 (r363727) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 15, 2019 +.Dd July 24, 2020 .Dt RC.SUBR 8 .Os .Sh NAME @@ -258,8 +258,13 @@ The .Ar name argument is the .Xr basename 1 -component of the path to the script, usually -.Pa /etc/rc.d/name . +component of the path to the script located at +.Pa /etc/rc.d +(scripts stored in other locations like +.Pa /usr/local/etc/rc.d +cannot be contolled with +.Ic force_depend +currently). If the script fails for any reason it will output a warning and return with a return value of 1. If it was successful From owner-svn-src-stable@freebsd.org Fri Jul 31 10:55:24 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7BB3E3764C9; Fri, 31 Jul 2020 10:55:24 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ41m2m2gz4dJG; Fri, 31 Jul 2020 10:55:24 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3DA672092D; Fri, 31 Jul 2020 10:55:24 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VAtNTq014543; Fri, 31 Jul 2020 10:55:23 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VAtNWF014542; Fri, 31 Jul 2020 10:55:23 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311055.06VAtNWF014542@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 10:55:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363728 - stable/12/sbin/devd X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/sbin/devd X-SVN-Commit-Revision: 363728 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 10:55:24 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 10:55:23 2020 New Revision: 363728 URL: https://svnweb.freebsd.org/changeset/base/363728 Log: MFC 363248: Remove old devd rules for ActiveWire and Entrega Serial DB25 Those rules have been broken at least since 8-STABLE, when the port providing the ezdownload binary was removed (misc/ezload). Reviewed by: kevans, imp Differential Revision: https://reviews.freebsd.org/D25686 Modified: stable/12/sbin/devd/devd.conf Directory Properties: stable/12/ (props changed) Modified: stable/12/sbin/devd/devd.conf ============================================================================== --- stable/12/sbin/devd/devd.conf Fri Jul 31 10:45:21 2020 (r363727) +++ stable/12/sbin/devd/devd.conf Fri Jul 31 10:55:23 2020 (r363728) @@ -154,24 +154,6 @@ notify 100 { action "service moused stop $cdev"; }; -# Firmware download into the ActiveWire board. After the firmware download is -# done, the device detaches and reappears as something new and shiny -# automatically. -attach 100 { - match "vendor" "0x0854"; - match "product" "0x0100"; - match "release" "0x0000"; - action "/usr/local/bin/ezdownload -f /usr/local/share/usb/firmware/0854.0100.0_01.hex $device-name"; -}; - -# Firmware download for Entrega Serial DB25 adapter. -attach 100 { - match "vendor" "0x1645"; - match "product" "0x8001"; - match "release" "0x0101"; - action "if ! kldstat -n usio > /dev/null 2>&1 ; then kldload usio; fi; /usr/sbin/ezdownload -v -f /usr/share/usb/firmware/1645.8001.0101 /dev/$device-name"; -}; - # This entry starts the ColdSync tool in daemon mode. Make sure you have an up # to date /usr/local/etc/palms. We override the 'listen' settings for port and # type in /usr/local/etc/coldsync.conf. From owner-svn-src-stable@freebsd.org Fri Jul 31 11:14:12 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0B54E376C1A; Fri, 31 Jul 2020 11:14:12 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ4RR6TDhz4f7v; Fri, 31 Jul 2020 11:14:11 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C26AC20F01; Fri, 31 Jul 2020 11:14:11 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VBEBvh026523; Fri, 31 Jul 2020 11:14:11 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VBEBQD026522; Fri, 31 Jul 2020 11:14:11 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311114.06VBEBQD026522@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 11:14:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363729 - stable/11/etc X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/etc X-SVN-Commit-Revision: 363729 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 11:14:12 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 11:14:11 2020 New Revision: 363729 URL: https://svnweb.freebsd.org/changeset/base/363729 Log: MFC 363248: Remove old devd rules for ActiveWire and Entrega Serial DB25 Those rules have been broken at least since 8-STABLE, when the port providing the ezdownload binary was removed (misc/ezload). Reviewed by: kevans, imp Differential Revision: https://reviews.freebsd.org/D25686 Modified: stable/11/etc/devd.conf Directory Properties: stable/11/ (props changed) Modified: stable/11/etc/devd.conf ============================================================================== --- stable/11/etc/devd.conf Fri Jul 31 10:55:23 2020 (r363728) +++ stable/11/etc/devd.conf Fri Jul 31 11:14:11 2020 (r363729) @@ -153,24 +153,6 @@ notify 100 { action "/etc/rc.d/moused stop $cdev"; }; -# Firmware download into the ActiveWire board. After the firmware download is -# done, the device detaches and reappears as something new and shiny -# automatically. -attach 100 { - match "vendor" "0x0854"; - match "product" "0x0100"; - match "release" "0x0000"; - action "/usr/local/bin/ezdownload -f /usr/local/share/usb/firmware/0854.0100.0_01.hex $device-name"; -}; - -# Firmware download for Entrega Serial DB25 adapter. -attach 100 { - match "vendor" "0x1645"; - match "product" "0x8001"; - match "release" "0x0101"; - action "if ! kldstat -n usio > /dev/null 2>&1 ; then kldload usio; fi; /usr/sbin/ezdownload -v -f /usr/share/usb/firmware/1645.8001.0101 /dev/$device-name"; -}; - # This entry starts the ColdSync tool in daemon mode. Make sure you have an up # to date /usr/local/etc/palms. We override the 'listen' settings for port and # type in /usr/local/etc/coldsync.conf. From owner-svn-src-stable@freebsd.org Fri Jul 31 12:02:05 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 19107377DB2; Fri, 31 Jul 2020 12:02:05 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ5Vh6y2rz4hPj; Fri, 31 Jul 2020 12:02:04 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D2052213DD; Fri, 31 Jul 2020 12:02:04 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VC24rh052430; Fri, 31 Jul 2020 12:02:04 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VC24Vv052429; Fri, 31 Jul 2020 12:02:04 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311202.06VC24Vv052429@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 12:02:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363731 - stable/12/share/man/man8 X-SVN-Group: stable-12 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/12/share/man/man8 X-SVN-Commit-Revision: 363731 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 12:02:05 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 12:02:04 2020 New Revision: 363731 URL: https://svnweb.freebsd.org/changeset/base/363731 Log: MFC 363475: Fix grammar issues and typos Reported by: ian Modified: stable/12/share/man/man8/rc.subr.8 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man8/rc.subr.8 ============================================================================== --- stable/12/share/man/man8/rc.subr.8 Fri Jul 31 11:28:09 2020 (r363730) +++ stable/12/share/man/man8/rc.subr.8 Fri Jul 31 12:02:04 2020 (r363731) @@ -239,9 +239,9 @@ argument is the .Xr basename 1 component of the path to the script located at .Pa /etc/rc.d -(scripts stored in other locations like +(scripts stored in other locations such as .Pa /usr/local/etc/rc.d -cannot be contolled with +cannot be controlled with .Ic force_depend currently). If the script fails for any reason it will output a warning From owner-svn-src-stable@freebsd.org Fri Jul 31 12:10:00 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A6C2D378939; Fri, 31 Jul 2020 12:10:00 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJ5gr3jffz4j0D; Fri, 31 Jul 2020 12:10:00 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5E9E4216A3; Fri, 31 Jul 2020 12:10:00 +0000 (UTC) (envelope-from 0mp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 06VCA0TM057810; Fri, 31 Jul 2020 12:10:00 GMT (envelope-from 0mp@FreeBSD.org) Received: (from 0mp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 06VCA0Bh057809; Fri, 31 Jul 2020 12:10:00 GMT (envelope-from 0mp@FreeBSD.org) Message-Id: <202007311210.06VCA0Bh057809@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: 0mp set sender to 0mp@FreeBSD.org using -f From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Fri, 31 Jul 2020 12:10:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r363732 - stable/11/share/man/man8 X-SVN-Group: stable-11 X-SVN-Commit-Author: 0mp X-SVN-Commit-Paths: stable/11/share/man/man8 X-SVN-Commit-Revision: 363732 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jul 2020 12:10:00 -0000 Author: 0mp (doc,ports committer) Date: Fri Jul 31 12:09:59 2020 New Revision: 363732 URL: https://svnweb.freebsd.org/changeset/base/363732 Log: MFC 363475: Fix grammar issues and typos Reported by: ian Modified: stable/11/share/man/man8/rc.subr.8 Directory Properties: stable/11/ (props changed) Modified: stable/11/share/man/man8/rc.subr.8 ============================================================================== --- stable/11/share/man/man8/rc.subr.8 Fri Jul 31 12:02:04 2020 (r363731) +++ stable/11/share/man/man8/rc.subr.8 Fri Jul 31 12:09:59 2020 (r363732) @@ -260,9 +260,9 @@ argument is the .Xr basename 1 component of the path to the script located at .Pa /etc/rc.d -(scripts stored in other locations like +(scripts stored in other locations such as .Pa /usr/local/etc/rc.d -cannot be contolled with +cannot be controlled with .Ic force_depend currently). If the script fails for any reason it will output a warning From owner-svn-src-stable@freebsd.org Sat Aug 1 13:56:32 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1A85337C174; Sat, 1 Aug 2020 13:56:32 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJm0H6zphz4L1B; Sat, 1 Aug 2020 13:56:31 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D316313A34; Sat, 1 Aug 2020 13:56:31 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071DuVre017438; Sat, 1 Aug 2020 13:56:31 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071DuV93017437; Sat, 1 Aug 2020 13:56:31 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011356.071DuV93017437@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 13:56:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363760 - stable/12/lib/msun/man X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/lib/msun/man X-SVN-Commit-Revision: 363760 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 13:56:32 -0000 Author: gbe (doc committer) Date: Sat Aug 1 13:56:31 2020 New Revision: 363760 URL: https://svnweb.freebsd.org/changeset/base/363760 Log: MFC r359326 (by carlavilla): Add a HISTORY section to log(3) man page PR: 240265 Submitted by: gbe Approved by: bcr, imp Differential Revision: https://reviews.freebsd.org/D24148 Modified: stable/12/lib/msun/man/log.3 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/msun/man/log.3 ============================================================================== --- stable/12/lib/msun/man/log.3 Sat Aug 1 09:40:19 2020 (r363759) +++ stable/12/lib/msun/man/log.3 Sat Aug 1 13:56:31 2020 (r363760) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 3, 2013 +.Dd March 22, 2020 .Dt LOG 3 .Os .Sh NAME @@ -135,3 +135,14 @@ and .Fn log1pl functions conform to .St -isoC-99 . +.Sh HISTORY +The +.Fn log +function first appeared in +.At v1 ; +.Fn log10 +in +.At v7 ; +.Fn log1p +in +.Bx 4.3 . From owner-svn-src-stable@freebsd.org Sat Aug 1 14:00:48 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6C8F937C331; Sat, 1 Aug 2020 14:00:48 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJm5D20vtz4LL3; Sat, 1 Aug 2020 14:00:48 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 28E9A13C3C; Sat, 1 Aug 2020 14:00:48 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071E0ma6017760; Sat, 1 Aug 2020 14:00:48 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071E0m50017759; Sat, 1 Aug 2020 14:00:48 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011400.071E0m50017759@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:00:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363761 - stable/12/lib/libc/stdlib X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/lib/libc/stdlib X-SVN-Commit-Revision: 363761 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:00:48 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:00:47 2020 New Revision: 363761 URL: https://svnweb.freebsd.org/changeset/base/363761 Log: MFC r359772 (by carlavilla): exit(3): Add a HISTORY section PR: 240259 Submitted by: gbe Reviewed by: bcr Approved by: bcr Obtained from: OpenBSD Differential Revision: https://reviews.freebsd.org/D24146 Modified: stable/12/lib/libc/stdlib/exit.3 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/stdlib/exit.3 ============================================================================== --- stable/12/lib/libc/stdlib/exit.3 Sat Aug 1 13:56:31 2020 (r363760) +++ stable/12/lib/libc/stdlib/exit.3 Sat Aug 1 14:00:47 2020 (r363761) @@ -32,7 +32,7 @@ .\" @(#)exit.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd May 28, 2018 +.Dd March 22, 2020 .Dt EXIT 3 .Os .Sh NAME @@ -131,3 +131,8 @@ and .Fn _Exit functions conform to .St -isoC-99 . +.Sh HISTORY +The +.Fn exit +function appeared in +.At v1 . From owner-svn-src-stable@freebsd.org Sat Aug 1 14:08:06 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 1F22F37C57E; Sat, 1 Aug 2020 14:08:06 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJmFd6v6xz4LPj; Sat, 1 Aug 2020 14:08:05 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CC07313A55; Sat, 1 Aug 2020 14:08:05 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071E85FF023703; Sat, 1 Aug 2020 14:08:05 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071E85o2023702; Sat, 1 Aug 2020 14:08:05 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011408.071E85o2023702@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:08:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363762 - stable/12/lib/libc/stdio X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/lib/libc/stdio X-SVN-Commit-Revision: 363762 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:08:06 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:08:05 2020 New Revision: 363762 URL: https://svnweb.freebsd.org/changeset/base/363762 Log: MFC r359773 (by carlavilla): Add HISTORY section to getc(3) PR: 240269 Submitted by: gbe Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D24295 Modified: stable/12/lib/libc/stdio/getc.3 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/stdio/getc.3 ============================================================================== --- stable/12/lib/libc/stdio/getc.3 Sat Aug 1 14:00:47 2020 (r363761) +++ stable/12/lib/libc/stdio/getc.3 Sat Aug 1 14:08:05 2020 (r363762) @@ -32,7 +32,7 @@ .\" @(#)getc.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd January 10, 2003 +.Dd April 4, 2020 .Dt GETC 3 .Os .Sh NAME @@ -153,6 +153,22 @@ and .Fn getchar_unlocked functions conform to .St -p1003.1-2001 . +.Sh HISTORY +The +.Fn getc +and +.Fn getw +functions appeared in a similar form in +.At v1 ; +and were integrated into stdio in +.At v7 ; +.Fn getchar +in +.At v4 ; +and +.Fn fgetc +in +.At v7 . .Sh BUGS Since .Dv EOF From owner-svn-src-stable@freebsd.org Sat Aug 1 14:22:07 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 20C6937CADA; Sat, 1 Aug 2020 14:22:07 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJmYq08fQz4MfF; Sat, 1 Aug 2020 14:22:07 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id C5982140F6; Sat, 1 Aug 2020 14:22:06 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071EM6Rv033412; Sat, 1 Aug 2020 14:22:06 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071EM5Uc033404; Sat, 1 Aug 2020 14:22:05 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011422.071EM5Uc033404@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:22:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363763 - in stable/12/lib: libc/stdio libc/stdlib msun/man X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: in stable/12/lib: libc/stdio libc/stdlib msun/man X-SVN-Commit-Revision: 363763 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:22:07 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:22:05 2020 New Revision: 363763 URL: https://svnweb.freebsd.org/changeset/base/363763 Log: MFC r359547, r359629 (by imp): Note some functions that appeared in First Edition Unix These functions first appeared in the First Edition of Unix (or earlier in the pdp-7 version). Just claim 1st Edition for all this. The pdp-7 code is too fragmented at this point to extend history that far back. Modified: stable/12/lib/libc/stdio/getwc.3 stable/12/lib/libc/stdlib/atof.3 stable/12/lib/libc/stdlib/atoi.3 stable/12/lib/msun/man/cos.3 stable/12/lib/msun/man/exp.3 stable/12/lib/msun/man/sin.3 Directory Properties: stable/12/ (props changed) Modified: stable/12/lib/libc/stdio/getwc.3 ============================================================================== --- stable/12/lib/libc/stdio/getwc.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/libc/stdio/getwc.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -112,3 +112,10 @@ and functions conform to .St -isoC-99 . +.Sh HISTORY +A version of the +.Fn getc +and +.Fn getw +functions appeared in +.At v1 . Modified: stable/12/lib/libc/stdlib/atof.3 ============================================================================== --- stable/12/lib/libc/stdlib/atof.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/libc/stdlib/atof.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -32,7 +32,7 @@ .\" @(#)atof.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd June 4, 1993 +.Dd April 1, 2020 .Dt ATOF 3 .Os .Sh NAME @@ -93,3 +93,8 @@ function conforms to .St -isoC , and .St -isoC-99 . +.Sh HISTORY +The +.Fn atof +function appeared in +.At v1 . Modified: stable/12/lib/libc/stdlib/atoi.3 ============================================================================== --- stable/12/lib/libc/stdlib/atoi.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/libc/stdlib/atoi.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -32,7 +32,7 @@ .\" @(#)atoi.3 8.1 (Berkeley) 6/4/93 .\" $FreeBSD$ .\" -.Dd June 13, 2018 +.Dd April 1, 2020 .Dt ATOI 3 .Os .Sh NAME @@ -85,3 +85,8 @@ function conforms to .St -isoC , and .St -isoC-99 . +.Sh HISTORY +The +.Fn atoi +function appeared in +.At v1 . Modified: stable/12/lib/msun/man/cos.3 ============================================================================== --- stable/12/lib/msun/man/cos.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/msun/man/cos.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -28,7 +28,7 @@ .\" from: @(#)cos.3 5.1 (Berkeley) 5/2/91 .\" $FreeBSD$ .\" -.Dd January 24, 2008 +.Dd April 1, 2020 .Dt COS 3 .Os .Sh NAME @@ -81,3 +81,8 @@ functions return the cosine value. .Sh STANDARDS These functions conform to .St -isoC-99 . +.Sh HISTORY +The +.Fn cos +function first appeared in +.At v1 . Modified: stable/12/lib/msun/man/exp.3 ============================================================================== --- stable/12/lib/msun/man/exp.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/msun/man/exp.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -28,7 +28,7 @@ .\" from: @(#)exp.3 6.12 (Berkeley) 7/31/91 .\" $FreeBSD$ .\" -.Dd December 8, 2017 +.Dd April 1, 2020 .Dt EXP 3 .Os .Sh NAME @@ -190,3 +190,8 @@ and infinite x, i.e., independently of x. .Sh STANDARDS These functions conform to .St -isoC-99 . +.Sh HISTORY +The +.Fn exp +function appeared in +.At v1 . Modified: stable/12/lib/msun/man/sin.3 ============================================================================== --- stable/12/lib/msun/man/sin.3 Sat Aug 1 14:08:05 2020 (r363762) +++ stable/12/lib/msun/man/sin.3 Sat Aug 1 14:22:05 2020 (r363763) @@ -29,7 +29,7 @@ .\" from: @(#)sin.3 6.7 (Berkeley) 4/19/91 .\" $FreeBSD$ .\" -.Dd January 24, 2008 +.Dd April 1, 2020 .Dt SIN 3 .Os .Sh NAME @@ -80,3 +80,8 @@ functions return the sine value. .Sh STANDARDS These functions conform to .St -isoC-99 . +.Sh HISTORY +The +.Fn sin +function first appeared in +.At v1 . From owner-svn-src-stable@freebsd.org Sat Aug 1 14:33:23 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 3654E37D06E; Sat, 1 Aug 2020 14:33:23 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJmpq0jsgz4N8y; Sat, 1 Aug 2020 14:33:23 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id F0F771414E; Sat, 1 Aug 2020 14:33:22 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071EXMjD042295; Sat, 1 Aug 2020 14:33:22 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071EXMTA042294; Sat, 1 Aug 2020 14:33:22 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011433.071EXMTA042294@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:33:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363764 - stable/12/share/man/man7 X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/share/man/man7 X-SVN-Commit-Revision: 363764 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:33:23 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:33:22 2020 New Revision: 363764 URL: https://svnweb.freebsd.org/changeset/base/363764 Log: MFC r352577 (by 0mp): ascii(7): Add STANDARDS section and update HISTORY section PR: 240727 Submitted by: gbe Reviewed by: imp Modified: stable/12/share/man/man7/ascii.7 Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man7/ascii.7 ============================================================================== --- stable/12/share/man/man7/ascii.7 Sat Aug 1 14:22:05 2020 (r363763) +++ stable/12/share/man/man7/ascii.7 Sat Aug 1 14:33:22 2020 (r363764) @@ -28,7 +28,7 @@ .\" @(#)ascii.7 8.1 (Berkeley) 6/5/93 .\" $FreeBSD$ .\" -.Dd October 30, 2017 +.Dd September 21, 2019 .Dt ASCII 7 .Os .Sh NAME @@ -146,8 +146,15 @@ ESC ; [ { 11011 .Bl -tag -width /usr/share/misc/ascii -compact .It Pa /usr/share/misc/ascii .El +.Sh STANDARDS +.Rs +.%T Information Systems - Coded Character Sets - 7-Bit American National\ + Standard Code for Information Interchange (7-Bit ASCII) +.%R INCITS 4-1986[R2017] +.%Q InterNational Committee for Information Technology Standards +.Re .Sh HISTORY An .Nm manual page appeared in -.At v7 . +.At v2 . From owner-svn-src-stable@freebsd.org Sat Aug 1 14:41:44 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5DFB337DB94; Sat, 1 Aug 2020 14:41:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJn0S1py8z4P0b; Sat, 1 Aug 2020 14:41:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 213E4141AC; Sat, 1 Aug 2020 14:41:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071EfhfN043899; Sat, 1 Aug 2020 14:41:44 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071Efhc5043898; Sat, 1 Aug 2020 14:41:43 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011441.071Efhc5043898@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:41:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363765 - stable/12/usr.bin/ncal X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/usr.bin/ncal X-SVN-Commit-Revision: 363765 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:41:44 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:41:43 2020 New Revision: 363765 URL: https://svnweb.freebsd.org/changeset/base/363765 Log: MFC r359418 (by grog): Add STANDARDS section PR: 239723 Submitted by: gbe Reported by: gbe Modified: stable/12/usr.bin/ncal/ncal.1 Directory Properties: stable/12/ (props changed) Modified: stable/12/usr.bin/ncal/ncal.1 ============================================================================== --- stable/12/usr.bin/ncal/ncal.1 Sat Aug 1 14:33:22 2020 (r363764) +++ stable/12/usr.bin/ncal/ncal.1 Sat Aug 1 14:41:43 2020 (r363765) @@ -179,6 +179,24 @@ Highlighting of dates is disabled if stdout is not a t .Sh SEE ALSO .Xr calendar 3 , .Xr strftime 3 +.Sh STANDARDS +The +.Nm +utility is compliant with the +X/Open System Interfaces option of the +.St -p1003.1-2008 +specification. +.Pp +The flags +.Op Fl 3hyJeopw , +as well as the ability to specify a month name as a single argument, +are extensions to that specification. +.Pp +The week number computed by +.Fl w +is compliant with the +.St -iso8601 +specification. .Sh HISTORY A .Nm From owner-svn-src-stable@freebsd.org Sat Aug 1 14:58:44 2020 Return-Path: Delivered-To: svn-src-stable@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6C25C37DF70; Sat, 1 Aug 2020 14:58:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BJnN4227jz4Pdj; Sat, 1 Aug 2020 14:58:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 245B814773; Sat, 1 Aug 2020 14:58:44 +0000 (UTC) (envelope-from gbe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 071EwhNj054832; Sat, 1 Aug 2020 14:58:43 GMT (envelope-from gbe@FreeBSD.org) Received: (from gbe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 071EwhbB054831; Sat, 1 Aug 2020 14:58:43 GMT (envelope-from gbe@FreeBSD.org) Message-Id: <202008011458.071EwhbB054831@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gbe set sender to gbe@FreeBSD.org using -f From: Gordon Bergling Date: Sat, 1 Aug 2020 14:58:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r363766 - stable/12/share/man/man7 X-SVN-Group: stable-12 X-SVN-Commit-Author: gbe X-SVN-Commit-Paths: stable/12/share/man/man7 X-SVN-Commit-Revision: 363766 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Aug 2020 14:58:44 -0000 Author: gbe (doc committer) Date: Sat Aug 1 14:58:43 2020 New Revision: 363766 URL: https://svnweb.freebsd.org/changeset/base/363766 Log: MFC r363106 (by carlavilla): Add orders man page PR: 239020 Submitted by: gbe Approved by: imp Obtained from: NetBSD Differential Revision: https://reviews.freebsd.org/D24293 Added: stable/12/share/man/man7/orders.7 - copied unchanged from r363106, head/share/man/man7/orders.7 Modified: stable/12/share/man/man7/Makefile Directory Properties: stable/12/ (props changed) Modified: stable/12/share/man/man7/Makefile ============================================================================== --- stable/12/share/man/man7/Makefile Sat Aug 1 14:41:43 2020 (r363765) +++ stable/12/share/man/man7/Makefile Sat Aug 1 14:58:43 2020 (r363766) @@ -23,6 +23,7 @@ MAN= arch.7 \ intro.7 \ maclabel.7 \ operator.7 \ + orders.7 \ ports.7 \ release.7 \ sdoc.7 \ Copied: stable/12/share/man/man7/orders.7 (from r363106, head/share/man/man7/orders.7) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/12/share/man/man7/orders.7 Sat Aug 1 14:58:43 2020 (r363766, copy of r363106, head/share/man/man7/orders.7) @@ -0,0 +1,111 @@ +.\" $NetBSD: orders.7,v 1.6 2011/08/06 11:07:18 jruoho Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd August 6, 2011 +.Dt ORDERS 7 +.Os +.Sh NAME +.Nm orders +.Nd orders of magnitude +.Sh DESCRIPTION +The following table lists common multiples of bytes. +.Bl -column -offset 2n \ +"Kilobyte" "Prefix" "Power of 2" "Power of 10" +.It Sy Name Ta Sy Prefix Ta Sy Power of 2 Ta Sy Power of 10 +.It Kilobyte Ta kB Ta 2^10 Ta 10^3 +.It Megabyte Ta MB Ta 2^20 Ta 10^6 +.It Gigabyte Ta GB Ta 2^30 Ta 10^9 +.It Terabyte Ta TB Ta 2^40 Ta 10^12 +.It Petabyte Ta PB Ta 2^50 Ta 10^15 +.It Exabyte Ta EB Ta 2^60 Ta 10^18 +.It Zettabyte Ta ZB Ta 2^70 Ta 10^21 +.It Yottabyte Ta YB Ta 2^80 Ta 10^24 +.El +.Pp +The following table lists common bit rates as a power of ten. +.Bl -column -offset 2n \ +"Megabit per second" "Prefix" "Bit per second" "Byte per second" +.It Sy Name Ta Sy Prefix Ta Sy Bit per second Ta Sy Byte per second +.It Bit per second Ta bit/s Ta 1 Ta 0.125 +.It Byte per second Ta B/s Ta 8 Ta 1 +.It Kilobit per second Ta kbit/s Ta 10^3 Ta 125 +.It Kilobyte per second Ta kB/s Ta 8 * 10^3 Ta 1000 +.It Megabit per second Ta Mbit/s Ta 10^6 Ta 125000 +.It Megabyte per second Ta MB/s Ta 8 * 10^6 Ta 1000000 +.It Gigabit per second Ta Gbit/s Ta 10^9 Ta 125000000 +.It Gigabyte per second Ta GB/s Ta 8 * 10^9 Ta 1000000000 +.It Terabit per second Ta Tbit/s Ta 10^12 Ta 125000000000 +.It Terabyte per second Ta TB/s Ta 8 * 10^12 Ta 1000000000000 +.El +.Pp +The following table lists common orders of magnitude as a power of ten. +.Bl -column -offset 2n \ +"Septillionth" "Order" "Prefix" "Symbol" "Decimal" +.It Sy Name Ta Sy Order Ta Sy Prefix Ta Sy Symbol Ta Sy Decimal +.It Septillionth Ta 10^-24 Ta yocto Ta y Ta 0.000000000000000000000001 +.It Sextillionth Ta 10^-21 Ta zepto Ta z Ta 0.000000000000000000001 +.It Quintillionth Ta 10^-18 Ta atto Ta a Ta 0.000000000000000001 +.It Quadrillionth Ta 10^-15 Ta femto Ta f Ta 0.000000000000001 +.It Trillionth Ta 10^-12 Ta pico Ta p Ta 0.000000000001 +.It Billionth Ta 10^-9 Ta nano Ta n Ta 0.000000001 +.It Millionth Ta 10^-6 Ta micro Ta mu Ta 0.000001 +.It Thousandth Ta 10^-3 Ta milli Ta m Ta 0.001 +.It Hundredth Ta 10^-2 Ta centi Ta c Ta 0.01 +.It Tenth Ta 10^-1 Ta deci Ta d Ta 0.1 +.It One Ta 10^0 Ta - Ta - Ta 1 +.It Ten Ta 10^1 Ta deca Ta da Ta 10 +.It Hundred Ta 10^2 Ta hecto Ta h Ta 100 +.It Thousand Ta 10^3 Ta kilo Ta k Ta 1000 +.It Million Ta 10^6 Ta mega Ta M Ta 1000000 +.It Billion Ta 10^9 Ta giga Ta G Ta 1000000000 +.It Trillion Ta 10^12 Ta tera Ta T Ta 1000000000000 +.It Quadrillion Ta 10^15 Ta peta Ta P Ta 1000000000000000 +.It Quintillion Ta 10^18 Ta exa Ta E Ta 1000000000000000000 +.It Sextillion Ta 10^21 Ta zetta Ta Z Ta 1000000000000000000000 +.It Septillion Ta 10^24 Ta yotta Ta Y Ta 1000000000000000000000000 +.El +.Sh SEE ALSO +.Xr units 1 , +.Xr number 6 +.Sh STANDARDS +There have been various attempts to standardize the set of binary prefixes. +Organizations such as International Electrotechnical Commission +.Pq Tn IEC +have proposed new prefixes such as +.Dq kibi , +.Dq mebi , +.Dq gibi , +and +.Dq yobi , +but the adoption has been slow at best. +.Sh AUTHORS +This manual page was written by +.An Jukka Ruohonen Aq Mt jruoho@netbsd.org .