From owner-svn-src-all@freebsd.org  Sat Mar  2 23:20:48 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9F99C15159DD;
 Sat,  2 Mar 2019 23:20:48 +0000 (UTC) (envelope-from ian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 442C7895BB;
 Sat,  2 Mar 2019 23:20:48 +0000 (UTC) (envelope-from ian@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 37AD2BCC9;
 Sat,  2 Mar 2019 23:20:48 +0000 (UTC) (envelope-from ian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x22NKmAl092293;
 Sat, 2 Mar 2019 23:20:48 GMT (envelope-from ian@FreeBSD.org)
Received: (from ian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x22NKl5F092272;
 Sat, 2 Mar 2019 23:20:47 GMT (envelope-from ian@FreeBSD.org)
Message-Id: <201903022320.x22NKl5F092272@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ian set sender to ian@FreeBSD.org
 using -f
From: Ian Lepore <ian@FreeBSD.org>
Date: Sat, 2 Mar 2019 23:20:47 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344734 - in head: share/man/man4 sys/dev/flash
X-SVN-Group: head
X-SVN-Commit-Author: ian
X-SVN-Commit-Paths: in head: share/man/man4 sys/dev/flash
X-SVN-Commit-Revision: 344734
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 442C7895BB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 02 Mar 2019 23:20:48 -0000

Author: ian
Date: Sat Mar  2 23:20:47 2019
New Revision: 344734
URL: https://svnweb.freebsd.org/changeset/base/344734

Log:
  Allow the sector size of the disk device to be configured using hints or
  FDT data.  The sector size must be a multiple of the device's page size.
  If not configured, use the historical default of the device page size.
  
  Setting the disk sector size to 512 or 4096 allows a variety of standard
  filesystems to be used on the device.  Of course you wouldn't want to be
  writing frequently to a SPI flash chip like it was a disk drive, but for
  data that gets written once (or rarely) and read often, using a standard
  filesystem is a nice convenient thing.

Modified:
  head/share/man/man4/at45d.4
  head/sys/dev/flash/at45d.c

Modified: head/share/man/man4/at45d.4
==============================================================================
--- head/share/man/man4/at45d.4	Sat Mar  2 22:28:43 2019	(r344733)
+++ head/share/man/man4/at45d.4	Sat Mar  2 23:20:47 2019	(r344734)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 26, 2019
+.Dd March 2, 2019
 .Dt AT45D 4
 .Os
 .Sh NAME
@@ -126,6 +126,10 @@ The following properties are optional for the
 .Nm
 device subnode:
 .Bl -tag -width indent
+.It Va freebsd,sectorsize
+The sector size of the disk created for this storage device.
+It must be a multiple of the device's page size.
+The default is the device page size.
 .It Va spi-cpha
 Empty property indicating the slave device requires shifted clock
 phase (CPHA) mode.
@@ -156,6 +160,10 @@ The chip-select number to assert when performing I/O f
 Set the high bit (1 << 31) to invert the logic level of the chip select line.
 .It Va hint.at45d.%d.mode
 The SPI mode (0-3) to use when communicating with this device.
+.It Va hint.at45d.%d.sectorsize
+The sector size of the disk created for this storage device.
+It must be a multiple of the device's page size.
+The default is the device page size.
 .El
 .Sh FILES
 .Bl -tag -width /dev/flash/at45d?

Modified: head/sys/dev/flash/at45d.c
==============================================================================
--- head/sys/dev/flash/at45d.c	Sat Mar  2 22:28:43 2019	(r344733)
+++ head/sys/dev/flash/at45d.c	Sat Mar  2 23:20:47 2019	(r344734)
@@ -288,9 +288,11 @@ at45d_detach(device_t dev)
 	AT45D_UNLOCK(sc);
 
 	if (err == 0 && sc->taskstate == TSTATE_STOPPED) {
-		disk_destroy(sc->disk);
-		bioq_flush(&sc->bio_queue, NULL, ENXIO);
-		free(sc->dummybuf, M_DEVBUF);
+		if (sc->disk) {
+			disk_destroy(sc->disk);
+			bioq_flush(&sc->bio_queue, NULL, ENXIO);
+			free(sc->dummybuf, M_DEVBUF);
+		}
 		AT45D_LOCK_DESTROY(sc);
 	}
 	return (err);
@@ -303,6 +305,7 @@ at45d_delayed_attach(void *xsc)
 	struct at45d_mfg_info mfginfo;
 	const struct at45d_flash_ident *ident;
 	u_int i;
+	int sectorsize;
 	uint32_t jedec;
 	uint16_t pagesize;
 	uint8_t status;
@@ -340,6 +343,30 @@ at45d_delayed_attach(void *xsc)
 		pagesize = ident->pagesize;
 	sc->pagesize = pagesize;
 
+	/*
+	 * By default we set up a disk with a sector size that matches the
+	 * device page size.  If there is a device hint or fdt property
+	 * requesting a different size, use that, as long as it is a multiple of
+	 * the device page size).
+	 */
+	sectorsize = pagesize;
+#ifdef FDT
+	{
+		pcell_t size;
+		if (OF_getencprop(ofw_bus_get_node(sc->dev),
+		    "freebsd,sectorsize", &size, sizeof(size)) > 0)
+			sectorsize = size;
+	}
+#endif
+	resource_int_value(device_get_name(sc->dev), device_get_unit(sc->dev),
+	    "sectorsize", &sectorsize);
+
+	if ((sectorsize % pagesize) != 0) {
+		device_printf(sc->dev, "Invalid sectorsize %d, "
+		    "must be a multiple of %d\n", sectorsize, pagesize);
+		return;
+	}
+
 	sc->dummybuf = malloc(pagesize, M_DEVBUF, M_WAITOK | M_ZERO);
 
 	sc->disk = disk_alloc();
@@ -350,7 +377,7 @@ at45d_delayed_attach(void *xsc)
 	sc->disk->d_name = "flash/at45d";
 	sc->disk->d_drv1 = sc;
 	sc->disk->d_maxsize = DFLTPHYS;
-	sc->disk->d_sectorsize = pagesize;
+	sc->disk->d_sectorsize = sectorsize;
 	sc->disk->d_mediasize = pagesize * ident->pagecount;
 	sc->disk->d_unit = device_get_unit(sc->dev);
 	disk_create(sc->disk, DISK_VERSION);
@@ -358,9 +385,10 @@ at45d_delayed_attach(void *xsc)
 	bioq_init(&sc->bio_queue);
 	kproc_create(&at45d_task, sc, &sc->p, 0, 0, "task: at45d flash");
 	sc->taskstate = TSTATE_RUNNING;
-	device_printf(sc->dev, "%s, %d bytes per page, %d pages; %d KBytes\n",
+	device_printf(sc->dev,
+	    "%s, %d bytes per page, %d pages; %d KBytes; disk sector size %d\n",
 	    ident->name, pagesize, ident->pagecount,
-	    (pagesize * ident->pagecount) / 1024);
+	    (pagesize * ident->pagecount) / 1024, sectorsize);
 }
 
 static int

From owner-svn-src-all@freebsd.org  Sun Mar  3 03:40:12 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 341D21521F54;
 Sun,  3 Mar 2019 03:40:12 +0000 (UTC) (envelope-from ume@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CF4EF6C54F;
 Sun,  3 Mar 2019 03:40:11 +0000 (UTC) (envelope-from ume@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 C5C3DEFA0;
 Sun,  3 Mar 2019 03:40:11 +0000 (UTC) (envelope-from ume@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x233eBY6028765;
 Sun, 3 Mar 2019 03:40:11 GMT (envelope-from ume@FreeBSD.org)
Received: (from ume@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x233eBuH028764;
 Sun, 3 Mar 2019 03:40:11 GMT (envelope-from ume@FreeBSD.org)
Message-Id: <201903030340.x233eBuH028764@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ume set sender to ume@FreeBSD.org
 using -f
From: Hajimu UMEMOTO <ume@FreeBSD.org>
Date: Sun, 3 Mar 2019 03:40:11 +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: r344737 - stable/12/usr.sbin/syslogd
X-SVN-Group: stable-12
X-SVN-Commit-Author: ume
X-SVN-Commit-Paths: stable/12/usr.sbin/syslogd
X-SVN-Commit-Revision: 344737
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CF4EF6C54F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 03:40:12 -0000

Author: ume
Date: Sun Mar  3 03:40:11 2019
New Revision: 344737
URL: https://svnweb.freebsd.org/changeset/base/344737

Log:
  MFC r344491: An IPv6 address matching should be fixed.
  Specifying an IPv6 address by the -a option was broken
  since r309933.

Modified:
  stable/12/usr.sbin/syslogd/syslogd.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/syslogd/syslogd.c
==============================================================================
--- stable/12/usr.sbin/syslogd/syslogd.c	Sun Mar  3 03:36:33 2019	(r344736)
+++ stable/12/usr.sbin/syslogd/syslogd.c	Sun Mar  3 03:40:11 2019	(r344737)
@@ -3202,8 +3202,8 @@ validate(struct sockaddr *sa, const char *hname)
 					dprintf("rejected in rule %d due to scope mismatch.\n", i);
 					continue;
 				}
-				if (IN6_ARE_MASKED_ADDR_EQUAL(&sin6->sin6_addr,
-				    &a6p->sin6_addr, &m6p->sin6_addr) != 0) {
+				if (!IN6_ARE_MASKED_ADDR_EQUAL(&sin6->sin6_addr,
+				    &a6p->sin6_addr, &m6p->sin6_addr)) {
 					dprintf("rejected in rule %d due to IP mismatch.\n", i);
 					continue;
 				}

From owner-svn-src-all@freebsd.org  Sun Mar  3 03:42:52 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AECBA15221A2;
 Sun,  3 Mar 2019 03:42:52 +0000 (UTC) (envelope-from ume@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 4E46D6C939;
 Sun,  3 Mar 2019 03:42:52 +0000 (UTC) (envelope-from ume@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 42E48F14F;
 Sun,  3 Mar 2019 03:42:52 +0000 (UTC) (envelope-from ume@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x233gqF7033615;
 Sun, 3 Mar 2019 03:42:52 GMT (envelope-from ume@FreeBSD.org)
Received: (from ume@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x233gqOZ033614;
 Sun, 3 Mar 2019 03:42:52 GMT (envelope-from ume@FreeBSD.org)
Message-Id: <201903030342.x233gqOZ033614@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ume set sender to ume@FreeBSD.org
 using -f
From: Hajimu UMEMOTO <ume@FreeBSD.org>
Date: Sun, 3 Mar 2019 03:42:52 +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: r344738 - stable/11/usr.sbin/syslogd
X-SVN-Group: stable-11
X-SVN-Commit-Author: ume
X-SVN-Commit-Paths: stable/11/usr.sbin/syslogd
X-SVN-Commit-Revision: 344738
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4E46D6C939
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 03:42:52 -0000

Author: ume
Date: Sun Mar  3 03:42:51 2019
New Revision: 344738
URL: https://svnweb.freebsd.org/changeset/base/344738

Log:
  MFC r344491: An IPv6 address matching should be fixed.
  Specifying an IPv6 address by the -a option was broken
  since r309933.

Modified:
  stable/11/usr.sbin/syslogd/syslogd.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/syslogd/syslogd.c
==============================================================================
--- stable/11/usr.sbin/syslogd/syslogd.c	Sun Mar  3 03:40:11 2019	(r344737)
+++ stable/11/usr.sbin/syslogd/syslogd.c	Sun Mar  3 03:42:51 2019	(r344738)
@@ -3200,8 +3200,8 @@ validate(struct sockaddr *sa, const char *hname)
 					dprintf("rejected in rule %d due to scope mismatch.\n", i);
 					continue;
 				}
-				if (IN6_ARE_MASKED_ADDR_EQUAL(&sin6->sin6_addr,
-				    &a6p->sin6_addr, &m6p->sin6_addr) != 0) {
+				if (!IN6_ARE_MASKED_ADDR_EQUAL(&sin6->sin6_addr,
+				    &a6p->sin6_addr, &m6p->sin6_addr)) {
 					dprintf("rejected in rule %d due to IP mismatch.\n", i);
 					continue;
 				}

From owner-svn-src-all@freebsd.org  Sun Mar  3 03:36:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5371C1521EA2;
 Sun,  3 Mar 2019 03:36:35 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2109C6C3D0;
 Sun,  3 Mar 2019 03:36:34 +0000 (UTC) (envelope-from imp@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 0FE06EF8F;
 Sun,  3 Mar 2019 03:36:34 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x233aXcK028525;
 Sun, 3 Mar 2019 03:36:33 GMT (envelope-from imp@FreeBSD.org)
Received: (from imp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x233aXQn028524;
 Sun, 3 Mar 2019 03:36:33 GMT (envelope-from imp@FreeBSD.org)
Message-Id: <201903030336.x233aXQn028524@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org
 using -f
From: Warner Losh <imp@FreeBSD.org>
Date: Sun, 3 Mar 2019 03:36:33 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344736 - head/sys/dev/nvme
X-SVN-Group: head
X-SVN-Commit-Author: imp
X-SVN-Commit-Paths: head/sys/dev/nvme
X-SVN-Commit-Revision: 344736
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2109C6C3D0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 03:36:35 -0000

Author: imp
Date: Sun Mar  3 03:36:33 2019
New Revision: 344736
URL: https://svnweb.freebsd.org/changeset/base/344736

Log:
  Add ABORTED_BY_REQUEST to the list of things we look at DNR bit and tell why to comment (code already does this)

Modified:
  head/sys/dev/nvme/nvme_qpair.c

Modified: head/sys/dev/nvme/nvme_qpair.c
==============================================================================
--- head/sys/dev/nvme/nvme_qpair.c	Sun Mar  3 03:09:43 2019	(r344735)
+++ head/sys/dev/nvme/nvme_qpair.c	Sun Mar  3 03:36:33 2019	(r344736)
@@ -331,7 +331,8 @@ nvme_completion_is_retry(const struct nvme_completion 
 	 * TODO: spec is not clear how commands that are aborted due
 	 *  to TLER will be marked.  So for now, it seems
 	 *  NAMESPACE_NOT_READY is the only case where we should
-	 *  look at the DNR bit.
+	 *  look at the DNR bit. Requests failed with ABORTED_BY_REQUEST
+	 *  set the DNR bit correctly since the driver controls that.
 	 */
 	switch (sct) {
 	case NVME_SCT_GENERIC:

From owner-svn-src-all@freebsd.org  Sun Mar  3 03:09:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F9821520C04;
 Sun,  3 Mar 2019 03:09:44 +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)
 server-signature RSA-PSS (4096 bits)
 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 2E6426B448;
 Sun,  3 Mar 2019 03:09:44 +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 1C511EA23;
 Sun,  3 Mar 2019 03:09:44 +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 x2339hZf013137;
 Sun, 3 Mar 2019 03:09:43 GMT (envelope-from kevans@FreeBSD.org)
Received: (from kevans@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2339h8P013136;
 Sun, 3 Mar 2019 03:09:43 GMT (envelope-from kevans@FreeBSD.org)
Message-Id: <201903030309.x2339h8P013136@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kevans set sender to
 kevans@FreeBSD.org using -f
From: Kyle Evans <kevans@FreeBSD.org>
Date: Sun, 3 Mar 2019 03:09: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: r344735 - stable/11
X-SVN-Group: stable-11
X-SVN-Commit-Author: kevans
X-SVN-Commit-Paths: stable/11
X-SVN-Commit-Revision: 344735
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2E6426B448
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.93)[-0.934,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 03:09:44 -0000

Author: kevans
Date: Sun Mar  3 03:09:43 2019
New Revision: 344735
URL: https://svnweb.freebsd.org/changeset/base/344735

Log:
  UPDATING: Restore the missing period with another direct commit
  
  Reported by:	rgrimes

Modified:
  stable/11/UPDATING

Modified: stable/11/UPDATING
==============================================================================
--- stable/11/UPDATING	Sat Mar  2 23:20:47 2019	(r344734)
+++ stable/11/UPDATING	Sun Mar  3 03:09:43 2019	(r344735)
@@ -22,7 +22,7 @@ from older version of current across the gcc/clang cut
 	in build(7), may be used to control which interpreter flavor is used in
 	the default loader to be installed.  For systems where Lua and Forth
 	coexist, this switch can also be made on a running system by creating a
-	link from /boot/loader{,.efi} to /boot/loader_${flavor}{,efi} rather
+	link from /boot/loader{,.efi} to /boot/loader_${flavor}{,.efi} rather
 	than requiring a rebuild.
 
 	The default flavor in this branch will remain Forth.  As indicated in

From owner-svn-src-all@freebsd.org  Sun Mar  3 05:30:16 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5810A15247C2;
 Sun,  3 Mar 2019 05:30:16 +0000 (UTC) (envelope-from hrs@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 F0CF66F1EA;
 Sun,  3 Mar 2019 05:30:15 +0000 (UTC) (envelope-from hrs@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 C543218232;
 Sun,  3 Mar 2019 05:30:15 +0000 (UTC) (envelope-from hrs@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x235UFTS087152;
 Sun, 3 Mar 2019 05:30:15 GMT (envelope-from hrs@FreeBSD.org)
Received: (from hrs@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x235UFpB087151;
 Sun, 3 Mar 2019 05:30:15 GMT (envelope-from hrs@FreeBSD.org)
Message-Id: <201903030530.x235UFpB087151@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: hrs set sender to hrs@FreeBSD.org
 using -f
From: Hiroki Sato <hrs@FreeBSD.org>
Date: Sun, 3 Mar 2019 05:30:15 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344739 - head/usr.sbin/syslogd
X-SVN-Group: head
X-SVN-Commit-Author: hrs
X-SVN-Commit-Paths: head/usr.sbin/syslogd
X-SVN-Commit-Revision: 344739
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: F0CF66F1EA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.92 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.93)[-0.925,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 05:30:16 -0000

Author: hrs
Date: Sun Mar  3 05:30:15 2019
New Revision: 344739
URL: https://svnweb.freebsd.org/changeset/base/344739

Log:
  Use struct addrinfo instead of struct sockaddr_storage
  to store peer addresses.

Modified:
  head/usr.sbin/syslogd/syslogd.c

Modified: head/usr.sbin/syslogd/syslogd.c
==============================================================================
--- head/usr.sbin/syslogd/syslogd.c	Sun Mar  3 03:42:51 2019	(r344738)
+++ head/usr.sbin/syslogd/syslogd.c	Sun Mar  3 05:30:15 2019	(r344739)
@@ -187,7 +187,10 @@ struct peer {
 static STAILQ_HEAD(, peer) pqueue = STAILQ_HEAD_INITIALIZER(pqueue);
 
 struct socklist {
-	struct sockaddr_storage	sl_ss;
+	struct addrinfo		sl_ai;
+#define	sl_sa		sl_ai.ai_addr
+#define	sl_salen	sl_ai.ai_addrlen
+#define	sl_family	sl_ai.ai_family
 	int			sl_socket;
 	struct peer		*sl_peer;
 	int			(*sl_recv)(struct socklist *);
@@ -377,7 +380,7 @@ struct iovlist;
 static int	allowaddr(char *);
 static int	addfile(struct filed *);
 static int	addpeer(struct peer *);
-static int	addsock(struct sockaddr *, socklen_t, struct socklist *);
+static int	addsock(struct addrinfo *, struct socklist *);
 static struct filed *cfline(const char *, const char *, const char *);
 static const char *cvthname(struct sockaddr *);
 static void	deadq_enter(pid_t, const char *);
@@ -426,9 +429,9 @@ close_filed(struct filed *f)
 
 	switch (f->f_type) {
 	case F_FORW:
-		if (f->f_un.f_forw.f_addr) {
-			freeaddrinfo(f->f_un.f_forw.f_addr);
-			f->f_un.f_forw.f_addr = NULL;
+		if (f->fu_forw_addr != NULL) {
+			freeaddrinfo(f->fu_forw_addr);
+			f->fu_forw_addr = NULL;
 		}
 		/* FALLTHROUGH */
 
@@ -474,16 +477,23 @@ addpeer(struct peer *pe0)
 }
 
 static int
-addsock(struct sockaddr *sa, socklen_t sa_len, struct socklist *sl0)
+addsock(struct addrinfo *ai, struct socklist *sl0)
 {
 	struct socklist *sl;
 
-	sl = calloc(1, sizeof(*sl));
+	/* Copy *ai->ai_addr to the tail of struct socklist if any. */
+	sl = calloc(1, sizeof(*sl) + ((ai != NULL) ? ai->ai_addrlen : 0));
 	if (sl == NULL)
 		err(1, "malloc failed");
 	*sl = *sl0;
-	if (sa != NULL && sa_len > 0)
-		memcpy(&sl->sl_ss, sa, sa_len);
+	if (ai != NULL) {
+		memcpy(&sl->sl_ai, ai, sizeof(*ai));
+		if (ai->ai_addrlen > 0) {
+			memcpy((sl + 1), ai->ai_addr, ai->ai_addrlen);
+			sl->sl_sa = (struct sockaddr *)(sl + 1);
+		} else
+			sl->sl_sa = NULL;
+	}
 	STAILQ_INSERT_TAIL(&shead, sl, next);
 
 	return (0);
@@ -665,7 +675,7 @@ main(int argc, char *argv[])
 	if (s < 0) {
 		err(1, "cannot open a pipe for signals");
 	} else {
-		addsock(NULL, 0, &(struct socklist){
+		addsock(NULL, &(struct socklist){
 		    .sl_socket = sigpipe[0],
 		    .sl_recv = socklist_recv_signal
 		});
@@ -676,7 +686,7 @@ main(int argc, char *argv[])
 	if (s < 0) {
 		dprintf("can't open %s (%d)\n", _PATH_KLOG, errno);
 	} else {
-		addsock(NULL, 0, &(struct socklist){
+		addsock(NULL, &(struct socklist){
 			.sl_socket = s,
 			.sl_recv = socklist_recv_file,
 		});
@@ -848,7 +858,7 @@ socklist_recv_sock(struct socklist *sl)
 	}
 	/* Received valid data. */
 	line[len] = '\0';
-	if (sl->sl_ss.ss_family == AF_LOCAL)
+	if (sl->sl_sa != NULL && sl->sl_family == AF_LOCAL)
 		hname = LocalHostName;
 	else {
 		hname = cvthname(sa);
@@ -1643,7 +1653,7 @@ fprintlog_write(struct filed *f, struct iovlist *il, i
 	case F_FORW:
 		/* Truncate messages to RFC 5426 recommended size. */
 		dprintf(" %s", f->fu_forw_hname);
-		switch (f->fu_forw_addr->ai_addr->sa_family) {
+		switch (f->fu_forw_addr->ai_family) {
 #ifdef INET
 		case AF_INET:
 			dprintf(":%d\n",
@@ -1670,10 +1680,12 @@ fprintlog_write(struct filed *f, struct iovlist *il, i
 			msghdr.msg_iov = il->iov;
 			msghdr.msg_iovlen = il->iovcnt;
 			STAILQ_FOREACH(sl, &shead, next) {
-				if (sl->sl_ss.ss_family == AF_LOCAL ||
-				    sl->sl_ss.ss_family == AF_UNSPEC ||
-				    sl->sl_socket < 0)
+				if (sl->sl_socket < 0)
 					continue;
+				if (sl->sl_sa != NULL &&
+				    (sl->sl_family == AF_LOCAL ||
+				     sl->sl_family == AF_UNSPEC))
+					continue;
 				lsent = sendmsg(sl->sl_socket, &msghdr, 0);
 				if (lsent == (ssize_t)il->totalsize)
 					break;
@@ -2163,7 +2175,7 @@ die(int signo)
 		logerror(buf);
 	}
 	STAILQ_FOREACH(sl, &shead, next) {
-		if (sl->sl_ss.ss_family == AF_LOCAL)
+		if (sl->sl_sa != NULL && sl->sl_family == AF_LOCAL)
 			unlink(sl->sl_peer->pe_name);
 	}
 	pidfile_remove(pfh);
@@ -2450,7 +2462,7 @@ init(int signo)
 				break;
 
 			case F_FORW:
-				switch (f->fu_forw_addr->ai_addr->sa_family) {
+				switch (f->fu_forw_addr->ai_family) {
 #ifdef INET
 				case AF_INET:
 					port = ntohs(satosin(f->fu_forw_addr->ai_addr)->sin_port);
@@ -3527,8 +3539,7 @@ socksetup(struct peer *pe)
 #endif
 			dprintf("listening on socket\n");
 		dprintf("sending on socket\n");
-		addsock(res->ai_addr, res->ai_addrlen,
-		    &(struct socklist){
+		addsock(res, &(struct socklist){
 			.sl_socket = s,
 			.sl_peer = pe,
 			.sl_recv = sl_recv

From owner-svn-src-all@freebsd.org  Sun Mar  3 10:00:28 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E14DF1504823;
 Sun,  3 Mar 2019 10:00:27 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 86FFB76548;
 Sun,  3 Mar 2019 10:00:27 +0000 (UTC) (envelope-from bz@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 77E4B1B0A6;
 Sun,  3 Mar 2019 10:00:27 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x23A0RE1027060;
 Sun, 3 Mar 2019 10:00:27 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x23A0RkN027059;
 Sun, 3 Mar 2019 10:00:27 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903031000.x23A0RkN027059@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Sun, 3 Mar 2019 10:00:27 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344740 - in head: usr.bin/netstat usr.sbin/syslogd
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: in head: usr.bin/netstat usr.sbin/syslogd
X-SVN-Commit-Revision: 344740
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 86FFB76548
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 10:00:28 -0000

Author: bz
Date: Sun Mar  3 10:00:26 2019
New Revision: 344740
URL: https://svnweb.freebsd.org/changeset/base/344740

Log:
  Fix compilation of world with WITHOUT_{INET,INET6}_SUPPORT or both set.
  
  Buildworld failed when both WITHOUT_INET6_SUPPORT and INET equivalent were set.
  Fix netstat and syslogd by applying appropriate #ifdef INET/INET6 to make world
  compile again.
  
  Reviewed by:		ngie, hrs, ume
  Welcomed by:		Michael Dexter (D17040)
  MFC after:		3 days
  Differential Revision:	https://reviews.freebsd.org/D19418

Modified:
  head/usr.bin/netstat/inet.c
  head/usr.sbin/syslogd/syslogd.c

Modified: head/usr.bin/netstat/inet.c
==============================================================================
--- head/usr.bin/netstat/inet.c	Sun Mar  3 05:30:15 2019	(r344739)
+++ head/usr.bin/netstat/inet.c	Sun Mar  3 10:00:26 2019	(r344740)
@@ -85,8 +85,10 @@ __FBSDID("$FreeBSD$");
 #include "netstat.h"
 #include "nl_defs.h"
 
-void	inetprint(const char *, struct in_addr *, int, const char *, int,
+#ifdef INET
+static void inetprint(const char *, struct in_addr *, int, const char *, int,
     const int);
+#endif
 #ifdef INET6
 static int udp_done, tcp_done, sdp_done;
 #endif /* INET6 */
@@ -390,6 +392,7 @@ protopr(u_long off, const char *name, int af1, int pro
 			    so->so_rcv.sb_cc, so->so_snd.sb_cc);
 		}
 		if (numeric_port) {
+#ifdef INET
 			if (inp->inp_vflag & INP_IPV4) {
 				inetprint("local", &inp->inp_laddr,
 				    (int)inp->inp_lport, name, 1, af1);
@@ -397,8 +400,12 @@ protopr(u_long off, const char *name, int af1, int pro
 					inetprint("remote", &inp->inp_faddr,
 					    (int)inp->inp_fport, name, 1, af1);
 			}
+#endif
+#if defined(INET) && defined(INET6)
+			else
+#endif
 #ifdef INET6
-			else if (inp->inp_vflag & INP_IPV6) {
+			if (inp->inp_vflag & INP_IPV6) {
 				inet6print("local", &inp->in6p_laddr,
 				    (int)inp->inp_lport, name, 1);
 				if (!Lflag)
@@ -407,6 +414,7 @@ protopr(u_long off, const char *name, int af1, int pro
 			} /* else nothing printed now */
 #endif /* INET6 */
 		} else if (inp->inp_flags & INP_ANONPORT) {
+#ifdef INET
 			if (inp->inp_vflag & INP_IPV4) {
 				inetprint("local", &inp->inp_laddr,
 				    (int)inp->inp_lport, name, 1, af1);
@@ -414,8 +422,12 @@ protopr(u_long off, const char *name, int af1, int pro
 					inetprint("remote", &inp->inp_faddr,
 					    (int)inp->inp_fport, name, 0, af1);
 			}
+#endif
+#if defined(INET) && defined(INET6)
+			else
+#endif
 #ifdef INET6
-			else if (inp->inp_vflag & INP_IPV6) {
+			if (inp->inp_vflag & INP_IPV6) {
 				inet6print("local", &inp->in6p_laddr,
 				    (int)inp->inp_lport, name, 1);
 				if (!Lflag)
@@ -424,6 +436,7 @@ protopr(u_long off, const char *name, int af1, int pro
 			} /* else nothing printed now */
 #endif /* INET6 */
 		} else {
+#ifdef INET
 			if (inp->inp_vflag & INP_IPV4) {
 				inetprint("local", &inp->inp_laddr,
 				    (int)inp->inp_lport, name, 0, af1);
@@ -433,8 +446,12 @@ protopr(u_long off, const char *name, int af1, int pro
 					    inp->inp_lport != inp->inp_fport,
 					    af1);
 			}
+#endif
+#if defined(INET) && defined(INET6)
+			else
+#endif
 #ifdef INET6
-			else if (inp->inp_vflag & INP_IPV6) {
+			if (inp->inp_vflag & INP_IPV6) {
 				inet6print("local", &inp->in6p_laddr,
 				    (int)inp->inp_lport, name, 0);
 				if (!Lflag)
@@ -1314,10 +1331,11 @@ pim_stats(u_long off __unused, const char *name, int a
 	xo_close_container(name);
 }
 
+#ifdef INET
 /*
  * Pretty print an Internet address (net address + port).
  */
-void
+static void
 inetprint(const char *container, struct in_addr *in, int port,
     const char *proto, int num_port, const int af1)
 {
@@ -1404,3 +1422,4 @@ inetname(struct in_addr *inp)
 	}
 	return (line);
 }
+#endif

Modified: head/usr.sbin/syslogd/syslogd.c
==============================================================================
--- head/usr.sbin/syslogd/syslogd.c	Sun Mar  3 05:30:15 2019	(r344739)
+++ head/usr.sbin/syslogd/syslogd.c	Sun Mar  3 10:00:26 2019	(r344740)
@@ -1619,6 +1619,7 @@ iovlist_append(struct iovlist *il, const char *str)
 	}
 }
 
+#if defined(INET) || defined(INET6)
 static void
 iovlist_truncate(struct iovlist *il, size_t size)
 {
@@ -1639,6 +1640,7 @@ iovlist_truncate(struct iovlist *il, size_t size)
 		}
 	}
 }
+#endif
 
 static void
 fprintlog_write(struct filed *f, struct iovlist *il, int flags)
@@ -2959,7 +2961,11 @@ timedout(int sig __unused)
  * Returns -1 on error, 0 if the argument was valid.
  */
 static int
+#if defined(INET) || defined(INET6)
 allowaddr(char *s)
+#else
+allowaddr(char *s __unused)
+#endif
 {
 #if defined(INET) || defined(INET6)
 	char *cp1, *cp2;
@@ -3121,13 +3127,13 @@ allowaddr(char *s)
 		}
 		printf("port = %d\n", ap->port);
 	}
-#endif
 
 	return (0);
 err:
 	if (res != NULL)
 		freeaddrinfo(res);
 	free(ap);
+#endif
 	return (-1);
 }
 

From owner-svn-src-all@freebsd.org  Sun Mar  3 20:20:46 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 49D631518589;
 Sun,  3 Mar 2019 20:20:46 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com
 [IPv6:2607:f8b0:4864:20::52a])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id C17D76A6DA;
 Sun,  3 Mar 2019 20:20:44 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: by mail-pg1-x52a.google.com with SMTP id m2so1491286pgl.5;
 Sun, 03 Mar 2019 12:20:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:subject:from:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=qF+2EQ+8ILLXVS4zZoCPsqtAXTwi42drjYhBkdhAQVE=;
 b=egUCfkxlqUH+03SlFQ89kq17vlLOwUmEDhZ4smLU76ysxQbzGZQalnFnhGaDlM6u9h
 BNifyVVghM4SSJcTdJ6P5mKWpOLQKpHliHtwNj8AIsYgN499cVn6qlDQwechbglVxxvy
 880jcHkvOoWq7nGqGxB9z+XainMJU67Gz1eG/sSGpmtyV76zmFw2g80K7tJQzYOGdU69
 5+RWehbJao80pu+nteGWFYrz/if6sXIofBMIV2ojsZDs7sjYAJdEz309Ik5ExCBpHsaG
 EyUPt6LuYXv2ihMqjk0G+LIgHb2+rtTmNJ/gwmzMoffJu1zJ7jU/Bj/N+r4cR3vz1Hjq
 4CMQ==
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=qF+2EQ+8ILLXVS4zZoCPsqtAXTwi42drjYhBkdhAQVE=;
 b=AnKTFHWnNrSgalsPaaMhABhn2UMeRVOKfpGd/4gomX9tauvx2p38UAKFHXtAvSFNo4
 xlGHsrbtsDVViucvAHucSg0zK4rhpSmSzL6JQi1tobxMZsrUd8gypHIAlVuFJgP44h1f
 kEFCQAFp5pyqeNcKDtHs9SLmgBGxxkjtbBjIIILWnHrvcHvIVebCoudqAfrIxASUGKdW
 yR1SQeWuunU73CDBRSGGgCgyX+l89DBSocuEice83CDUsAbxOwmKde2zBiWuRO/VpncC
 py7bEs0QDUiZ52NziKxCntP7V+4riu+aW3940G7W2tG0BHlHdF3WLl4Aqx5qPtn/U07+
 Bkdw==
X-Gm-Message-State: APjAAAWumBEO/6GzCYoQm7rGuF4AiEQxh3l8nEAqqs138Wtm2ef5C1sh
 wzKDCV+r/KGDT5YTA7HTQ/IQBnI6
X-Google-Smtp-Source: APXvYqz1E2AtVZp7natXjP9EubzI80PXCr0CRrDqO3GCK30n0q4usUe01w1567UrKPjDKSVl5r6pYw==
X-Received: by 2002:a17:902:7b90:: with SMTP id
 w16mr7166143pll.228.1551644443504; 
 Sun, 03 Mar 2019 12:20:43 -0800 (PST)
Received: from ?IPv6:2607:fb90:f81:127d:5d4a:dde8:4735:347b?
 ([2607:fb90:f81:127d:5d4a:dde8:4735:347b])
 by smtp.gmail.com with ESMTPSA id s80sm7263705pgs.4.2019.03.03.12.20.41
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 03 Mar 2019 12:20:42 -0800 (PST)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (1.0)
Subject: Re: svn commit: r344701 - head/sbin/camcontrol
From: Enji Cooper <yaneurabeya@gmail.com>
X-Mailer: iPhone Mail (16D57)
In-Reply-To: <f65de4b9-c1a7-3b95-1507-d1ed2d120ed1@freebsd.org>
Date: Sun, 3 Mar 2019 12:20:40 -0800
Cc: Alexey Dokuchaev <danfe@freebsd.org>, src-committers@freebsd.org,
 svn-src-all@freebsd.org, svn-src-head@freebsd.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <64CCD099-1916-4ACC-B1B6-3F22BDE55C7C@gmail.com>
References: <201903011439.x21EdFlH055596@repo.freebsd.org>
 <20190302104909.GA25217@FreeBSD.org>
 <f65de4b9-c1a7-3b95-1507-d1ed2d120ed1@freebsd.org>
To: Steven Hartland <steven@multiplay.co.uk>
X-Rspamd-Queue-Id: C17D76A6DA
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=gmail.com header.s=20161025 header.b=egUCfkxl;
 dmarc=pass (policy=none) header.from=gmail.com;
 spf=pass (mx1.freebsd.org: domain of yaneurabeya@gmail.com designates
 2607:f8b0:4864:20::52a as permitted sender)
 smtp.mailfrom=yaneurabeya@gmail.com
X-Spamd-Result: default: False [-6.16 / 15.00]; TO_DN_SOME(0.00)[];
 FREEMAIL_FROM(0.00)[gmail.com];
 R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MV_CASE(0.50)[];
 RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 DKIM_TRACE(0.00)[gmail.com:+];
 DMARC_POLICY_ALLOW(-0.50)[gmail.com,none];
 NEURAL_HAM_SHORT(-0.87)[-0.870,0]; FROM_EQ_ENVFROM(0.00)[];
 RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 MID_RHS_MATCH_FROM(0.00)[];
 DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain];
 IP_SCORE(-2.78)[ip: (-9.11), ipnet: 2607:f8b0::/32(-2.70), asn: 15169(-2.04),
 country: US(-0.07)]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_IN_DNSWL_NONE(0.00)[a.2.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 20:20:46 -0000


> On Mar 3, 2019, at 11:12, Steven Hartland <steven@multiplay.co.uk> wrote:
>=20
> Not really much more to say that isn't explained by that and the code.
>=20
> Sure I could have used a different sentence structure for the body but it w=
ouldn't add anything IMO, thoughts?

    Why the previous sector size was wrong isn=E2=80=99t clear from the comm=
it message. Why switch from a sizeof to 0?
Cheers!
-Enji=

From owner-svn-src-all@freebsd.org  Sun Mar  3 19:55:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CB2B415169DF;
 Sun,  3 Mar 2019 19:55:07 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6C82869B80;
 Sun,  3 Mar 2019 19:55:07 +0000 (UTC)
 (envelope-from tuexen@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 5AA9C215A3;
 Sun,  3 Mar 2019 19:55:07 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x23Jt79i040050;
 Sun, 3 Mar 2019 19:55:07 GMT (envelope-from tuexen@FreeBSD.org)
Received: (from tuexen@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x23Jt73E040049;
 Sun, 3 Mar 2019 19:55:07 GMT (envelope-from tuexen@FreeBSD.org)
Message-Id: <201903031955.x23Jt73E040049@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: tuexen set sender to
 tuexen@FreeBSD.org using -f
From: Michael Tuexen <tuexen@FreeBSD.org>
Date: Sun, 3 Mar 2019 19:55:07 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344742 - head/sys/netinet
X-SVN-Group: head
X-SVN-Commit-Author: tuexen
X-SVN-Commit-Paths: head/sys/netinet
X-SVN-Commit-Revision: 344742
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6C82869B80
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 19:55:08 -0000

Author: tuexen
Date: Sun Mar  3 19:55:06 2019
New Revision: 344742
URL: https://svnweb.freebsd.org/changeset/base/344742

Log:
  Allocate an assocition id and register the stcb with holding the lock.
  This avoids a race where stcbs can be found, which are not completely
  initialized.
  
  This was found by running syzkaller.
  
  MFC after:		3 days

Modified:
  head/sys/netinet/sctp_pcb.c

Modified: head/sys/netinet/sctp_pcb.c
==============================================================================
--- head/sys/netinet/sctp_pcb.c	Sun Mar  3 18:57:48 2019	(r344741)
+++ head/sys/netinet/sctp_pcb.c	Sun Mar  3 19:55:06 2019	(r344742)
@@ -4157,11 +4157,9 @@ sctp_aloc_a_assoc_id(struct sctp_inpcb *inp, struct sc
 	struct sctpasochead *head;
 	struct sctp_tcb *lstcb;
 
-	SCTP_INP_WLOCK(inp);
 try_again:
 	if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_ALLGONE) {
 		/* TSNH */
-		SCTP_INP_WUNLOCK(inp);
 		return (0);
 	}
 	/*
@@ -4180,8 +4178,7 @@ try_again:
 	head = &inp->sctp_asocidhash[SCTP_PCBHASH_ASOC(id, inp->hashasocidmark)];
 	LIST_INSERT_HEAD(head, stcb, sctp_tcbasocidhash);
 	stcb->asoc.in_asocid_hash = 1;
-	SCTP_INP_WUNLOCK(inp);
-	return id;
+	return (id);
 }
 
 /*
@@ -4344,7 +4341,6 @@ sctp_aloc_assoc(struct sctp_inpcb *inp, struct sockadd
 	memset(stcb, 0, sizeof(*stcb));
 	asoc = &stcb->asoc;
 
-	asoc->assoc_id = sctp_aloc_a_assoc_id(inp, stcb);
 	SCTP_TCB_LOCK_INIT(stcb);
 	SCTP_TCB_SEND_LOCK_INIT(stcb);
 	stcb->rport = rport;
@@ -4355,7 +4351,6 @@ sctp_aloc_assoc(struct sctp_inpcb *inp, struct sockadd
 		/* failed */
 		SCTP_TCB_LOCK_DESTROY(stcb);
 		SCTP_TCB_SEND_LOCK_DESTROY(stcb);
-		LIST_REMOVE(stcb, sctp_tcbasocidhash);
 		SCTP_ZONE_FREE(SCTP_BASE_INFO(ipi_zone_asoc), stcb);
 		SCTP_DECR_ASOC_COUNT();
 		*error = err;
@@ -4368,7 +4363,6 @@ sctp_aloc_assoc(struct sctp_inpcb *inp, struct sockadd
 		/* inpcb freed while alloc going on */
 		SCTP_TCB_LOCK_DESTROY(stcb);
 		SCTP_TCB_SEND_LOCK_DESTROY(stcb);
-		LIST_REMOVE(stcb, sctp_tcbasocidhash);
 		SCTP_ZONE_FREE(SCTP_BASE_INFO(ipi_zone_asoc), stcb);
 		SCTP_INP_WUNLOCK(inp);
 		SCTP_INP_INFO_WUNLOCK();
@@ -4379,6 +4373,7 @@ sctp_aloc_assoc(struct sctp_inpcb *inp, struct sockadd
 	}
 	SCTP_TCB_LOCK(stcb);
 
+	asoc->assoc_id = sctp_aloc_a_assoc_id(inp, stcb);
 	/* now that my_vtag is set, add it to the hash */
 	head = &SCTP_BASE_INFO(sctp_asochash)[SCTP_PCBHASH_ASOC(stcb->asoc.my_vtag, SCTP_BASE_INFO(hashasocmark))];
 	/* put it in the bucket in the vtag hash of assoc's for the system */

From owner-svn-src-all@freebsd.org  Sun Mar  3 19:12:27 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E207215152E4
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Sun,  3 Mar 2019 19:12:26 +0000 (UTC)
 (envelope-from steven@multiplay.co.uk)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com
 [IPv6:2a00:1450:4864:20::52b])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id B14C88F37B
 for <svn-src-all@freebsd.org>; Sun,  3 Mar 2019 19:12:24 +0000 (UTC)
 (envelope-from steven@multiplay.co.uk)
Received: by mail-ed1-x52b.google.com with SMTP id g9so2482288eds.3
 for <svn-src-all@freebsd.org>; Sun, 03 Mar 2019 11:12:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=multiplay-co-uk.20150623.gappssmtp.com; s=20150623;
 h=from:subject:to:cc:references:message-id:date:user-agent
 :mime-version:in-reply-to:content-transfer-encoding:content-language;
 bh=d/tAVQpwLOJPN0y9NsV2K1F6e3/VXv2eQu1E+Jf1bpo=;
 b=wx904Uh8/5ey+2IY0HtYjlcHJdyg5VJnH87PlkR7thu5raAAyupmy/mpOPk6/njL+M
 LHpRGkop0xNNh+ImGP99b+y6WEVCcFOOC62MV8EwcpmrXUwZPFdvS0UECPiwMuwHash+
 iNAgT4UARJxxpcRal6L5GeKjL/WtzWWa/XS2ZBn5P+cAvp4q1beLA1JEuIqf6dgFjr3D
 vg6vMf+LZ1G5sgEd0dHe5GGmRikOmPPUwHqMAwROoK6RIJAZzFQwbVeS9IqHLSOLdgib
 dj8SZ6DZ3xHgUI0Y+uRqxNs7FIR3RVKBkySXX+mOVY4vEBrhFDbgoeilDWYjWfGk+u7N
 3OWQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:subject:to:cc:references:message-id:date
 :user-agent:mime-version:in-reply-to:content-transfer-encoding
 :content-language;
 bh=d/tAVQpwLOJPN0y9NsV2K1F6e3/VXv2eQu1E+Jf1bpo=;
 b=L0TLPQ6zm/jZKzp4dKXptoGFJ4/dtgMVfBiyZjgFQPE2zUjh9+t4EET7IlYUZVBiFp
 95q8mTf/Fz6l7TIAjIu16I7qLGVgglzEdCFbYaSvKZhK7e5PgrgKs643CLuXJZsMoyqk
 ffpQZ4nPgHgbM9sVUfnmFy/4qycAIJLIrK070Sudk5ooEcQYXvvI8IDaSZqx6TBFq+N2
 /PVH6t74WDtSE/gTb/FVDKJgSd2wkY/IMZUl6kpweQyIuAjrGVPkGEQair77xcf17wXZ
 QtxEE7F7B6m/PfzBQlVeGn0jNA3R05wGgVktd8xXeS2x14slZcSu7GECNS1vk99B0g6Y
 OxtA==
X-Gm-Message-State: APjAAAWJc36wwLhkgcJUlW0fqN39pKpZ8Sc0pg+SkV+45tGkojuaCcK5
 w5DX2Vd8VmFX0k3LbnnRc/IiRg==
X-Google-Smtp-Source: APXvYqyw6pPnetQwRspCd00/31wxlBMFyQkZ7p7NSlJfLniioStaL48TBH8FQqJqN95f2bRYqk9YUw==
X-Received: by 2002:a05:6402:171a:: with SMTP id
 y26mr12842718edu.72.1551640343324; 
 Sun, 03 Mar 2019 11:12:23 -0800 (PST)
Received: from [10.44.128.75] ([161.12.40.153])
 by smtp.gmail.com with ESMTPSA id y45sm1407472edd.33.2019.03.03.11.12.21
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 03 Mar 2019 11:12:22 -0800 (PST)
From: Steven Hartland <steven@multiplay.co.uk>
X-Google-Original-From: Steven Hartland <smh@freebsd.org>
Subject: Re: svn commit: r344701 - head/sbin/camcontrol
To: Alexey Dokuchaev <danfe@freebsd.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
References: <201903011439.x21EdFlH055596@repo.freebsd.org>
 <20190302104909.GA25217@FreeBSD.org>
Message-ID: <f65de4b9-c1a7-3b95-1507-d1ed2d120ed1@freebsd.org>
Date: Sun, 3 Mar 2019 19:12:23 +0000
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101
 Thunderbird/60.5.1
MIME-Version: 1.0
In-Reply-To: <20190302104909.GA25217@FreeBSD.org>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Content-Language: en-US
X-Rspamd-Queue-Id: B14C88F37B
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=multiplay-co-uk.20150623.gappssmtp.com header.s=20150623
 header.b=wx904Uh8; 
 spf=pass (mx1.freebsd.org: domain of steven@multiplay.co.uk designates
 2a00:1450:4864:20::52b as permitted sender)
 smtp.mailfrom=steven@multiplay.co.uk
X-Spamd-Result: default: False [-5.18 / 15.00]; ARC_NA(0.00)[];
 RCVD_VIA_SMTP_AUTH(0.00)[];
 R_DKIM_ALLOW(-0.20)[multiplay-co-uk.20150623.gappssmtp.com:s=20150623];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[4];
 R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[multiplay.co.uk]; TO_DN_SOME(0.00)[];
 MID_RHS_MATCH_TO(1.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 DKIM_TRACE(0.00)[multiplay-co-uk.20150623.gappssmtp.com:+];
 MX_GOOD(-0.01)[cached: ASPMX.L.GOOGLE.COM];
 RCVD_IN_DNSWL_NONE(0.00)[b.2.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org
 : 127.0.5.0]; RCVD_COUNT_THREE(0.00)[3];
 NEURAL_HAM_SHORT(-0.98)[-0.983,0]; FROM_EQ_ENVFROM(0.00)[];
 MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[];
 ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US];
 IP_SCORE(-2.68)[ip: (-9.02), ipnet: 2a00:1450::/32(-2.29), asn: 15169(-2.04),
 country: US(-0.07)]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 19:12:27 -0000

Not really much more to say that isn't explained by that and the code.

Sure I could have used a different sentence structure for the body but 
it wouldn't add anything IMO, thoughts?

On 02/03/2019 10:49, Alexey Dokuchaev wrote:
> On Fri, Mar 01, 2019 at 02:39:15PM +0000, Steven Hartland wrote:
>> New Revision: 344701
>> URL: https://svnweb.freebsd.org/changeset/base/344701
>>
>> Log:
>>    Fix incorrect / unused sector_count for identify requests
>>    
>>    Fix incorrect / unused sector_count for identify requests from camcontrol.
>>    
>>    Submitted by:	Alexey Dokuchaev
> Thanks, although commit message is a bit scarce.  Also, for some reason,
> it consists of two nearly identical lines -- unnoticed copy paste error?
>
> ./danfe


From owner-svn-src-all@freebsd.org  Sun Mar  3 20:56:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A5CF61519CD7
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Sun,  3 Mar 2019 20:56:45 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: from mail-qt1-x844.google.com (mail-qt1-x844.google.com
 [IPv6:2607:f8b0:4864:20::844])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 8899F6BD29
 for <svn-src-all@freebsd.org>; Sun,  3 Mar 2019 20:56:44 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: by mail-qt1-x844.google.com with SMTP id p48so3178733qtk.2
 for <svn-src-all@freebsd.org>; Sun, 03 Mar 2019 12:56:44 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bsdimp-com.20150623.gappssmtp.com; s=20150623;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=wMMpYwIeF+dwhUN+ek3t0+0gKJo4o2dXAEVTjZRzj/k=;
 b=D6/2/wV7ZkPTNkF7qb8pMjEr6AO9M1cOb9wRNxgAzeJTAJrWVl+D560jN2qjqesLkC
 8JOHy6edP+aZoEqrGKWMJ1JvwNtlAWfBeGHQ+kjnBbkl/M1X6hHDKFFldJHNYP6pTWRX
 BQq+iRiVQWHoohyUqjInrmHXqVxZZ6aq9vW7CZRqGBj5gPM3ynBNWzRT+ofzny0bLSf9
 BxU79cekBAQnlocZgkWdYqNTDssjUoBstVVE3/y3M8f7DRBOb7e6oeQzZ6+BaTG6lRvI
 yhvZjZoQpLtCqZnHfjc+I28jnMxGplofUqA7p6QwkamzO2DLBqJ9HAb9yQxn9SKd3MA1
 Tg9g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=wMMpYwIeF+dwhUN+ek3t0+0gKJo4o2dXAEVTjZRzj/k=;
 b=t+SB71rT6giU7Ay7VP0pO8AX0rHuc2Rt8TRMBxepcYWNIsaZ4SOqmMFMqMpBOnjipc
 eA0JgPxW6sPjMQZuhnwRpa49hyUk0BX3EydXmucYbV1Z799ty4D59X+v25iksS2qhe7x
 7qv6wBX3giupkH63jK6mBpvBXcWNMUgoAImh2FvCwahI+uM14zaW0xbUmyYU841pylrP
 k1e0RCY0Dt5hofNBcHXqpYodDCUr+EyaOyMNWtwmt5opeMtJjdf5WIVDUf+ceZSbs4Ox
 OV7t9ZRMGHOi7qXjZDyMGKEqG+f40gL5+CFeARhLOTxBRwd8IMd9r5ke1Mk4iDX3JCfK
 7ROg==
X-Gm-Message-State: APjAAAVd/qmLle7lzPgb2EMIgnpj9USLvHRLc3BW8SaFFFtL1R356Y3m
 crVsBhOk1f5aIMeQ8HTXFfONRxFm/d+mjJ3LJ4/A4w==
X-Google-Smtp-Source: APXvYqx1gcFAwZnXVjwqnYW/HNGquupqqNVmSQiDXSOSCRxHC4ZOKabB9IYsnhbtwq1fLjH1VPlGhQs5FTWoPmS/D4E=
X-Received: by 2002:ac8:3974:: with SMTP id t49mr12568487qtb.118.1551646603760; 
 Sun, 03 Mar 2019 12:56:43 -0800 (PST)
MIME-Version: 1.0
References: <201903011439.x21EdFlH055596@repo.freebsd.org>
 <20190302104909.GA25217@FreeBSD.org>
 <f65de4b9-c1a7-3b95-1507-d1ed2d120ed1@freebsd.org>
 <64CCD099-1916-4ACC-B1B6-3F22BDE55C7C@gmail.com>
 <06d7e6402ad6f673b15873a9d99c9382f21e64b9.camel@freebsd.org>
In-Reply-To: <06d7e6402ad6f673b15873a9d99c9382f21e64b9.camel@freebsd.org>
From: Warner Losh <imp@bsdimp.com>
Date: Sun, 3 Mar 2019 13:56:32 -0700
Message-ID: <CANCZdfrpUrNHrzaYfr2u5D-u8A4f5WBhRsoOhW9_+deW8PuuUA@mail.gmail.com>
Subject: Re: svn commit: r344701 - head/sbin/camcontrol
To: Ian Lepore <ian@freebsd.org>
Cc: Garrett Cooper <yaneurabeya@gmail.com>,
 Steven Hartland <steven@multiplay.co.uk>, 
 Alexey Dokuchaev <danfe@freebsd.org>, src-committers@freebsd.org,
 svn-src-all@freebsd.org, svn-src-head@freebsd.org
X-Rspamd-Queue-Id: 8899F6BD29
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623
 header.b=D6/2/wV7
X-Spamd-Result: default: False [-2.75 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-0.97)[-0.970,0];
 R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623];
 FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[];
 RCVD_COUNT_TWO(0.00)[2]; NEURAL_HAM_LONG(-1.00)[-0.996,0];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[bsdimp.com]; NEURAL_HAM_SHORT(-0.33)[-0.335,0];
 TO_MATCH_ENVRCPT_SOME(0.00)[];
 DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+];
 MX_GOOD(-0.01)[ALT1.aspmx.l.google.com,aspmx.l.google.com,ALT2.aspmx.l.google.com];
 RCPT_COUNT_SEVEN(0.00)[7];
 RCVD_IN_DNSWL_NONE(0.00)[4.4.8.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]; R_SPF_NA(0.00)[];
 FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com];
 MIME_TRACE(0.00)[0:+,1:+]; RCVD_TLS_LAST(0.00)[];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com];
 IP_SCORE(-0.44)[ip: (2.60), ipnet: 2607:f8b0::/32(-2.70), asn: 15169(-2.04),
 country: US(-0.07)]; FREEMAIL_CC(0.00)[gmail.com]
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 20:56:45 -0000

On Sun, Mar 3, 2019, 1:29 PM Ian Lepore <ian@freebsd.org> wrote:

> On Sun, 2019-03-03 at 12:20 -0800, Enji Cooper wrote:
> > > On Mar 3, 2019, at 11:12, Steven Hartland <steven@multiplay.co.uk>
> > > wrote:
> > >
> > > Not really much more to say that isn't explained by that and the
> > > code.
> > >
> > > Sure I could have used a different sentence structure for the body
> > > but it wouldn't add anything IMO, thoughts?
> >
> >     Why the previous sector size was wrong isn=E2=80=99t clear from the
> > commit message. Why switch from a sizeof to 0?
> > Cheers!
> > -Enji
> >
>
> The commit message said it was "incorrect / unused". While a bit terse,
> it does communicate that the old value was incorrect (by being there at
> all) because the value is unused (so zero more clearly expresses that).
>

Correct. The standard also encourages that for future proofing the code.
Though in this case this opcode is so old, there is almost zero chance it
will change.

Warner

It's not completely a joke that most English-speaking software
> engineers have English as a second language. :)
>
> -- Ian
>
>
>
>

From owner-svn-src-all@freebsd.org  Sun Mar  3 18:57:49 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 608B01514AA6;
 Sun,  3 Mar 2019 18:57:49 +0000 (UTC)
 (envelope-from glebius@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0283A8EA7A;
 Sun,  3 Mar 2019 18:57:49 +0000 (UTC)
 (envelope-from glebius@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 E3CFB20BB8;
 Sun,  3 Mar 2019 18:57:48 +0000 (UTC)
 (envelope-from glebius@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x23IvmN3009287;
 Sun, 3 Mar 2019 18:57:48 GMT (envelope-from glebius@FreeBSD.org)
Received: (from glebius@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x23IvmuS009286;
 Sun, 3 Mar 2019 18:57:48 GMT (envelope-from glebius@FreeBSD.org)
Message-Id: <201903031857.x23IvmuS009286@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: glebius set sender to
 glebius@FreeBSD.org using -f
From: Gleb Smirnoff <glebius@FreeBSD.org>
Date: Sun, 3 Mar 2019 18:57:48 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344741 - head/sys/kern
X-SVN-Group: head
X-SVN-Commit-Author: glebius
X-SVN-Commit-Paths: head/sys/kern
X-SVN-Commit-Revision: 344741
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0283A8EA7A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 18:57:49 -0000

Author: glebius
Date: Sun Mar  3 18:57:48 2019
New Revision: 344741
URL: https://svnweb.freebsd.org/changeset/base/344741

Log:
  Remove bogus assert that I added in r319722. It is a legitimate case
  to call soabort() on a newborn socket created by sonewconn() in case
  if further setup of PCB failed. Code in sofree() handles such socket
  correctly.
  
  Submitted by:	jtl, rrs
  MFC after:	3 weeks

Modified:
  head/sys/kern/uipc_socket.c

Modified: head/sys/kern/uipc_socket.c
==============================================================================
--- head/sys/kern/uipc_socket.c	Sun Mar  3 10:00:26 2019	(r344740)
+++ head/sys/kern/uipc_socket.c	Sun Mar  3 18:57:48 2019	(r344741)
@@ -1174,7 +1174,6 @@ soabort(struct socket *so)
 	KASSERT(so->so_count == 0, ("soabort: so_count"));
 	KASSERT((so->so_state & SS_PROTOREF) == 0, ("soabort: SS_PROTOREF"));
 	KASSERT(so->so_state & SS_NOFDREF, ("soabort: !SS_NOFDREF"));
-	KASSERT(so->so_qstate == SQ_NONE, ("soabort: !SQ_NONE"));
 	VNET_SO_ASSERT(so);
 
 	if (so->so_proto->pr_usrreqs->pru_abort != NULL)

From owner-svn-src-all@freebsd.org  Sun Mar  3 20:28:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CB40C151885A
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Sun,  3 Mar 2019 20:28:57 +0000 (UTC) (envelope-from ian@freebsd.org)
Received: from outbound1a.eu.mailhop.org (outbound1a.eu.mailhop.org
 [52.58.109.202])
 (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 17C516AAC5
 for <svn-src-all@freebsd.org>; Sun,  3 Mar 2019 20:28:56 +0000 (UTC)
 (envelope-from ian@freebsd.org)
ARC-Seal: i=1; a=rsa-sha256; t=1551644926; cv=none;
 d=outbound.mailhop.org; s=arc-outbound20181012;
 b=anXdJFyK+HKeqBmZcw9/TdJyw30GRNkIIQ4mR50J9VKp/bTOxe1BLlICi35zeoXva23DeD3Wo5ytE
 R7t9vXqIIzB2DGHEDbVEQk6ip6b3LqJ6rGcdcwR/dQQLZf1Py4Nypg+PdzsfeWXmN4zrVSH4l4rzSj
 ZB2KI6RpUGFY4Vn40ESIDmJaHyOuY3pBVhwQ9C/qp4vD7Ze3uTSjerkjqE4SOlaeHz+GVkTpYz5OS4
 wL/PxXwKukGcq1nmVwgIgLLF/3TLAmU3bOwwwviR83IcanVayRb3YBTp2POKxjVUejDZp4VDWW/yZt
 4f/lSWIzTjf1GMWIvGr1Zxwor3PVWBg==
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:cc:to:from:subject:message-id:dkim-signature:from;
 bh=LTrd0UHBRe0R54jRXV2nNnmuEfMClrJnrJHvo4y6JyA=;
 b=JoUeo69J1NcegtCUkOu/EeeDfDW3axykoufm6mrxB+kSNpmhlr9DV8fa5a2zcYRBD3HIFm/OmtqVq
 Fet3uRiIwjg9TjZ2kwBpcYXMp919sGHvtuHqFywlNnnvvRu3dHV5iAn63aeTZAx9IYYK17HMPnJVjt
 2WEzH3HVU2GxHRHWJOH9kIjmkn0+2xto3C2O7JoTNUtoE1T6GtkZsNwOwEQw7xGpM19NEzlgk2uYg4
 nVnsEqODw5vYGfDt8Ejm3UXr4jFAqm2QfPXswjd82TLdeiX+SleaPZwsOkA4tanKLm09vG6j/i5FB5
 MN3mKSqsOJvF3x34bdTsRlSdJLFvyYg==
ARC-Authentication-Results: i=1; outbound2.eu.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:cc:to:from:subject:message-id:from;
 bh=LTrd0UHBRe0R54jRXV2nNnmuEfMClrJnrJHvo4y6JyA=;
 b=fvQzb1DwaHwpIesVf22yZ8BumwVj3tdOa9xhyCrTxv+jIkViP9E6N86OcA2JaL8fi4A4hYanennmD
 F1u1ompuK25w1QM/IBX/9o7UXvURf9vMn6GPLAD1PRnz60tK+t/nxlgXKjKhEBR8tdwH+y57EpPGpY
 sqxn4ZCUai0mFT/t8dyAKWyaiPHHAN18C0OPyB+yUSFqA4crHtPF4MtxxvbOfCUob5sA9zNzfifQlP
 ZV1inCmxJzOWfubjYK/xuqHQyLiddCj76Rs3lpl8fJe+PLJLT96lxW0ZPRISGCrgXlU5DgWsaO7BX+
 NEGFdv7gD2/teA/efK/ykqA7mmYvMeQ==
X-MHO-RoutePath: aGlwcGll
X-MHO-User: ef4d79e9-3df2-11e9-803b-31925da7267c
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 (unknown [67.177.211.60])
 by outbound2.eu.mailhop.org (Halon) with ESMTPSA
 id ef4d79e9-3df2-11e9-803b-31925da7267c;
 Sun, 03 Mar 2019 20:28:43 +0000 (UTC)
Received: from rev (rev [172.22.42.240])
 by ilsoft.org (8.15.2/8.15.2) with ESMTP id x23KSfwi017449;
 Sun, 3 Mar 2019 13:28:41 -0700 (MST) (envelope-from ian@freebsd.org)
Message-ID: <06d7e6402ad6f673b15873a9d99c9382f21e64b9.camel@freebsd.org>
Subject: Re: svn commit: r344701 - head/sbin/camcontrol
From: Ian Lepore <ian@freebsd.org>
To: Enji Cooper <yaneurabeya@gmail.com>, Steven Hartland
 <steven@multiplay.co.uk>
Cc: Alexey Dokuchaev <danfe@freebsd.org>, src-committers@freebsd.org,
 svn-src-all@freebsd.org, svn-src-head@freebsd.org
Date: Sun, 03 Mar 2019 13:28:41 -0700
In-Reply-To: <64CCD099-1916-4ACC-B1B6-3F22BDE55C7C@gmail.com>
References: <201903011439.x21EdFlH055596@repo.freebsd.org>
 <20190302104909.GA25217@FreeBSD.org>
 <f65de4b9-c1a7-3b95-1507-d1ed2d120ed1@freebsd.org>
 <64CCD099-1916-4ACC-B1B6-3F22BDE55C7C@gmail.com>
Content-Type: text/plain; charset="UTF-8"
X-Mailer: Evolution 3.28.5 FreeBSD GNOME Team
Mime-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 17C516AAC5
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[freebsd.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 ASN(0.00)[asn:16509, ipnet:52.58.0.0/15, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 20:28:58 -0000

On Sun, 2019-03-03 at 12:20 -0800, Enji Cooper wrote:
> > On Mar 3, 2019, at 11:12, Steven Hartland <steven@multiplay.co.uk>
> > wrote:
> > 
> > Not really much more to say that isn't explained by that and the
> > code.
> > 
> > Sure I could have used a different sentence structure for the body
> > but it wouldn't add anything IMO, thoughts?
> 
>     Why the previous sector size was wrong isn’t clear from the
> commit message. Why switch from a sizeof to 0?
> Cheers!
> -Enji
> 

The commit message said it was "incorrect / unused". While a bit terse,
it does communicate that the old value was incorrect (by being there at
all) because the value is unused (so zero more clearly expresses that).

It's not completely a joke that most English-speaking software
engineers have English as a second language. :)

-- Ian



From owner-svn-src-all@freebsd.org  Sun Mar  3 21:42:21 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7557151D9AA;
 Sun,  3 Mar 2019 21:42:20 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "Client", Issuer "CA" (not verified))
 by mx1.freebsd.org (Postfix) with ESMTPS id 459006F1E6;
 Sun,  3 Mar 2019 21:42:18 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA
 id 0Ys4htSCThfkP0Ys5hUeTJ; Sun, 03 Mar 2019 14:42:10 -0700
X-Authority-Analysis: v=2.3 cv=RKLN4Lq+ c=1 sm=1 tr=0
 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17
 a=8nJEP1OIZ-IA:10 a=NTGMnVQrEZIA:10 a=6I5d2MoRAAAA:8 a=ASrO2z8EAAAA:8
 a=YxBL1-UpAAAA:8 a=GRRj7yhdenHdc00NboEA:9 a=wPNLvfGTeEIA:10
 a=IjZwj45LgO3ly-622nXo:22 a=hMlqHZxbFqNCaWTKXPQf:22 a=Ia-lj3WSrqcvXOmTRaiG:22
Received: from slippy.cwsent.com (slippy [10.1.1.91])
 by spqr.komquats.com (Postfix) with ESMTPS id 55CE3410;
 Sun,  3 Mar 2019 13:42:07 -0800 (PST)
Received: from slippy.cwsent.com (localhost [127.0.0.1])
 by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x23Lg635087505;
 Sun, 3 Mar 2019 13:42:06 -0800 (PST)
 (envelope-from Cy.Schubert@cschubert.com)
Received: from slippy (cy@localhost)
 by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x23Lg6Xf087501;
 Sun, 3 Mar 2019 13:42:06 -0800 (PST)
 (envelope-from Cy.Schubert@cschubert.com)
Message-Id: <201903032142.x23Lg6Xf087501@slippy.cwsent.com>
X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs
X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1
Reply-to: Cy Schubert <Cy.Schubert@cschubert.com>
From: Cy Schubert <Cy.Schubert@cschubert.com>
X-os: FreeBSD
X-Sender: cy@cwsent.com
X-URL: http://www.cschubert.com/
To: Ian Lepore <ian@freebsd.org>
cc: Enji Cooper <yaneurabeya@gmail.com>,
 Steven Hartland <steven@multiplay.co.uk>,
 Alexey Dokuchaev <danfe@freebsd.org>, src-committers@freebsd.org,
 svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject: Re: svn commit: r344701 - head/sbin/camcontrol
In-Reply-To: Message from Ian Lepore <ian@freebsd.org> of "Sun,
 03 Mar 2019 13:28:41 -0700."
 <06d7e6402ad6f673b15873a9d99c9382f21e64b9.camel@freebsd.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Date: Sun, 03 Mar 2019 13:42:06 -0800
X-CMAE-Envelope: MS4wfF2yxYOVI2z2Yp47k5itcuK4Ug9tJD01CNGXK9C1cSd7/arg8xuv+fLmOUmjPYZtOsuA7/EH3yQkLySw45gDUZjo/fN7lDiLvzn/8F2vgP48sEnC74fX
 Xj8V1xwnr4j2O5Vab2DCN1DnbODrpyls0VBOLzclEkpQN9I7fkKs3iQoKRgJQqhtEJzYIeUqS30yLwF8IaK/88osxeLZBbYOBnnKTOn2GH9CDbGmzIR9o0s3
 jJBXKSMvW0PXz1LoS45XRpw3RTa634fogKbNZO/1/KLO4rwseLttRmoxUNOJBPDDJQX+v5zXl9DcoPYUr95b2cvg2xZ2Z9y+Z1iJTLkeCqjI2Gg/MgjY3wua
 Y2bwwOLN7SAguJ1PoVSXrOYFhEp+rA==
X-Rspamd-Queue-Id: 459006F1E6
X-Spamd-Bar: ----
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-4.41 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com];
 TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; HAS_XAW(0.00)[];
 MX_GOOD(-0.01)[spqr.komquats.com];
 NEURAL_HAM_SHORT(-0.69)[-0.691,0]; RCPT_COUNT_SEVEN(0.00)[7];
 RCVD_IN_DNSWL_LOW(-0.10)[139.136.59.64.list.dnswl.org : 127.0.5.1];
 FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[];
 ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA];
 MIME_TRACE(0.00)[0:+];
 RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 RCVD_COUNT_FIVE(0.00)[5]; REPLYTO_EQ_FROM(0.00)[];
 FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0];
 MIME_GOOD(-0.10)[text/plain];
 IP_SCORE(-2.01)[ip: (-5.03), ipnet: 64.59.128.0/20(-2.75), asn: 6327(-2.16),
 country: CA(-0.09)]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 R_SPF_NA(0.00)[]; FREEMAIL_CC(0.00)[gmail.com];
 RCVD_TLS_LAST(0.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sun, 03 Mar 2019 21:42:21 -0000

In message <06d7e6402ad6f673b15873a9d99c9382f21e64b9.camel@freebsd.org>
, Ian Le
pore writes:
> On Sun, 2019-03-03 at 12:20 -0800, Enji Cooper wrote:
> > > On Mar 3, 2019, at 11:12, Steven Hartland <steven@multiplay.co.uk>
> > > wrote:
> > > 
> > > Not really much more to say that isn't explained by that and the
> > > code.
> > > 
> > > Sure I could have used a different sentence structure for the body
> > > but it wouldn't add anything IMO, thoughts?
> > 
> >     Why the previous sector size was wrong isn’t clear from the
> > commit message. Why switch from a sizeof to 0?
> > Cheers!
> > -Enji
> > 
>
> The commit message said it was "incorrect / unused". While a bit terse,
> it does communicate that the old value was incorrect (by being there at
> all) because the value is unused (so zero more clearly expresses that).
>
> It's not completely a joke that most English-speaking software
> engineers have English as a second language. :)

This is one of those profound quotes that should be in fortune(1).


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.



From owner-svn-src-all@freebsd.org  Mon Mar  4 00:49:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AA2FD1523B0F;
 Mon,  4 Mar 2019 00:49:08 +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)
 server-signature RSA-PSS (4096 bits)
 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 4CA0376668;
 Mon,  4 Mar 2019 00:49:08 +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 3388124754;
 Mon,  4 Mar 2019 00:49:08 +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 x240n7jV092139;
 Mon, 4 Mar 2019 00:49:07 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x240n7JV092136;
 Mon, 4 Mar 2019 00:49:07 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903040049.x240n7JV092136@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Mon, 4 Mar 2019 00:49:07 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344743 - head/sys/cam/ctl
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/cam/ctl
X-SVN-Commit-Revision: 344743
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4CA0376668
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 00:49:08 -0000

Author: mav
Date: Mon Mar  4 00:49:07 2019
New Revision: 344743
URL: https://svnweb.freebsd.org/changeset/base/344743

Log:
  Reduce CTL threads priority to about PUSER.
  
  Since in most configurations CTL serves as network service, we found
  that this change improves local system interactivity under heavy load.
  Priority of main threads is set slightly higher then worker taskqueues
  to make them quickly sort incoming requests not creating bottlenecks,
  while plenty of worker taskqueues should be less sensitive to latency.
  
  MFC after:	1 week
  Sponsored by:	iXsystems, Inc.

Modified:
  head/sys/cam/ctl/ctl.c
  head/sys/cam/ctl/ctl_backend_block.c
  head/sys/cam/ctl/ctl_backend_ramdisk.c

Modified: head/sys/cam/ctl/ctl.c
==============================================================================
--- head/sys/cam/ctl/ctl.c	Sun Mar  3 19:55:06 2019	(r344742)
+++ head/sys/cam/ctl/ctl.c	Mon Mar  4 00:49:07 2019	(r344743)
@@ -66,6 +66,8 @@ __FBSDID("$FreeBSD$");
 #include <sys/sbuf.h>
 #include <sys/smp.h>
 #include <sys/endian.h>
+#include <sys/proc.h>
+#include <sys/sched.h>
 #include <sys/sysctl.h>
 #include <sys/nv.h>
 #include <sys/dnv.h>
@@ -13191,6 +13193,9 @@ ctl_work_thread(void *arg)
 	int retval;
 
 	CTL_DEBUG_PRINT(("ctl_work_thread starting\n"));
+	thread_lock(curthread);
+	sched_prio(curthread, PUSER - 1);
+	thread_unlock(curthread);
 
 	while (!softc->shutdown) {
 		/*
@@ -13240,7 +13245,7 @@ ctl_work_thread(void *arg)
 		}
 
 		/* Sleep until we have something to do. */
-		mtx_sleep(thr, &thr->queue_lock, PDROP | PRIBIO, "-", 0);
+		mtx_sleep(thr, &thr->queue_lock, PDROP, "-", 0);
 	}
 	thr->thread = NULL;
 	kthread_exit();
@@ -13253,6 +13258,9 @@ ctl_lun_thread(void *arg)
 	struct ctl_be_lun *be_lun;
 
 	CTL_DEBUG_PRINT(("ctl_lun_thread starting\n"));
+	thread_lock(curthread);
+	sched_prio(curthread, PUSER - 1);
+	thread_unlock(curthread);
 
 	while (!softc->shutdown) {
 		mtx_lock(&softc->ctl_lock);
@@ -13266,7 +13274,7 @@ ctl_lun_thread(void *arg)
 
 		/* Sleep until we have something to do. */
 		mtx_sleep(&softc->pending_lun_queue, &softc->ctl_lock,
-		    PDROP | PRIBIO, "-", 0);
+		    PDROP, "-", 0);
 	}
 	softc->lun_thread = NULL;
 	kthread_exit();
@@ -13284,6 +13292,9 @@ ctl_thresh_thread(void *arg)
 	int i, e, set;
 
 	CTL_DEBUG_PRINT(("ctl_thresh_thread starting\n"));
+	thread_lock(curthread);
+	sched_prio(curthread, PUSER - 1);
+	thread_unlock(curthread);
 
 	while (!softc->shutdown) {
 		mtx_lock(&softc->ctl_lock);
@@ -13371,7 +13382,7 @@ ctl_thresh_thread(void *arg)
 			}
 		}
 		mtx_sleep(&softc->thresh_thread, &softc->ctl_lock,
-		    PDROP | PRIBIO, "-", CTL_LBP_PERIOD * hz);
+		    PDROP, "-", CTL_LBP_PERIOD * hz);
 	}
 	softc->thresh_thread = NULL;
 	kthread_exit();

Modified: head/sys/cam/ctl/ctl_backend_block.c
==============================================================================
--- head/sys/cam/ctl/ctl_backend_block.c	Sun Mar  3 19:55:06 2019	(r344742)
+++ head/sys/cam/ctl/ctl_backend_block.c	Mon Mar  4 00:49:07 2019	(r344743)
@@ -2381,7 +2381,7 @@ ctl_be_block_create(struct ctl_be_block_softc *softc, 
 	 */
 	retval = taskqueue_start_threads(&be_lun->io_taskqueue,
 					 /*num threads*/num_threads,
-					 /*priority*/PWAIT,
+					 /*priority*/PUSER,
 					 /*thread name*/
 					 "%s taskq", be_lun->lunname);
 

Modified: head/sys/cam/ctl/ctl_backend_ramdisk.c
==============================================================================
--- head/sys/cam/ctl/ctl_backend_ramdisk.c	Sun Mar  3 19:55:06 2019	(r344742)
+++ head/sys/cam/ctl/ctl_backend_ramdisk.c	Mon Mar  4 00:49:07 2019	(r344743)
@@ -1149,7 +1149,7 @@ ctl_backend_ramdisk_create(struct ctl_be_ramdisk_softc
 
 	retval = taskqueue_start_threads(&be_lun->io_taskqueue,
 					 /*num threads*/1,
-					 /*priority*/PWAIT,
+					 /*priority*/PUSER,
 					 /*thread name*/
 					 "%s taskq", be_lun->lunname);
 	if (retval != 0)

From owner-svn-src-all@freebsd.org  Mon Mar  4 01:54:29 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B80B115253E4;
 Mon,  4 Mar 2019 01:54:29 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 5DEB580844;
 Mon,  4 Mar 2019 01:54:29 +0000 (UTC)
 (envelope-from avos@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 5251F2531E;
 Mon,  4 Mar 2019 01:54:29 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x241sTrB028000;
 Mon, 4 Mar 2019 01:54:29 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x241sTpj027998;
 Mon, 4 Mar 2019 01:54:29 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040154.x241sTpj027998@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 01:54:29 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344744 - head/sys/dev/rtwn/rtl8192c
X-SVN-Group: head
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: head/sys/dev/rtwn/rtl8192c
X-SVN-Commit-Revision: 344744
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5DEB580844
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 01:54:29 -0000

Author: avos
Date: Mon Mar  4 01:54:28 2019
New Revision: 344744
URL: https://svnweb.freebsd.org/changeset/base/344744

Log:
  rtwn_usb(4): fix LED blinking for RTL8192CU during scanning
  
  Tested with RTL8188CUS, STA mode.
  
  MFC after:	5 days

Modified:
  head/sys/dev/rtwn/rtl8192c/r92c_init.c

Modified: head/sys/dev/rtwn/rtl8192c/r92c_init.c
==============================================================================
--- head/sys/dev/rtwn/rtl8192c/r92c_init.c	Mon Mar  4 00:49:07 2019	(r344743)
+++ head/sys/dev/rtwn/rtl8192c/r92c_init.c	Mon Mar  4 01:54:28 2019	(r344744)
@@ -322,6 +322,7 @@ r92c_init_antsel(struct rtwn_softc *sc)
 	rtwn_bb_setbits(sc, R92C_FPGA0_RFPARAM(0), 0, 0x2000);
 	reg = rtwn_bb_read(sc, R92C_FPGA0_RFIFACEOE(0));
 	sc->sc_ant = MS(reg, R92C_FPGA0_RFIFACEOE0_ANT);	/* XXX */
+	rtwn_setbits_1(sc, R92C_LEDCFG2, 0x80, 0);
 }
 
 void

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:02:16 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 456381526539;
 Mon,  4 Mar 2019 03:02:16 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 DC26182B86;
 Mon,  4 Mar 2019 03:02:15 +0000 (UTC)
 (envelope-from avos@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 B4FC625F28;
 Mon,  4 Mar 2019 03:02:15 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2432Fk9065056;
 Mon, 4 Mar 2019 03:02:15 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2432FAY065052;
 Mon, 4 Mar 2019 03:02:15 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040302.x2432FAY065052@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:02:15 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344745 - in head/sys/dev/rtwn/rtl8192c: . usb
X-SVN-Group: head
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in head/sys/dev/rtwn/rtl8192c: . usb
X-SVN-Commit-Revision: 344745
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DC26182B86
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:02:16 -0000

Author: avos
Date: Mon Mar  4 03:02:14 2019
New Revision: 344745
URL: https://svnweb.freebsd.org/changeset/base/344745

Log:
  rtwn_usb(4): fix Tx instability with RTL8192CU chipsets
  
  - Fix data frames transmission via POWER_STATUS register setup -
  it seems to be set by MACID_CONFIG firmware command, which was broken*
  in r290439 and later disabled in r307529.
  
  We can re-enable it later if / when firmware rate adaptation will be
  ready; however, this step will be required anyway - for firmware-less
  builds.
  
  - Force RTS / CTS protection frame rate to CCK1 (this rate works fine
  without any additional setup; no better workaround is known yet).
  
  The problem was not observed on the channel 1 or with CCK1 rate enforced
  ('ifconfig wlan0 ucastrate 1' for 11 b/g; not possible for 11n networks
  due to ifconfig(8) bug).
  
  * I'm not sure if it works before r290439 because - AFAIR - I never seen
  firmware rate adaptation working for 10-STABLE urtwn(4)
  (It needs EN_BCN bit set and RSSI updates at least).
  
  Tested with RTL8188CUS in STA mode
  (in regular mode and with disabled MRR - DARFRC*8 is set to 0)
  
  PR:		233949
  MFC after:	2 weeks

Modified:
  head/sys/dev/rtwn/rtl8192c/r92c_reg.h
  head/sys/dev/rtwn/rtl8192c/r92c_tx.c
  head/sys/dev/rtwn/rtl8192c/usb/r92cu_init.c

Modified: head/sys/dev/rtwn/rtl8192c/r92c_reg.h
==============================================================================
--- head/sys/dev/rtwn/rtl8192c/r92c_reg.h	Mon Mar  4 01:54:28 2019	(r344744)
+++ head/sys/dev/rtwn/rtl8192c/r92c_reg.h	Mon Mar  4 03:02:14 2019	(r344745)
@@ -148,6 +148,7 @@
 #define R92C_RD_RESP_PKT_TH		0x463
 #define R92C_INIRTS_RATE_SEL		0x480
 #define R92C_INIDATA_RATE_SEL(macid)	(0x484 + (macid))
+#define R92C_POWER_STATUS		0x4a4
 #define R92C_QUEUE_CTRL			0x4c6
 #define R92C_MAX_AGGR_NUM		0x4ca
 #define R92C_BAR_MODE_CTRL		0x4cc

Modified: head/sys/dev/rtwn/rtl8192c/r92c_tx.c
==============================================================================
--- head/sys/dev/rtwn/rtl8192c/r92c_tx.c	Mon Mar  4 01:54:28 2019	(r344744)
+++ head/sys/dev/rtwn/rtl8192c/r92c_tx.c	Mon Mar  4 03:02:14 2019	(r344745)
@@ -211,6 +211,12 @@ r92c_tx_setup_macid(void *buf, int id)
 	struct r92c_tx_desc *txd = (struct r92c_tx_desc *)buf;
 
 	txd->txdw1 |= htole32(SM(R92C_TXDW1_MACID, id));
+
+	/* XXX does not belong here */
+	/* XXX temporary (I hope) */
+	/* Force CCK1 for RTS / CTS frames (driver bug) */
+	txd->txdw4 &= ~htole32(SM(R92C_TXDW4_RTSRATE, R92C_TXDW4_RTSRATE_M));
+	txd->txdw4 &= ~htole32(R92C_TXDW4_RTS_SHORT);
 }
 
 void

Modified: head/sys/dev/rtwn/rtl8192c/usb/r92cu_init.c
==============================================================================
--- head/sys/dev/rtwn/rtl8192c/usb/r92cu_init.c	Mon Mar  4 01:54:28 2019	(r344744)
+++ head/sys/dev/rtwn/rtl8192c/usb/r92cu_init.c	Mon Mar  4 03:02:14 2019	(r344745)
@@ -357,6 +357,8 @@ void
 r92cu_post_init(struct rtwn_softc *sc)
 {
 
+	rtwn_write_4(sc, R92C_POWER_STATUS, 0x5);
+
 	/* Perform LO and IQ calibrations. */
 	r92c_iq_calib(sc);
 	/* Perform LC calibration. */

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:30:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 87B131526F56;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2C95883CD2;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@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 20070262D7;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243UeHo079263;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243Ue6I079262;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040330.x243Ue6I079262@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:30:39 +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: r344746 - in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Group: stable-11
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Commit-Revision: 344746
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2C95883CD2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:30:40 -0000

Author: avos
Date: Mon Mar  4 03:30:39 2019
New Revision: 344746
URL: https://svnweb.freebsd.org/changeset/base/344746

Log:
  MFC r344244:
  Fix memory / resource leaks in usr.sbin/rpc.ypupdated/update.c
  
  Re-apply r343909 to this file to get the issue fixed.
  
  PR:		204956
  Reported by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/11/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/10/usr.sbin/rpc.ypupdated/update.c
  stable/12/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/10/   (props changed)
  stable/12/   (props changed)

Modified: stable/11/usr.sbin/rpc.ypupdated/update.c
==============================================================================
--- stable/11/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:02:14 2019	(r344745)
+++ stable/11/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:30:39 2019	(r344746)
@@ -263,11 +263,14 @@ localupdate(char *name, char *filename, u_int op, u_in
 	sprintf(tmpname, "%s.tmp", filename);
 	rf = fopen(filename, "r");
 	if (rf == NULL) {
-		return (ERR_READ);
+		err = ERR_READ;
+		goto cleanup;
 	}
 	wf = fopen(tmpname, "w");
 	if (wf == NULL) {
-		return (ERR_WRITE);
+		fclose(rf);
+		err = ERR_WRITE;
+		goto cleanup;
 	}
 	err = -1;
 	while (fgets(line, sizeof (line), rf)) {
@@ -307,13 +310,17 @@ localupdate(char *name, char *filename, u_int op, u_in
 	fclose(rf);
 	if (err == 0) {
 		if (rename(tmpname, filename) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	} else {
 		if (unlink(tmpname) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	}
+cleanup:
+	free(tmpname);
 	return (err);
 }
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:30:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2EFE1526F5B;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 7BF0283CD3;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@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 6FED3262D8;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243UeOA079269;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243UemZ079268;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040330.x243UemZ079268@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:30:40 +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: r344746 - in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Group: stable-10
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Commit-Revision: 344746
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7BF0283CD3
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:30:41 -0000

Author: avos
Date: Mon Mar  4 03:30:39 2019
New Revision: 344746
URL: https://svnweb.freebsd.org/changeset/base/344746

Log:
  MFC r344244:
  Fix memory / resource leaks in usr.sbin/rpc.ypupdated/update.c
  
  Re-apply r343909 to this file to get the issue fixed.
  
  PR:		204956
  Reported by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/10/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/10/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/usr.sbin/rpc.ypupdated/update.c
  stable/12/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/11/   (props changed)
  stable/12/   (props changed)

Modified: stable/10/usr.sbin/rpc.ypupdated/update.c
==============================================================================
--- stable/10/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:02:14 2019	(r344745)
+++ stable/10/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:30:39 2019	(r344746)
@@ -263,11 +263,14 @@ localupdate(char *name, char *filename, u_int op, u_in
 	sprintf(tmpname, "%s.tmp", filename);
 	rf = fopen(filename, "r");
 	if (rf == NULL) {
-		return (ERR_READ);
+		err = ERR_READ;
+		goto cleanup;
 	}
 	wf = fopen(tmpname, "w");
 	if (wf == NULL) {
-		return (ERR_WRITE);
+		fclose(rf);
+		err = ERR_WRITE;
+		goto cleanup;
 	}
 	err = -1;
 	while (fgets(line, sizeof (line), rf)) {
@@ -307,13 +310,17 @@ localupdate(char *name, char *filename, u_int op, u_in
 	fclose(rf);
 	if (err == 0) {
 		if (rename(tmpname, filename) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	} else {
 		if (unlink(tmpname) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	}
+cleanup:
+	free(tmpname);
 	return (err);
 }
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:30:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 38F921526F5C;
 Mon,  4 Mar 2019 03:30:41 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CD92083CD4;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@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 C03F4262D9;
 Mon,  4 Mar 2019 03:30:40 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243UefV079275;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243UeXn079274;
 Mon, 4 Mar 2019 03:30:40 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040330.x243UeXn079274@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:30:40 +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: r344746 - in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Group: stable-12
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/rpc.ypupdated
 11/usr.sbin/rpc.ypupdated 12/usr.sbin/rpc.ypupdated
X-SVN-Commit-Revision: 344746
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CD92083CD4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:30:41 -0000

Author: avos
Date: Mon Mar  4 03:30:39 2019
New Revision: 344746
URL: https://svnweb.freebsd.org/changeset/base/344746

Log:
  MFC r344244:
  Fix memory / resource leaks in usr.sbin/rpc.ypupdated/update.c
  
  Re-apply r343909 to this file to get the issue fixed.
  
  PR:		204956
  Reported by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/12/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/10/usr.sbin/rpc.ypupdated/update.c
  stable/11/usr.sbin/rpc.ypupdated/update.c
Directory Properties:
  stable/10/   (props changed)
  stable/11/   (props changed)

Modified: stable/12/usr.sbin/rpc.ypupdated/update.c
==============================================================================
--- stable/12/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:02:14 2019	(r344745)
+++ stable/12/usr.sbin/rpc.ypupdated/update.c	Mon Mar  4 03:30:39 2019	(r344746)
@@ -263,11 +263,14 @@ localupdate(char *name, char *filename, u_int op, u_in
 	sprintf(tmpname, "%s.tmp", filename);
 	rf = fopen(filename, "r");
 	if (rf == NULL) {
-		return (ERR_READ);
+		err = ERR_READ;
+		goto cleanup;
 	}
 	wf = fopen(tmpname, "w");
 	if (wf == NULL) {
-		return (ERR_WRITE);
+		fclose(rf);
+		err = ERR_WRITE;
+		goto cleanup;
 	}
 	err = -1;
 	while (fgets(line, sizeof (line), rf)) {
@@ -307,13 +310,17 @@ localupdate(char *name, char *filename, u_int op, u_in
 	fclose(rf);
 	if (err == 0) {
 		if (rename(tmpname, filename) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	} else {
 		if (unlink(tmpname) < 0) {
-			return (ERR_DBASE);
+			err = ERR_DBASE;
+			goto cleanup;
 		}
 	}
+cleanup:
+	free(tmpname);
 	return (err);
 }
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:38:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6CBC115005BA;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0FAB084536;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@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 0331B2647E;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243chtw082173;
 Mon, 4 Mar 2019 03:38:43 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243chkW082172;
 Mon, 4 Mar 2019 03:38:43 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040338.x243chkW082172@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:38: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: r344747 - in stable:
 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Group: stable-11
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Commit-Revision: 344747
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0FAB084536
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:38:44 -0000

Author: avos
Date: Mon Mar  4 03:38:43 2019
New Revision: 344747
URL: https://svnweb.freebsd.org/changeset/base/344747

Log:
  MFC r344245:
  snmp_hostres(3): fix a typo in sanity checks in handle_chunk()
  
  PR:		204253
  Submitted by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
  stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/10/   (props changed)
  stable/12/   (props changed)

Modified: stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
==============================================================================
--- stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:30:39 2019	(r344746)
+++ stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:38:43 2019	(r344747)
@@ -316,7 +316,7 @@ handle_chunk(int32_t ds_index, const char *chunk_name,
 
 	assert(chunk_name != NULL);
 	assert(chunk_name[0] != '\0');
-	if (chunk_name == NULL || chunk_name == '\0')
+	if (chunk_name == NULL || chunk_name[0] == '\0')
 		return;
 
 	HRDBG("ANALYZE chunk %s", chunk_name);

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:38:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D2D3915005BF;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 78D2384539;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@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 6E85C2647F;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243ci3U082179;
 Mon, 4 Mar 2019 03:38:44 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243ciNT082178;
 Mon, 4 Mar 2019 03:38:44 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040338.x243ciNT082178@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:38:44 +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: r344747 - in stable:
 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Group: stable-10
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Commit-Revision: 344747
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 78D2384539
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:38:45 -0000

Author: avos
Date: Mon Mar  4 03:38:43 2019
New Revision: 344747
URL: https://svnweb.freebsd.org/changeset/base/344747

Log:
  MFC r344245:
  snmp_hostres(3): fix a typo in sanity checks in handle_chunk()
  
  PR:		204253
  Submitted by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/10/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
  stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/11/   (props changed)
  stable/12/   (props changed)

Modified: stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
==============================================================================
--- stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:30:39 2019	(r344746)
+++ stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:38:43 2019	(r344747)
@@ -316,7 +316,7 @@ handle_chunk(int32_t ds_index, const char *chunk_name,
 
 	assert(chunk_name != NULL);
 	assert(chunk_name[0] != '\0');
-	if (chunk_name == NULL || chunk_name == '\0')
+	if (chunk_name == NULL || chunk_name[0] == '\0')
 		return;
 
 	HRDBG("ANALYZE chunk %s", chunk_name);

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:38:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B1E515005C7;
 Mon,  4 Mar 2019 03:38:45 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B4CC88453A;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@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 A720426480;
 Mon,  4 Mar 2019 03:38:44 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243ci0s082186;
 Mon, 4 Mar 2019 03:38:44 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243ciVm082184;
 Mon, 4 Mar 2019 03:38:44 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040338.x243ciVm082184@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:38: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: r344747 - in stable:
 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Group: stable-12
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 10/usr.sbin/bsnmpd/modules/snmp_hostres
 11/usr.sbin/bsnmpd/modules/snmp_hostres
 12/usr.sbin/bsnmpd/modules/snmp_hostres
X-SVN-Commit-Revision: 344747
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B4CC88453A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.905,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:38:45 -0000

Author: avos
Date: Mon Mar  4 03:38:43 2019
New Revision: 344747
URL: https://svnweb.freebsd.org/changeset/base/344747

Log:
  MFC r344245:
  snmp_hostres(3): fix a typo in sanity checks in handle_chunk()
  
  PR:		204253
  Submitted by:	David Binderman <dcb314@hotmail.com>

Modified:
  stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/10/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
  stable/11/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
Directory Properties:
  stable/10/   (props changed)
  stable/11/   (props changed)

Modified: stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c
==============================================================================
--- stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:30:39 2019	(r344746)
+++ stable/12/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_partition_tbl.c	Mon Mar  4 03:38:43 2019	(r344747)
@@ -312,7 +312,7 @@ handle_chunk(int32_t ds_index, const char *chunk_name,
 
 	assert(chunk_name != NULL);
 	assert(chunk_name[0] != '\0');
-	if (chunk_name == NULL || chunk_name == '\0')
+	if (chunk_name == NULL || chunk_name[0] == '\0')
 		return;
 
 	HRDBG("ANALYZE chunk %s", chunk_name);

From owner-svn-src-all@freebsd.org  Mon Mar  4 03:47:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EC9071500AE0;
 Mon,  4 Mar 2019 03:47:06 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 8BD3684C8B;
 Mon,  4 Mar 2019 03:47:06 +0000 (UTC)
 (envelope-from avos@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 7FC012662D;
 Mon,  4 Mar 2019 03:47:06 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x243l6cc087445;
 Mon, 4 Mar 2019 03:47:06 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x243l6ZX087444;
 Mon, 4 Mar 2019 03:47:06 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903040347.x243l6ZX087444@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Mon, 4 Mar 2019 03:47:06 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344748 - head/sbin/ifconfig
X-SVN-Group: head
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: head/sbin/ifconfig
X-SVN-Commit-Revision: 344748
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 8BD3684C8B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.92 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.92)[-0.923,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 03:47:07 -0000

Author: avos
Date: Mon Mar  4 03:47:06 2019
New Revision: 344748
URL: https://svnweb.freebsd.org/changeset/base/344748

Log:
  Allow to build ifconfig(8) without wireless support
  
  The change removes SIOC[GS]IEEE80211 handling from ifconfig(8)
  if WITHOUT_WIRELESS_SUPPORT=yes is set in src.conf(5).
  
  Reviewed by:	bz
  MFC after:	1 week
  Differential Revision:	https://reviews.freebsd.org/D19289

Modified:
  head/sbin/ifconfig/Makefile

Modified: head/sbin/ifconfig/Makefile
==============================================================================
--- head/sbin/ifconfig/Makefile	Mon Mar  4 03:38:43 2019	(r344747)
+++ head/sbin/ifconfig/Makefile	Mon Mar  4 03:47:06 2019	(r344748)
@@ -39,8 +39,10 @@ SRCS+=	ifipsec.c		# IPsec VTI
 SRCS+=	sfp.c			# SFP/SFP+ information
 LIBADD+=	m
 
+.if ${MK_WIRELESS_SUPPORT} != "no"
 SRCS+=	ifieee80211.c		# SIOC[GS]IEEE80211 support
 LIBADD+=	80211
+.endif
 
 SRCS+=	carp.c			# SIOC[GS]VH support
 SRCS+=	ifgroup.c		# ...

From owner-svn-src-all@freebsd.org  Mon Mar  4 06:42:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E9F631505703;
 Mon,  4 Mar 2019 06:42:06 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 930788A862;
 Mon,  4 Mar 2019 06:42:06 +0000 (UTC)
 (envelope-from adrian@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 873794E5;
 Mon,  4 Mar 2019 06:42:06 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x246g6uq079887;
 Mon, 4 Mar 2019 06:42:06 GMT (envelope-from adrian@FreeBSD.org)
Received: (from adrian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x246g60I079886;
 Mon, 4 Mar 2019 06:42:06 GMT (envelope-from adrian@FreeBSD.org)
Message-Id: <201903040642.x246g60I079886@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: adrian set sender to
 adrian@FreeBSD.org using -f
From: Adrian Chadd <adrian@FreeBSD.org>
Date: Mon, 4 Mar 2019 06:42:06 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344749 - head/sys/dev/ath/ath_hal
X-SVN-Group: head
X-SVN-Commit-Author: adrian
X-SVN-Commit-Paths: head/sys/dev/ath/ath_hal
X-SVN-Commit-Revision: 344749
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 930788A862
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.94)[-0.940,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-0.999,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 06:42:07 -0000

Author: adrian
Date: Mon Mar  4 06:42:06 2019
New Revision: 344749
URL: https://svnweb.freebsd.org/changeset/base/344749

Log:
  [ath_hal] add extra ANI fields for the AR9300 HAL.
  
  I'm trying to debug why reception upstairs here is so terrible and it
  turns out ANI is buggy.  (Which is no surprise, ANI is always buggy.)
  
  Tested:
  
  * Carambola2 (AR9331), STA/AP modes

Modified:
  head/sys/dev/ath/ath_hal/ah.h

Modified: head/sys/dev/ath/ath_hal/ah.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah.h	Mon Mar  4 03:47:06 2019	(r344748)
+++ head/sys/dev/ath/ath_hal/ah.h	Mon Mar  4 06:42:06 2019	(r344749)
@@ -893,11 +893,13 @@ typedef struct {
 } HAL_ANI_STATS;
 
 typedef struct {
-	uint8_t		noiseImmunityLevel;
+	uint8_t		noiseImmunityLevel; /* OFDM */
+	uint8_t		cckNoiseImmunityLevel;
 	uint8_t		spurImmunityLevel;
 	uint8_t		firstepLevel;
 	uint8_t		ofdmWeakSigDetectOff;
 	uint8_t		cckWeakSigThreshold;
+	uint8_t		mrcCckOff;
 	uint32_t	listenTime;
 
 	/* NB: intentionally ordered so data exported to user space is first */

From owner-svn-src-all@freebsd.org  Mon Mar  4 06:43:01 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8910E15057A2;
 Mon,  4 Mar 2019 06:43:01 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 28F398AA23;
 Mon,  4 Mar 2019 06:43:01 +0000 (UTC)
 (envelope-from adrian@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 1CF4850D;
 Mon,  4 Mar 2019 06:43:01 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x246h1Ln080689;
 Mon, 4 Mar 2019 06:43:01 GMT (envelope-from adrian@FreeBSD.org)
Received: (from adrian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x246h13m080688;
 Mon, 4 Mar 2019 06:43:01 GMT (envelope-from adrian@FreeBSD.org)
Message-Id: <201903040643.x246h13m080688@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: adrian set sender to
 adrian@FreeBSD.org using -f
From: Adrian Chadd <adrian@FreeBSD.org>
Date: Mon, 4 Mar 2019 06:43:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344750 - head/sys/contrib/dev/ath/ath_hal/ar9300
X-SVN-Group: head
X-SVN-Commit-Author: adrian
X-SVN-Commit-Paths: head/sys/contrib/dev/ath/ath_hal/ar9300
X-SVN-Commit-Revision: 344750
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 28F398AA23
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.94)[-0.940,0];
 NEURAL_HAM_LONG(-1.00)[-0.999,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 06:43:01 -0000

Author: adrian
Date: Mon Mar  4 06:43:00 2019
New Revision: 344750
URL: https://svnweb.freebsd.org/changeset/base/344750

Log:
  [ath_hal_ar9300] Add the extra ANI configuration fields for the AR93xx HAL.
  
  Tested:
  
  * Carambola2 (Ar9331), STA/AP modes

Modified:
  head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c

Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c
==============================================================================
--- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c	Mon Mar  4 06:42:06 2019	(r344749)
+++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c	Mon Mar  4 06:43:00 2019	(r344750)
@@ -1263,15 +1263,13 @@ ar9300_get_diag_state(struct ath_hal *ah, int request,
         if (ani == AH_NULL)
             return AH_FALSE;
         /* Convert ar9300 HAL to FreeBSD HAL ANI state */
-        /* XXX TODO: add all of these to the HAL ANI state structure */
         bzero(&ahp->ext_ani_state, sizeof(ahp->ext_ani_state));
-        /* XXX should this be OFDM or CCK noise immunity level? */
         ahp->ext_ani_state.noiseImmunityLevel = ani->ofdm_noise_immunity_level;
         ahp->ext_ani_state.spurImmunityLevel = ani->spur_immunity_level;
         ahp->ext_ani_state.firstepLevel = ani->firstep_level;
         ahp->ext_ani_state.ofdmWeakSigDetectOff = ani->ofdm_weak_sig_detect_off;
-        /* mrc_cck_off */
-        /* cck_noise_immunity_level */
+        ahp->ext_ani_state.mrcCckOff = ani->mrc_cck_off;
+        ahp->ext_ani_state.cckNoiseImmunityLevel = ani->cck_noise_immunity_level;
 
         ahp->ext_ani_state.listenTime = ani->listen_time;
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 06:51:29 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C36F11505962;
 Mon,  4 Mar 2019 06:51:29 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 513FA8AEDD;
 Mon,  4 Mar 2019 06:51:28 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x246pJCB075171;
 Sun, 3 Mar 2019 22:51:19 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x246pJDu075170;
 Sun, 3 Mar 2019 22:51:19 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903040651.x246pJDu075170@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344748 - head/sbin/ifconfig
In-Reply-To: <201903040347.x243l6ZX087444@repo.freebsd.org>
To: Andriy Voskoboinyk <avos@freebsd.org>
Date: Sun, 3 Mar 2019 22:51:19 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 513FA8AEDD
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.95 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.946,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 06:51:29 -0000

> Author: avos
> Date: Mon Mar  4 03:47:06 2019
> New Revision: 344748
> URL: https://svnweb.freebsd.org/changeset/base/344748
> 
> Log:
>   Allow to build ifconfig(8) without wireless support
>   
>   The change removes SIOC[GS]IEEE80211 handling from ifconfig(8)
>   if WITHOUT_WIRELESS_SUPPORT=yes is set in src.conf(5).
>   
>   Reviewed by:	bz
>   MFC after:	1 week
>   Differential Revision:	https://reviews.freebsd.org/D19289

Thank you, this should help dexter@ with the build option survey
stuff that phk@ wrote he has been running.

> Modified:
>   head/sbin/ifconfig/Makefile
> 
> Modified: head/sbin/ifconfig/Makefile
> ==============================================================================
> --- head/sbin/ifconfig/Makefile	Mon Mar  4 03:38:43 2019	(r344747)
> +++ head/sbin/ifconfig/Makefile	Mon Mar  4 03:47:06 2019	(r344748)
> @@ -39,8 +39,10 @@ SRCS+=	ifipsec.c		# IPsec VTI
>  SRCS+=	sfp.c			# SFP/SFP+ information
>  LIBADD+=	m
>  
> +.if ${MK_WIRELESS_SUPPORT} != "no"
>  SRCS+=	ifieee80211.c		# SIOC[GS]IEEE80211 support
>  LIBADD+=	80211
> +.endif
>  
>  SRCS+=	carp.c			# SIOC[GS]VH support
>  SRCS+=	ifgroup.c		# ...
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Mon Mar  4 10:42:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8CF24150BAC3;
 Mon,  4 Mar 2019 10:42:26 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3CB3092889;
 Mon,  4 Mar 2019 10:42:26 +0000 (UTC) (envelope-from fsu@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 313202D6D;
 Mon,  4 Mar 2019 10:42:26 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24AgQAD007677;
 Mon, 4 Mar 2019 10:42:26 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24AgPmq007674;
 Mon, 4 Mar 2019 10:42:25 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041042.x24AgPmq007674@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 10:42:25 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344751 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344751
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3CB3092889
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 10:42:26 -0000

Author: fsu
Date: Mon Mar  4 10:42:25 2019
New Revision: 344751
URL: https://svnweb.freebsd.org/changeset/base/344751

Log:
  Make superblock reading logic more strict.
  
  Add more on-disk superblock consistency checks to ext2_compute_sb_data() function.
  It should decrease the probability of mounting filesystems with corrupted superblock data.
  
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19322

Modified:
  head/sys/fs/ext2fs/ext2_alloc.c
  head/sys/fs/ext2fs/ext2_extern.h
  head/sys/fs/ext2fs/ext2_vfsops.c
  head/sys/fs/ext2fs/ext2fs.h

Modified: head/sys/fs/ext2fs/ext2_alloc.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 06:43:00 2019	(r344750)
+++ head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 10:42:25 2019	(r344751)
@@ -457,7 +457,7 @@ noinodes:
 /*
  * 64-bit compatible getters and setters for struct ext2_gd from ext2fs.h
  */
-static uint64_t
+uint64_t
 e2fs_gd_get_b_bitmap(struct ext2_gd *gd)
 {
 
@@ -465,7 +465,7 @@ e2fs_gd_get_b_bitmap(struct ext2_gd *gd)
 	    gd->ext2bgd_b_bitmap);
 }
 
-static uint64_t
+uint64_t
 e2fs_gd_get_i_bitmap(struct ext2_gd *gd)
 {
 
@@ -754,7 +754,7 @@ ext2_hashalloc(struct inode *ip, int cg, long pref, in
 	return (0);
 }
 
-static unsigned long
+static uint64_t
 ext2_cg_number_gdb_nometa(struct m_ext2fs *fs, int cg)
 {
 
@@ -768,7 +768,7 @@ ext2_cg_number_gdb_nometa(struct m_ext2fs *fs, int cg)
 	    EXT2_DESCS_PER_BLOCK(fs));
 }
 
-static unsigned long
+static uint64_t
 ext2_cg_number_gdb_meta(struct m_ext2fs *fs, int cg)
 {
 	unsigned long metagroup;
@@ -784,7 +784,7 @@ ext2_cg_number_gdb_meta(struct m_ext2fs *fs, int cg)
 	return (0);
 }
 
-static unsigned long
+uint64_t
 ext2_cg_number_gdb(struct m_ext2fs *fs, int cg)
 {
 	unsigned long first_meta_bg, metagroup;

Modified: head/sys/fs/ext2fs/ext2_extern.h
==============================================================================
--- head/sys/fs/ext2fs/ext2_extern.h	Mon Mar  4 06:43:00 2019	(r344750)
+++ head/sys/fs/ext2fs/ext2_extern.h	Mon Mar  4 10:42:25 2019	(r344751)
@@ -91,6 +91,7 @@ int	ext2_dirrewrite(struct inode *,
 int	ext2_dirempty(struct inode *, ino_t, struct ucred *);
 int	ext2_checkpath(struct inode *, struct inode *, struct ucred *);
 int	ext2_cg_has_sb(struct m_ext2fs *fs, int cg);
+uint64_t	ext2_cg_number_gdb(struct m_ext2fs *fs, int cg);
 int	ext2_inactive(struct vop_inactive_args *);
 int	ext2_htree_add_entry(struct vnode *, struct ext2fs_direct_2 *,
 	    struct componentname *);
@@ -104,6 +105,8 @@ int	ext2_htree_lookup(struct inode *, const char *, in
 int	ext2_search_dirblock(struct inode *, void *, int *, const char *, int,
 	    int *, doff_t *, doff_t *, doff_t *, struct ext2fs_searchslot *);
 uint32_t	e2fs_gd_get_ndirs(struct ext2_gd *gd);
+uint64_t	e2fs_gd_get_b_bitmap(struct ext2_gd *);
+uint64_t	e2fs_gd_get_i_bitmap(struct ext2_gd *);
 uint64_t	e2fs_gd_get_i_tables(struct ext2_gd *);
 void	ext2_sb_csum_set_seed(struct m_ext2fs *);
 int	ext2_sb_csum_verify(struct m_ext2fs *);

Modified: head/sys/fs/ext2fs/ext2_vfsops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 06:43:00 2019	(r344750)
+++ head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 10:42:25 2019	(r344751)
@@ -98,7 +98,7 @@ VFS_SET(ext2fs_vfsops, ext2fs, 0);
 
 static int	ext2_check_sb_compat(struct ext2fs *es, struct cdev *dev,
 		    int ronly);
-static int	compute_sb_data(struct vnode * devvp,
+static int	ext2_compute_sb_data(struct vnode * devvp,
 		    struct ext2fs * es, struct m_ext2fs * fs);
 
 static const char *ext2_opts[] = { "acls", "async", "noatime", "noclusterr", 
@@ -321,7 +321,7 @@ ext2_check_sb_compat(struct ext2fs *es, struct cdev *d
 }
 
 static e4fs_daddr_t
-cg_location(struct m_ext2fs *fs, int number)
+ext2_cg_location(struct m_ext2fs *fs, int number)
 {
 	int cg, descpb, logical_sb, has_super = 0;
 
@@ -350,82 +350,196 @@ cg_location(struct m_ext2fs *fs, int number)
 	    fs->e2fs->e2fs_first_dblock);
 }
 
+static int
+ext2_cg_validate(struct m_ext2fs *fs)
+{
+	uint64_t b_bitmap;
+	uint64_t i_bitmap;
+	uint64_t i_tables;
+	uint64_t first_block, last_block, last_cg_block;
+	struct ext2_gd *gd;
+	unsigned int i, cg_count;
+
+	first_block = fs->e2fs->e2fs_first_dblock;
+	last_cg_block = ext2_cg_number_gdb(fs, 0);
+	cg_count = fs->e2fs_gcount;
+
+	for (i = 0; i < fs->e2fs_gcount; i++) {
+		gd = &fs->e2fs_gd[i];
+
+		if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_FLEX_BG) ||
+		    i == fs->e2fs_gcount - 1) {
+			last_block = fs->e2fs_bcount - 1;
+		} else {
+			last_block = first_block +
+			    (EXT2_BLOCKS_PER_GROUP(fs) - 1);
+		}
+
+		if ((cg_count == fs->e2fs_gcount) &&
+		    !(gd->ext4bgd_flags & EXT2_BG_INODE_ZEROED))
+			cg_count = i;
+
+		b_bitmap = e2fs_gd_get_b_bitmap(gd);
+		if (b_bitmap == 0) {
+			printf("ext2fs: cg %u: block bitmap is zero\n", i);
+			return (EINVAL);
+
+		}
+		if (b_bitmap <= last_cg_block) {
+			printf("ext2fs: cg %u: block bitmap overlaps gds\n", i);
+			return (EINVAL);
+		}
+		if (b_bitmap < first_block || b_bitmap > last_block) {
+			printf("ext2fs: cg %u: block bitmap not in group, blk=%ju\n",
+			    i, b_bitmap);
+			return (EINVAL);
+		}
+
+		i_bitmap = e2fs_gd_get_i_bitmap(gd);
+		if (i_bitmap == 0) {
+			printf("ext2fs: cg %u: inode bitmap is zero\n", i);
+			return (EINVAL);
+		}
+		if (i_bitmap <= last_cg_block) {
+			printf("ext2fs: cg %u: inode bitmap overlaps gds\n", i);
+			return (EINVAL);
+		}
+		if (i_bitmap < first_block || i_bitmap > last_block) {
+			printf("ext2fs: cg %u: inode bitmap not in group blk=%ju\n",
+			    i, i_bitmap);
+			return (EINVAL);
+		}
+
+		i_tables = e2fs_gd_get_i_tables(gd);
+		if (i_tables == 0) {
+			printf("ext2fs: cg %u: inode table is zero\n", i);
+			return (EINVAL);
+		}
+		if (i_tables <= last_cg_block) {
+			printf("ext2fs: cg %u: inode talbes overlaps gds\n", i);
+			return (EINVAL);
+		}
+		if (i_tables < first_block ||
+		    i_tables + fs->e2fs_itpg - 1 > last_block) {
+			printf("ext2fs: cg %u: inode tables not in group blk=%ju\n",
+			    i, i_tables);
+			return (EINVAL);
+		}
+
+		if (!EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_FLEX_BG))
+			first_block += EXT2_BLOCKS_PER_GROUP(fs);
+	}
+
+	return (0);
+}
+
 /*
  * This computes the fields of the m_ext2fs structure from the
  * data in the ext2fs structure read in.
  */
 static int
-compute_sb_data(struct vnode *devvp, struct ext2fs *es,
+ext2_compute_sb_data(struct vnode *devvp, struct ext2fs *es,
     struct m_ext2fs *fs)
 {
-	int g_count = 0, error;
-	int i, j;
 	struct buf *bp;
 	uint32_t e2fs_descpb, e2fs_gdbcount_alloc;
+	int i, j;
+	int g_count = 0;
+	int error;
 
-	fs->e2fs_bcount = es->e2fs_bcount;
-	fs->e2fs_rbcount = es->e2fs_rbcount;
-	fs->e2fs_fbcount = es->e2fs_fbcount;
-	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT)) {
-		fs->e2fs_bcount |= (uint64_t)(es->e4fs_bcount_hi) << 32;
-		fs->e2fs_rbcount |= (uint64_t)(es->e4fs_rbcount_hi) << 32;
-		fs->e2fs_fbcount |= (uint64_t)(es->e4fs_fbcount_hi) << 32;
+	/* Check checksum features */
+	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_GDT_CSUM) &&
+	    EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) {
+		printf("ext2fs: incorrect checksum features combination\n");
+		return (EINVAL);
 	}
+
+	/* Precompute checksum seed for all metadata */
+	ext2_sb_csum_set_seed(fs);
+
+	/* Verify sb csum if possible */
+	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) {
+		error = ext2_sb_csum_verify(fs);
+		if (error) {
+			return (error);
+		}
+	}
+
+	/* Check for block size = 1K|2K|4K */
+	if (es->e2fs_log_bsize > 2) {
+		printf("ext2fs: bad block size: %d\n", es->e2fs_log_bsize);
+		return (EINVAL);
+	}
+
 	fs->e2fs_bshift = EXT2_MIN_BLOCK_LOG_SIZE + es->e2fs_log_bsize;
 	fs->e2fs_bsize = 1U << fs->e2fs_bshift;
 	fs->e2fs_fsbtodb = es->e2fs_log_bsize + 1;
 	fs->e2fs_qbmask = fs->e2fs_bsize - 1;
+
+	/* Check for fragment size */
+	if (es->e2fs_log_fsize >
+	    (EXT2_MAX_FRAG_LOG_SIZE - EXT2_MIN_BLOCK_LOG_SIZE)) {
+		printf("ext2fs: invalid log cluster size: %u\n",
+		    es->e2fs_log_fsize);
+		return (EINVAL);
+	}
+
 	fs->e2fs_fsize = EXT2_MIN_FRAG_SIZE << es->e2fs_log_fsize;
-	if (fs->e2fs_fsize)
-		fs->e2fs_fpb = fs->e2fs_bsize / fs->e2fs_fsize;
-	fs->e2fs_bpg = es->e2fs_bpg;
-	fs->e2fs_fpg = es->e2fs_fpg;
-	fs->e2fs_ipg = es->e2fs_ipg;
+	if (fs->e2fs_fsize != fs->e2fs_bsize) {
+		printf("ext2fs: fragment size (%u) != block size %u\n",
+		    fs->e2fs_fsize, fs->e2fs_bsize);
+		return (EINVAL);
+	}
+
+	fs->e2fs_fpb = fs->e2fs_bsize / fs->e2fs_fsize;
+
+	/* Check reserved gdt blocks for future filesystem expansion */
+	if (es->e2fs_reserved_ngdb > (fs->e2fs_bsize / 4)) {
+		printf("ext2fs: number of reserved GDT blocks too large: %u\n",
+		    es->e2fs_reserved_ngdb);
+		return (EINVAL);
+	}
+
 	if (es->e2fs_rev == E2FS_REV0) {
 		fs->e2fs_isize = E2FS_REV0_INODE_SIZE;
 	} else {
 		fs->e2fs_isize = es->e2fs_inode_size;
 
 		/*
+		 * Check first ino.
+		 */
+		if (es->e2fs_first_ino < EXT2_FIRSTINO) {
+			printf("ext2fs: invalid first ino: %u\n",
+			    es->e2fs_first_ino);
+			return (EINVAL);
+		}
+
+		/*
 		 * Simple sanity check for superblock inode size value.
 		 */
 		if (EXT2_INODE_SIZE(fs) < E2FS_REV0_INODE_SIZE ||
 		    EXT2_INODE_SIZE(fs) > fs->e2fs_bsize ||
 		    (fs->e2fs_isize & (fs->e2fs_isize - 1)) != 0) {
-			printf("ext2fs: invalid inode size %d\n",
+			printf("ext2fs: invalid inode size %u\n",
 			    fs->e2fs_isize);
-			return (EIO);
+			return (EINVAL);
 		}
 	}
-	/* Check for extra isize in big inodes. */
-	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_EXTRA_ISIZE) &&
-	    EXT2_INODE_SIZE(fs) < sizeof(struct ext2fs_dinode)) {
-		printf("ext2fs: no space for extra inode timestamps\n");
-		return (EINVAL);
-	}
-	/* Check checksum features */
-	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_GDT_CSUM) &&
-	    EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) {
-		printf("ext2fs: incorrect checksum features combination\n");
-		return (EINVAL);
-	}
-	/* Check for group descriptor size */
+
+	/* Check group descriptors */
 	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT) &&
-	    (es->e3fs_desc_size != sizeof(struct ext2_gd))) {
-		printf("ext2fs: group descriptor size unsupported %d\n",
-		    es->e3fs_desc_size);
-		return (EINVAL);
+	    es->e3fs_desc_size != E2FS_64BIT_GD_SIZE) {
+			printf("ext2fs: unsupported 64bit descriptor size %u\n",
+			    es->e3fs_desc_size);
+			return (EINVAL);
 	}
-	/* Check for block size = 1K|2K|4K */
-	if (es->e2fs_log_bsize > 2) {
-		printf("ext2fs: bad block size: %d\n", es->e2fs_log_bsize);
+
+	fs->e2fs_bpg = es->e2fs_bpg;
+	fs->e2fs_fpg = es->e2fs_fpg;
+	if (fs->e2fs_bpg == 0 || fs->e2fs_fpg == 0) {
+		printf("ext2fs: zero blocks/fragments per group\n");
 		return (EINVAL);
 	}
-	/* Check for group size */
-	if (fs->e2fs_bpg == 0) {
-		printf("ext2fs: zero blocks per group\n");
-		return (EINVAL);
-	}
 	if (fs->e2fs_bpg != fs->e2fs_bsize * 8) {
 		printf("ext2fs: non-standard group size unsupported %d\n",
 		    fs->e2fs_bpg);
@@ -433,26 +547,56 @@ compute_sb_data(struct vnode *devvp, struct ext2fs *es
 	}
 
 	fs->e2fs_ipb = fs->e2fs_bsize / EXT2_INODE_SIZE(fs);
-	if (fs->e2fs_ipg == 0) {
-		printf("ext2fs: zero inodes per group\n");
+	if (fs->e2fs_ipb == 0 ||
+	    fs->e2fs_ipb > fs->e2fs_bsize / E2FS_REV0_INODE_SIZE) {
+		printf("ext2fs: bad inodes per block size\n");
 		return (EINVAL);
 	}
-	fs->e2fs_itpg = fs->e2fs_ipg / fs->e2fs_ipb;
-	/* Check for block consistency */
-	if (es->e2fs_first_dblock >= fs->e2fs_bcount) {
-		printf("ext2fs: invalid first data block\n");
+
+	fs->e2fs_ipg = es->e2fs_ipg;
+	if (fs->e2fs_ipg < fs->e2fs_ipb || fs->e2fs_ipg >  fs->e2fs_bsize * 8) {
+		printf("ext2fs: invalid inodes per group: %u\n", fs->e2fs_ipb);
 		return (EINVAL);
 	}
+
+	fs->e2fs_itpg = fs->e2fs_ipg / fs->e2fs_ipb;
+
+	fs->e2fs_bcount = es->e2fs_bcount;
+	fs->e2fs_rbcount = es->e2fs_rbcount;
+	fs->e2fs_fbcount = es->e2fs_fbcount;
+	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT)) {
+		fs->e2fs_bcount |= (uint64_t)(es->e4fs_bcount_hi) << 32;
+		fs->e2fs_rbcount |= (uint64_t)(es->e4fs_rbcount_hi) << 32;
+		fs->e2fs_fbcount |= (uint64_t)(es->e4fs_fbcount_hi) << 32;
+	}
 	if (fs->e2fs_rbcount > fs->e2fs_bcount ||
 	    fs->e2fs_fbcount > fs->e2fs_bcount) {
 		printf("ext2fs: invalid block count\n");
 		return (EINVAL);
 	}
-	/* s_resuid / s_resgid ? */
+	if (es->e2fs_first_dblock >= fs->e2fs_bcount) {
+		printf("ext2fs: first data block out of range\n");
+		return (EINVAL);
+	}
+
 	fs->e2fs_gcount = howmany(fs->e2fs_bcount - es->e2fs_first_dblock,
 	    EXT2_BLOCKS_PER_GROUP(fs));
+	if (fs->e2fs_gcount > ((uint64_t)1 << 32) - EXT2_DESCS_PER_BLOCK(fs)) {
+		printf("ext2fs: groups count too large: %u\n", fs->e2fs_gcount);
+		return (EINVAL);
+	}
+
+	/* Check for extra isize in big inodes. */
+	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_EXTRA_ISIZE) &&
+	    EXT2_INODE_SIZE(fs) < sizeof(struct ext2fs_dinode)) {
+		printf("ext2fs: no space for extra inode timestamps\n");
+		return (EINVAL);
+	}
+
+	/* s_resuid / s_resgid ? */
+
 	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT)) {
-		e2fs_descpb = fs->e2fs_bsize / sizeof(struct ext2_gd);
+		e2fs_descpb = fs->e2fs_bsize / E2FS_64BIT_GD_SIZE;
 		e2fs_gdbcount_alloc = howmany(fs->e2fs_gcount, e2fs_descpb);
 	} else {
 		e2fs_descpb = fs->e2fs_bsize / E2FS_REV0_GD_SIZE;
@@ -467,7 +611,7 @@ compute_sb_data(struct vnode *devvp, struct ext2fs *es
 
 	for (i = 0; i < fs->e2fs_gdbcount; i++) {
 		error = bread(devvp,
-		    fsbtodb(fs, cg_location(fs, i)),
+		    fsbtodb(fs, ext2_cg_location(fs, i)),
 		    fs->e2fs_bsize, NOCRED, &bp);
 		if (error) {
 			free(fs->e2fs_contigdirs, M_EXT2MNT);
@@ -489,9 +633,13 @@ compute_sb_data(struct vnode *devvp, struct ext2fs *es
 		brelse(bp);
 		bp = NULL;
 	}
-	/* Precompute checksum seed for all metadata */
-	ext2_sb_csum_set_seed(fs);
-	/* Verfy cg csum */
+
+	/* Validate cgs consistency */
+	error = ext2_cg_validate(fs);
+	if (error)
+		return (error);
+
+	/* Verfy cgs csum */
 	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_GDT_CSUM) ||
 	    EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) {
 		error = ext2_gd_csum_verify(fs, devvp->v_rdev);
@@ -578,7 +726,7 @@ ext2_reload(struct mount *mp, struct thread *td)
 	fs = VFSTOEXT2(mp)->um_e2fs;
 	bcopy(bp->b_data, fs->e2fs, sizeof(struct ext2fs));
 
-	if ((error = compute_sb_data(devvp, es, fs)) != 0) {
+	if ((error = ext2_compute_sb_data(devvp, es, fs)) != 0) {
 		brelse(bp);
 		return (error);
 	}
@@ -715,7 +863,7 @@ ext2_mountfs(struct vnode *devvp, struct mount *mp)
 	    M_EXT2MNT, M_WAITOK);
 	mtx_init(EXT2_MTX(ump), "EXT2FS", "EXT2FS Lock", MTX_DEF);
 	bcopy(es, ump->um_e2fs->e2fs, (u_int)sizeof(struct ext2fs));
-	if ((error = compute_sb_data(devvp, ump->um_e2fs->e2fs, ump->um_e2fs)))
+	if ((error = ext2_compute_sb_data(devvp, ump->um_e2fs->e2fs, ump->um_e2fs)))
 		goto out;
 
 	/*
@@ -1204,7 +1352,7 @@ ext2_cgupdate(struct ext2mount *mp, int waitfor)
 
 	for (i = 0; i < fs->e2fs_gdbcount; i++) {
 		bp = getblk(mp->um_devvp, fsbtodb(fs,
-		    cg_location(fs, i)),
+		    ext2_cg_location(fs, i)),
 		    fs->e2fs_bsize, 0, 0, 0);
 		if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_64BIT)) {
 			memcpy(bp->b_data, &fs->e2fs_gd[

Modified: head/sys/fs/ext2fs/ext2fs.h
==============================================================================
--- head/sys/fs/ext2fs/ext2fs.h	Mon Mar  4 06:43:00 2019	(r344750)
+++ head/sys/fs/ext2fs/ext2fs.h	Mon Mar  4 10:42:25 2019	(r344751)
@@ -395,6 +395,7 @@ struct ext2_gd {
 };
 
 #define	E2FS_REV0_GD_SIZE (sizeof(struct ext2_gd) / 2)
+#define	E2FS_64BIT_GD_SIZE (sizeof(struct ext2_gd))
 
 /*
  * Macro-instructions used to manage several block sizes
@@ -408,8 +409,8 @@ struct ext2_gd {
  * Macro-instructions used to manage fragments
  */
 #define	EXT2_MIN_FRAG_SIZE		1024
-#define	EXT2_MAX_FRAG_SIZE		4096
-#define	EXT2_MIN_FRAG_LOG_SIZE		  10
+#define	EXT2_MIN_FRAG_LOG_SIZE		10
+#define	EXT2_MAX_FRAG_LOG_SIZE		30
 #define	EXT2_FRAG_SIZE(s)		(EXT2_SB(s)->e2fs_fsize)
 #define	EXT2_FRAGS_PER_BLOCK(s)		(EXT2_SB(s)->e2fs_fpb)
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 10:55:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C363150C48C;
 Mon,  4 Mar 2019 10:55:03 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 BF17393781;
 Mon,  4 Mar 2019 10:55:02 +0000 (UTC) (envelope-from fsu@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 994DD2F2A;
 Mon,  4 Mar 2019 10:55:02 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24At2EU013203;
 Mon, 4 Mar 2019 10:55:02 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24At19c013199;
 Mon, 4 Mar 2019 10:55:01 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041055.x24At19c013199@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 10:55:01 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344752 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344752
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BF17393781
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 10:55:03 -0000

Author: fsu
Date: Mon Mar  4 10:55:01 2019
New Revision: 344752
URL: https://svnweb.freebsd.org/changeset/base/344752

Log:
  Add additional on-disk inode checks.
  
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19323

Modified:
  head/sys/fs/ext2fs/ext2_csum.c
  head/sys/fs/ext2fs/ext2_inode_cnv.c
  head/sys/fs/ext2fs/ext2_vfsops.c
  head/sys/fs/ext2fs/ext2fs.h

Modified: head/sys/fs/ext2fs/ext2_csum.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_csum.c	Mon Mar  4 10:42:25 2019	(r344751)
+++ head/sys/fs/ext2fs/ext2_csum.c	Mon Mar  4 10:55:01 2019	(r344752)
@@ -629,6 +629,8 @@ ext2_ei_csum_verify(struct inode *ip, struct ext2fs_di
 		if (!memcmp(ei, &ei_zero, sizeof(struct ext2fs_dinode)))
 			return (0);
 
+		printf("WARNING: Bad inode %ju csum - run fsck\n", ip->i_number);
+
 		return (EIO);
 	}
 

Modified: head/sys/fs/ext2fs/ext2_inode_cnv.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_inode_cnv.c	Mon Mar  4 10:42:25 2019	(r344751)
+++ head/sys/fs/ext2fs/ext2_inode_cnv.c	Mon Mar  4 10:55:01 2019	(r344752)
@@ -34,7 +34,6 @@
 #include <sys/stat.h>
 #include <sys/vnode.h>
 
-#include <fs/ext2fs/ext2fs.h>
 #include <fs/ext2fs/fs.h>
 #include <fs/ext2fs/inode.h>
 #include <fs/ext2fs/ext2fs.h>
@@ -92,8 +91,31 @@ ext2_print_inode(struct inode *in)
 int
 ext2_ei2i(struct ext2fs_dinode *ei, struct inode *ip)
 {
+	struct m_ext2fs *fs = ip->i_e2fs;
 
+	if ((ip->i_number < EXT2_FIRST_INO(fs) && ip->i_number != EXT2_ROOTINO) ||
+	    (ip->i_number < EXT2_ROOTINO) ||
+	    (ip->i_number > fs->e2fs->e2fs_icount)) {
+		printf("ext2fs: bad inode number %ju\n", ip->i_number);
+		return (EINVAL);
+	}
+
+	if (ip->i_number == EXT2_ROOTINO && ei->e2di_nlink == 0) {
+		printf("ext2fs: root inode unallocated\n");
+		return (EINVAL);
+	}
 	ip->i_nlink = ei->e2di_nlink;
+
+	/* Check extra inode size */
+	if (EXT2_INODE_SIZE(fs) > E2FS_REV0_INODE_SIZE) {
+		if (E2FS_REV0_INODE_SIZE + ei->e2di_extra_isize >
+		    EXT2_INODE_SIZE(fs) || (ei->e2di_extra_isize & 3)) {
+			printf("ext2fs: bad extra inode size %u, inode size=%u\n",
+			    ei->e2di_extra_isize, EXT2_INODE_SIZE(fs));
+			return (EINVAL);
+		}
+	}
+
 	/*
 	 * Godmar thinks - if the link count is zero, then the inode is
 	 * unused - according to ext2 standards. Ufs marks this fact by

Modified: head/sys/fs/ext2fs/ext2_vfsops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 10:42:25 2019	(r344751)
+++ head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 10:55:01 2019	(r344752)
@@ -773,11 +773,18 @@ loop:
 			MNT_VNODE_FOREACH_ALL_ABORT(mp, mvp);
 			return (error);
 		}
-		ext2_ei2i((struct ext2fs_dinode *)((char *)bp->b_data +
+
+		error = ext2_ei2i((struct ext2fs_dinode *)((char *)bp->b_data +
 		    EXT2_INODE_SIZE(fs) * ino_to_fsbo(fs, ip->i_number)), ip);
+
 		brelse(bp);
 		VOP_UNLOCK(vp, 0);
 		vrele(vp);
+
+		if (error) {
+			MNT_VNODE_FOREACH_ALL_ABORT(mp, mvp);
+			return (error);
+		}
 	}
 	return (0);
 }
@@ -1208,8 +1215,6 @@ ext2_vget(struct mount *mp, ino_t ino, int flags, stru
 	error = ext2_ei2i((struct ext2fs_dinode *)((char *)bp->b_data +
 	    EXT2_INODE_SIZE(fs) * ino_to_fsbo(fs, ino)), ip);
 	if (error) {
-		printf("ext2fs: Bad inode %lu csum - run fsck\n",
-		    (unsigned long)ino);
 		brelse(bp);
 		vput(vp);
 		*vpp = NULL;

Modified: head/sys/fs/ext2fs/ext2fs.h
==============================================================================
--- head/sys/fs/ext2fs/ext2fs.h	Mon Mar  4 10:42:25 2019	(r344751)
+++ head/sys/fs/ext2fs/ext2fs.h	Mon Mar  4 10:55:01 2019	(r344752)
@@ -422,4 +422,11 @@ struct ext2_gd {
 	EXT2F_INCOMPAT_64BIT) ? ((s)->e2fs_bsize / sizeof(struct ext2_gd)) : \
 	((s)->e2fs_bsize / E2FS_REV0_GD_SIZE))
 
+/*
+ * Macro-instructions used to manage inodes
+ */
+#define	EXT2_FIRST_INO(s)	((EXT2_SB(s)->e2fs->e2fs_rev == E2FS_REV0) ? \
+				 EXT2_FIRSTINO : \
+				 EXT2_SB(s)->e2fs->e2fs_first_ino)
+
 #endif	/* !_FS_EXT2FS_EXT2FS_H_ */

From owner-svn-src-all@freebsd.org  Mon Mar  4 11:01:24 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4AA79150C768;
 Mon,  4 Mar 2019 11:01:24 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 E15EF93BE2;
 Mon,  4 Mar 2019 11:01:23 +0000 (UTC) (envelope-from fsu@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 BCEF23093;
 Mon,  4 Mar 2019 11:01:23 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24B1NpM017902;
 Mon, 4 Mar 2019 11:01:23 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24B1NZk017901;
 Mon, 4 Mar 2019 11:01:23 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041101.x24B1NZk017901@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 11:01:23 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344753 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344753
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: E15EF93BE2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 11:01:24 -0000

Author: fsu
Date: Mon Mar  4 11:01:23 2019
New Revision: 344753
URL: https://svnweb.freebsd.org/changeset/base/344753

Log:
  Validate block bitmaps.
  
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19324

Modified:
  head/sys/fs/ext2fs/ext2_alloc.c

Modified: head/sys/fs/ext2fs/ext2_alloc.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 10:55:01 2019	(r344752)
+++ head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 11:01:23 2019	(r344753)
@@ -902,6 +902,52 @@ ext2_cg_block_bitmap_init(struct m_ext2fs *fs, int cg,
 	return (0);
 }
 
+static int
+ext2_b_bitmap_validate(struct m_ext2fs *fs, struct buf *bp, int cg)
+{
+	struct ext2_gd *gd;
+	uint64_t group_first_block;
+	unsigned int offset, max_bit;
+
+	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_FLEX_BG)) {
+		/*
+		 * It is not possible to check block bitmap in case of this feature,
+		 * because the inode and block bitmaps and inode table
+		 * blocks may not be in the group at all.
+		 * So, skip check in this case.
+		 */
+		return (0);
+	}
+
+	gd = &fs->e2fs_gd[cg];
+	max_bit = fs->e2fs_fpg;
+	group_first_block = ((uint64_t)cg) * fs->e2fs->e2fs_fpg +
+	    fs->e2fs->e2fs_first_dblock;
+
+	/* Check block bitmap block number */
+	offset = e2fs_gd_get_b_bitmap(gd) - group_first_block;
+	if (offset >= max_bit || !isset(bp->b_data, offset)) {
+		printf("ext2fs: bad block bitmap, group %d\n", cg);
+		return (EINVAL);
+	}
+
+	/* Check inode bitmap block number */
+	offset = e2fs_gd_get_i_bitmap(gd) - group_first_block;
+	if (offset >= max_bit || !isset(bp->b_data, offset)) {
+		printf("ext2fs: bad inode bitmap, group %d\n", cg);
+		return (EINVAL);
+	}
+
+	/* Check inode table */
+	offset = e2fs_gd_get_i_tables(gd) - group_first_block;
+	if (offset >= max_bit || offset + fs->e2fs_itpg >= max_bit) {
+		printf("ext2fs: bad inode table, group %d\n", cg);
+		return (EINVAL);
+	}
+
+	return (0);
+}
+
 /*
  * Determine whether a block can be allocated.
  *
@@ -922,40 +968,37 @@ ext2_alloccg(struct inode *ip, int cg, daddr_t bpref, 
 	ump = ip->i_ump;
 	if (e2fs_gd_get_nbfree(&fs->e2fs_gd[cg]) == 0)
 		return (0);
+
 	EXT2_UNLOCK(ump);
 	error = bread(ip->i_devvp, fsbtodb(fs,
 	    e2fs_gd_get_b_bitmap(&fs->e2fs_gd[cg])),
 	    (int)fs->e2fs_bsize, NOCRED, &bp);
-	if (error) {
-		brelse(bp);
-		EXT2_LOCK(ump);
-		return (0);
-	}
+	if (error)
+		goto fail;
+
 	if (EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_GDT_CSUM) ||
 	    EXT2_HAS_RO_COMPAT_FEATURE(fs, EXT2F_ROCOMPAT_METADATA_CKSUM)) {
 		error = ext2_cg_block_bitmap_init(fs, cg, bp);
-		if (error) {
-			brelse(bp);
-			EXT2_LOCK(ump);
-			return (0);
-		}
+		if (error)
+			goto fail;
+
 		ext2_gd_b_bitmap_csum_set(fs, cg, bp);
 	}
 	error = ext2_gd_b_bitmap_csum_verify(fs, cg, bp);
-	if (error) {
-		brelse(bp);
-		EXT2_LOCK(ump);
-		return (0);
-	}
-	if (e2fs_gd_get_nbfree(&fs->e2fs_gd[cg]) == 0) {
-		/*
-		 * Another thread allocated the last block in this
-		 * group while we were waiting for the buffer.
-		 */
-		brelse(bp);
-		EXT2_LOCK(ump);
-		return (0);
-	}
+	if (error)
+		goto fail;
+
+	error = ext2_b_bitmap_validate(fs,bp, cg);
+	if (error)
+		goto fail;
+
+	/*
+	 * Check, that another thread did not not allocate the last block in this
+	 * group while we were waiting for the buffer.
+	 */
+	if (e2fs_gd_get_nbfree(&fs->e2fs_gd[cg]) == 0)
+		goto fail;
+
 	bbp = (char *)bp->b_data;
 
 	if (dtog(fs, bpref) != cg)
@@ -1028,11 +1071,9 @@ retry:
 		goto retry;
 	}
 	bno = ext2_mapsearch(fs, bbp, bpref);
-	if (bno < 0) {
-		brelse(bp);
-		EXT2_LOCK(ump);
-		return (0);
-	}
+	if (bno < 0)
+		goto fail;
+
 gotit:
 #ifdef INVARIANTS
 	if (isset(bbp, bno)) {
@@ -1052,6 +1093,11 @@ gotit:
 	ext2_gd_b_bitmap_csum_set(fs, cg, bp);
 	bdwrite(bp);
 	return (((uint64_t)cg) * fs->e2fs->e2fs_fpg + fs->e2fs->e2fs_first_dblock + bno);
+
+fail:
+	brelse(bp);
+	EXT2_LOCK(ump);
+	return (0);
 }
 
 /*

From owner-svn-src-all@freebsd.org  Mon Mar  4 11:12:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9BC3B150CD71;
 Mon,  4 Mar 2019 11:12:20 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 38D5B94331;
 Mon,  4 Mar 2019 11:12:20 +0000 (UTC) (envelope-from fsu@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 27C353283;
 Mon,  4 Mar 2019 11:12:20 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24BCKiv021180;
 Mon, 4 Mar 2019 11:12:20 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24BCKbR021179;
 Mon, 4 Mar 2019 11:12:20 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041112.x24BCKbR021179@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 11:12:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344754 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344754
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 38D5B94331
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 11:12:20 -0000

Author: fsu
Date: Mon Mar  4 11:12:19 2019
New Revision: 344754
URL: https://svnweb.freebsd.org/changeset/base/344754

Log:
  Do not panic if inode bitmap is corrupted.
  
  admbug:         804
  Reported by:    Ilja Van Sprundel <ivansprundel@ioactive.com>
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19325

Modified:
  head/sys/fs/ext2fs/ext2_alloc.c

Modified: head/sys/fs/ext2fs/ext2_alloc.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 11:01:23 2019	(r344753)
+++ head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 11:12:19 2019	(r344754)
@@ -1318,10 +1318,12 @@ ext2_nodealloccg(struct inode *ip, int cg, daddr_t ipr
 		start = 0;
 		loc = memcchr(&ibp[start], 0xff, len);
 		if (loc == NULL) {
-			printf("cg = %d, ipref = %lld, fs = %s\n",
+			printf("ext2fs: inode bitmap corrupted: "
+			    "cg = %d, ipref = %lld, fs = %s - run fsck\n",
 			    cg, (long long)ipref, fs->e2fs_fsmnt);
-			panic("ext2fs_nodealloccg: map corrupted");
-			/* NOTREACHED */
+			brelse(bp);
+			EXT2_LOCK(ump);
+			return (0);
 		}
 	}
 	ipref = (loc - ibp) * NBBY + ffs(~*loc) - 1;

From owner-svn-src-all@freebsd.org  Mon Mar  4 11:19:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92F92150D0D5;
 Mon,  4 Mar 2019 11:19:22 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 326B4946F4;
 Mon,  4 Mar 2019 11:19:22 +0000 (UTC) (envelope-from fsu@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 27E12329C;
 Mon,  4 Mar 2019 11:19:22 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24BJM65024479;
 Mon, 4 Mar 2019 11:19:22 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24BJM53024478;
 Mon, 4 Mar 2019 11:19:22 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041119.x24BJM53024478@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 11:19:22 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344755 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344755
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 326B4946F4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 11:19:22 -0000

Author: fsu
Date: Mon Mar  4 11:19:21 2019
New Revision: 344755
URL: https://svnweb.freebsd.org/changeset/base/344755

Log:
  Fix integer overflow possibility.
  
  Reported by:    Christopher Krah <krah@protonmail.com>
  Reported as:    FS-2-EXT2-1: Out-of-Bounds Write in nmount (ext2_vget)
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19326

Modified:
  head/sys/fs/ext2fs/ext2_vfsops.c

Modified: head/sys/fs/ext2fs/ext2_vfsops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 11:12:19 2019	(r344754)
+++ head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 11:19:21 2019	(r344755)
@@ -1163,8 +1163,8 @@ ext2_vget(struct mount *mp, ino_t ino, int flags, stru
 	struct buf *bp;
 	struct vnode *vp;
 	struct thread *td;
-	int i, error;
-	int used_blocks;
+	unsigned int i, used_blocks;
+	int error;
 
 	td = curthread;
 	error = vfs_hash_get(mp, ino, flags, td, vpp, NULL, NULL);

From owner-svn-src-all@freebsd.org  Mon Mar  4 11:27:48 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F3C0E150D4EB;
 Mon,  4 Mar 2019 11:27:47 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9249994D57;
 Mon,  4 Mar 2019 11:27:47 +0000 (UTC) (envelope-from fsu@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 7D2DD3446;
 Mon,  4 Mar 2019 11:27:47 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24BRlXY030205;
 Mon, 4 Mar 2019 11:27:47 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24BRlRF030204;
 Mon, 4 Mar 2019 11:27:47 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041127.x24BRlRF030204@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 11:27:47 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344756 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344756
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9249994D57
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 11:27:48 -0000

Author: fsu
Date: Mon Mar  4 11:27:47 2019
New Revision: 344756
URL: https://svnweb.freebsd.org/changeset/base/344756

Log:
  Do not read the on-disk inode in case of vnode allocation.
  
  Reported by:    Christopher Krah <krah@protonmail.com>
  Reported as:    FS-6-EXT2-4: Denial Of Service in mkdir-0 (ext2_mkdir/vn_rdwr)
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19327

Modified:
  head/sys/fs/ext2fs/ext2_alloc.c

Modified: head/sys/fs/ext2fs/ext2_alloc.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 11:19:21 2019	(r344755)
+++ head/sys/fs/ext2fs/ext2_alloc.c	Mon Mar  4 11:27:47 2019	(r344756)
@@ -373,10 +373,12 @@ int
 ext2_valloc(struct vnode *pvp, int mode, struct ucred *cred, struct vnode **vpp)
 {
 	struct timespec ts;
-	struct inode *pip;
 	struct m_ext2fs *fs;
-	struct inode *ip;
 	struct ext2mount *ump;
+	struct inode *pip;
+	struct inode *ip;
+	struct vnode *vp;
+	struct thread *td;
 	ino_t ino, ipref;
 	int error, cg;
 
@@ -404,33 +406,69 @@ ext2_valloc(struct vnode *pvp, int mode, struct ucred 
 	}
 	ipref = cg * fs->e2fs->e2fs_ipg + 1;
 	ino = (ino_t)ext2_hashalloc(pip, cg, (long)ipref, mode, ext2_nodealloccg);
-
 	if (ino == 0)
 		goto noinodes;
-	error = VFS_VGET(pvp->v_mount, ino, LK_EXCLUSIVE, vpp);
+
+	td = curthread;
+	error = vfs_hash_get(ump->um_mountp, ino, LK_EXCLUSIVE, td, vpp, NULL, NULL);
+	if (error || *vpp != NULL) {
+		EXT2_UNLOCK(ump);
+		return (error);
+	}
+
+	ip = malloc(sizeof(struct inode), M_EXT2NODE, M_WAITOK | M_ZERO);
+	if (ip == NULL) {
+		EXT2_UNLOCK(ump);
+		return (ENOMEM);
+	}
+
+	/* Allocate a new vnode/inode. */
+	if ((error = getnewvnode("ext2fs", ump->um_mountp, &ext2_vnodeops, &vp)) != 0) {
+		free(ip, M_EXT2NODE);
+		EXT2_UNLOCK(ump);
+		return (error);
+	}
+
+	vp->v_data = ip;
+	ip->i_vnode = vp;
+	ip->i_e2fs = fs = ump->um_e2fs;
+	ip->i_ump = ump;
+	ip->i_number = ino;
+	ip->i_block_group = ino_to_cg(fs, ino);
+	ip->i_next_alloc_block = 0;
+	ip->i_next_alloc_goal = 0;
+
+	lockmgr(vp->v_vnlock, LK_EXCLUSIVE, NULL);
+	error = insmntque(vp, ump->um_mountp);
 	if (error) {
-		ext2_vfree(pvp, ino, mode);
+		free(ip, M_EXT2NODE);
+		EXT2_UNLOCK(ump);
 		return (error);
 	}
-	ip = VTOI(*vpp);
 
-	/*
-	 * The question is whether using VGET was such good idea at all:
-	 * Linux doesn't read the old inode in when it is allocating a
-	 * new one. I will set at least i_size and i_blocks to zero.
-	 */
-	ip->i_flag = 0;
-	ip->i_size = 0;
-	ip->i_blocks = 0;
-	ip->i_mode = 0;
-	ip->i_flags = 0;
+	error = vfs_hash_insert(vp, ino, LK_EXCLUSIVE, td, vpp, NULL, NULL);
+	if (error || *vpp != NULL) {
+		*vpp = NULL;
+		free(ip, M_EXT2NODE);
+		EXT2_UNLOCK(ump);
+		return (error);
+	}
+
+	if ((error = ext2_vinit(ump->um_mountp, &ext2_fifoops, &vp)) != 0) {
+		vput(vp);
+		*vpp = NULL;
+		free(ip, M_EXT2NODE);
+		EXT2_UNLOCK(ump);
+		return (error);
+	}
+
 	if (EXT2_HAS_INCOMPAT_FEATURE(fs, EXT2F_INCOMPAT_EXTENTS)
 	    && (S_ISREG(mode) || S_ISDIR(mode)))
 		ext4_ext_tree_init(ip);
 	else
 		memset(ip->i_data, 0, sizeof(ip->i_data));
-	
 
+
 	/*
 	 * Set up a new generation number for this inode.
 	 * Avoid zero values.
@@ -443,10 +481,10 @@ ext2_valloc(struct vnode *pvp, int mode, struct ucred 
 	ip->i_birthtime = ts.tv_sec;
 	ip->i_birthnsec = ts.tv_nsec;
 
-/*
-printf("ext2_valloc: allocated inode %d\n", ino);
-*/
+	*vpp = vp;
+
 	return (0);
+
 noinodes:
 	EXT2_UNLOCK(ump);
 	ext2_fserr(fs, cred->cr_uid, "out of inodes");

From owner-svn-src-all@freebsd.org  Mon Mar  4 11:33:52 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5729A150D7C7;
 Mon,  4 Mar 2019 11:33:52 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 E7A1695292;
 Mon,  4 Mar 2019 11:33:51 +0000 (UTC) (envelope-from fsu@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 B3BEA37B9;
 Mon,  4 Mar 2019 11:33:49 +0000 (UTC) (envelope-from fsu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24BXnjf035957;
 Mon, 4 Mar 2019 11:33:49 GMT (envelope-from fsu@FreeBSD.org)
Received: (from fsu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24BXnuY035956;
 Mon, 4 Mar 2019 11:33:49 GMT (envelope-from fsu@FreeBSD.org)
Message-Id: <201903041133.x24BXnuY035956@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: fsu set sender to fsu@FreeBSD.org
 using -f
From: Fedor Uporov <fsu@FreeBSD.org>
Date: Mon, 4 Mar 2019 11:33:49 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344757 - head/sys/fs/ext2fs
X-SVN-Group: head
X-SVN-Commit-Author: fsu
X-SVN-Commit-Paths: head/sys/fs/ext2fs
X-SVN-Commit-Revision: 344757
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: E7A1695292
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 11:33:52 -0000

Author: fsu
Date: Mon Mar  4 11:33:49 2019
New Revision: 344757
URL: https://svnweb.freebsd.org/changeset/base/344757

Log:
  Fix double free in case of mount error.
  
  Reported by:    Christopher Krah <krah@protonmail.com>
  Reported as:    FS-9-EXT3-2: Denial Of Service in nmount-5 (vm_fault_hold)
  Reviewed by:    pfg
  MFC after:      1 week
  
  Differential Revision:    https://reviews.freebsd.org/D19385

Modified:
  head/sys/fs/ext2fs/ext2_vfsops.c

Modified: head/sys/fs/ext2fs/ext2_vfsops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 11:27:47 2019	(r344756)
+++ head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 11:33:49 2019	(r344757)
@@ -614,8 +614,12 @@ ext2_compute_sb_data(struct vnode *devvp, struct ext2f
 		    fsbtodb(fs, ext2_cg_location(fs, i)),
 		    fs->e2fs_bsize, NOCRED, &bp);
 		if (error) {
-			free(fs->e2fs_contigdirs, M_EXT2MNT);
-			free(fs->e2fs_gd, M_EXT2MNT);
+			/*
+			 * fs->e2fs_gd and fs->e2fs_contigdirs
+			 * will be freed later by the caller,
+			 * because this function could be called from
+			 * MNT_UPDATE path.
+			 */
 			brelse(bp);
 			return (error);
 		}

From owner-svn-src-all@freebsd.org  Mon Mar  4 13:02:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8DCB51510CF5;
 Mon,  4 Mar 2019 13:02:37 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3529A69B7B;
 Mon,  4 Mar 2019 13:02:37 +0000 (UTC)
 (envelope-from trasz@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 2975847DF;
 Mon,  4 Mar 2019 13:02:37 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24D2bbP093622;
 Mon, 4 Mar 2019 13:02:37 GMT (envelope-from trasz@FreeBSD.org)
Received: (from trasz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24D2aG0093620;
 Mon, 4 Mar 2019 13:02:36 GMT (envelope-from trasz@FreeBSD.org)
Message-Id: <201903041302.x24D2aG0093620@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: trasz set sender to
 trasz@FreeBSD.org using -f
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Date: Mon, 4 Mar 2019 13:02:36 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344758 - in head/sys/fs: nfs nfsserver
X-SVN-Group: head
X-SVN-Commit-Author: trasz
X-SVN-Commit-Paths: in head/sys/fs: nfs nfsserver
X-SVN-Commit-Revision: 344758
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3529A69B7B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.978,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 13:02:37 -0000

Author: trasz
Date: Mon Mar  4 13:02:36 2019
New Revision: 344758
URL: https://svnweb.freebsd.org/changeset/base/344758

Log:
  Push down td in nfsrvd_dorpc() - make it use curthread instead
  of it being explicitly passed as an argument. No functional changes.
  
  The big picture here is that I want to get rid of the 'td' argument
  being passed everywhere, and this is the first piece that affects
  the NFS server.
  
  Reviewed by:	rmacklem
  MFC after:	2 weeks
  Sponsored by:	DARPA, AFRL
  Differential Revision:	https://reviews.freebsd.org/D19417

Modified:
  head/sys/fs/nfs/nfs_var.h
  head/sys/fs/nfsserver/nfs_nfsdkrpc.c
  head/sys/fs/nfsserver/nfs_nfsdsocket.c

Modified: head/sys/fs/nfs/nfs_var.h
==============================================================================
--- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 11:33:49 2019	(r344757)
+++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:02:36 2019	(r344758)
@@ -283,8 +283,7 @@ int nfsrvd_notsupp(struct nfsrv_descript *, int,
 
 /* nfs_nfsdsocket.c */
 void nfsrvd_rephead(struct nfsrv_descript *);
-void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32_t,
-    NFSPROC_T *);
+void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32_t);
 
 /* nfs_nfsdcache.c */
 void nfsrvd_initcache(void);

Modified: head/sys/fs/nfsserver/nfs_nfsdkrpc.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdkrpc.c	Mon Mar  4 11:33:49 2019	(r344757)
+++ head/sys/fs/nfsserver/nfs_nfsdkrpc.c	Mon Mar  4 13:02:36 2019	(r344758)
@@ -323,7 +323,6 @@ static int
 nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVCXPRT *xprt,
     struct nfsrvcache **rpp)
 {
-	struct thread *td = curthread;
 	int cacherep = RC_DOIT, isdgram, taglen = -1;
 	struct mbuf *m;
 	u_char tag[NFSV4_SMALLSTR + 1], *tagstr = NULL;
@@ -384,7 +383,7 @@ nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVC
 	if (cacherep == RC_DOIT) {
 		if ((nd->nd_flag & ND_NFSV41) != 0)
 			nd->nd_xprt = xprt;
-		nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers, td);
+		nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers);
 		if ((nd->nd_flag & ND_NFSV41) != 0) {
 			if (nd->nd_repstat != NFSERR_REPLYFROMCACHE &&
 			    (nd->nd_flag & ND_SAVEREPLY) != 0) {

Modified: head/sys/fs/nfsserver/nfs_nfsdsocket.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 11:33:49 2019	(r344757)
+++ head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:02:36 2019	(r344758)
@@ -367,7 +367,7 @@ int nfsrv_writerpc[NFS_NPROCS] = { 0, 0, 1, 0, 0, 0, 0
 
 /* local functions */
 static void nfsrvd_compound(struct nfsrv_descript *nd, int isdgram,
-    u_char *tag, int taglen, u_int32_t minorvers, NFSPROC_T *p);
+    u_char *tag, int taglen, u_int32_t minorvers);
 
 
 /*
@@ -475,14 +475,17 @@ nfsrvd_statend(int op, uint64_t bytes, struct bintime 
  */
 APPLESTATIC void
 nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u_char *tag, int taglen,
-    u_int32_t minorvers, NFSPROC_T *p)
+    u_int32_t minorvers)
 {
 	int error = 0, lktype;
 	vnode_t vp;
 	mount_t mp = NULL;
 	struct nfsrvfh fh;
 	struct nfsexstuff nes;
+	struct thread *p;
 
+	p = curthread;
+
 	/*
 	 * Get a locked vnode for the first file handle
 	 */
@@ -557,7 +560,7 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u
 	 * The group is indicated by the value in nfs_retfh[].
 	 */
 	if (nd->nd_flag & ND_NFSV4) {
-		nfsrvd_compound(nd, isdgram, tag, taglen, minorvers, p);
+		nfsrvd_compound(nd, isdgram, tag, taglen, minorvers);
 	} else {
 		struct bintime start_time;
 
@@ -620,7 +623,7 @@ out:
  */
 static void
 nfsrvd_compound(struct nfsrv_descript *nd, int isdgram, u_char *tag,
-    int taglen, u_int32_t minorvers, NFSPROC_T *p)
+    int taglen, u_int32_t minorvers)
 {
 	int i, lktype, op, op0 = 0, statsinprog = 0;
 	u_int32_t *tl;
@@ -635,6 +638,9 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram
 	fsid_t cur_fsid, save_fsid;
 	static u_int64_t compref = 0;
 	struct bintime start_time;
+	struct thread *p;
+
+	p = curthread;
 
 	NFSVNO_EXINIT(&vpnes);
 	NFSVNO_EXINIT(&savevpnes);

From owner-svn-src-all@freebsd.org  Mon Mar  4 13:12:24 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 495801511235;
 Mon,  4 Mar 2019 13:12:24 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 ECA4E6A38A;
 Mon,  4 Mar 2019 13:12:23 +0000 (UTC)
 (envelope-from trasz@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 E0F0A4988;
 Mon,  4 Mar 2019 13:12:23 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24DCNR6099860;
 Mon, 4 Mar 2019 13:12:23 GMT (envelope-from trasz@FreeBSD.org)
Received: (from trasz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24DCNo8099855;
 Mon, 4 Mar 2019 13:12:23 GMT (envelope-from trasz@FreeBSD.org)
Message-Id: <201903041312.x24DCNo8099855@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: trasz set sender to
 trasz@FreeBSD.org using -f
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Date: Mon, 4 Mar 2019 13:12:23 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344759 - in head/sys/fs: nfs nfsserver
X-SVN-Group: head
X-SVN-Commit-Author: trasz
X-SVN-Commit-Paths: in head/sys/fs: nfs nfsserver
X-SVN-Commit-Revision: 344759
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: ECA4E6A38A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.980,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 13:12:24 -0000

Author: trasz
Date: Mon Mar  4 13:12:23 2019
New Revision: 344759
URL: https://svnweb.freebsd.org/changeset/base/344759

Log:
  Push down the thread argument in NFS server code, using curthread
  instead of passing it explicitly. No functional changes
  
  Reviewed by:	rmacklem (earlier version)
  MFC after:	2 weeks
  Sponsored by:	DARPA, AFRL
  Differential Revision:	https://reviews.freebsd.org/D19419

Modified:
  head/sys/fs/nfs/nfs_var.h
  head/sys/fs/nfsserver/nfs_nfsdport.c
  head/sys/fs/nfsserver/nfs_nfsdserv.c
  head/sys/fs/nfsserver/nfs_nfsdsocket.c

Modified: head/sys/fs/nfs/nfs_var.h
==============================================================================
--- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:02:36 2019	(r344758)
+++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:12:23 2019	(r344759)
@@ -171,115 +171,107 @@ int nfsrv_mdscopymr(char *, char *, char *, char *, in
 
 /* nfs_nfsdserv.c */
 int nfsrvd_access(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_getattr(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_setattr(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_lookup(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_readlink(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_read(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_write(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_create(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_mknod(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_remove(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_rename(struct nfsrv_descript *, int,
-    vnode_t, vnode_t, NFSPROC_T *, struct nfsexstuff *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t, struct nfsexstuff *, struct nfsexstuff *);
 int nfsrvd_link(struct nfsrv_descript *, int,
-    vnode_t, vnode_t, NFSPROC_T *, struct nfsexstuff *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t, struct nfsexstuff *, struct nfsexstuff *);
 int nfsrvd_symlink(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_mkdir(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_readdir(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_readdirplus(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_commit(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_statfs(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_fsinfo(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_close(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_delegpurge(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_delegreturn(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_getfh(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_lock(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_lockt(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_locku(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_openconfirm(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_opendowngrade(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_renew(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_secinfo(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_setclientid(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_setclientidcfrm(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_verify(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_open(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_openattr(struct nfsrv_descript *, int,
-    vnode_t, vnode_t *, fhandle_t *, NFSPROC_T *,
-    struct nfsexstuff *);
+    vnode_t, vnode_t *, fhandle_t *, struct nfsexstuff *);
 int nfsrvd_releaselckown(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_pathconf(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_exchangeid(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_createsession(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_sequence(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_reclaimcomplete(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_destroyclientid(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_bindconnsess(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_destroysession(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_freestateid(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_layoutget(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_getdevinfo(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_layoutcommit(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_layoutreturn(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_teststateid(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 int nfsrvd_notsupp(struct nfsrv_descript *, int,
-    vnode_t, NFSPROC_T *, struct nfsexstuff *);
+    vnode_t, struct nfsexstuff *);
 
 /* nfs_nfsdsocket.c */
 void nfsrvd_rephead(struct nfsrv_descript *);

Modified: head/sys/fs/nfsserver/nfs_nfsdport.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 13:02:36 2019	(r344758)
+++ head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 13:12:23 2019	(r344759)
@@ -1813,7 +1813,7 @@ nfsvno_fillattr(struct nfsrv_descript *nd, struct moun
  */
 int
 nfsrvd_readdir(struct nfsrv_descript *nd, int isdgram,
-    struct vnode *vp, struct thread *p, struct nfsexstuff *exp)
+    struct vnode *vp, struct nfsexstuff *exp)
 {
 	struct dirent *dp;
 	u_int32_t *tl;
@@ -1827,6 +1827,7 @@ nfsrvd_readdir(struct nfsrv_descript *nd, int isdgram,
 	struct uio io;
 	struct iovec iv;
 	int is_ufs;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &at);
@@ -2057,7 +2058,7 @@ nfsmout:
  */
 int
 nfsrvd_readdirplus(struct nfsrv_descript *nd, int isdgram,
-    struct vnode *vp, struct thread *p, struct nfsexstuff *exp)
+    struct vnode *vp, struct nfsexstuff *exp)
 {
 	struct dirent *dp;
 	u_int32_t *tl;
@@ -2080,6 +2081,7 @@ nfsrvd_readdirplus(struct nfsrv_descript *nd, int isdg
 	int at_root, is_ufs, is_zfs, needs_unbusy, supports_nfsv4acls;
 	struct mount *mp, *new_mp;
 	uint64_t mounted_on_fileno;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &at);

Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 13:02:36 2019	(r344758)
+++ head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 13:12:23 2019	(r344759)
@@ -101,13 +101,14 @@ static void nfsrvd_mkdirsub(struct nfsrv_descript *nd,
  */
 APPLESTATIC int
 nfsrvd_access(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int getret, error = 0;
 	struct nfsvattr nva;
 	u_int32_t testmode, nfsmode, supported = 0;
 	accmode_t deletebit;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, 1, &nva);
@@ -188,7 +189,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_getattr(struct nfsrv_descript *nd, int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	struct nfsvattr nva;
 	fhandle_t fh;
@@ -200,6 +201,7 @@ nfsrvd_getattr(struct nfsrv_descript *nd, int isdgram,
 	struct vattr va;
 	uint64_t mounted_on_fileno = 0;
 	accmode_t accmode;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat)
 		goto out;
@@ -314,7 +316,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_setattr(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	struct nfsvattr nva, nva2;
 	u_int32_t *tl;
@@ -324,6 +326,7 @@ nfsrvd_setattr(struct nfsrv_descript *nd, __unused int
 	nfsattrbit_t attrbits, retbits;
 	nfsv4stateid_t stateid;
 	NFSACL_T *aclp = NULL;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, preat_ret, &nva2, postat_ret, &nva);
@@ -522,8 +525,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_lookup(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, NFSPROC_T *p,
-    struct nfsexstuff *exp)
+    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, struct nfsexstuff *exp)
 {
 	struct nameidata named;
 	vnode_t vp, dirp = NULL;
@@ -531,6 +533,7 @@ nfsrvd_lookup(struct nfsrv_descript *nd, __unused int 
 	struct nfsvattr nva, dattr;
 	char *bufp;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, dattr_ret, &dattr);
@@ -622,12 +625,13 @@ out:
  */
 APPLESTATIC int
 nfsrvd_readlink(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	mbuf_t mp = NULL, mpend = NULL;
 	int getret = 1, len;
 	struct nfsvattr nva;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &nva);
@@ -665,7 +669,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_read(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0, cnt, getret = 1, gotproxystateid, reqlen, eof = 0;
@@ -676,6 +680,7 @@ nfsrvd_read(struct nfsrv_descript *nd, __unused int is
 	struct nfslock lo, *lop = &lo;
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &nva);
@@ -850,7 +855,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_write(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	int i, cnt;
 	u_int32_t *tl;
@@ -864,6 +869,7 @@ nfsrvd_write(struct nfsrv_descript *nd, __unused int i
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
 	nfsattrbit_t attrbits;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, forat_ret, &forat, aftat_ret, &nva);
@@ -1055,7 +1061,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_create(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t dp, struct nfsexstuff *exp)
 {
 	struct nfsvattr nva, dirfor, diraft;
 	struct nfsv2_sattr *sp;
@@ -1070,6 +1076,7 @@ nfsrvd_create(struct nfsrv_descript *nd, __unused int 
 	u_long *hashp;
 	enum vtype vtyp;
 	int32_t cverf[2], tverf[2] = { 0, 0 };
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, dirfor_ret, &dirfor, diraft_ret, &diraft);
@@ -1224,8 +1231,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_mknod(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, NFSPROC_T *p,
-    struct nfsexstuff *exp)
+    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, struct nfsexstuff *exp)
 {
 	struct nfsvattr nva, dirfor, diraft;
 	u_int32_t *tl;
@@ -1239,6 +1245,7 @@ nfsrvd_mknod(struct nfsrv_descript *nd, __unused int i
 	char *bufp = NULL, *pathcp = NULL;
 	u_long *hashp, cnflags;
 	NFSACL_T *aclp = NULL;
+	struct thread *p = curthread;
 
 	NFSVNO_ATTRINIT(&nva);
 	cnflags = (LOCKPARENT | SAVESTART);
@@ -1442,7 +1449,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_remove(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t dp, struct nfsexstuff *exp)
 {
 	struct nameidata named;
 	u_int32_t *tl;
@@ -1451,6 +1458,7 @@ nfsrvd_remove(struct nfsrv_descript *nd, __unused int 
 	struct nfsvattr dirfor, diraft;
 	char *bufp;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, dirfor_ret, &dirfor, diraft_ret, &diraft);
@@ -1524,8 +1532,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_rename(struct nfsrv_descript *nd, int isdgram,
-    vnode_t dp, vnode_t todp, NFSPROC_T *p, struct nfsexstuff *exp,
-    struct nfsexstuff *toexp)
+    vnode_t dp, vnode_t todp, struct nfsexstuff *exp, struct nfsexstuff *toexp)
 {
 	u_int32_t *tl;
 	int error = 0, fdirfor_ret = 1, fdiraft_ret = 1;
@@ -1538,6 +1545,7 @@ nfsrvd_rename(struct nfsrv_descript *nd, int isdgram,
 	char *bufp, *tbufp = NULL;
 	u_long *hashp;
 	fhandle_t fh;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, fdirfor_ret, &fdirfor, fdiraft_ret, &fdiraft);
@@ -1694,8 +1702,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_link(struct nfsrv_descript *nd, int isdgram,
-    vnode_t vp, vnode_t tovp, NFSPROC_T *p, struct nfsexstuff *exp,
-    struct nfsexstuff *toexp)
+    vnode_t vp, vnode_t tovp, struct nfsexstuff *exp, struct nfsexstuff *toexp)
 {
 	struct nameidata named;
 	u_int32_t *tl;
@@ -1706,6 +1713,7 @@ nfsrvd_link(struct nfsrv_descript *nd, int isdgram,
 	struct nfsrvfh dfh;
 	char *bufp;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &at);
@@ -1798,8 +1806,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_symlink(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, NFSPROC_T *p,
-    struct nfsexstuff *exp)
+    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, struct nfsexstuff *exp)
 {
 	struct nfsvattr nva, dirfor, diraft;
 	struct nameidata named;
@@ -1807,6 +1814,7 @@ nfsrvd_symlink(struct nfsrv_descript *nd, __unused int
 	vnode_t dirp = NULL;
 	char *bufp, *pathcp = NULL;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, dirfor_ret, &dirfor, diraft_ret, &diraft);
@@ -1918,8 +1926,7 @@ nfsrvd_symlinksub(struct nfsrv_descript *nd, struct na
  */
 APPLESTATIC int
 nfsrvd_mkdir(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, NFSPROC_T *p,
-    struct nfsexstuff *exp)
+    vnode_t dp, vnode_t *vpp, fhandle_t *fhp, struct nfsexstuff *exp)
 {
 	struct nfsvattr nva, dirfor, diraft;
 	struct nameidata named;
@@ -1928,6 +1935,7 @@ nfsrvd_mkdir(struct nfsrv_descript *nd, __unused int i
 	vnode_t dirp = NULL;
 	char *bufp;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_wcc(nd, dirfor_ret, &dirfor, diraft_ret, &diraft);
@@ -2052,12 +2060,13 @@ nfsrvd_mkdirsub(struct nfsrv_descript *nd, struct name
  */
 APPLESTATIC int
 nfsrvd_commit(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	struct nfsvattr bfor, aft;
 	u_int32_t *tl;
 	int error = 0, for_ret = 1, aft_ret = 1, cnt;
 	u_int64_t off;
+	struct thread *p = curthread;
 
        if (nd->nd_repstat) {
 		nfsrv_wcc(nd, for_ret, &bfor, aft_ret, &aft);
@@ -2109,13 +2118,14 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_statfs(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	struct statfs *sf;
 	u_int32_t *tl;
 	int getret = 1;
 	struct nfsvattr at;
 	u_quad_t tval;
+	struct thread *p = curthread;
 
 	sf = NULL;
 	if (nd->nd_repstat) {
@@ -2168,12 +2178,13 @@ out:
  */
 APPLESTATIC int
 nfsrvd_fsinfo(struct nfsrv_descript *nd, int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	struct nfsfsinfo fs;
 	int getret = 1;
 	struct nfsvattr at;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &at);
@@ -2207,12 +2218,13 @@ out:
  */
 APPLESTATIC int
 nfsrvd_pathconf(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	struct nfsv3_pathconf *pc;
 	int getret = 1;
 	long linkmax, namemax, chownres, notrunc;
 	struct nfsvattr at;
+	struct thread *p = curthread;
 
 	if (nd->nd_repstat) {
 		nfsrv_postopattr(nd, getret, &at);
@@ -2258,7 +2270,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_lock(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i;
@@ -2270,6 +2282,7 @@ nfsrvd_lock(struct nfsrv_descript *nd, __unused int is
 	u_int64_t offset, len;
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	NFSM_DISSECT(tl, u_int32_t *, 7 * NFSX_UNSIGNED);
 	i = fxdr_unsigned(int, *tl++);
@@ -2485,7 +2498,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_lockt(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i;
@@ -2496,6 +2509,7 @@ nfsrvd_lockt(struct nfsrv_descript *nd, __unused int i
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
 	u_int64_t len;
+	struct thread *p = curthread;
 
 	NFSM_DISSECT(tl, u_int32_t *, 8 * NFSX_UNSIGNED);
 	i = fxdr_unsigned(int, *(tl + 7));
@@ -2599,7 +2613,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_locku(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i;
@@ -2609,6 +2623,7 @@ nfsrvd_locku(struct nfsrv_descript *nd, __unused int i
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
 	u_int64_t len;
+	struct thread *p = curthread;
 
 	NFSM_DISSECT(tl, u_int32_t *, 6 * NFSX_UNSIGNED + NFSX_STATEID);
 	stp = malloc(sizeof (struct nfsstate),
@@ -2714,8 +2729,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_open(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t dp, vnode_t *vpp, __unused fhandle_t *fhp, NFSPROC_T *p,
-    struct nfsexstuff *exp)
+    vnode_t dp, vnode_t *vpp, __unused fhandle_t *fhp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i, retext;
@@ -2733,6 +2747,7 @@ nfsrvd_open(struct nfsrv_descript *nd, __unused int is
 	char *bufp = NULL;
 	u_long *hashp;
 	NFSACL_T *aclp = NULL;
+	struct thread *p = curthread;
 
 #ifdef NFS4_ACL_EXTATTR_NAME
 	aclp = acl_alloc(M_WAITOK);
@@ -3170,7 +3185,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_close(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	struct nfsstate st, *stp = &st;
@@ -3178,6 +3193,7 @@ nfsrvd_close(struct nfsrv_descript *nd, __unused int i
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
 	struct nfsvattr na;
+	struct thread *p = curthread;
 
 	NFSM_DISSECT(tl, u_int32_t *, NFSX_UNSIGNED + NFSX_STATEID);
 	stp->ls_seq = fxdr_unsigned(u_int32_t, *tl++);
@@ -3250,11 +3266,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_delegpurge(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -3286,13 +3303,14 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_delegreturn(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0, writeacc;
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
 	struct nfsvattr na;
+	struct thread *p = curthread;
 
 	NFSM_DISSECT(tl, u_int32_t *, NFSX_STATEID);
 	stateid.seqid = fxdr_unsigned(u_int32_t, *tl++);
@@ -3326,9 +3344,10 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_getfh(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	fhandle_t fh;
+	struct thread *p = curthread;
 
 	nd->nd_repstat = nfsvno_getfh(vp, &fh, p);
 	vput(vp);
@@ -3343,13 +3362,14 @@ nfsrvd_getfh(struct nfsrv_descript *nd, __unused int i
  */
 APPLESTATIC int
 nfsrvd_openconfirm(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	struct nfsstate st, *stp = &st;
 	int error = 0;
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	if ((nd->nd_flag & ND_NFSV41) != 0) {
 		nd->nd_repstat = NFSERR_NOTSUPP;
@@ -3396,7 +3416,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_opendowngrade(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i;
@@ -3404,6 +3424,7 @@ nfsrvd_opendowngrade(struct nfsrv_descript *nd, __unus
 	int error = 0;
 	nfsv4stateid_t stateid;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	/* opendowngrade can only work on a file object.*/
 	if (vp->v_type != VREG) {
@@ -3506,11 +3527,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_renew(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	if ((nd->nd_flag & ND_NFSV41) != 0) {
 		nd->nd_repstat = NFSERR_NOTSUPP;
@@ -3546,7 +3568,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_secinfo(struct nfsrv_descript *nd, int isdgram,
-    vnode_t dp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t dp, struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int len;
@@ -3558,6 +3580,7 @@ nfsrvd_secinfo(struct nfsrv_descript *nd, int isdgram,
 	int error = 0, savflag, i;
 	char *bufp;
 	u_long *hashp;
+	struct thread *p = curthread;
 
 	/*
 	 * All this just to get the export flags for the name.
@@ -3649,7 +3672,7 @@ out:
  */
 APPLESTATIC int
 nfsrvd_setclientid(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int i;
@@ -3658,6 +3681,7 @@ nfsrvd_setclientid(struct nfsrv_descript *nd, __unused
 	struct sockaddr_in *rad;
 	u_char *verf, *ucp, *ucp2, addrbuf[24];
 	nfsquad_t clientid, confirm;
+	struct thread *p = curthread;
 
 	if ((nd->nd_flag & ND_NFSV41) != 0) {
 		nd->nd_repstat = NFSERR_NOTSUPP;
@@ -3772,12 +3796,13 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_setclientidcfrm(struct nfsrv_descript *nd,
-    __unused int isdgram, __unused vnode_t vp, NFSPROC_T *p,
+    __unused int isdgram, __unused vnode_t vp,
     __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0;
 	nfsquad_t clientid, confirm;
+	struct thread *p = curthread;
 
 	if ((nd->nd_flag & ND_NFSV41) != 0) {
 		nd->nd_repstat = NFSERR_NOTSUPP;
@@ -3809,13 +3834,14 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_verify(struct nfsrv_descript *nd, int isdgram,
-    vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	int error = 0, ret, fhsize = NFSX_MYFH;
 	struct nfsvattr nva;
 	struct statfs *sf;
 	struct nfsfsinfo fs;
 	fhandle_t fh;
+	struct thread *p = curthread;
 
 	sf = malloc(sizeof(struct statfs), M_STATFS, M_WAITOK);
 	nd->nd_repstat = nfsvno_getattr(vp, &nva, nd, p, 1, NULL);
@@ -3849,7 +3875,7 @@ nfsrvd_verify(struct nfsrv_descript *nd, int isdgram,
 APPLESTATIC int
 nfsrvd_openattr(struct nfsrv_descript *nd, __unused int isdgram,
     vnode_t dp, __unused vnode_t *vpp, __unused fhandle_t *fhp,
-    __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	int error = 0, createdir __unused;
@@ -3868,12 +3894,13 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_releaselckown(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	u_int32_t *tl;
 	struct nfsstate *stp = NULL;
 	int error = 0, len;
 	nfsquad_t clientid;
+	struct thread *p = curthread;
 
 	if ((nd->nd_flag & ND_NFSV41) != 0) {
 		nd->nd_repstat = NFSERR_NOTSUPP;
@@ -3928,7 +3955,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_exchangeid(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	int error = 0, i, idlen;
@@ -3939,6 +3966,7 @@ nfsrvd_exchangeid(struct nfsrv_descript *nd, __unused 
 	uint64_t owner_minor;
 	struct timespec verstime;
 	struct sockaddr_in *sad, *rad;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4071,13 +4099,14 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_createsession(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	int error = 0;
 	nfsquad_t clientid, confirm;
 	struct nfsdsession *sep = NULL;
 	uint32_t rdmacnt;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4183,11 +4212,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_sequence(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	uint32_t highest_slotid, sequenceid, sflags, target_highest_slotid;
 	int cache_this, error = 0;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4226,7 +4256,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_reclaimcomplete(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	int error = 0, onefs;
@@ -4259,11 +4289,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_destroyclientid(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	nfsquad_t clientid;
 	int error = 0;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4283,7 +4314,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_bindconnsess(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	uint8_t sessid[NFSX_V4SESSIONID];
@@ -4322,7 +4353,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_destroysession(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint8_t *cp, sessid[NFSX_V4SESSIONID];
 	int error = 0;
@@ -4344,11 +4375,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_freestateid(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	nfsv4stateid_t stateid;
 	int error = 0;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4391,13 +4423,14 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_layoutget(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	nfsv4stateid_t stateid;
 	int error = 0, layoutlen, layouttype, iomode, maxcnt, retonclose;
 	uint64_t offset, len, minlen;
 	char *layp;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4488,7 +4521,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_layoutcommit(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	nfsv4stateid_t stateid;
@@ -4497,6 +4530,7 @@ nfsrvd_layoutcommit(struct nfsrv_descript *nd, __unuse
 	uint64_t offset, len, newoff, newsize;
 	struct timespec newmtime;
 	char *layp;
+	struct thread *p = curthread;
 
 	layp = NULL;
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
@@ -4573,12 +4607,13 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_layoutreturn(struct nfsrv_descript *nd, __unused int isdgram,
-    vnode_t vp, NFSPROC_T *p, struct nfsexstuff *exp)
+    vnode_t vp, struct nfsexstuff *exp)
 {
 	uint32_t *tl, *layp;
 	nfsv4stateid_t stateid;
 	int error = 0, fnd, kind, layouttype, iomode, maxcnt, reclaim;
 	uint64_t offset, len;
+	struct thread *p = curthread;
 
 	layp = NULL;
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
@@ -4658,7 +4693,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_getdevinfo(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl, maxcnt, notify[NFSV4_NOTIFYBITMAP];
 	int cnt, devaddrlen, error = 0, i, layouttype;
@@ -4730,11 +4765,12 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_teststateid(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 	uint32_t *tl;
 	nfsv4stateid_t *stateidp = NULL, *tstateidp;
 	int cnt, error = 0, i, ret;
+	struct thread *p = curthread;
 
 	if (nfs_rootfhset == 0 || nfsd_checkrootexp(nd) != 0) {
 		nd->nd_repstat = NFSERR_WRONGSEC;
@@ -4774,7 +4810,7 @@ nfsmout:
  */
 APPLESTATIC int
 nfsrvd_notsupp(struct nfsrv_descript *nd, __unused int isdgram,
-    __unused vnode_t vp, __unused NFSPROC_T *p, __unused struct nfsexstuff *exp)
+    __unused vnode_t vp, __unused struct nfsexstuff *exp)
 {
 
 	nd->nd_repstat = NFSERR_NOTSUPP;

Modified: head/sys/fs/nfsserver/nfs_nfsdsocket.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:02:36 2019	(r344758)
+++ head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:12:23 2019	(r344759)
@@ -58,23 +58,23 @@ NFSV4ROOTLOCKMUTEX;
 NFSSTATESPINLOCK;
 
 int (*nfsrv3_procs0[NFS_V3NPROCS])(struct nfsrv_descript *,
-    int, vnode_t , NFSPROC_T *, struct nfsexstuff *) = {
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
+    int, vnode_t , struct nfsexstuff *) = {
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
 	nfsrvd_getattr,
 	nfsrvd_setattr,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
 	nfsrvd_access,
 	nfsrvd_readlink,
 	nfsrvd_read,
 	nfsrvd_write,
 	nfsrvd_create,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
 	nfsrvd_remove,
 	nfsrvd_remove,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , NFSPROC_T *, struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
+	(int (*)(struct nfsrv_descript *, int, vnode_t , struct nfsexstuff *))0,
 	nfsrvd_readdir,
 	nfsrvd_readdirplus,
 	nfsrvd_statfs,
@@ -84,94 +84,92 @@ int (*nfsrv3_procs0[NFS_V3NPROCS])(struct nfsrv_descri
 };
 
 int (*nfsrv3_procs1[NFS_V3NPROCS])(struct nfsrv_descript *,
-    int, vnode_t , vnode_t *, fhandle_t *,
-    NFSPROC_T *, struct nfsexstuff *) = {
-	(int (*)(struct nfsrv_descript *, int, vnode_t , vnode_t *, fhandle_t *, NFSPROC_T *, struct nfsexstuff *))0,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , vnode_t *, fhandle_t *, NFSPROC_T *, struct nfsexstuff *))0,
-	(int (*)(struct nfsrv_descript *, int, vnode_t , vnode_t *, fhandle_t *, NFSPROC_T *, struct nfsexstuff *))0,
+    int, vnode_t , vnode_t *, fhandle_t *, struct nfsexstuff *) = {
+	(int (*)(struct nfsrv_descript *, int, vnode_t , vnode_t *, fhandle_t *, struct nfsexstuff *))0,

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Mon Mar  4 13:18:05 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8DCE215113FE;
 Mon,  4 Mar 2019 13:18:05 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2E79D6A6B4;
 Mon,  4 Mar 2019 13:18:05 +0000 (UTC)
 (envelope-from trasz@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 1FC234994;
 Mon,  4 Mar 2019 13:18:05 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24DI4Xw000882;
 Mon, 4 Mar 2019 13:18:04 GMT (envelope-from trasz@FreeBSD.org)
Received: (from trasz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24DI4Vo000877;
 Mon, 4 Mar 2019 13:18:04 GMT (envelope-from trasz@FreeBSD.org)
Message-Id: <201903041318.x24DI4Vo000877@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: trasz set sender to
 trasz@FreeBSD.org using -f
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Date: Mon, 4 Mar 2019 13:18:04 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344760 - in head/sys/fs: nfs nfsserver
X-SVN-Group: head
X-SVN-Commit-Author: trasz
X-SVN-Commit-Paths: in head/sys/fs: nfs nfsserver
X-SVN-Commit-Revision: 344760
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2E79D6A6B4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.978,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 13:18:05 -0000

Author: trasz
Date: Mon Mar  4 13:18:04 2019
New Revision: 344760
URL: https://svnweb.freebsd.org/changeset/base/344760

Log:
  Don't pass td to nfsd_fhtovp(), it's unused.
  
  Reviewed by:	rmacklem (earlier version)
  MFC after:	2 weeks
  Sponsored by:	DARPA, AFRL
  Differential Revision:	https://reviews.freebsd.org/D19421

Modified:
  head/sys/fs/nfs/nfs_var.h
  head/sys/fs/nfsserver/nfs_nfsdport.c
  head/sys/fs/nfsserver/nfs_nfsdserv.c
  head/sys/fs/nfsserver/nfs_nfsdsocket.c

Modified: head/sys/fs/nfs/nfs_var.h
==============================================================================
--- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:12:23 2019	(r344759)
+++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:18:04 2019	(r344760)
@@ -358,8 +358,7 @@ int nfscl_request(struct nfsrv_descript *, vnode_t,
 
 /* nfs_nfsdsubs.c */
 void nfsd_fhtovp(struct nfsrv_descript *, struct nfsrvfh *, int,
-    vnode_t *, struct nfsexstuff *,
-    mount_t *, int, NFSPROC_T *);
+    vnode_t *, struct nfsexstuff *, mount_t *, int);
 int nfsd_excred(struct nfsrv_descript *, struct nfsexstuff *, struct ucred *);
 int nfsrv_mtofh(struct nfsrv_descript *, struct nfsrvfh *);
 int nfsrv_putattrbit(struct nfsrv_descript *, nfsattrbit_t *);

Modified: head/sys/fs/nfsserver/nfs_nfsdport.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 13:12:23 2019	(r344759)
+++ head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 13:18:04 2019	(r344760)
@@ -3041,7 +3041,7 @@ nfsvno_fhtovp(struct mount *mp, fhandle_t *fhp, struct
 void
 nfsd_fhtovp(struct nfsrv_descript *nd, struct nfsrvfh *nfp, int lktype,
     struct vnode **vpp, struct nfsexstuff *exp,
-    struct mount **mpp, int startwrite, struct thread *p)
+    struct mount **mpp, int startwrite)
 {
 	struct mount *mp;
 	struct ucred *credanon;

Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 13:12:23 2019	(r344759)
+++ head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 13:18:04 2019	(r344760)
@@ -1609,7 +1609,7 @@ nfsrvd_rename(struct nfsrv_descript *nd, int isdgram,
 			NFSVOPUNLOCK(dp, 0);
 			nd->nd_cred->cr_uid = nd->nd_saveduid;
 			nfsd_fhtovp(nd, &tfh, LK_EXCLUSIVE, &tdp, &tnes, NULL,
-			    0, p);	/* Locks tdp. */
+			    0);	/* Locks tdp. */
 			if (tdp) {
 				tdirfor_ret = nfsvno_getattr(tdp, &tdirfor, nd,
 				    p, 1, NULL);
@@ -1740,8 +1740,7 @@ nfsrvd_link(struct nfsrv_descript *nd, int isdgram,
 				/* tovp is always NULL unless NFSv4 */
 				goto out;
 			}
-			nfsd_fhtovp(nd, &dfh, LK_EXCLUSIVE, &dp, &tnes, NULL, 0,
-			    p);
+			nfsd_fhtovp(nd, &dfh, LK_EXCLUSIVE, &dp, &tnes, NULL, 0);
 			if (dp)
 				NFSVOPUNLOCK(dp, 0);
 		}
@@ -3612,7 +3611,7 @@ nfsrvd_secinfo(struct nfsrv_descript *nd, int isdgram,
 	vput(vp);
 	savflag = nd->nd_flag;
 	if (!nd->nd_repstat) {
-		nfsd_fhtovp(nd, &fh, LK_SHARED, &vp, &retnes, NULL, 0, p);
+		nfsd_fhtovp(nd, &fh, LK_SHARED, &vp, &retnes, NULL, 0);
 		if (vp)
 			vput(vp);
 	}

Modified: head/sys/fs/nfsserver/nfs_nfsdsocket.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:12:23 2019	(r344759)
+++ head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:18:04 2019	(r344760)
@@ -478,10 +478,7 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u
 	mount_t mp = NULL;
 	struct nfsrvfh fh;
 	struct nfsexstuff nes;
-	struct thread *p;
 
-	p = curthread;
-
 	/*
 	 * Get a locked vnode for the first file handle
 	 */
@@ -516,10 +513,10 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u
 				lktype = LK_EXCLUSIVE;
 			if (nd->nd_flag & ND_PUBLOOKUP)
 				nfsd_fhtovp(nd, &nfs_pubfh, lktype, &vp, &nes,
-				    &mp, nfsrv_writerpc[nd->nd_procnum], p);
+				    &mp, nfsrv_writerpc[nd->nd_procnum]);
 			else
 				nfsd_fhtovp(nd, &fh, lktype, &vp, &nes,
-				    &mp, nfsrv_writerpc[nd->nd_procnum], p);
+				    &mp, nfsrv_writerpc[nd->nd_procnum]);
 			if (nd->nd_repstat == NFSERR_PROGNOTV4)
 				goto out;
 		}
@@ -865,7 +862,7 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram
 				goto nfsmout;
 			if (!nd->nd_repstat)
 				nfsd_fhtovp(nd, &fh, LK_SHARED, &nvp, &nes,
-				    NULL, 0, p);
+				    NULL, 0);
 			/* For now, allow this for non-export FHs */
 			if (!nd->nd_repstat) {
 				if (vp)
@@ -879,7 +876,7 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram
 		case NFSV4OP_PUTPUBFH:
 			if (nfs_pubfhset)
 			    nfsd_fhtovp(nd, &nfs_pubfh, LK_SHARED, &nvp,
-				&nes, NULL, 0, p);
+				&nes, NULL, 0);
 			else
 			    nd->nd_repstat = NFSERR_NOFILEHANDLE;
 			if (!nd->nd_repstat) {
@@ -894,7 +891,7 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram
 		case NFSV4OP_PUTROOTFH:
 			if (nfs_rootfhset) {
 				nfsd_fhtovp(nd, &nfs_rootfh, LK_SHARED, &nvp,
-				    &nes, NULL, 0, p);
+				    &nes, NULL, 0);
 				if (!nd->nd_repstat) {
 					if (vp)
 						vrele(vp);

From owner-svn-src-all@freebsd.org  Mon Mar  4 13:20:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 54185151158D;
 Mon,  4 Mar 2019 13:20:30 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1])
 (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 8458C6A943;
 Mon,  4 Mar 2019 13:20:29 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from tom.home (kib@localhost [127.0.0.1])
 by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x24DKMn2026407
 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO);
 Mon, 4 Mar 2019 15:20:25 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x24DKMn2026407
Received: (from kostik@localhost)
 by tom.home (8.15.2/8.15.2/Submit) id x24DKLQf026403;
 Mon, 4 Mar 2019 15:20:21 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com
 using -f
Date: Mon, 4 Mar 2019 15:20:21 +0200
From: Konstantin Belousov <kostikbel@gmail.com>
To: Edward Tomasz Napierala <trasz@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
Message-ID: <20190304132021.GN68879@kib.kiev.ua>
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <201903041302.x24D2aG0093620@repo.freebsd.org>
User-Agent: Mutt/1.11.3 (2019-02-01)
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00,
 DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM,
 NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 13:20:30 -0000

On Mon, Mar 04, 2019 at 01:02:36PM +0000, Edward Tomasz Napierala wrote:
> Author: trasz
> Date: Mon Mar  4 13:02:36 2019
> New Revision: 344758
> URL: https://svnweb.freebsd.org/changeset/base/344758
> 
> Log:
>   Push down td in nfsrvd_dorpc() - make it use curthread instead
>   of it being explicitly passed as an argument. No functional changes.
>   
>   The big picture here is that I want to get rid of the 'td' argument
>   being passed everywhere, and this is the first piece that affects
>   the NFS server.
>   
>   Reviewed by:	rmacklem
>   MFC after:	2 weeks
>   Sponsored by:	DARPA, AFRL
>   Differential Revision:	https://reviews.freebsd.org/D19417
> 
> Modified:
>   head/sys/fs/nfs/nfs_var.h
>   head/sys/fs/nfsserver/nfs_nfsdkrpc.c
>   head/sys/fs/nfsserver/nfs_nfsdsocket.c
> 
> Modified: head/sys/fs/nfs/nfs_var.h
> ==============================================================================
> --- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 11:33:49 2019	(r344757)
> +++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 13:02:36 2019	(r344758)
> @@ -283,8 +283,7 @@ int nfsrvd_notsupp(struct nfsrv_descript *, int,
>  
>  /* nfs_nfsdsocket.c */
>  void nfsrvd_rephead(struct nfsrv_descript *);
> -void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32_t,
> -    NFSPROC_T *);
> +void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32_t);
>  
>  /* nfs_nfsdcache.c */
>  void nfsrvd_initcache(void);
> 
> Modified: head/sys/fs/nfsserver/nfs_nfsdkrpc.c
> ==============================================================================
> --- head/sys/fs/nfsserver/nfs_nfsdkrpc.c	Mon Mar  4 11:33:49 2019	(r344757)
> +++ head/sys/fs/nfsserver/nfs_nfsdkrpc.c	Mon Mar  4 13:02:36 2019	(r344758)
> @@ -323,7 +323,6 @@ static int
>  nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVCXPRT *xprt,
>      struct nfsrvcache **rpp)
>  {
> -	struct thread *td = curthread;
>  	int cacherep = RC_DOIT, isdgram, taglen = -1;
>  	struct mbuf *m;
>  	u_char tag[NFSV4_SMALLSTR + 1], *tagstr = NULL;
> @@ -384,7 +383,7 @@ nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVC
>  	if (cacherep == RC_DOIT) {
>  		if ((nd->nd_flag & ND_NFSV41) != 0)
>  			nd->nd_xprt = xprt;
> -		nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers, td);
> +		nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers);
>  		if ((nd->nd_flag & ND_NFSV41) != 0) {
>  			if (nd->nd_repstat != NFSERR_REPLYFROMCACHE &&
>  			    (nd->nd_flag & ND_SAVEREPLY) != 0) {
> 
> Modified: head/sys/fs/nfsserver/nfs_nfsdsocket.c
> ==============================================================================
> --- head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 11:33:49 2019	(r344757)
> +++ head/sys/fs/nfsserver/nfs_nfsdsocket.c	Mon Mar  4 13:02:36 2019	(r344758)
> @@ -367,7 +367,7 @@ int nfsrv_writerpc[NFS_NPROCS] = { 0, 0, 1, 0, 0, 0, 0
>  
>  /* local functions */
>  static void nfsrvd_compound(struct nfsrv_descript *nd, int isdgram,
> -    u_char *tag, int taglen, u_int32_t minorvers, NFSPROC_T *p);
> +    u_char *tag, int taglen, u_int32_t minorvers);
>  
>  
>  /*
> @@ -475,14 +475,17 @@ nfsrvd_statend(int op, uint64_t bytes, struct bintime 
>   */
>  APPLESTATIC void
>  nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u_char *tag, int taglen,
> -    u_int32_t minorvers, NFSPROC_T *p)
> +    u_int32_t minorvers)
>  {
>  	int error = 0, lktype;
>  	vnode_t vp;
>  	mount_t mp = NULL;
>  	struct nfsrvfh fh;
>  	struct nfsexstuff nes;
> +	struct thread *p;
>  
> +	p = curthread;
> +
>  	/*
>  	 * Get a locked vnode for the first file handle
>  	 */
> @@ -557,7 +560,7 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u
>  	 * The group is indicated by the value in nfs_retfh[].
>  	 */
>  	if (nd->nd_flag & ND_NFSV4) {
> -		nfsrvd_compound(nd, isdgram, tag, taglen, minorvers, p);
> +		nfsrvd_compound(nd, isdgram, tag, taglen, minorvers);
>  	} else {
>  		struct bintime start_time;
>  
> @@ -620,7 +623,7 @@ out:
>   */
>  static void
>  nfsrvd_compound(struct nfsrv_descript *nd, int isdgram, u_char *tag,
> -    int taglen, u_int32_t minorvers, NFSPROC_T *p)
> +    int taglen, u_int32_t minorvers)
>  {
>  	int i, lktype, op, op0 = 0, statsinprog = 0;
>  	u_int32_t *tl;
> @@ -635,6 +638,9 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdgram
>  	fsid_t cur_fsid, save_fsid;
>  	static u_int64_t compref = 0;
>  	struct bintime start_time;
> +	struct thread *p;
> +
> +	p = curthread;
Why do you name it 'p', which is typical for process, and not 'td', you are
changing most of the code anyway.

Also I am curious why. It is certainly fine to remove td when it is used
as a formal placeholder argument only. But when the first action in the
function is evaluation of curthread() it becomes less obvious.

curthread() become very cheap on modern amd64, I am not so sure about
older machines or non-x86 cases.

>  
>  	NFSVNO_EXINIT(&vpnes);
>  	NFSVNO_EXINIT(&savevpnes);

From owner-svn-src-all@freebsd.org  Mon Mar  4 14:01:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F187615127AC;
 Mon,  4 Mar 2019 14:01:37 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: from mail-oi1-f196.google.com (mail-oi1-f196.google.com
 [209.85.167.196])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 946D46C021;
 Mon,  4 Mar 2019 14:01:37 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: by mail-oi1-f196.google.com with SMTP id z14so3902578oid.0;
 Mon, 04 Mar 2019 06:01:37 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc:content-transfer-encoding;
 bh=JrmA+6FqOlXDsqqZR15yvYTw9axKiuKUF5hFxDHiqKg=;
 b=av3+ZfvOxSoQKfggHIGXnnte32dVofewkXx0/LFFI11oaFAmdBynh6AHgDwK9KhE0n
 xHI5nb2NIZqMDlxxUAXoi5b+xonfPTjuq/119T1UslCt4gE2BO9HmHbWzVquPpYngtgX
 dpfMGADmbv2T1OdR0+YCe0FvhN1T7a2H6XSkrRzDejbgDtJLSfhJH+kGti7F8dxfQsZb
 zFBBO87e6BJtI/UT0G0jMeU1lkCflAwFe+1frf3yMtBac6FG5xwTGPrdbGJt52rDXYxQ
 ckDIRub5Klvsv67h5W1iTAr+59vZMOu9m6noShQhb3+9aq0rPmpMpoDfoJlwGua90Tqp
 QRdg==
X-Gm-Message-State: AHQUAuZCjakQjUv1lXjg0ZoZ0k0lLysOYtWpOqPqJEQoSVYk8x2r2qrX
 8xQwjEVWnnRZcDk7EsIgdNpFodgGD9wKTuyFMXaB0Q==
X-Google-Smtp-Source: APXvYqwhTaDCzsuLDGVKqkEg2q/hCpyZG5dO5iHSNkBXSumIjcIcoHTAxKHwEjFAyJ2ztlcQzWqiwsOxItCt1I8CNHw=
X-Received: by 2002:aca:5652:: with SMTP id k79mr12079646oib.19.1551706308446; 
 Mon, 04 Mar 2019 05:31:48 -0800 (PST)
MIME-Version: 1.0
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
 <20190304132021.GN68879@kib.kiev.ua>
In-Reply-To: <20190304132021.GN68879@kib.kiev.ua>
From: Edward Napierala <trasz@freebsd.org>
Date: Mon, 4 Mar 2019 13:31:37 +0000
Message-ID: <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, 
 svn-src-head@freebsd.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Rspamd-Queue-Id: 946D46C021
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.97 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 14:01:38 -0000

pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com> napisa=
=C5=82(a):
>
> On Mon, Mar 04, 2019 at 01:02:36PM +0000, Edward Tomasz Napierala wrote:
> > Author: trasz
> > Date: Mon Mar  4 13:02:36 2019
> > New Revision: 344758
> > URL: https://svnweb.freebsd.org/changeset/base/344758
> >
> > Log:
> >   Push down td in nfsrvd_dorpc() - make it use curthread instead
> >   of it being explicitly passed as an argument. No functional changes.
> >
> >   The big picture here is that I want to get rid of the 'td' argument
> >   being passed everywhere, and this is the first piece that affects
> >   the NFS server.
> >
> >   Reviewed by:        rmacklem
> >   MFC after:  2 weeks
> >   Sponsored by:       DARPA, AFRL
> >   Differential Revision:      https://reviews.freebsd.org/D19417
> >
> > Modified:
> >   head/sys/fs/nfs/nfs_var.h
> >   head/sys/fs/nfsserver/nfs_nfsdkrpc.c
> >   head/sys/fs/nfsserver/nfs_nfsdsocket.c
> >
> > Modified: head/sys/fs/nfs/nfs_var.h
> > =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
> > --- head/sys/fs/nfs/nfs_var.h Mon Mar  4 11:33:49 2019        (r344757)
> > +++ head/sys/fs/nfs/nfs_var.h Mon Mar  4 13:02:36 2019        (r344758)
> > @@ -283,8 +283,7 @@ int nfsrvd_notsupp(struct nfsrv_descript *, int,
> >
> >  /* nfs_nfsdsocket.c */
> >  void nfsrvd_rephead(struct nfsrv_descript *);
> > -void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32=
_t,
> > -    NFSPROC_T *);
> > +void nfsrvd_dorpc(struct nfsrv_descript *, int, u_char *, int, u_int32=
_t);
> >
> >  /* nfs_nfsdcache.c */
> >  void nfsrvd_initcache(void);
> >
> > Modified: head/sys/fs/nfsserver/nfs_nfsdkrpc.c
> > =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
> > --- head/sys/fs/nfsserver/nfs_nfsdkrpc.c      Mon Mar  4 11:33:49 2019 =
       (r344757)
> > +++ head/sys/fs/nfsserver/nfs_nfsdkrpc.c      Mon Mar  4 13:02:36 2019 =
       (r344758)
> > @@ -323,7 +323,6 @@ static int
> >  nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, SVCXPRT *xprt,
> >      struct nfsrvcache **rpp)
> >  {
> > -     struct thread *td =3D curthread;
> >       int cacherep =3D RC_DOIT, isdgram, taglen =3D -1;
> >       struct mbuf *m;
> >       u_char tag[NFSV4_SMALLSTR + 1], *tagstr =3D NULL;
> > @@ -384,7 +383,7 @@ nfs_proc(struct nfsrv_descript *nd, u_int32_t xid, =
SVC
> >       if (cacherep =3D=3D RC_DOIT) {
> >               if ((nd->nd_flag & ND_NFSV41) !=3D 0)
> >                       nd->nd_xprt =3D xprt;
> > -             nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers, td);
> > +             nfsrvd_dorpc(nd, isdgram, tagstr, taglen, minorvers);
> >               if ((nd->nd_flag & ND_NFSV41) !=3D 0) {
> >                       if (nd->nd_repstat !=3D NFSERR_REPLYFROMCACHE &&
> >                           (nd->nd_flag & ND_SAVEREPLY) !=3D 0) {
> >
> > Modified: head/sys/fs/nfsserver/nfs_nfsdsocket.c
> > =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
> > --- head/sys/fs/nfsserver/nfs_nfsdsocket.c    Mon Mar  4 11:33:49 2019 =
       (r344757)
> > +++ head/sys/fs/nfsserver/nfs_nfsdsocket.c    Mon Mar  4 13:02:36 2019 =
       (r344758)
> > @@ -367,7 +367,7 @@ int nfsrv_writerpc[NFS_NPROCS] =3D { 0, 0, 1, 0, 0,=
 0, 0
> >
> >  /* local functions */
> >  static void nfsrvd_compound(struct nfsrv_descript *nd, int isdgram,
> > -    u_char *tag, int taglen, u_int32_t minorvers, NFSPROC_T *p);
> > +    u_char *tag, int taglen, u_int32_t minorvers);
> >
> >
> >  /*
> > @@ -475,14 +475,17 @@ nfsrvd_statend(int op, uint64_t bytes, struct bin=
time
> >   */
> >  APPLESTATIC void
> >  nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram, u_char *tag, int =
taglen,
> > -    u_int32_t minorvers, NFSPROC_T *p)
> > +    u_int32_t minorvers)
> >  {
> >       int error =3D 0, lktype;
> >       vnode_t vp;
> >       mount_t mp =3D NULL;
> >       struct nfsrvfh fh;
> >       struct nfsexstuff nes;
> > +     struct thread *p;
> >
> > +     p =3D curthread;
> > +
> >       /*
> >        * Get a locked vnode for the first file handle
> >        */
> > @@ -557,7 +560,7 @@ nfsrvd_dorpc(struct nfsrv_descript *nd, int isdgram=
, u
> >        * The group is indicated by the value in nfs_retfh[].
> >        */
> >       if (nd->nd_flag & ND_NFSV4) {
> > -             nfsrvd_compound(nd, isdgram, tag, taglen, minorvers, p);
> > +             nfsrvd_compound(nd, isdgram, tag, taglen, minorvers);
> >       } else {
> >               struct bintime start_time;
> >
> > @@ -620,7 +623,7 @@ out:
> >   */
> >  static void
> >  nfsrvd_compound(struct nfsrv_descript *nd, int isdgram, u_char *tag,
> > -    int taglen, u_int32_t minorvers, NFSPROC_T *p)
> > +    int taglen, u_int32_t minorvers)
> >  {
> >       int i, lktype, op, op0 =3D 0, statsinprog =3D 0;
> >       u_int32_t *tl;
> > @@ -635,6 +638,9 @@ nfsrvd_compound(struct nfsrv_descript *nd, int isdg=
ram
> >       fsid_t cur_fsid, save_fsid;
> >       static u_int64_t compref =3D 0;
> >       struct bintime start_time;
> > +     struct thread *p;
> > +
> > +     p =3D curthread;
> Why do you name it 'p', which is typical for process, and not 'td', you a=
re
> changing most of the code anyway.

To keep the diff size smaller.  You're right, this touches a lot of stuff,
but most of those added lines are temporary anyway - they will be
removed later, when the td is pushed down even more.

> Also I am curious why. It is certainly fine to remove td when it is used
> as a formal placeholder argument only. But when the first action in the
> function is evaluation of curthread() it becomes less obvious.

Again, many/most of those are temporary.  I'm trying to push td down
in small steps, "layer by layer", so it's easy to review.

> curthread() become very cheap on modern amd64, I am not so sure about
> older machines or non-x86 cases.

The main reason is readability.  Right now there's no easy way to tell whet=
her
a function can be passed any td, or if it must be curthread.

From owner-svn-src-all@freebsd.org  Mon Mar  4 14:30:33 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5FB3A1513422;
 Mon,  4 Mar 2019 14:30:33 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1])
 (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 84AE46CBD1;
 Mon,  4 Mar 2019 14:30:32 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from tom.home (kib@localhost [127.0.0.1])
 by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x24EULwP043485
 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO);
 Mon, 4 Mar 2019 16:30:24 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x24EULwP043485
Received: (from kostik@localhost)
 by tom.home (8.15.2/8.15.2/Submit) id x24EULJ9043483;
 Mon, 4 Mar 2019 16:30:21 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com
 using -f
Date: Mon, 4 Mar 2019 16:30:21 +0200
From: Konstantin Belousov <kostikbel@gmail.com>
To: Edward Napierala <trasz@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
Message-ID: <20190304143021.GO68879@kib.kiev.ua>
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
 <20190304132021.GN68879@kib.kiev.ua>
 <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
User-Agent: Mutt/1.11.3 (2019-02-01)
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00,
 DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM,
 NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 14:30:33 -0000

On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
> pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com> napisał(a):
> > > +     p = curthread;
> > Why do you name it 'p', which is typical for process, and not 'td', you are
> > changing most of the code anyway.
> 
> To keep the diff size smaller.  You're right, this touches a lot of stuff,
> but most of those added lines are temporary anyway - they will be
> removed later, when the td is pushed down even more.
But if you create code churn, doing it only half way is worse.

> 
> > Also I am curious why. It is certainly fine to remove td when it is used
> > as a formal placeholder argument only. But when the first action in the
> > function is evaluation of curthread() it becomes less obvious.
> 
> Again, many/most of those are temporary.  I'm trying to push td down
> in small steps, "layer by layer", so it's easy to review.
> 
> > curthread() become very cheap on modern amd64, I am not so sure about
> > older machines or non-x86 cases.
> 
> The main reason is readability.  Right now there's no easy way to tell whether
> a function can be passed any td, or if it must be curthread.
I must admit that this is the weirdnest argument against 'td' that I ever
heard.  I saw more or less reasonable argumentation
- that using less arguments make one more register for argument passing
  (amd64 has 6 input arg regs),
- that less arguments make smaller call code.
But trust me, in all cases where function can take td != curthread, it is
either obvious or well-known for anybody who works with that code.

Before you start doing a lot of small changes (AKA continous churn)
please formulate your goals and get some public feedback.  My immediate
question that I want answered before you ever start touching the code,
is what you plan to do with
	sys_syscall(struct thread *td, uap)


From owner-svn-src-all@freebsd.org  Mon Mar  4 14:30:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E52881513443;
 Mon,  4 Mar 2019 14:30:40 +0000 (UTC) (envelope-from ken@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 896446CC59;
 Mon,  4 Mar 2019 14:30:40 +0000 (UTC) (envelope-from ken@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 84B175553;
 Mon,  4 Mar 2019 14:30:38 +0000 (UTC) (envelope-from ken@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24EUcxe045594;
 Mon, 4 Mar 2019 14:30:38 GMT (envelope-from ken@FreeBSD.org)
Received: (from ken@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24EUcPP045592;
 Mon, 4 Mar 2019 14:30:38 GMT (envelope-from ken@FreeBSD.org)
Message-Id: <201903041430.x24EUcPP045592@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ken set sender to ken@FreeBSD.org
 using -f
From: "Kenneth D. Merry" <ken@FreeBSD.org>
Date: Mon, 4 Mar 2019 14:30:38 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344761 - in head: lib/libmt usr.bin/mt
X-SVN-Group: head
X-SVN-Commit-Author: ken
X-SVN-Commit-Paths: in head: lib/libmt usr.bin/mt
X-SVN-Commit-Revision: 344761
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 896446CC59
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 14:30:41 -0000

Author: ken
Date: Mon Mar  4 14:30:37 2019
New Revision: 344761
URL: https://svnweb.freebsd.org/changeset/base/344761

Log:
  Add IBM TS1160 density codes to libmt and the mt(1) man page.
  
  These are taken directly from the density report from a TS1160
  tape drive.  (Using mt getdensity)
  
  A TS1160 drive stores 20TB raw (60TB with compression) on a JE tape.
  
  lib/libmt/mtlib.c:
  	Add 3592A6 encrypted/unencrypted density codes, and bpmm/bpi
  	values.
  
  usr.bin/mt/mt.1:
  	Add 3592B5 encrypted/unencrypted density codes, bpmm/bpi
  	values and number of tracks.  Bump the man page date.
  
  MFC after:	3 days
  Sponsored by:	Spectra Logic

Modified:
  head/lib/libmt/mtlib.c
  head/usr.bin/mt/mt.1

Modified: head/lib/libmt/mtlib.c
==============================================================================
--- head/lib/libmt/mtlib.c	Mon Mar  4 13:18:04 2019	(r344760)
+++ head/lib/libmt/mtlib.c	Mon Mar  4 14:30:37 2019	(r344761)
@@ -642,6 +642,7 @@ static struct densities {
 	{ 0x54, 19686,  500024, "3592A4 (unencrypted)" },
 	{ 0x55, 20670,  525018, "3592A5 (unencrypted)" },
 	{ 0x56, 20670,  525018, "3592B5 (unencrypted)" },
+	{ 0x57, 21850,  554990, "3592A6 (unencrypted)" },
 	{ 0x58, 15142,  384607, "LTO-5" },
 	{ 0x5A, 15142,  384607, "LTO-6" },
 	{ 0x5C, 19107,  485318, "LTO-7" },
@@ -653,6 +654,7 @@ static struct densities {
 	{ 0x74, 19686,  500024, "3592A4 (encrypted)" },
 	{ 0x75, 20670,  525018, "3592A5 (encrypted)" },
 	{ 0x76, 20670,  525018, "3592B5 (encrypted)" },
+	{ 0x77, 21850,  554990, "3592A6 (encrypted)" },
 	{ 0x8c,  1789,   45434, "EXB-8500c" },
 	{ 0x90,  1703,   43245, "EXB-8200c" },
 	{ 0, 0, 0, NULL }

Modified: head/usr.bin/mt/mt.1
==============================================================================
--- head/usr.bin/mt/mt.1	Mon Mar  4 13:18:04 2019	(r344760)
+++ head/usr.bin/mt/mt.1	Mon Mar  4 14:30:37 2019	(r344761)
@@ -29,7 +29,7 @@
 .\"	@(#)mt.1	8.1 (Berkeley) 6/6/93
 .\" $FreeBSD$
 .\"
-.Dd November 3, 2017
+.Dd March 4, 2019
 .Dt MT 1
 .Os
 .Sh NAME
@@ -519,6 +519,7 @@ Value  Width        Tracks    Density         Code Typ
 0x54   12.7  (0.5) 2560      19,686 (500,024)       C   3592A4 (unencrypted)
 0x55   12.7  (0.5) 5120      20,670 (525,018)       C   3592A5 (unencrypted)
 0x56   12.7  (0.5) 7680      20,670 (525,018)       C   3592B5 (unencrypted)
+0x57   12.7  (0.5) 8704      21,850 (554,990)       C   3592A6 (unencrypted)
 0x58   12.7  (0.5) 1280      15,142 (384,607)       C   LTO-5
 0x5A   12.7  (0.5) 2176      15,142 (384,607)       C   LTO-6
 0x5C   12.7  (0.5) 3584      19,107 (485,318)       C   LTO-7
@@ -530,6 +531,7 @@ Value  Width        Tracks    Density         Code Typ
 0x74   12.7  (0.5) 2560      19,686 (500,024)       C   3592A4 (encrypted)
 0x75   12.7  (0.5) 5120      20,670 (525,018)       C   3592A5 (encrypted)
 0x76   12.7  (0.5) 7680      20,670 (525,018)       C   3592B5 (encrypted)
+0x77   12.7  (0.5) 8704      21,850 (554,990)       C   3592A6 (encrypted)
 0x8c    8.0  (0.315)  1      1,789  (45,434)  RLL   CS  EXB-8500c    5,9
 0x90    8.0  (0.315)  1      1,703  (43,245)  RLL   CS  EXB-8200c    5,9
 .Ed

From owner-svn-src-all@freebsd.org  Mon Mar  4 14:30:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6D06151347A;
 Mon,  4 Mar 2019 14:30:57 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 666956CE38;
 Mon,  4 Mar 2019 14:30:57 +0000 (UTC)
 (envelope-from trasz@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 C97C2566D;
 Mon,  4 Mar 2019 14:30:54 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24EUseM045685;
 Mon, 4 Mar 2019 14:30:54 GMT (envelope-from trasz@FreeBSD.org)
Received: (from trasz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24EUsrZ045681;
 Mon, 4 Mar 2019 14:30:54 GMT (envelope-from trasz@FreeBSD.org)
Message-Id: <201903041430.x24EUsrZ045681@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: trasz set sender to
 trasz@FreeBSD.org using -f
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Date: Mon, 4 Mar 2019 14:30:54 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344762 - in head/sys/fs: nfs nfsserver
X-SVN-Group: head
X-SVN-Commit-Author: trasz
X-SVN-Commit-Paths: in head/sys/fs: nfs nfsserver
X-SVN-Commit-Revision: 344762
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 666956CE38
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.950,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 14:30:58 -0000

Author: trasz
Date: Mon Mar  4 14:30:53 2019
New Revision: 344762
URL: https://svnweb.freebsd.org/changeset/base/344762

Log:
  Don't pass td to nfsvno_createsub().
  
  MFC after:	2 weeks
  Sponsored by:	DARPA, AFRL

Modified:
  head/sys/fs/nfs/nfs_var.h
  head/sys/fs/nfsserver/nfs_nfsdport.c
  head/sys/fs/nfsserver/nfs_nfsdserv.c

Modified: head/sys/fs/nfs/nfs_var.h
==============================================================================
--- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 14:30:37 2019	(r344761)
+++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 14:30:53 2019	(r344762)
@@ -649,7 +649,7 @@ int nfsvno_read(vnode_t, off_t, int, struct ucred *, N
 int nfsvno_write(vnode_t, off_t, int, int, int *, mbuf_t,
     char *, struct ucred *, NFSPROC_T *);
 int nfsvno_createsub(struct nfsrv_descript *, struct nameidata *,
-    vnode_t *, struct nfsvattr *, int *, int32_t *, NFSDEV_T, NFSPROC_T *,
+    vnode_t *, struct nfsvattr *, int *, int32_t *, NFSDEV_T,
     struct nfsexstuff *);
 int nfsvno_mknod(struct nameidata *, struct nfsvattr *, struct ucred *,
     NFSPROC_T *);

Modified: head/sys/fs/nfsserver/nfs_nfsdport.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 14:30:37 2019	(r344761)
+++ head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 14:30:53 2019	(r344762)
@@ -949,10 +949,11 @@ nfsvno_write(struct vnode *vp, off_t off, int retlen, 
 int
 nfsvno_createsub(struct nfsrv_descript *nd, struct nameidata *ndp,
     struct vnode **vpp, struct nfsvattr *nvap, int *exclusive_flagp,
-    int32_t *cverf, NFSDEV_T rdev, struct thread *p, struct nfsexstuff *exp)
+    int32_t *cverf, NFSDEV_T rdev, struct nfsexstuff *exp)
 {
 	u_quad_t tempsize;
 	int error;
+	struct thread *p = curthread;
 
 	error = nd->nd_repstat;
 	if (!error && ndp->ni_vp == NULL) {

Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 14:30:37 2019	(r344761)
+++ head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 14:30:53 2019	(r344762)
@@ -1185,7 +1185,7 @@ nfsrvd_create(struct nfsrv_descript *nd, __unused int 
 	 *   should I set the mode too ?
 	 */
 	nd->nd_repstat = nfsvno_createsub(nd, &named, &vp, &nva,
-	    &exclusive_flag, cverf, rdev, p, exp);
+	    &exclusive_flag, cverf, rdev, exp);
 
 	if (!nd->nd_repstat) {
 		nd->nd_repstat = nfsvno_getfh(vp, &fh, p);

From owner-svn-src-all@freebsd.org  Mon Mar  4 14:50:02 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD7011513E06;
 Mon,  4 Mar 2019 14:50:01 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6D1706D95B;
 Mon,  4 Mar 2019 14:50:01 +0000 (UTC)
 (envelope-from trasz@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 5C8D258B6;
 Mon,  4 Mar 2019 14:50:01 +0000 (UTC)
 (envelope-from trasz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24Eo134058403;
 Mon, 4 Mar 2019 14:50:01 GMT (envelope-from trasz@FreeBSD.org)
Received: (from trasz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24Eo0xM058399;
 Mon, 4 Mar 2019 14:50:00 GMT (envelope-from trasz@FreeBSD.org)
Message-Id: <201903041450.x24Eo0xM058399@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: trasz set sender to
 trasz@FreeBSD.org using -f
From: Edward Tomasz Napierala <trasz@FreeBSD.org>
Date: Mon, 4 Mar 2019 14:50:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344763 - in head/sys/fs: nfs nfsserver
X-SVN-Group: head
X-SVN-Commit-Author: trasz
X-SVN-Commit-Paths: in head/sys/fs: nfs nfsserver
X-SVN-Commit-Revision: 344763
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6D1706D95B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 14:50:02 -0000

Author: trasz
Date: Mon Mar  4 14:50:00 2019
New Revision: 344763
URL: https://svnweb.freebsd.org/changeset/base/344763

Log:
  Don't pass td to nfsvno_open().
  
  MFC after:	2 weeks
  Sponsored by:	DARPA, AFRL

Modified:
  head/sys/fs/nfs/nfs_var.h
  head/sys/fs/nfsserver/nfs_nfsdport.c
  head/sys/fs/nfsserver/nfs_nfsdserv.c

Modified: head/sys/fs/nfs/nfs_var.h
==============================================================================
--- head/sys/fs/nfs/nfs_var.h	Mon Mar  4 14:30:53 2019	(r344762)
+++ head/sys/fs/nfs/nfs_var.h	Mon Mar  4 14:50:00 2019	(r344763)
@@ -673,7 +673,7 @@ int nfsvno_statfs(vnode_t, struct statfs *);
 void nfsvno_getfs(struct nfsfsinfo *, int);
 void nfsvno_open(struct nfsrv_descript *, struct nameidata *, nfsquad_t,
     nfsv4stateid_t *, struct nfsstate *, int *, struct nfsvattr *, int32_t *,
-    int, NFSACL_T *, nfsattrbit_t *, struct ucred *, NFSPROC_T *,
+    int, NFSACL_T *, nfsattrbit_t *, struct ucred *,
     struct nfsexstuff *, vnode_t *);
 int nfsvno_updfilerev(vnode_t, struct nfsvattr *, struct nfsrv_descript *,
     NFSPROC_T *);

Modified: head/sys/fs/nfsserver/nfs_nfsdport.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 14:30:53 2019	(r344762)
+++ head/sys/fs/nfsserver/nfs_nfsdport.c	Mon Mar  4 14:50:00 2019	(r344763)
@@ -1632,12 +1632,13 @@ void
 nfsvno_open(struct nfsrv_descript *nd, struct nameidata *ndp,
     nfsquad_t clientid, nfsv4stateid_t *stateidp, struct nfsstate *stp,
     int *exclusive_flagp, struct nfsvattr *nvap, int32_t *cverf, int create,
-    NFSACL_T *aclp, nfsattrbit_t *attrbitp, struct ucred *cred, struct thread *p,
+    NFSACL_T *aclp, nfsattrbit_t *attrbitp, struct ucred *cred,
     struct nfsexstuff *exp, struct vnode **vpp)
 {
 	struct vnode *vp = NULL;
 	u_quad_t tempsize;
 	struct nfsexstuff nes;
+	struct thread *p = curthread;
 
 	if (ndp->ni_vp == NULL)
 		nd->nd_repstat = nfsrv_opencheck(clientid,

Modified: head/sys/fs/nfsserver/nfs_nfsdserv.c
==============================================================================
--- head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 14:30:53 2019	(r344762)
+++ head/sys/fs/nfsserver/nfs_nfsdserv.c	Mon Mar  4 14:50:00 2019	(r344763)
@@ -2991,7 +2991,7 @@ nfsrvd_open(struct nfsrv_descript *nd, __unused int is
 		}
 		nfsvno_open(nd, &named, clientid, &stateid, stp,
 		    &exclusive_flag, &nva, cverf, create, aclp, &attrbits,
-		    nd->nd_cred, p, exp, &vp);
+		    nd->nd_cred, exp, &vp);
 	} else if (claim == NFSV4OPEN_CLAIMPREVIOUS || claim ==
 	    NFSV4OPEN_CLAIMFH) {
 		if (claim == NFSV4OPEN_CLAIMPREVIOUS) {

From owner-svn-src-all@freebsd.org  Mon Mar  4 15:12:24 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 401DC1514949;
 Mon,  4 Mar 2019 15:12:24 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: from mail-oi1-f196.google.com (mail-oi1-f196.google.com
 [209.85.167.196])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id D0CAF6E936;
 Mon,  4 Mar 2019 15:12:23 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: by mail-oi1-f196.google.com with SMTP id x187so4073888oia.7;
 Mon, 04 Mar 2019 07:12:23 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc:content-transfer-encoding;
 bh=L2D0dWS3e/ZUseK0XtiWI0z/IubyOFG7EJUCRHTAAmw=;
 b=VZJ88KIQVmUDw6Wb4z5ZO6LBQukmHZ1MRIsIbj2SBbC1PMCtldJoS7csM7aCNDi1JS
 XHhVEO+ThAiOBjEMHi/MLUey46KNrlrq+kSeJIAYnoEDNot2hmNV/BL+kztCg3wzVptO
 ONyFEsfHKd+uBiepNSwyktZxGPk4kYHYMNhBqAkGIMbYda18q8ewDRNaa+XZR+zcN3hU
 eRN4M27wapUnSMPNs8mo1MT+kNpZaII7NoXSCLSy8/UerDuQb8OaUYHOFgGAIS1ED62S
 2dUKIM/RdWYpbVa8rG22yRIZdv7xSAGIk1vAyluFg1uMkz7rY8EydcG+8QxSK/jfU+KY
 KdmA==
X-Gm-Message-State: AHQUAuZ1p8GdwR4q2dHBuD1qcIwb5yMV2evDJOmi8/lzHlSpqkz4GF4f
 B0OpLUdxG0JuBrVW1h4cwp5SZf/A+Hg2h1igUFQ=
X-Google-Smtp-Source: APXvYqzVc/CiN/TZJkBHrTF1GO8ku1Hz5Di00RV2Z/7PgOl/8CuTFIDo2JDfCwGi8mw/CNwHaUqEW3t7CKwAlX9Dsjw=
X-Received: by 2002:aca:4d3:: with SMTP id 202mr11884022oie.31.1551712342564; 
 Mon, 04 Mar 2019 07:12:22 -0800 (PST)
MIME-Version: 1.0
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
 <20190304132021.GN68879@kib.kiev.ua>
 <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
 <20190304143021.GO68879@kib.kiev.ua>
In-Reply-To: <20190304143021.GO68879@kib.kiev.ua>
From: Edward Napierala <trasz@freebsd.org>
Date: Mon, 4 Mar 2019 15:12:11 +0000
Message-ID: <CAFLM3-pFFK_zcc5=5XPvi5n7RCT-GiNTa7To9VnPkwTp2HstTA@mail.gmail.com>
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, 
 svn-src-head@freebsd.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Rspamd-Queue-Id: D0CAF6E936
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.99)[-0.987,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 15:12:24 -0000

pon., 4 mar 2019 o 14:30 Konstantin Belousov <kostikbel@gmail.com> napisa=
=C5=82(a):
>
> On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
> > pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com> napi=
sa=C5=82(a):
> > > > +     p =3D curthread;
> > > Why do you name it 'p', which is typical for process, and not 'td', y=
ou are
> > > changing most of the code anyway.
> >
> > To keep the diff size smaller.  You're right, this touches a lot of stu=
ff,
> > but most of those added lines are temporary anyway - they will be
> > removed later, when the td is pushed down even more.
> But if you create code churn, doing it only half way is worse.

But this way I create less churn - if I renamed it to 'td', then first
I'd change
the calls to other functions to take 'td' instead of 'p', and then I'd remo=
ve
this argument altogether in subsequent commit.  This would make diffs
larger for no good reason.

> > > Also I am curious why. It is certainly fine to remove td when it is u=
sed
> > > as a formal placeholder argument only. But when the first action in t=
he
> > > function is evaluation of curthread() it becomes less obvious.
> >
> > Again, many/most of those are temporary.  I'm trying to push td down
> > in small steps, "layer by layer", so it's easy to review.
> >
> > > curthread() become very cheap on modern amd64, I am not so sure about
> > > older machines or non-x86 cases.
> >
> > The main reason is readability.  Right now there's no easy way to tell =
whether
> > a function can be passed any td, or if it must be curthread.
> I must admit that this is the weirdnest argument against 'td' that I ever
> heard.  I saw more or less reasonable argumentation
> - that using less arguments make one more register for argument passing
>   (amd64 has 6 input arg regs),
> - that less arguments make smaller call code.
> But trust me, in all cases where function can take td !=3D curthread, it =
is
> either obvious or well-known for anybody who works with that code.

Ah, ok.  So, yes, you are right that from a high level point of view
it's a poor argument.  But at this point I'm not trying to change stuff
throughout the kernel; just the NFS server.  And the reason for doing
this is to make it obvious that the 'td' argument it passes to VOPs and
other kernel APIs is always equal to curthread.  Doing it layer by layer
makes it easy to review.

> Before you start doing a lot of small changes (AKA continous churn)
> please formulate your goals and get some public feedback.

I'll do that; I won't go changing kernel APIs like that.  But I'd like to
untangle things that complicate the picture, and the NFS server code
is one of them.

>  My immediate
> question that I want answered before you ever start touching the code,
> is what you plan to do with
>         sys_syscall(struct thread *td, uap)

Probably nothing; those things pretty much always actually use the thread
pointer.

From owner-svn-src-all@freebsd.org  Mon Mar  4 15:17:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 66E301514C93;
 Mon,  4 Mar 2019 15:17:09 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "Client", Issuer "CA" (not verified))
 by mx1.freebsd.org (Postfix) with ESMTPS id 8A8FF6EC6F;
 Mon,  4 Mar 2019 15:17:08 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA
 id 0pKyhBnqI11ZC0pKzhKvPr; Mon, 04 Mar 2019 08:17:06 -0700
X-Authority-Analysis: v=2.3 cv=ctflbGwi c=1 sm=1 tr=0
 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17
 a=IkcTkHD0fZMA:10 a=NTGMnVQrEZIA:10 a=pGLkceISAAAA:8 a=YxBL1-UpAAAA:8
 a=6I5d2MoRAAAA:8 a=7Unlge_febPNYF3M47wA:9 a=naNX69SWAkzDNZm_:21
 a=QSeD0WeDasypmQEK:21 a=QEXdDO2ut3YA:10 a=Ia-lj3WSrqcvXOmTRaiG:22
 a=IjZwj45LgO3ly-622nXo:22
Received: from android-68f84e02b5988183.esitwifi.local
 (S0106788a207e2972.gv.shawcable.net [70.66.154.233])
 by spqr.komquats.com (Postfix) with ESMTPSA id 4CA261F6;
 Mon,  4 Mar 2019 07:17:03 -0800 (PST)
Date: Mon, 04 Mar 2019 07:16:38 -0800
User-Agent: K-9 Mail for Android
In-Reply-To: <20190304143021.GO68879@kib.kiev.ua>
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
 <20190304132021.GN68879@kib.kiev.ua>
 <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
 <20190304143021.GO68879@kib.kiev.ua>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
To: Konstantin Belousov <kostikbel@gmail.com>,
 Edward Napierala <trasz@freebsd.org>
CC: src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
From: Cy Schubert <Cy.Schubert@cschubert.com>
Message-ID: <FF146246-2FFD-4FC7-9720-7D72D1AFEB29@cschubert.com>
X-CMAE-Envelope: MS4wfP73L2ORxJ60/8mU6p7jncXOiR3FIc3UGzU2THVrGqyDkGPzy+tARlL/nqHYT5dJdNsLvU5NsCn0JYquieUviESmFWjbSaapBUOQMP99aZsSSdO7aDwY
 DS+Jzl/LbpyxSLuWx8s8cOZVvnrF/3BtHfsywXK1Pux0G6iOQTNL5AzC12wmF0piwGIjYXGFMV9D/pHkmgbQt0++7IUbQk35FCWqPW0q5BaDTPzV2ITCMLUz
 GMHWi4Zt4NKQ4i1D0BUO8z/9v4nxG9tHr/cslt+cEYAPAzkr7lnAo7iHo1TlYvnsJ9GTCvCe2qNfbUv6tVUu6g==
X-Rspamd-Queue-Id: 8A8FF6EC6F
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.95 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 15:17:09 -0000

On March 4, 2019 6:30:21 AM PST, Konstantin Belousov <kostikbel@gmail=2Ecom=
> wrote:
>On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
>> pon=2E, 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail=2Ecom>
>napisa=C5=82(a):
>> > > +     p =3D curthread;
>> > Why do you name it 'p', which is typical for process, and not 'td',
>you are
>> > changing most of the code anyway=2E
>>=20
>> To keep the diff size smaller=2E  You're right, this touches a lot of
>stuff,
>> but most of those added lines are temporary anyway - they will be
>> removed later, when the td is pushed down even more=2E
>But if you create code churn, doing it only half way is worse=2E
>
>>=20
>> > Also I am curious why=2E It is certainly fine to remove td when it is
>used
>> > as a formal placeholder argument only=2E But when the first action in
>the
>> > function is evaluation of curthread() it becomes less obvious=2E
>>=20
>> Again, many/most of those are temporary=2E  I'm trying to push td down
>> in small steps, "layer by layer", so it's easy to review=2E
>>=20
>> > curthread() become very cheap on modern amd64, I am not so sure
>about
>> > older machines or non-x86 cases=2E
>>=20
>> The main reason is readability=2E  Right now there's no easy way to
>tell whether
>> a function can be passed any td, or if it must be curthread=2E
>I must admit that this is the weirdnest argument against 'td' that I
>ever
>heard=2E  I saw more or less reasonable argumentation
>- that using less arguments make one more register for argument passing
>  (amd64 has 6 input arg regs),
>- that less arguments make smaller call code=2E
>But trust me, in all cases where function can take td !=3D curthread, it
>is
>either obvious or well-known for anybody who works with that code=2E
>
>Before you start doing a lot of small changes (AKA continous churn)
>please formulate your goals and get some public feedback=2E  My immediate
>question that I want answered before you ever start touching the code,
>is what you plan to do with
>	sys_syscall(struct thread *td, uap)

Agreed on all points=2E At the very least this group of commits should be =
reviewed on phabricator=2E

Can we back all these commits out until there is a proper review, please?

--=20
Pardon the typos and autocorrect, small keyboard in use=2E
Cheers,
Cy Schubert <Cy=2ESchubert@cschubert=2Ecom>
FreeBSD UNIX: <cy@FreeBSD=2Eorg> Web: http://www=2EFreeBSD=2Eorg

	The need of the many outweighs the greed of the few=2E

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:15:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 59D69151D93B;
 Mon,  4 Mar 2019 18:15:10 +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)
 server-signature RSA-PSS (4096 bits)
 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 D97BC77536;
 Mon,  4 Mar 2019 18:15:09 +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 CD3A07C5C;
 Mon,  4 Mar 2019 18:15:09 +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 x24IF9kd075172;
 Mon, 4 Mar 2019 18:15:09 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IF6aY075152;
 Mon, 4 Mar 2019 18:15:06 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903041815.x24IF6aY075152@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:15:06 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344764 - in head/tests/sys: . common netipsec/tunnel
 netpfil/pf
X-SVN-Group: head
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: in head/tests/sys: . common netipsec/tunnel netpfil/pf
X-SVN-Commit-Revision: 344764
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: D97BC77536
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:15:10 -0000

Author: kp
Date: Mon Mar  4 18:15:06 2019
New Revision: 344764
URL: https://svnweb.freebsd.org/changeset/base/344764

Log:
  tests: Move common (vnet) test functions into a common file
  
  The netipsec and pf tests have a number of common test functions. These
  used to be duplicated, but it makes more sense for them to re-use the
  common functions.
  
  PR:		236223

Added:
  head/tests/sys/common/
  head/tests/sys/common/Makefile   (contents, props changed)
  head/tests/sys/common/vnet.subr   (contents, props changed)
Modified:
  head/tests/sys/Makefile
  head/tests/sys/netipsec/tunnel/utils.subr
  head/tests/sys/netpfil/pf/anchor.sh
  head/tests/sys/netpfil/pf/forward.sh
  head/tests/sys/netpfil/pf/fragmentation.sh
  head/tests/sys/netpfil/pf/names.sh
  head/tests/sys/netpfil/pf/nat.sh
  head/tests/sys/netpfil/pf/pass_block.sh
  head/tests/sys/netpfil/pf/pfsync.sh
  head/tests/sys/netpfil/pf/rdr.sh
  head/tests/sys/netpfil/pf/route_to.sh
  head/tests/sys/netpfil/pf/set_skip.sh
  head/tests/sys/netpfil/pf/set_tos.sh
  head/tests/sys/netpfil/pf/synproxy.sh
  head/tests/sys/netpfil/pf/utils.subr

Modified: head/tests/sys/Makefile
==============================================================================
--- head/tests/sys/Makefile	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/Makefile	Mon Mar  4 18:15:06 2019	(r344764)
@@ -39,4 +39,6 @@ _cddl=	cddl
 # Items not integrated into kyua runs by default
 SUBDIR+=		pjdfstest
 
+SUBDIR+=		common
+
 .include <bsd.test.mk>

Added: head/tests/sys/common/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tests/sys/common/Makefile	Mon Mar  4 18:15:06 2019	(r344764)
@@ -0,0 +1,7 @@
+# $FreeBSD$
+
+PACKAGE=		common
+TESTSDIR=		${TESTSBASE}/sys/common
+${PACKAGE}FILES+=	vnet.subr
+
+.include <bsd.test.mk>

Added: head/tests/sys/common/vnet.subr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tests/sys/common/vnet.subr	Mon Mar  4 18:15:06 2019	(r344764)
@@ -0,0 +1,51 @@
+# $FreeBSD$
+# VNAT/jail utility functions
+##
+
+vnet_init()
+{
+	if [ "`sysctl -i -n kern.features.vimage`" != 1 ]; then
+		atf_skip "This test requires VIMAGE"
+	fi
+}
+
+vnet_mkepair()
+{
+	ifname=$(ifconfig epair create)
+	echo $ifname >> created_interfaces.lst
+	echo ${ifname%a}
+}
+
+vnet_mkjail()
+{
+	jailname=$1
+	shift
+
+	vnet_interfaces=
+	for ifname in $@
+	do
+		vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}"
+	done
+	jail -c name=${jailname} persist vnet ${vnet_interfaces}
+
+	echo $jailname >> created_jails.lst
+}
+
+vnet_cleanup()
+{
+	if [ -f created_jails.lst ]; then
+		for jailname in `cat created_jails.lst`
+		do
+			jail -r ${jailname}
+		done
+		rm created_jails.lst
+	fi
+
+	if [ -f created_interfaces.lst ]; then
+		for ifname in `cat created_interfaces.lst`
+		do
+			ifconfig ${ifname} destroy
+		done
+		rm created_interfaces.lst
+	fi
+}

Modified: head/tests/sys/netipsec/tunnel/utils.subr
==============================================================================
--- head/tests/sys/netipsec/tunnel/utils.subr	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netipsec/tunnel/utils.subr	Mon Mar  4 18:15:06 2019	(r344764)
@@ -4,51 +4,29 @@
 
 : ${TMPDIR=/tmp}
 
+. $(atf_get_srcdir)/../../common/vnet.subr
+
 ist_init()
 {
-	if [ "$(sysctl -i -n kern.features.vimage)" != 1 ]; then
-		atf_skip "This test requires VIMAGE"
-	fi
+	vnet_init
 }
 
-pft_mkepair()
-{
-	ifname=$(ifconfig epair create)
-	echo $ifname >> created_interfaces.lst
-	echo ${ifname%a}
-}
-
-pft_mkjail()
-{
-	jailname=$1
-	shift
-
-	vnet_interfaces=
-	for ifname in $@
-	do
-		vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}"
-	done
-	jail -c name=${jailname} persist vnet ${vnet_interfaces}
-
-	echo $jailname >> created_jails.lst
-}
-
 ist_labsetup ()
 {
-	epair_LAN_A=$(pft_mkepair)
+	epair_LAN_A=$(vnet_mkepair)
 	ifconfig ${epair_LAN_A}a up
-	epair_PUB_A=$(pft_mkepair)
+	epair_PUB_A=$(vnet_mkepair)
 	ifconfig ${epair_PUB_A}a up
-	epair_LAN_B=$(pft_mkepair)
+	epair_LAN_B=$(vnet_mkepair)
 	ifconfig ${epair_LAN_B}a up
-	epair_PUB_B=$(pft_mkepair)
+	epair_PUB_B=$(vnet_mkepair)
 	ifconfig ${epair_PUB_B}a up
 
-	pft_mkjail hostA ${epair_LAN_A}a
-	pft_mkjail ipsecA ${epair_LAN_A}b ${epair_PUB_A}a
-	pft_mkjail router ${epair_PUB_A}b ${epair_PUB_B}b
-	pft_mkjail ipsecB ${epair_LAN_B}b ${epair_PUB_B}a
-	pft_mkjail hostB ${epair_LAN_B}a
+	vnet_mkjail hostA ${epair_LAN_A}a
+	vnet_mkjail ipsecA ${epair_LAN_A}b ${epair_PUB_A}a
+	vnet_mkjail router ${epair_PUB_A}b ${epair_PUB_B}b
+	vnet_mkjail ipsecB ${epair_LAN_B}b ${epair_PUB_B}a
+	vnet_mkjail hostB ${epair_LAN_B}a
 }
 
 ist_v4_setup ()
@@ -147,20 +125,5 @@ ist_test()
 }
 ist_cleanup()
 {
-	if [ -f created_jails.lst ]; then
-		for jailname in $(cat created_jails.lst)
-		do
-			jail -r ${jailname}
-			rm -f ${TMPDIR}/ipsec.${jailname}.conf
-		done
-		rm created_jails.lst
-	fi
-
-	if [ -f created_interfaces.lst ]; then
-		for ifname in $(cat created_interfaces.lst)
-		do
-			ifconfig ${ifname} destroy
-		done
-		rm created_interfaces.lst
-	fi
+	vnet_cleanup
 }

Modified: head/tests/sys/netpfil/pf/anchor.sh
==============================================================================
--- head/tests/sys/netpfil/pf/anchor.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/anchor.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,8 +13,8 @@ pr183198_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
-	pft_mkjail alcatraz ${epair}b
+	epair=$(vnet_mkepair)
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz pfctl -e
 
 	# Forward with pf enabled

Modified: head/tests/sys/netpfil/pf/forward.sh
==============================================================================
--- head/tests/sys/netpfil/pf/forward.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/forward.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -16,13 +16,13 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
 
-	epair_recv=$(pft_mkepair)
+	epair_recv=$(vnet_mkepair)
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_recv}b 198.51.100.2/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1
@@ -75,13 +75,13 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
-	epair_recv=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
+	epair_recv=$(vnet_mkepair)
 
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 up no_dad -ifdisabled
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 
 	jexec alcatraz ifconfig ${epair_send}b inet6 2001:db8:42::2/64 up no_dad
 	jexec alcatraz ifconfig ${epair_recv}b inet6 2001:db8:43::2/64 up no_dad

Modified: head/tests/sys/netpfil/pf/fragmentation.sh
==============================================================================
--- head/tests/sys/netpfil/pf/fragmentation.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/fragmentation.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -14,8 +14,8 @@ too_many_fragments_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
-	pft_mkjail alcatraz ${epair}a
+	epair=$(vnet_mkepair)
+	vnet_mkjail alcatraz ${epair}a
 
 	ifconfig ${epair}b inet 192.0.2.1/24 up
 	jexec alcatraz ifconfig ${epair}a 192.0.2.2/24 up
@@ -57,11 +57,11 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
-	epair_link=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
+	epair_link=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_link}a
-	pft_mkjail singsing ${epair_link}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_link}a
+	vnet_mkjail singsing ${epair_link}b
 
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 no_dad up
 

Modified: head/tests/sys/netpfil/pf/names.sh
==============================================================================
--- head/tests/sys/netpfil/pf/names.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/names.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,9 +13,9 @@ names_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	ifconfig ${epair}a name foo
 	jexec alcatraz ifconfig ${epair}b name foo
 

Modified: head/tests/sys/netpfil/pf/nat.sh
==============================================================================
--- head/tests/sys/netpfil/pf/nat.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/nat.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,11 +13,11 @@ exhaust_body()
 {
 	pft_init
 
-	epair_nat=$(pft_mkepair)
-	epair_echo=$(pft_mkepair)
+	epair_nat=$(vnet_mkepair)
+	epair_echo=$(vnet_mkepair)
 
-	pft_mkjail nat ${epair_nat}b ${epair_echo}a
-	pft_mkjail echo ${epair_echo}b
+	vnet_mkjail nat ${epair_nat}b ${epair_echo}a
+	vnet_mkjail echo ${epair_echo}b
 
 	ifconfig ${epair_nat}a 192.0.2.2/24 up
 	route add -net 198.51.100.0/24 192.0.2.1

Modified: head/tests/sys/netpfil/pf/pass_block.sh
==============================================================================
--- head/tests/sys/netpfil/pf/pass_block.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/pass_block.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,11 +13,11 @@ v4_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a 192.0.2.1/24 up
 
 	# Set up a simple jail with one interface
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up
 
 	# Trivial ping to the jail, without pf
@@ -52,11 +52,11 @@ v6_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a inet6 2001:db8:42::1/64 up no_dad
 
 	# Set up a simple jail with one interface
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b inet6 2001:db8:42::2/64 up no_dad
 
 	# Trivial ping to the jail, without pf
@@ -95,10 +95,10 @@ noalias_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a inet6 2001:db8:42::1/64 up no_dad
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b inet6 2001:db8:42::2/64 up no_dad
 
 	linklocaladdr=$(jexec alcatraz ifconfig ${epair}b inet6 \

Modified: head/tests/sys/netpfil/pf/pfsync.sh
==============================================================================
--- head/tests/sys/netpfil/pf/pfsync.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/pfsync.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -19,12 +19,12 @@ common_body()
 	defer=$1
 	pfsynct_init
 
-	epair_sync=$(pft_mkepair)
-	epair_one=$(pft_mkepair)
-	epair_two=$(pft_mkepair)
+	epair_sync=$(vnet_mkepair)
+	epair_one=$(vnet_mkepair)
+	epair_two=$(vnet_mkepair)
 
-	pft_mkjail one ${epair_one}a ${epair_sync}a
-	pft_mkjail two ${epair_two}a ${epair_sync}b
+	vnet_mkjail one ${epair_one}a ${epair_sync}a
+	vnet_mkjail two ${epair_two}a ${epair_sync}b
 
 	# pfsync interface
 	jexec one ifconfig ${epair_sync}a 192.0.2.1/24 up

Modified: head/tests/sys/netpfil/pf/rdr.sh
==============================================================================
--- head/tests/sys/netpfil/pf/rdr.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/rdr.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,9 +13,9 @@ basic_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 
 	ifconfig ${epair}a 192.0.2.2/24 up
 	route add -net 198.51.100.0/24 192.0.2.1

Modified: head/tests/sys/netpfil/pf/route_to.sh
==============================================================================
--- head/tests/sys/netpfil/pf/route_to.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/route_to.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,12 +13,12 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
-	epair_route=$(pft_mkepair)
+	epair_route=$(vnet_mkepair)
 	ifconfig ${epair_route}a 203.0.113.1/24 up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_route}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_route}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_route}b 203.0.113.2/24 up
 	jexec alcatraz route add -net 198.51.100.0/24 192.0.2.1
@@ -49,12 +49,12 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 up no_dad -ifdisabled
-	epair_route=$(pft_mkepair)
+	epair_route=$(vnet_mkepair)
 	ifconfig ${epair_route}a inet6 2001:db8:43::1/64 up no_dad -ifdisabled
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_route}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_route}b
 	jexec alcatraz ifconfig ${epair_send}b inet6 2001:db8:42::2/64 up no_dad
 	jexec alcatraz ifconfig ${epair_route}b inet6 2001:db8:43::2/64 up no_dad
 	jexec alcatraz route add -6 2001:db8:666::/64 2001:db8:42::2

Modified: head/tests/sys/netpfil/pf/set_skip.sh
==============================================================================
--- head/tests/sys/netpfil/pf/set_skip.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/set_skip.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -14,7 +14,7 @@ set_skip_group_body()
 	# See PR 229241
 	pft_init
 
-	pft_mkjail alcatraz
+	vnet_mkjail alcatraz
 	jexec alcatraz ifconfig lo0 127.0.0.1/8 up
 	jexec alcatraz ifconfig lo0 group foo
 	jexec alcatraz pfctl -e
@@ -42,7 +42,7 @@ set_skip_group_lo_body()
 	# See PR 229241
 	pft_init
 
-	pft_mkjail alcatraz
+	vnet_mkjail alcatraz
 	jexec alcatraz ifconfig lo0 127.0.0.1/8 up
 	jexec alcatraz pfctl -e
 	pft_set_rules alcatraz "set skip on lo" \

Modified: head/tests/sys/netpfil/pf/set_tos.sh
==============================================================================
--- head/tests/sys/netpfil/pf/set_tos.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/set_tos.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -16,13 +16,13 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
 
-	epair_recv=$(pft_mkepair)
+	epair_recv=$(vnet_mkepair)
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_recv}b 198.51.100.2/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1

Modified: head/tests/sys/netpfil/pf/synproxy.sh
==============================================================================
--- head/tests/sys/netpfil/pf/synproxy.sh	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/synproxy.sh	Mon Mar  4 18:15:06 2019	(r344764)
@@ -13,18 +13,18 @@ synproxy_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a 192.0.2.1/24 up
 	route add -net 198.51.100.0/24 192.0.2.2
 
-	link=$(pft_mkepair)
+	link=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b ${link}a
+	vnet_mkjail alcatraz ${epair}b ${link}a
 	jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${link}a 198.51.100.1/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1
 
-	pft_mkjail singsing ${link}b
+	vnet_mkjail singsing ${link}b
 	jexec singsing ifconfig ${link}b 198.51.100.2/24 up
 	jexec singsing route add default 198.51.100.1
 

Modified: head/tests/sys/netpfil/pf/utils.subr
==============================================================================
--- head/tests/sys/netpfil/pf/utils.subr	Mon Mar  4 14:50:00 2019	(r344763)
+++ head/tests/sys/netpfil/pf/utils.subr	Mon Mar  4 18:15:06 2019	(r344764)
@@ -2,15 +2,15 @@
 # Utility functions
 ##
 
+. $(atf_get_srcdir)/../../common/vnet.subr
+
 pft_init()
 {
+	vnet_init
+
 	if [ ! -c /dev/pf ]; then
 		atf_skip "This test requires pf"
 	fi
-
-	if [ "`sysctl -i -n kern.features.vimage`" != 1 ]; then
-		atf_skip "This test requires VIMAGE"
-	fi
 }
 
 pfsynct_init()
@@ -22,28 +22,6 @@ pfsynct_init()
 	fi
 }
 
-pft_mkepair()
-{
-	ifname=$(ifconfig epair create)
-	echo $ifname >> created_interfaces.lst
-	echo ${ifname%a}
-}
-
-pft_mkjail()
-{
-	jailname=$1
-	shift
-
-	vnet_interfaces=
-	for ifname in $@
-	do
-		vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}"
-	done
-	jail -c name=${jailname} persist vnet ${vnet_interfaces}
-
-	echo $jailname >> created_jails.lst
-}
-
 pft_set_rules()
 {
 	jname=$1
@@ -66,21 +44,7 @@ pft_set_rules()
 
 pft_cleanup()
 {
-	if [ -f created_jails.lst ]; then
-		for jailname in `cat created_jails.lst`
-		do
-			jail -r ${jailname}
-		done
-		rm created_jails.lst
-	fi
-
-	if [ -f created_interfaces.lst ]; then
-		for ifname in `cat created_interfaces.lst`
-		do
-			ifconfig ${ifname} destroy
-		done
-		rm created_interfaces.lst
-	fi
+	vnet_cleanup
 }
 
 pfsynct_cleanup()

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:25:48 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6319C151DFC3;
 Mon,  4 Mar 2019 18:25:48 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 089A977CD2;
 Mon,  4 Mar 2019 18:25:48 +0000 (UTC) (envelope-from dim@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 D72037E07;
 Mon,  4 Mar 2019 18:25:47 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IPl9p080644;
 Mon, 4 Mar 2019 18:25:47 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IPlN1080643;
 Mon, 4 Mar 2019 18:25:47 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041825.x24IPlN1080643@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:25:47 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344766 - vendor/llvm/llvm-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm/llvm-release_80-r355313
X-SVN-Commit-Revision: 344766
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 089A977CD2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:25:48 -0000

Author: dim
Date: Mon Mar  4 18:25:47 2019
New Revision: 344766
URL: https://svnweb.freebsd.org/changeset/base/344766

Log:
  Tag llvm release_80 branch r355313.

Added:
  vendor/llvm/llvm-release_80-r355313/
     - copied from r344765, vendor/llvm/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:25:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7F208151DFBB;
 Mon,  4 Mar 2019 18:25:45 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2A0B277CCF;
 Mon,  4 Mar 2019 18:25:45 +0000 (UTC) (envelope-from dim@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 1C6287E06;
 Mon,  4 Mar 2019 18:25:45 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IPjQC080596;
 Mon, 4 Mar 2019 18:25:45 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IPfqh080578;
 Mon, 4 Mar 2019 18:25:41 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041825.x24IPfqh080578@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:25:41 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344765 - in vendor/llvm/dist-release_80: .
 bindings/go/llvm docs lib/Target/AArch64 lib/Target/WebAssembly
 lib/Target/X86 test/CodeGen/AArch64 test/CodeGen/WebAssembly
 test/CodeGen/X86...
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in vendor/llvm/dist-release_80: . bindings/go/llvm docs
 lib/Target/AArch64 lib/Target/WebAssembly lib/Target/X86 test/CodeGen/AArch64
 test/CodeGen/WebAssembly test/CodeGen/X86 tools/llvm-xray
X-SVN-Commit-Revision: 344765
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2A0B277CCF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:25:45 -0000

Author: dim
Date: Mon Mar  4 18:25:41 2019
New Revision: 344765
URL: https://svnweb.freebsd.org/changeset/base/344765

Log:
  Vendor import of llvm release_80 branch r355313:
  https://llvm.org/svn/llvm-project/llvm/branches/release_80@355313

Added:
  vendor/llvm/dist-release_80/test/CodeGen/AArch64/win64-jumptable.ll
  vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch-cbz.ll
  vendor/llvm/dist-release_80/test/CodeGen/X86/pr40891.ll
Modified:
  vendor/llvm/dist-release_80/.gitignore
  vendor/llvm/dist-release_80/bindings/go/llvm/ir.go
  vendor/llvm/dist-release_80/docs/ReleaseNotes.rst
  vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64AsmPrinter.cpp
  vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64FrameLowering.cpp
  vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64TargetMachine.cpp
  vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
  vendor/llvm/dist-release_80/lib/Target/X86/X86ISelDAGToDAG.cpp
  vendor/llvm/dist-release_80/lib/Target/X86/X86ISelLowering.cpp
  vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch.ll
  vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/select.ll
  vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/simd-select.ll
  vendor/llvm/dist-release_80/test/CodeGen/X86/code-model-elf.ll
  vendor/llvm/dist-release_80/tools/llvm-xray/xray-converter.cpp

Modified: vendor/llvm/dist-release_80/.gitignore
==============================================================================
--- vendor/llvm/dist-release_80/.gitignore	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/.gitignore	Mon Mar  4 18:25:41 2019	(r344765)
@@ -72,6 +72,8 @@ docs/_build
 # VS2017 and VSCode config files.
 .vscode
 .vs
+# clangd index
+.clangd
 
 #==============================================================================#
 # Files created in tree by the Go bindings.

Modified: vendor/llvm/dist-release_80/bindings/go/llvm/ir.go
==============================================================================
--- vendor/llvm/dist-release_80/bindings/go/llvm/ir.go	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/bindings/go/llvm/ir.go	Mon Mar  4 18:25:41 2019	(r344765)
@@ -1263,7 +1263,7 @@ func (v Value) Indices() []uint32 {
 	num := C.LLVMGetNumIndices(v.C)
 	indicesPtr := C.LLVMGetIndices(v.C)
 	// https://github.com/golang/go/wiki/cgo#turning-c-arrays-into-go-slices
-	rawIndices := (*[1 << 30]C.uint)(unsafe.Pointer(indicesPtr))[:num:num]
+	rawIndices := (*[1 << 20]C.uint)(unsafe.Pointer(indicesPtr))[:num:num]
 	indices := make([]uint32, num)
 	for i := range indices {
 		indices[i] = uint32(rawIndices[i])

Modified: vendor/llvm/dist-release_80/docs/ReleaseNotes.rst
==============================================================================
--- vendor/llvm/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:25:41 2019	(r344765)
@@ -12,7 +12,7 @@ This document contains the release notes for the LLVM 
 release 8.0.0.  Here we describe the status of LLVM, including major improvements
 from the previous release, improvements in various subprojects of LLVM, and
 some of the current users of the code.  All LLVM releases may be downloaded
-from the `LLVM releases web site <https://llvm.org/releases/>`_.
+from the `LLVM releases web site <https://releases.llvm.org/>`_.
 
 For more information about LLVM, including information about the latest
 release, please check out the `main LLVM web site <https://llvm.org/>`_.  If you
@@ -39,14 +39,19 @@ setting the ``LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN`` C
 ``ON``.
 
 
+Known Issues
+============
+
+These are issues that couldn't be fixed before the release. See the bug reports
+for the latest status.
+
+* `PR40547 <https://llvm.org/pr40547>`_ Clang gets miscompiled by trunk GCC.
+
+* `PR40761 <https://llvm.org/pr40761>`_ "asan-dynamic" doesn't work on FreeBSD.
+
+
 Non-comprehensive list of changes in this release
 =================================================
-.. NOTE
-   For small 1-3 sentence descriptions, just add an entry at the end of
-   this list. If your description won't fit comfortably in one bullet
-   point (e.g. maybe you would like to give an example of the
-   functionality, or simply have a lot to talk about), see the `NOTE` below
-   for adding a new subsection.
 
 * The **llvm-cov** tool can now export lcov trace files using the
   `-format=lcov` option of the `export` command.
@@ -80,16 +85,8 @@ Non-comprehensive list of changes in this release
   available in the `RFC
   <https://lists.llvm.org/pipermail/llvm-dev/2018-November/127461.html>`_.
 
-.. NOTE
-   If you would like to document a larger change, then you can add a
-   subsection about it right here. You can copy the following boilerplate
-   and un-indent it (the indentation causes it to be inside this comment).
+* Windows support for libFuzzer (x86_64).
 
-   Special New Feature
-   -------------------
-
-   Makes programs 10x faster by doing Special New Thing.
-
 Changes to the LLVM IR
 ----------------------
 
@@ -110,17 +107,12 @@ Changes to the AArch64 Target
   on ARM.
 
 
-Changes to the ARM Backend
---------------------------
-
- During this release ...
-
-
 Changes to the Hexagon Target
 -----------------------------
 
 * Added support for Hexagon/HVX V66 ISA.
 
+
 Changes to the MIPS Target
 --------------------------
 
@@ -142,6 +134,7 @@ Changes to the MIPS Target
 
 * Numerous bug fixes and code cleanups.
 
+
 Changes to the PowerPC Target
 -----------------------------
 
@@ -153,7 +146,7 @@ Changes to the PowerPC Target
 
 * Better overload rules for compatible vector type parameter
 
-* Support constraint ‘wi’, modifier ‘x’ and VSX registers in inline asm
+* Support constraint 'wi', modifier 'x' and VSX registers in inline asm
 
 * More ``__float128`` support
 
@@ -198,16 +191,7 @@ Changes to the X86 Target
 * ADCX instruction will no longer be emitted. This instruction is rarely better
   than the legacy ADC instruction and just increased code size.
 
-Changes to the AMDGPU Target
------------------------------
 
- During this release ...
-
-Changes to the AVR Target
------------------------------
-
- During this release ...
-
 Changes to the WebAssembly Target
 ---------------------------------
 
@@ -220,25 +204,16 @@ use for it will be to add support for returning small 
 return values, once the underlying WebAssembly platform itself supports it.
 Additionally, multithreading support is not yet included in the stable ABI.
 
+
 Changes to the Nios2 Target
 ---------------------------
 
 * The Nios2 target was removed from this release.
 
-Changes to the OCaml bindings
------------------------------
 
-
-
-Changes to the C API
---------------------
-
-
-Changes to the DAG infrastructure
----------------------------------
-
 Changes to LLDB
 ===============
+
 * Printed source code is now syntax highlighted in the terminal (only for C
   languages).
 

Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64AsmPrinter.cpp
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64AsmPrinter.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64AsmPrinter.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -471,9 +471,18 @@ void AArch64AsmPrinter::EmitJumpTableInfo() {
   const std::vector<MachineJumpTableEntry> &JT = MJTI->getJumpTables();
   if (JT.empty()) return;
 
+  const Function &F = MF->getFunction();
   const TargetLoweringObjectFile &TLOF = getObjFileLowering();
-  MCSection *ReadOnlySec = TLOF.getSectionForJumpTable(MF->getFunction(), TM);
-  OutStreamer->SwitchSection(ReadOnlySec);
+  bool JTInDiffSection =
+      !STI->isTargetCOFF() ||
+      !TLOF.shouldPutJumpTableInFunctionSection(
+          MJTI->getEntryKind() == MachineJumpTableInfo::EK_LabelDifference32,
+          F);
+  if (JTInDiffSection) {
+      // Drop it in the readonly section.
+      MCSection *ReadOnlySec = TLOF.getSectionForJumpTable(F, TM);
+      OutStreamer->SwitchSection(ReadOnlySec);
+  }
 
   auto AFI = MF->getInfo<AArch64FunctionInfo>();
   for (unsigned JTI = 0, e = JT.size(); JTI != e; ++JTI) {

Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64FrameLowering.cpp
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64FrameLowering.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64FrameLowering.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -2108,9 +2108,6 @@ void AArch64FrameLowering::processFunctionBeforeFrameF
   while (MBBI != MBB.end() && MBBI->getFlag(MachineInstr::FrameSetup))
     ++MBBI;
 
-  if (MBBI->isTerminator())
-    return;
-
   // Create an UnwindHelp object.
   int UnwindHelpFI =
       MFI.CreateStackObject(/*size*/8, /*alignment*/16, false);
@@ -2118,8 +2115,10 @@ void AArch64FrameLowering::processFunctionBeforeFrameF
   // We need to store -2 into the UnwindHelp object at the start of the
   // function.
   DebugLoc DL;
-  RS->enterBasicBlock(MBB);
-  unsigned DstReg = RS->scavengeRegister(&AArch64::GPR64RegClass, MBBI, 0);
+  RS->enterBasicBlockEnd(MBB);
+  RS->backward(std::prev(MBBI));
+  unsigned DstReg = RS->FindUnusedReg(&AArch64::GPR64commonRegClass);
+  assert(DstReg && "There must be a free register after frame setup");
   BuildMI(MBB, MBBI, DL, TII.get(AArch64::MOVi64imm), DstReg).addImm(-2);
   BuildMI(MBB, MBBI, DL, TII.get(AArch64::STURXi))
       .addReg(DstReg, getKillRegState(true))

Modified: vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64TargetMachine.cpp
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64TargetMachine.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/AArch64/AArch64TargetMachine.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -209,8 +209,8 @@ static std::string computeDataLayout(const Triple &TT,
 
 static Reloc::Model getEffectiveRelocModel(const Triple &TT,
                                            Optional<Reloc::Model> RM) {
-  // AArch64 Darwin is always PIC.
-  if (TT.isOSDarwin())
+  // AArch64 Darwin and Windows are always PIC.
+  if (TT.isOSDarwin() || TT.isOSWindows())
     return Reloc::PIC_;
   // On ELF platforms the default static relocation model has a smart enough
   // linker to cope with referencing external symbols defined in a shared

Modified: vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyInstrInteger.td	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/WebAssembly/WebAssemblyInstrInteger.td	Mon Mar  4 18:25:41 2019	(r344765)
@@ -122,10 +122,3 @@ def : Pat<(select (i32 (seteq I32:$cond, 0)), I32:$lhs
           (SELECT_I32 I32:$rhs, I32:$lhs, I32:$cond)>;
 def : Pat<(select (i32 (seteq I32:$cond, 0)), I64:$lhs, I64:$rhs),
           (SELECT_I64 I64:$rhs, I64:$lhs, I32:$cond)>;
-
-// The legalizer inserts an unnecessary `and 1` to make input conform
-// to getBooleanContents, which we can lower away.
-def : Pat<(select (i32 (and I32:$cond, 1)), I32:$lhs, I32:$rhs),
-          (SELECT_I32 I32:$lhs, I32:$rhs, I32:$cond)>;
-def : Pat<(select (i32 (and I32:$cond, 1)), I64:$lhs, I64:$rhs),
-          (SELECT_I64 I64:$lhs, I64:$rhs, I32:$cond)>;

Modified: vendor/llvm/dist-release_80/lib/Target/X86/X86ISelDAGToDAG.cpp
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/X86/X86ISelDAGToDAG.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/X86/X86ISelDAGToDAG.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -1138,15 +1138,23 @@ bool X86DAGToDAGISel::matchWrapper(SDValue N, X86ISelA
   if (AM.hasSymbolicDisplacement())
     return true;
 
+  bool IsRIPRelTLS = false;
   bool IsRIPRel = N.getOpcode() == X86ISD::WrapperRIP;
+  if (IsRIPRel) {
+    SDValue Val = N.getOperand(0);
+    if (Val.getOpcode() == ISD::TargetGlobalTLSAddress)
+      IsRIPRelTLS = true;
+  }
 
-  // We can't use an addressing mode in the 64-bit large code model. In the
-  // medium code model, we use can use an mode when RIP wrappers are present.
-  // That signifies access to globals that are known to be "near", such as the
-  // GOT itself.
+  // We can't use an addressing mode in the 64-bit large code model.
+  // Global TLS addressing is an exception. In the medium code model,
+  // we use can use a mode when RIP wrappers are present.
+  // That signifies access to globals that are known to be "near",
+  // such as the GOT itself.
   CodeModel::Model M = TM.getCodeModel();
   if (Subtarget->is64Bit() &&
-      (M == CodeModel::Large || (M == CodeModel::Medium && !IsRIPRel)))
+      ((M == CodeModel::Large && !IsRIPRelTLS) ||
+       (M == CodeModel::Medium && !IsRIPRel)))
     return true;
 
   // Base and index reg must be 0 in order to use %rip as base.

Modified: vendor/llvm/dist-release_80/lib/Target/X86/X86ISelLowering.cpp
==============================================================================
--- vendor/llvm/dist-release_80/lib/Target/X86/X86ISelLowering.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/lib/Target/X86/X86ISelLowering.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -38134,8 +38134,11 @@ static SDValue combineTruncatedArithmetic(SDNode *N, S
       return true;
 
     // See if this is a single use constant which can be constant folded.
-    SDValue BC = peekThroughOneUseBitcasts(Op);
-    return ISD::isBuildVectorOfConstantSDNodes(BC.getNode());
+    // NOTE: We don't peek throught bitcasts here because there is currently
+    // no support for constant folding truncate+bitcast+vector_of_constants. So
+    // we'll just send up with a truncate on both operands which will
+    // get turned back into (truncate (binop)) causing an infinite loop.
+    return ISD::isBuildVectorOfConstantSDNodes(Op.getNode());
   };
 
   auto TruncateArithmetic = [&](SDValue N0, SDValue N1) {

Added: vendor/llvm/dist-release_80/test/CodeGen/AArch64/win64-jumptable.ll
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist-release_80/test/CodeGen/AArch64/win64-jumptable.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -0,0 +1,48 @@
+; RUN: llc -o - %s -mtriple=aarch64-windows -aarch64-enable-compress-jump-tables=0 | FileCheck %s
+
+define void @f(i32 %x) {
+entry:
+  switch i32 %x, label %sw.epilog [
+    i32 0, label %sw.bb
+    i32 1, label %sw.bb1
+    i32 2, label %sw.bb2
+    i32 3, label %sw.bb3
+  ]
+
+sw.bb:                                            ; preds = %entry
+  tail call void @g(i32 0) #2
+  br label %sw.epilog
+
+sw.bb1:                                           ; preds = %entry
+  tail call void @g(i32 1) #2
+  br label %sw.epilog
+
+sw.bb2:                                           ; preds = %entry
+  tail call void @g(i32 2) #2
+  br label %sw.epilog
+
+sw.bb3:                                           ; preds = %entry
+  tail call void @g(i32 3) #2
+  br label %sw.epilog
+
+sw.epilog:                                        ; preds = %entry, %sw.bb3, %sw.bb2, %sw.bb1, %sw.bb
+  tail call void @g(i32 10) #2
+  ret void
+}
+
+declare void @g(i32)
+
+; CHECK:		.text
+; CHECK:		f:
+; CHECK:		.seh_proc f
+; CHECK:		b	g
+; CHECK-NEXT:	.p2align	2
+; CHECK-NEXT:	.LJTI0_0:
+; CHECK:		.word	.LBB0_2-.LJTI0_0
+; CHECK:		.word	.LBB0_3-.LJTI0_0
+; CHECK:		.word	.LBB0_4-.LJTI0_0
+; CHECK:		.word	.LBB0_5-.LJTI0_0
+; CHECK:		.section	.xdata,"dr"
+; CHECK:		.seh_handlerdata
+; CHECK:		.text
+; CHECK:		.seh_endproc

Added: vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch-cbz.ll
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch-cbz.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -0,0 +1,40 @@
+; RUN: llc < %s | FileCheck %s
+
+; Make sure the prologue is sane.  (Doesn't need to exactly match this,
+; but the original issue only reproduced if the cbz was immediately
+; after the frame setup.)
+
+; CHECK:      sub     sp, sp, #32
+; CHECK-NEXT: stp     x29, x30, [sp, #16]
+; CHECK-NEXT: add     x29, sp, #16
+; CHECK-NEXT: orr     x1, xzr, #0xfffffffffffffffe
+; CHECK-NEXT: stur    x1, [x29, #-16]
+; CHECK-NEXT: cbz     w0, .LBB0_2
+
+target datalayout = "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128"
+target triple = "aarch64-unknown-windows-msvc19.11.0"
+
+; Function Attrs: uwtable
+define dso_local void @"?f@@YAXH@Z"(i32 %x) local_unnamed_addr #0 personality i8* bitcast (i32 (...)* @__CxxFrameHandler3 to i8*) {
+entry:
+  %cmp = icmp eq i32 %x, 0
+  br i1 %cmp, label %try.cont, label %if.then
+
+if.then:                                          ; preds = %entry
+  invoke void @"?g@@YAXXZ"()
+          to label %try.cont unwind label %catch.dispatch
+
+catch.dispatch:                                   ; preds = %if.then
+  %0 = catchswitch within none [label %catch] unwind to caller
+
+catch:                                            ; preds = %catch.dispatch
+  %1 = catchpad within %0 [i8* null, i32 64, i8* null]
+  catchret from %1 to label %try.cont
+
+try.cont:                                         ; preds = %entry, %if.then, %catch
+  ret void
+}
+
+declare dso_local void @"?g@@YAXXZ"() local_unnamed_addr #1
+
+declare dso_local i32 @__CxxFrameHandler3(...)

Modified: vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch.ll
==============================================================================
--- vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch.ll	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/test/CodeGen/AArch64/wineh-try-catch.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -22,8 +22,8 @@
 ; CHECK:       add     x29, sp, #32
 ; CHECK:       sub     sp, sp, #624
 ; CHECK:       mov     x19, sp
-; CHECK:       orr     x1, xzr, #0xfffffffffffffffe
-; CHECK:       stur    x1, [x19]
+; CHECK:       orr     x0, xzr, #0xfffffffffffffffe
+; CHECK:       stur    x0, [x19]
 
 ; Now check that x is stored at fp - 20.  We check that this is the same
 ; location accessed from the funclet to retrieve x.

Modified: vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/select.ll
==============================================================================
--- vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/select.ll	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/select.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -17,8 +17,10 @@ define i32 @select_i32_bool(i1 zeroext %a, i32 %b, i32
 
 ; CHECK-LABEL: select_i32_bool_nozext:
 ; CHECK-NEXT: .functype select_i32_bool_nozext (i32, i32, i32) -> (i32){{$}}
-; SLOW-NEXT: i32.select $push0=, $1, $2, $0{{$}}
-; SLOW-NEXT: return     $pop0{{$}}
+; SLOW-NEXT: i32.const  $push0=, 1{{$}}
+; SLOW-NEXT: i32.and    $push1=, $0, $pop0{{$}}
+; SLOW-NEXT: i32.select $push2=, $1, $2, $pop1{{$}}
+; SLOW-NEXT: return     $pop2{{$}}
 define i32 @select_i32_bool_nozext(i1 %a, i32 %b, i32 %c) {
   %cond = select i1 %a, i32 %b, i32 %c
   ret i32 %cond
@@ -55,8 +57,10 @@ define i64 @select_i64_bool(i1 zeroext %a, i64 %b, i64
 
 ; CHECK-LABEL: select_i64_bool_nozext:
 ; CHECK-NEXT: .functype select_i64_bool_nozext (i32, i64, i64) -> (i64){{$}}
-; SLOW-NEXT: i64.select $push0=, $1, $2, $0{{$}}
-; SLOW-NEXT: return     $pop0{{$}}
+; SLOW-NEXT: i32.const  $push0=, 1{{$}}
+; SLOW-NEXT: i32.and    $push1=, $0, $pop0{{$}}
+; SLOW-NEXT: i64.select $push2=, $1, $2, $pop1{{$}}
+; SLOW-NEXT: return     $pop2{{$}}
 define i64 @select_i64_bool_nozext(i1 %a, i64 %b, i64 %c) {
   %cond = select i1 %a, i64 %b, i64 %c
   ret i64 %cond
@@ -156,4 +160,17 @@ define double @select_f64_ne(i32 %a, double %b, double
   %cmp = icmp ne i32 %a, 0
   %cond = select i1 %cmp, double %b, double %c
   ret double %cond
+}
+
+; CHECK-LABEL: pr40805:
+; CHECK-NEXT: .functype pr40805 (i32, i32, i32) -> (i32){{$}}
+; SLOW-NEXT: i32.const  $push0=, 1{{$}}
+; SLOW-NEXT: i32.and    $push1=, $0, $pop0{{$}}
+; SLOW-NEXT: i32.select $push2=, $1, $2, $pop1{{$}}
+; SLOW-NEXT: return     $pop2{{$}}
+define i32 @pr40805(i32 %x, i32 %y, i32 %z) {
+  %a = and i32 %x, 1
+  %b = icmp ne i32 %a, 0
+  %c = select i1 %b, i32 %y, i32 %z
+  ret i32 %c
 }

Modified: vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/simd-select.ll
==============================================================================
--- vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/simd-select.ll	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/test/CodeGen/WebAssembly/simd-select.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -29,7 +29,7 @@ define <16 x i8> @vselect_v16i8(<16 x i1> %c, <16 x i8
 ; CHECK-NEXT: i8x16.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <16 x i8> @select_v16i8(i1 %c, <16 x i8> %x, <16 x i8> %y) {
+define <16 x i8> @select_v16i8(i1 zeroext %c, <16 x i8> %x, <16 x i8> %y) {
   %res = select i1 %c, <16 x i8> %x, <16 x i8> %y
   ret <16 x i8> %res
 }
@@ -99,7 +99,7 @@ define <8 x i16> @vselect_v8i16(<8 x i1> %c, <8 x i16>
 ; CHECK-NEXT: i16x8.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <8 x i16> @select_v8i16(i1 %c, <8 x i16> %x, <8 x i16> %y) {
+define <8 x i16> @select_v8i16(i1 zeroext %c, <8 x i16> %x, <8 x i16> %y) {
   %res = select i1 %c, <8 x i16> %x, <8 x i16> %y
   ret <8 x i16> %res
 }
@@ -170,7 +170,7 @@ define <4 x i32> @vselect_v4i32(<4 x i1> %c, <4 x i32>
 ; CHECK-NEXT: i32x4.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <4 x i32> @select_v4i32(i1 %c, <4 x i32> %x, <4 x i32> %y) {
+define <4 x i32> @select_v4i32(i1 zeroext %c, <4 x i32> %x, <4 x i32> %y) {
   %res = select i1 %c, <4 x i32> %x, <4 x i32> %y
   ret <4 x i32> %res
 }
@@ -240,7 +240,7 @@ define <2 x i64> @vselect_v2i64(<2 x i1> %c, <2 x i64>
 ; CHECK-NEXT: i64x2.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <2 x i64> @select_v2i64(i1 %c, <2 x i64> %x, <2 x i64> %y) {
+define <2 x i64> @select_v2i64(i1 zeroext %c, <2 x i64> %x, <2 x i64> %y) {
   %res = select i1 %c, <2 x i64> %x, <2 x i64> %y
   ret <2 x i64> %res
 }
@@ -313,7 +313,7 @@ define <4 x float> @vselect_v4f32(<4 x i1> %c, <4 x fl
 ; CHECK-NEXT: i32x4.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <4 x float> @select_v4f32(i1 %c, <4 x float> %x, <4 x float> %y) {
+define <4 x float> @select_v4f32(i1 zeroext %c, <4 x float> %x, <4 x float> %y) {
   %res = select i1 %c, <4 x float> %x, <4 x float> %y
   ret <4 x float> %res
 }
@@ -383,7 +383,7 @@ define <2 x double> @vselect_v2f64(<2 x i1> %c, <2 x d
 ; CHECK-NEXT: i64x2.splat $push[[L3:[0-9]+]]=, $pop[[L2]]{{$}}
 ; CHECK-NEXT: v128.bitselect $push[[R:[0-9]+]]=, $1, $2, $pop[[L3]]{{$}}
 ; CHECK-NEXT: return $pop[[R]]{{$}}
-define <2 x double> @select_v2f64(i1 %c, <2 x double> %x, <2 x double> %y) {
+define <2 x double> @select_v2f64(i1 zeroext %c, <2 x double> %x, <2 x double> %y) {
   %res = select i1 %c, <2 x double> %x, <2 x double> %y
   ret <2 x double> %res
 }

Modified: vendor/llvm/dist-release_80/test/CodeGen/X86/code-model-elf.ll
==============================================================================
--- vendor/llvm/dist-release_80/test/CodeGen/X86/code-model-elf.ll	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/test/CodeGen/X86/code-model-elf.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -37,7 +37,9 @@ target triple = "x86_64--linux"
 @global_data = dso_local global [10 x i32] [i32 1, i32 2, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0], align 16
 @static_data = internal global [10 x i32] zeroinitializer, align 16
 @extern_data = external global [10 x i32], align 16
+@thread_data = external thread_local global i32, align 4
 
+
 define dso_local i32* @lea_static_data() #0 {
 ; SMALL-STATIC-LABEL: lea_static_data:
 ; SMALL-STATIC:       # %bb.0:
@@ -371,6 +373,70 @@ define dso_local void ()* @lea_extern_fn() #0 {
 ; LARGE-PIC-NEXT:    movq (%rcx,%rax), %rax
 ; LARGE-PIC-NEXT:    retq
   ret void ()* @extern_fn
+}
+
+; FIXME: The result is same for small, medium and large model, because we
+; specify pie option in the test case. And the type of tls is initial exec tls.
+; For pic code. The large model code for pic tls should be emitted as below.
+
+; .L3:
+; leaq	.L3(%rip), %rbx
+; movabsq	$_GLOBAL_OFFSET_TABLE_-.L3, %r11
+; addq	%r11, %rbx
+; leaq	thread_data@TLSGD(%rip), %rdi
+; movabsq	$__tls_get_addr@PLTOFF, %rax
+; addq	%rbx, %rax
+; call	*%rax
+; movl	(%rax), %eax
+
+; The medium and small model code for pic tls should be emitted as below.
+; data16
+; leaq	thread_data@TLSGD(%rip), %rdi
+; data16
+; data16
+; rex64
+; callq	__tls_get_addr@PLT
+; movl	(%rax), %eax
+
+define dso_local i32 @load_thread_data() #0 {
+; SMALL-STATIC-LABEL: load_thread_data:
+; SMALL-STATIC:       # %bb.0:
+; SMALL-STATIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; SMALL-STATIC-NEXT:    movl    %fs:(%rax), %eax
+; SMALL-STATIC-NEXT:    retq
+;
+; MEDIUM-STATIC-LABEL: load_thread_data:
+; MEDIUM-STATIC:       # %bb.0:
+; MEDIUM-STATIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; MEDIUM-STATIC-NEXT:    movl    %fs:(%rax), %eax
+; MEDIUM-STATIC-NEXT:    retq
+;
+; LARGE-STATIC-LABEL: load_thread_data:
+; LARGE-STATIC:       # %bb.0:
+; LARGE-STATIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; LARGE-STATIC-NEXT:    movl    %fs:(%rax), %eax
+; LARGE-STATIC-NEXT:    retq
+;
+; SMALL-PIC-LABEL: load_thread_data:
+; SMALL-PIC:       # %bb.0:
+; SMALL-PIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; SMALL-PIC-NEXT:    movl    %fs:(%rax), %eax
+; SMALL-PIC-NEXT:    retq
+;
+; MEDIUM-PIC-LABEL: load_thread_data:
+; MEDIUM-PIC:       # %bb.0:
+; MEDIUM-PIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; MEDIUM-PIC-NEXT:    movl    %fs:(%rax), %eax
+; MEDIUM-PIC-NEXT:    retq
+;
+; LARGE-PIC-LABEL: load_thread_data:
+; LARGE-PIC:       # %bb.0:
+; LARGE-PIC-NEXT:    movq    thread_data@GOTTPOFF(%rip), %rax
+; LARGE-PIC-NEXT:    movl    %fs:(%rax), %eax
+; LARGE-PIC-NEXT:    retq
+;
+  %1 = load i32, i32* @thread_data, align 4
+  ret i32 %1
 }
 
 attributes #0 = { noinline nounwind uwtable }

Added: vendor/llvm/dist-release_80/test/CodeGen/X86/pr40891.ll
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist-release_80/test/CodeGen/X86/pr40891.ll	Mon Mar  4 18:25:41 2019	(r344765)
@@ -0,0 +1,22 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=avx2 | FileCheck %s
+
+; Make sure this sequence doesn't hang in DAG combine.
+
+define <8 x i32> @foo(<8 x i64> %x, <4 x i64> %y) {
+; CHECK-LABEL: foo:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    vandps %ymm2, %ymm0, %ymm0
+; CHECK-NEXT:    vandps {{\.LCPI.*}}, %ymm1, %ymm1
+; CHECK-NEXT:    vpermilps {{.*#+}} ymm0 = ymm0[0,2,2,3,4,6,6,7]
+; CHECK-NEXT:    vpermpd {{.*#+}} ymm0 = ymm0[0,2,2,3]
+; CHECK-NEXT:    vpermilps {{.*#+}} ymm1 = ymm1[0,2,2,3,4,6,6,7]
+; CHECK-NEXT:    vpermpd {{.*#+}} ymm1 = ymm1[0,2,2,3]
+; CHECK-NEXT:    vinsertf128 $1, %xmm1, %ymm0, %ymm0
+; CHECK-NEXT:    retl
+  %a = shufflevector <4 x i64> %y, <4 x i64> <i64 12345, i64 67890, i64 13579, i64 24680>, <8 x i32> <i32 0, i32 1, i32 2, i32 3, i32 4, i32 5, i32 6, i32 7>
+  %b = and <8 x i64> %x, %a
+  %c = trunc <8 x i64> %b to <8 x i32>
+  ret <8 x i32> %c
+}
+

Modified: vendor/llvm/dist-release_80/tools/llvm-xray/xray-converter.cpp
==============================================================================
--- vendor/llvm/dist-release_80/tools/llvm-xray/xray-converter.cpp	Mon Mar  4 18:15:06 2019	(r344764)
+++ vendor/llvm/dist-release_80/tools/llvm-xray/xray-converter.cpp	Mon Mar  4 18:25:41 2019	(r344765)
@@ -18,7 +18,6 @@
 #include "llvm/Support/EndianStream.h"
 #include "llvm/Support/FileSystem.h"
 #include "llvm/Support/FormatVariadic.h"
-#include "llvm/Support/JSON.h"
 #include "llvm/Support/ScopedPrinter.h"
 #include "llvm/Support/YAMLTraits.h"
 #include "llvm/Support/raw_ostream.h"
@@ -242,6 +241,31 @@ StackTrieNode *findOrCreateStackNode(
   return CurrentStack;
 }
 
+void writeTraceViewerRecord(uint16_t Version, raw_ostream &OS, int32_t FuncId,
+                            uint32_t TId, uint32_t PId, bool Symbolize,
+                            const FuncIdConversionHelper &FuncIdHelper,
+                            double EventTimestampUs,
+                            const StackTrieNode &StackCursor,
+                            StringRef FunctionPhenotype) {
+  OS << "    ";
+  if (Version >= 3) {
+    OS << llvm::formatv(
+        R"({ "name" : "{0}", "ph" : "{1}", "tid" : "{2}", "pid" : "{3}", )"
+        R"("ts" : "{4:f4}", "sf" : "{5}" })",
+        (Symbolize ? FuncIdHelper.SymbolOrNumber(FuncId)
+                   : llvm::to_string(FuncId)),
+        FunctionPhenotype, TId, PId, EventTimestampUs,
+        StackCursor.ExtraData.id);
+  } else {
+    OS << llvm::formatv(
+        R"({ "name" : "{0}", "ph" : "{1}", "tid" : "{2}", "pid" : "1", )"
+        R"("ts" : "{3:f3}", "sf" : "{4}" })",
+        (Symbolize ? FuncIdHelper.SymbolOrNumber(FuncId)
+                   : llvm::to_string(FuncId)),
+        FunctionPhenotype, TId, EventTimestampUs, StackCursor.ExtraData.id);
+  }
+}
+
 } // namespace
 
 void TraceConverter::exportAsChromeTraceEventFormat(const Trace &Records,
@@ -252,14 +276,18 @@ void TraceConverter::exportAsChromeTraceEventFormat(co
 
   unsigned id_counter = 0;
 
+  OS << "{\n  \"traceEvents\": [";
   DenseMap<uint32_t, StackTrieNode *> StackCursorByThreadId{};
   DenseMap<uint32_t, SmallVector<StackTrieNode *, 4>> StackRootsByThreadId{};
   DenseMap<unsigned, StackTrieNode *> StacksByStackId{};
   std::forward_list<StackTrieNode> NodeStore{};
-
-  // Create a JSON Array which will hold all trace events.
-  json::Array TraceEvents;
+  int loop_count = 0;
   for (const auto &R : Records) {
+    if (loop_count++ == 0)
+      OS << "\n";
+    else
+      OS << ",\n";
+
     // Chrome trace event format always wants data in micros.
     // CyclesPerMicro = CycleHertz / 10^6
     // TSC / CyclesPerMicro == TSC * 10^6 / CycleHertz == MicroTimestamp
@@ -284,15 +312,8 @@ void TraceConverter::exportAsChromeTraceEventFormat(co
       // type of B for begin or E for end, thread id, process id,
       // timestamp in microseconds, and a stack frame id. The ids are logged
       // in an id dictionary after the events.
-      TraceEvents.push_back(json::Object({
-          {"name", Symbolize ? FuncIdHelper.SymbolOrNumber(R.FuncId)
-                             : llvm::to_string(R.FuncId)},
-          {"ph", "B"},
-          {"tid", llvm::to_string(R.TId)},
-          {"pid", llvm::to_string(Version >= 3 ? R.PId : 1)},
-          {"ts", llvm::formatv("{0:f4}", EventTimestampUs)},
-          {"sf", llvm::to_string(StackCursor->ExtraData.id)},
-      }));
+      writeTraceViewerRecord(Version, OS, R.FuncId, R.TId, R.PId, Symbolize,
+                             FuncIdHelper, EventTimestampUs, *StackCursor, "B");
       break;
     case RecordTypes::EXIT:
     case RecordTypes::TAIL_EXIT:
@@ -303,51 +324,43 @@ void TraceConverter::exportAsChromeTraceEventFormat(co
       // (And/Or in loop termination below)
       StackTrieNode *PreviousCursor = nullptr;
       do {
-        TraceEvents.push_back(json::Object({
-            {"name", Symbolize
-                         ? FuncIdHelper.SymbolOrNumber(StackCursor->FuncId)
-                         : llvm::to_string(StackCursor->FuncId)},
-            {"ph", "E"},
-            {"tid", llvm::to_string(R.TId)},
-            {"pid", llvm::to_string(Version >= 3 ? R.PId : 1)},
-            {"ts", llvm::formatv("{0:f4}", EventTimestampUs)},
-            {"sf", llvm::to_string(StackCursor->ExtraData.id)},
-        }));
+        if (PreviousCursor != nullptr) {
+          OS << ",\n";
+        }
+        writeTraceViewerRecord(Version, OS, StackCursor->FuncId, R.TId, R.PId,
+                               Symbolize, FuncIdHelper, EventTimestampUs,
+                               *StackCursor, "E");
         PreviousCursor = StackCursor;
         StackCursor = StackCursor->Parent;
       } while (PreviousCursor->FuncId != R.FuncId && StackCursor != nullptr);
       break;
     }
   }
+  OS << "\n  ],\n"; // Close the Trace Events array.
+  OS << "  "
+     << "\"displayTimeUnit\": \"ns\",\n";
 
   // The stackFrames dictionary substantially reduces size of the output file by
   // avoiding repeating the entire call stack of function names for each entry.
-  json::Object StackFrames;
-  for (const auto &Stack : StacksByStackId) {
-    const auto &StackId = Stack.first;
-    const auto &StackFunctionNode = Stack.second;
-    json::Object::iterator It;
-    std::tie(It, std::ignore) = StackFrames.insert({
-        llvm::to_string(StackId),
-        json::Object{
-            {"name",
-             Symbolize ? FuncIdHelper.SymbolOrNumber(StackFunctionNode->FuncId)
-                       : llvm::to_string(StackFunctionNode->FuncId)}},
-    });
-
-    if (StackFunctionNode->Parent != nullptr)
-      It->second.getAsObject()->insert(
-          {"parent", llvm::to_string(StackFunctionNode->Parent->ExtraData.id)});
+  OS << R"(  "stackFrames": {)";
+  int stack_frame_count = 0;
+  for (auto map_iter : StacksByStackId) {
+    if (stack_frame_count++ == 0)
+      OS << "\n";
+    else
+      OS << ",\n";
+    OS << "    ";
+    OS << llvm::formatv(
+        R"("{0}" : { "name" : "{1}")", map_iter.first,
+        (Symbolize ? FuncIdHelper.SymbolOrNumber(map_iter.second->FuncId)
+                   : llvm::to_string(map_iter.second->FuncId)));
+    if (map_iter.second->Parent != nullptr)
+      OS << llvm::formatv(R"(, "parent": "{0}")",
+                          map_iter.second->Parent->ExtraData.id);
+    OS << " }";
   }
-
-  json::Object TraceJSON{
-      {"displayTimeUnit", "ns"},
-      {"traceEvents", std::move(TraceEvents)},
-      {"stackFrames", std::move(StackFrames)},
-  };
-
-  // Pretty-print the JSON using two spaces for indentations.
-  OS << formatv("{0:2}", json::Value(std::move(TraceJSON)));
+  OS << "\n  }\n"; // Close the stack frames map.
+  OS << "}\n";     // Close the JSON entry.
 }
 
 namespace llvm {

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:25:55 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 798F9151E02A;
 Mon,  4 Mar 2019 18:25:55 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 10CDF77D88;
 Mon,  4 Mar 2019 18:25:55 +0000 (UTC) (envelope-from dim@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 C60997E08;
 Mon,  4 Mar 2019 18:25:51 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IPpCw080698;
 Mon, 4 Mar 2019 18:25:51 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IPo9o080690;
 Mon, 4 Mar 2019 18:25:50 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041825.x24IPo9o080690@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:25:50 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344767 - in vendor/clang/dist-release_80: docs
 include/clang/Basic lib/Driver/ToolChains lib/Frontend
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in vendor/clang/dist-release_80: docs include/clang/Basic
 lib/Driver/ToolChains lib/Frontend
X-SVN-Commit-Revision: 344767
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 10CDF77D88
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:25:55 -0000

Author: dim
Date: Mon Mar  4 18:25:50 2019
New Revision: 344767
URL: https://svnweb.freebsd.org/changeset/base/344767

Log:
  Vendor import of clang release_80 branch r355313:
  https://llvm.org/svn/llvm-project/cfe/branches/release_80@355313

Modified:
  vendor/clang/dist-release_80/docs/AttributeReference.rst
  vendor/clang/dist-release_80/docs/ReleaseNotes.rst
  vendor/clang/dist-release_80/include/clang/Basic/AttrDocs.td
  vendor/clang/dist-release_80/lib/Driver/ToolChains/OpenBSD.cpp
  vendor/clang/dist-release_80/lib/Frontend/InitHeaderSearch.cpp

Modified: vendor/clang/dist-release_80/docs/AttributeReference.rst
==============================================================================
--- vendor/clang/dist-release_80/docs/AttributeReference.rst	Mon Mar  4 18:25:47 2019	(r344766)
+++ vendor/clang/dist-release_80/docs/AttributeReference.rst	Mon Mar  4 18:25:50 2019	(r344767)
@@ -1274,13 +1274,13 @@ The ``gnu_inline`` changes the meaning of ``extern inl
 semantics, meaning:
 
 * If any declaration that is declared ``inline`` is not declared ``extern``,
-then the ``inline`` keyword is just a hint. In particular, an out-of-line
-definition is still emitted for a function with external linkage, even if all
-call sites are inlined, unlike in C99 and C++ inline semantics.
+  then the ``inline`` keyword is just a hint. In particular, an out-of-line
+  definition is still emitted for a function with external linkage, even if all
+  call sites are inlined, unlike in C99 and C++ inline semantics.
 
 * If all declarations that are declared ``inline`` are also declared
-``extern``, then the function body is present only for inlining and no
-out-of-line version is emitted.
+  ``extern``, then the function body is present only for inlining and no
+  out-of-line version is emitted.
 
 Some important consequences: ``static inline`` emits an out-of-line
 version if needed, a plain ``inline`` definition emits an out-of-line version
@@ -1315,6 +1315,46 @@ The symbol name of the resolver function is given in q
 The ``ifunc`` attribute may only be used on a function declaration.  A function declaration with an ``ifunc`` attribute is considered to be a definition of the declared entity.  The entity must not have weak linkage; for example, in C++, it cannot be applied to a declaration if a definition at that location would be considered inline.
 
 Not all targets support this attribute. ELF target support depends on both the linker and runtime linker, and is available in at least lld 4.0 and later, binutils 2.20.1 and later, glibc v2.11.1 and later, and FreeBSD 9.1 and later. Non-ELF targets currently do not support this attribute.
+
+
+import_module
+-------------
+.. csv-table:: Supported Syntaxes
+   :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``"
+
+   "``import_module``","``clang::import_module``","``clang::import_module``","","","","Yes"
+
+Clang supports the ``__attribute__((import_module(<module_name>)))`` 
+attribute for the WebAssembly target. This attribute may be attached to a
+function declaration, where it modifies how the symbol is to be imported
+within the WebAssembly linking environment.
+
+WebAssembly imports use a two-level namespace scheme, consisting of a module
+name, which typically identifies a module from which to import, and a field
+name, which typically identifies a field from that module to import. By
+default, module names for C/C++ symbols are assigned automatically by the
+linker. This attribute can be used to override the default behavior, and
+reuqest a specific module name be used instead.
+
+
+import_name
+-----------
+.. csv-table:: Supported Syntaxes
+   :header: "GNU", "C++11", "C2x", "``__declspec``", "Keyword", "``#pragma``", "``#pragma clang attribute``"
+
+   "``import_name``","``clang::import_name``","``clang::import_name``","","","","Yes"
+
+Clang supports the ``__attribute__((import_name(<name>)))`` 
+attribute for the WebAssembly target. This attribute may be attached to a
+function declaration, where it modifies how the symbol is to be imported
+within the WebAssembly linking environment.
+
+WebAssembly imports use a two-level namespace scheme, consisting of a module
+name, which typically identifies a module from which to import, and a field
+name, which typically identifies a field from that module to import. By
+default, field names for C/C++ symbols are the same as their C/C++ symbol
+names. This attribute can be used to override the default behavior, and
+reuqest a specific field name be used instead.
 
 
 internal_linkage

Modified: vendor/clang/dist-release_80/docs/ReleaseNotes.rst
==============================================================================
--- vendor/clang/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:25:47 2019	(r344766)
+++ vendor/clang/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:25:50 2019	(r344767)
@@ -17,8 +17,8 @@ describe the status of Clang in some detail, including
 improvements from the previous release and new feature work. For the
 general LLVM release notes, see `the LLVM
 documentation <https://llvm.org/docs/ReleaseNotes.html>`_. All LLVM
-releases may be downloaded from the `LLVM releases web
-site <https://llvm.org/releases/>`_.
+releases may be downloaded
+from the `LLVM releases web site <https://releases.llvm.org/>`_.
 
 For more information about Clang or LLVM, including information about the
 latest release, please see the `Clang Web Site <https://clang.llvm.org>`_ or the
@@ -175,23 +175,13 @@ New Compiler Flags
   be controlled by the ``-mrelax-pic-calls`` and ``-mno-relax-pic-calls``
   options.
 
-- ...
-
-Deprecated Compiler Flags
--------------------------
-
-The following options are deprecated and ignored. They will be removed in
-future versions of Clang.
-
-- ...
-
 Modified Compiler Flags
 -----------------------
 
-- As of clang 8, `alignof` and `_Alignof` return the ABI alignment of a type,
-  as opposed to the preferred alignment. `__alignof` still returns the
-  preferred alignment. `-fclang-abi-compat=7` (and previous) will make
-  `alignof` and `_Alignof` return preferred alignment again.
+- As of clang 8, ``alignof`` and ``_Alignof`` return the ABI alignment of a type,
+  as opposed to the preferred alignment. ``__alignof`` still returns the
+  preferred alignment. ``-fclang-abi-compat=7`` (and previous) will make
+  ``alignof`` and ``_Alignof`` return preferred alignment again.
 
 
 New Pragmas in Clang
@@ -210,7 +200,7 @@ Attribute Changes in Clang
 Windows Support
 ---------------
 
-- clang-cl now supports the use of the precompiled header options /Yc and /Yu
+- clang-cl now supports the use of the precompiled header options ``/Yc`` and ``/Yu``
   without the filename argument. When these options are used without the
   filename, a `#pragma hdrstop` inside the source marks the end of the
   precompiled code.
@@ -229,36 +219,10 @@ Windows Support
 
 - Allow using Address Sanitizer and Undefined Behaviour Sanitizer on MinGW.
 
-- ...
+- Structured Exception Handling support for ARM64 Windows. The ARM64 Windows
+  target is in pretty good shape now.
 
 
-C Language Changes in Clang
----------------------------
-
-- ...
-
-...
-
-C11 Feature Support
-^^^^^^^^^^^^^^^^^^^
-
-...
-
-C++ Language Changes in Clang
------------------------------
-
-- ...
-
-C++1z Feature Support
-^^^^^^^^^^^^^^^^^^^^^
-
-...
-
-Objective-C Language Changes in Clang
--------------------------------------
-
-...
-
 OpenCL Kernel Language Changes in Clang
 ---------------------------------------
 
@@ -317,17 +281,17 @@ C++ for OpenCL:
 ABI Changes in Clang
 --------------------
 
-- `_Alignof` and `alignof` now return the ABI alignment of a type, as opposed
+- ``_Alignof`` and ``alignof`` now return the ABI alignment of a type, as opposed
   to the preferred alignment.
 
   - This is more in keeping with the language of the standards, as well as
     being compatible with gcc
-  - `__alignof` and `__alignof__` still return the preferred alignment of
+  - ``__alignof`` and ``__alignof__`` still return the preferred alignment of
     a type
   - This shouldn't break any ABI except for things that explicitly ask for
-    `alignas(alignof(T))`.
+    ``alignas(alignof(T))``.
   - If you have interfaces that break with this change, you may wish to switch
-    to `alignas(__alignof(T))`, instead of using the `-fclang-abi-compat`
+    to ``alignas(__alignof(T))``, instead of using the ``-fclang-abi-compat``
     switch.
 
 OpenMP Support in Clang
@@ -364,43 +328,7 @@ New features supported for Cuda devices:
 
 - General performance improvement.
 
-CUDA Support in Clang
----------------------
 
-
-Internal API Changes
---------------------
-
-These are major API changes that have happened since the 7.0.0 release of
-Clang. If upgrading an external codebase that uses Clang as a library,
-this section should help get you past the largest hurdles of upgrading.
-
--  ...
-
-AST Matchers
-------------
-
-- ...
-
-clang-format
-------------
-
-
-- ...
-
-libclang
---------
-
-...
-
-
-Static Analyzer
----------------
-
-- ...
-
-...
-
 .. _release-notes-ubsan:
 
 Undefined Behavior Sanitizer (UBSan)
@@ -476,25 +404,6 @@ Undefined Behavior Sanitizer (UBSan)
           data[x] *= data[x];
       }
 
-Core Analysis Improvements
-==========================
-
-- ...
-
-New Issues Found
-================
-
-- ...
-
-Python Binding Changes
-----------------------
-
-The following methods have been added:
-
--  ...
-
-Significant Known Problems
-==========================
 
 Additional Information
 ======================

Modified: vendor/clang/dist-release_80/include/clang/Basic/AttrDocs.td
==============================================================================
--- vendor/clang/dist-release_80/include/clang/Basic/AttrDocs.td	Mon Mar  4 18:25:47 2019	(r344766)
+++ vendor/clang/dist-release_80/include/clang/Basic/AttrDocs.td	Mon Mar  4 18:25:50 2019	(r344767)
@@ -3821,13 +3821,13 @@ The ``gnu_inline`` changes the meaning of ``extern inl
 semantics, meaning:
 
 * If any declaration that is declared ``inline`` is not declared ``extern``,
-then the ``inline`` keyword is just a hint. In particular, an out-of-line
-definition is still emitted for a function with external linkage, even if all
-call sites are inlined, unlike in C99 and C++ inline semantics.
+  then the ``inline`` keyword is just a hint. In particular, an out-of-line
+  definition is still emitted for a function with external linkage, even if all
+  call sites are inlined, unlike in C99 and C++ inline semantics.
 
 * If all declarations that are declared ``inline`` are also declared
-``extern``, then the function body is present only for inlining and no
-out-of-line version is emitted.
+  ``extern``, then the function body is present only for inlining and no
+  out-of-line version is emitted.
 
 Some important consequences: ``static inline`` emits an out-of-line
 version if needed, a plain ``inline`` definition emits an out-of-line version

Modified: vendor/clang/dist-release_80/lib/Driver/ToolChains/OpenBSD.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/Driver/ToolChains/OpenBSD.cpp	Mon Mar  4 18:25:47 2019	(r344766)
+++ vendor/clang/dist-release_80/lib/Driver/ToolChains/OpenBSD.cpp	Mon Mar  4 18:25:50 2019	(r344767)
@@ -227,9 +227,7 @@ void openbsd::Linker::ConstructJob(Compilation &C, con
     CmdArgs.push_back(Args.MakeArgString(ToolChain.GetFilePath(crtend)));
   }
 
-  const char *Exec = Args.MakeArgString(
-      !NeedsSanitizerDeps ? ToolChain.GetLinkerPath()
-                          : ToolChain.GetProgramPath("ld.lld"));
+  const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
   C.addCommand(llvm::make_unique<Command>(JA, *this, Exec, CmdArgs, Inputs));
 }
 

Modified: vendor/clang/dist-release_80/lib/Frontend/InitHeaderSearch.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/Frontend/InitHeaderSearch.cpp	Mon Mar  4 18:25:47 2019	(r344766)
+++ vendor/clang/dist-release_80/lib/Frontend/InitHeaderSearch.cpp	Mon Mar  4 18:25:50 2019	(r344767)
@@ -433,14 +433,6 @@ void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths
   case llvm::Triple::DragonFly:
     AddPath("/usr/include/c++/5.0", CXXSystem, false);
     break;
-  case llvm::Triple::OpenBSD: {
-    std::string t = triple.getTriple();
-    if (t.substr(0, 6) == "x86_64")
-      t.replace(0, 6, "amd64");
-    AddGnuCPlusPlusIncludePaths("/usr/include/g++",
-                                t, "", "", triple);
-    break;
-  }
   case llvm::Triple::Minix:
     AddGnuCPlusPlusIncludePaths("/usr/gnu/include/c++/4.4.3",
                                 "", "", "", triple);

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:25:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3628C151E030;
 Mon,  4 Mar 2019 18:25:57 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CC4C477DBF;
 Mon,  4 Mar 2019 18:25:56 +0000 (UTC) (envelope-from dim@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 B13AA7E09;
 Mon,  4 Mar 2019 18:25:54 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IPsS4080750;
 Mon, 4 Mar 2019 18:25:54 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IPsrM080749;
 Mon, 4 Mar 2019 18:25:54 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041825.x24IPsrM080749@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:25:54 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344768 - vendor/clang/clang-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/clang/clang-release_80-r355313
X-SVN-Commit-Revision: 344768
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CC4C477DBF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:25:57 -0000

Author: dim
Date: Mon Mar  4 18:25:54 2019
New Revision: 344768
URL: https://svnweb.freebsd.org/changeset/base/344768

Log:
  Tag clang release_80 branch r355313.

Added:
  vendor/clang/clang-release_80-r355313/
     - copied from r344767, vendor/clang/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:25:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2D545151E040;
 Mon,  4 Mar 2019 18:25:58 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 C139C77DC8;
 Mon,  4 Mar 2019 18:25:57 +0000 (UTC) (envelope-from dim@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 9D7EA7E0B;
 Mon,  4 Mar 2019 18:25:57 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IPvWH080796;
 Mon, 4 Mar 2019 18:25:57 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IPvuU080795;
 Mon, 4 Mar 2019 18:25:57 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041825.x24IPvuU080795@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:25:57 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344769 -
 vendor/compiler-rt/compiler-rt-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/compiler-rt/compiler-rt-release_80-r355313
X-SVN-Commit-Revision: 344769
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C139C77DC8
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:25:58 -0000

Author: dim
Date: Mon Mar  4 18:25:57 2019
New Revision: 344769
URL: https://svnweb.freebsd.org/changeset/base/344769

Log:
  Tag compiler-rt release_80 branch r355313.

Added:
  vendor/compiler-rt/compiler-rt-release_80-r355313/
     - copied from r344768, vendor/compiler-rt/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:26:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 49CE1151E0C0;
 Mon,  4 Mar 2019 18:26:07 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0BB1F77E12;
 Mon,  4 Mar 2019 18:26:01 +0000 (UTC) (envelope-from dim@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 2849F7E0C;
 Mon,  4 Mar 2019 18:26:00 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IQ0ka080850;
 Mon, 4 Mar 2019 18:26:00 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IQ0ci080849;
 Mon, 4 Mar 2019 18:26:00 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041826.x24IQ0ci080849@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:26:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344770 - vendor/libc++/dist-release_80/docs
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/libc++/dist-release_80/docs
X-SVN-Commit-Revision: 344770
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0BB1F77E12
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.976,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:26:07 -0000

Author: dim
Date: Mon Mar  4 18:25:59 2019
New Revision: 344770
URL: https://svnweb.freebsd.org/changeset/base/344770

Log:
  Vendor import of libc++ release_80 branch r355313:
  https://llvm.org/svn/llvm-project/libcxx/branches/release_80@355313

Modified:
  vendor/libc++/dist-release_80/docs/ReleaseNotes.rst

Modified: vendor/libc++/dist-release_80/docs/ReleaseNotes.rst
==============================================================================
--- vendor/libc++/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:25:57 2019	(r344769)
+++ vendor/libc++/dist-release_80/docs/ReleaseNotes.rst	Mon Mar  4 18:25:59 2019	(r344770)
@@ -16,16 +16,13 @@ part of the LLVM Compiler Infrastructure, release 8.0.
 status of libc++ in some detail, including major improvements from the previous
 release and new feature work. For the general LLVM release notes, see `the LLVM
 documentation <https://llvm.org/docs/ReleaseNotes.html>`_. All LLVM releases may
-be downloaded from the `LLVM releases web site <https://llvm.org/releases/>`_.
+be downloaded from the `LLVM releases web site <https://releases.llvm.org/>`_.
 
 For more information about libc++, please see the `Libc++ Web Site
 <https://libcxx.llvm.org>`_ or the `LLVM Web Site <https://llvm.org>`_.
 
 What's New in Libc++ 8.0.0?
 ===========================
-
-New Features
-------------
 
 API Changes
 -----------

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:26:12 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 55E7E151E0E4;
 Mon,  4 Mar 2019 18:26:12 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B616277E97;
 Mon,  4 Mar 2019 18:26:05 +0000 (UTC) (envelope-from dim@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 DBEF57E0D;
 Mon,  4 Mar 2019 18:26:02 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IQ2gi080898;
 Mon, 4 Mar 2019 18:26:02 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IQ22f080897;
 Mon, 4 Mar 2019 18:26:02 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041826.x24IQ22f080897@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:26:02 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344771 - vendor/libc++/libc++-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/libc++/libc++-release_80-r355313
X-SVN-Commit-Revision: 344771
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B616277E97
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:26:12 -0000

Author: dim
Date: Mon Mar  4 18:26:02 2019
New Revision: 344771
URL: https://svnweb.freebsd.org/changeset/base/344771

Log:
  Tag libc++ release_80 branch r355313.

Added:
  vendor/libc++/libc++-release_80-r355313/
     - copied from r344770, vendor/libc++/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:26:13 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AA0D0151E0EC;
 Mon,  4 Mar 2019 18:26:13 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CB12477EBA;
 Mon,  4 Mar 2019 18:26:06 +0000 (UTC) (envelope-from dim@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 D08307E0E;
 Mon,  4 Mar 2019 18:26:05 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IQ59r080948;
 Mon, 4 Mar 2019 18:26:05 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IQ5ol080947;
 Mon, 4 Mar 2019 18:26:05 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041826.x24IQ5ol080947@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:26:05 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344772 - vendor/lld/lld-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/lld/lld-release_80-r355313
X-SVN-Commit-Revision: 344772
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CB12477EBA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:26:13 -0000

Author: dim
Date: Mon Mar  4 18:26:05 2019
New Revision: 344772
URL: https://svnweb.freebsd.org/changeset/base/344772

Log:
  Tag lld release_80 branch r355313.

Added:
  vendor/lld/lld-release_80-r355313/
     - copied from r344771, vendor/lld/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 18:26:18 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B0AE8151E152;
 Mon,  4 Mar 2019 18:26:18 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CB8E177F46;
 Mon,  4 Mar 2019 18:26:11 +0000 (UTC) (envelope-from dim@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 A15CF7E0F;
 Mon,  4 Mar 2019 18:26:08 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24IQ8NB080994;
 Mon, 4 Mar 2019 18:26:08 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24IQ86V080993;
 Mon, 4 Mar 2019 18:26:08 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041826.x24IQ86V080993@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 18:26:08 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344773 - vendor/lldb/lldb-release_80-r355313
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/lldb/lldb-release_80-r355313
X-SVN-Commit-Revision: 344773
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CB8E177F46
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 18:26:18 -0000

Author: dim
Date: Mon Mar  4 18:26:08 2019
New Revision: 344773
URL: https://svnweb.freebsd.org/changeset/base/344773

Log:
  Tag lldb release_80 branch r355313.

Added:
  vendor/lldb/lldb-release_80-r355313/
     - copied from r344772, vendor/lldb/dist-release_80/

From owner-svn-src-all@freebsd.org  Mon Mar  4 19:24:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 70DC6151FEAB;
 Mon,  4 Mar 2019 19:24:03 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: from mail-ot1-f47.google.com (mail-ot1-f47.google.com
 [209.85.210.47])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 0244D833A9;
 Mon,  4 Mar 2019 19:24:02 +0000 (UTC)
 (envelope-from etnapierala@gmail.com)
Received: by mail-ot1-f47.google.com with SMTP id q24so5237984otk.0;
 Mon, 04 Mar 2019 11:24:02 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc:content-transfer-encoding;
 bh=Rpc3+qJDe1k+uwfQYKyN0DdeG5qDN52frZis2ZZ8dkY=;
 b=kpjjCM+Um7vMGAuKUNMPZw9PsASpLomH7w6iCNrMRQuH8AQqPLVbTh0Z/O0Xw2t3eE
 zRFzvZU6zv5t0nGc/++0zCyOxg9DOXyN/LVZPz0xGiwi27RDYxLeYk2PXdasZ2ceBWb0
 ij5aofK2CpX18ETZzk2O2vKk6XS1cNl4WvdoElLoXDtsv1rV2kwxjBOMORgqFHez58vP
 7sm83eGEEpyH6suKmtRP4WHueakEOdo+EH8bWH8kqvj3THthYxqxP+pi+Sw75MnCwcaF
 bgIHraMFxazkoIK4u3FrnZQ/X41utz0P2cJ8zi+Fpyera7C8ex+GJ4jCpuOvATgH/pB9
 ysfw==
X-Gm-Message-State: APjAAAWsbCg0AcW3sfds/hypJofz6OedzRYaviTEWHkRHRjxJY0HIVL5
 oXxQ4x8Mp1cR9mZJ39uy0t5Lg/EyD7/3E0gfviqSEw==
X-Google-Smtp-Source: APXvYqy19rf0pIPheNXhJFmzlxnyOfl8bqIOzCI191/abmW0q7nShYriqXXgZY0W/3bTjSAC6xZVmf86VYreFTKskGs=
X-Received: by 2002:a9d:7dcd:: with SMTP id k13mr12096043otn.205.1551713210293; 
 Mon, 04 Mar 2019 07:26:50 -0800 (PST)
MIME-Version: 1.0
References: <201903041302.x24D2aG0093620@repo.freebsd.org>
 <20190304132021.GN68879@kib.kiev.ua>
 <CAFLM3-pLSQ8sBawC9YBTgxdMKhtNtoQG1bn2QVDuw-2tDKb4Gg@mail.gmail.com>
 <20190304143021.GO68879@kib.kiev.ua>
 <FF146246-2FFD-4FC7-9720-7D72D1AFEB29@cschubert.com>
In-Reply-To: <FF146246-2FFD-4FC7-9720-7D72D1AFEB29@cschubert.com>
From: Edward Napierala <trasz@freebsd.org>
Date: Mon, 4 Mar 2019 15:26:39 +0000
Message-ID: <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gmail.com>
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
To: Cy Schubert <Cy.Schubert@cschubert.com>
Cc: Konstantin Belousov <kostikbel@gmail.com>,
 src-committers <src-committers@freebsd.org>, 
 svn-src-all@freebsd.org, svn-src-head@freebsd.org
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Rspamd-Queue-Id: 0244D833A9
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.99)[-0.989,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 19:24:03 -0000

pon., 4 mar 2019 o 15:17 Cy Schubert <Cy.Schubert@cschubert.com> napisa=C5=
=82(a):
>
> On March 4, 2019 6:30:21 AM PST, Konstantin Belousov <kostikbel@gmail.com=
> wrote:
> >On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
> >> pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com>
> >napisa=C5=82(a):
> >> > > +     p =3D curthread;
> >> > Why do you name it 'p', which is typical for process, and not 'td',
> >you are
> >> > changing most of the code anyway.
> >>
> >> To keep the diff size smaller.  You're right, this touches a lot of
> >stuff,
> >> but most of those added lines are temporary anyway - they will be
> >> removed later, when the td is pushed down even more.
> >But if you create code churn, doing it only half way is worse.
> >
> >>
> >> > Also I am curious why. It is certainly fine to remove td when it is
> >used
> >> > as a formal placeholder argument only. But when the first action in
> >the
> >> > function is evaluation of curthread() it becomes less obvious.
> >>
> >> Again, many/most of those are temporary.  I'm trying to push td down
> >> in small steps, "layer by layer", so it's easy to review.
> >>
> >> > curthread() become very cheap on modern amd64, I am not so sure
> >about
> >> > older machines or non-x86 cases.
> >>
> >> The main reason is readability.  Right now there's no easy way to
> >tell whether
> >> a function can be passed any td, or if it must be curthread.
> >I must admit that this is the weirdnest argument against 'td' that I
> >ever
> >heard.  I saw more or less reasonable argumentation
> >- that using less arguments make one more register for argument passing
> >  (amd64 has 6 input arg regs),
> >- that less arguments make smaller call code.
> >But trust me, in all cases where function can take td !=3D curthread, it
> >is
> >either obvious or well-known for anybody who works with that code.
> >
> >Before you start doing a lot of small changes (AKA continous churn)
> >please formulate your goals and get some public feedback.  My immediate
> >question that I want answered before you ever start touching the code,
> >is what you plan to do with
> >       sys_syscall(struct thread *td, uap)
>
> Agreed on all points. At the very least this group of commits should be r=
eviewed on phabricator.

It has been, even though they are pretty much mechanical changes.

> Can we back all these commits out until there is a proper review, please?

The review from the NFS maintainer is not enough?

From owner-svn-src-all@freebsd.org  Mon Mar  4 19:40:12 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 06B8215205B2;
 Mon,  4 Mar 2019 19:40:11 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 A57F883CCD;
 Mon,  4 Mar 2019 19:40:10 +0000 (UTC) (envelope-from dim@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 880A88A5A;
 Mon,  4 Mar 2019 19:40:10 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24JeAne019066;
 Mon, 4 Mar 2019 19:40:10 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24Je3bg019034;
 Mon, 4 Mar 2019 19:40:03 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903041940.x24Je3bg019034@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 4 Mar 2019 19:40:03 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344779 - in head: . contrib/compiler-rt
 contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray
 contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/builtins contrib/com...
X-SVN-Group: head
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in head: . contrib/compiler-rt
 contrib/compiler-rt/include/sanitizer contrib/compiler-rt/include/xray
 contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/builtins
 contrib/compiler-rt/lib/builtins/arm...
X-SVN-Commit-Revision: 344779
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A57F883CCD
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.965,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 19:40:12 -0000

Author: dim
Date: Mon Mar  4 19:39:59 2019
New Revision: 344779
URL: https://svnweb.freebsd.org/changeset/base/344779

Log:
  Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to
  the upstream release_80 branch r355313 (effectively, 8.0.0 rc3).  The
  release will follow very soon, but no more functional changes are
  expected.
  
  Release notes for llvm, clang and lld 8.0.0 will soon be available here:
  <https://releases.llvm.org/8.0.0/docs/ReleaseNotes.html>
  <https://releases.llvm.org/8.0.0/tools/clang/docs/ReleaseNotes.html>
  <https://releases.llvm.org/8.0.0/tools/lld/docs/ReleaseNotes.html>
  
  PR:		236062
  Relnotes:	yes
  MFC after:	1 month

Added:
  head/contrib/compiler-rt/lib/builtins/ppc/fixunstfti.c
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/builtins/ppc/fixunstfti.c
  head/contrib/compiler-rt/lib/builtins/ppc/floattitf.c
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/builtins/ppc/floattitf.c
  head/contrib/compiler-rt/lib/esan/esan_sideline_bsd.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/esan/esan_sideline_bsd.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltins.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltins.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltinsMsvc.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/fuzzer/FuzzerBuiltinsMsvc.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWindows.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWindows.cpp
  head/contrib/compiler-rt/lib/hwasan/hwasan_checks.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/hwasan/hwasan_checks.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_memintrinsics.cc
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/hwasan/hwasan_memintrinsics.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.cc
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/hwasan/hwasan_thread_list.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_local_address_space_view.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_local_address_space_view.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cc
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_netbsd.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cc
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_ring_buffer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_ring_buffer.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.cc
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_type_traits.h
  head/contrib/compiler-rt/lib/xray/xray_fdr_controller.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/xray/xray_fdr_controller.h
  head/contrib/compiler-rt/lib/xray/xray_fdr_log_writer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/compiler-rt/lib/xray/xray_fdr_log_writer.h
  head/contrib/libc++/include/bit
     - copied unchanged from r344778, projects/clang800-import/contrib/libc++/include/bit
  head/contrib/llvm/include/llvm-c/Error.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm-c/Error.h
  head/contrib/llvm/include/llvm-c/OptRemarks.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm-c/OptRemarks.h
  head/contrib/llvm/include/llvm-c/Transforms/AggressiveInstCombine.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm-c/Transforms/AggressiveInstCombine.h
  head/contrib/llvm/include/llvm-c/Transforms/Coroutines.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm-c/Transforms/Coroutines.h
  head/contrib/llvm/include/llvm/ADT/bit.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/ADT/bit.h
  head/contrib/llvm/include/llvm/Analysis/GuardUtils.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/GuardUtils.h
  head/contrib/llvm/include/llvm/Analysis/IVDescriptors.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/IVDescriptors.h
  head/contrib/llvm/include/llvm/Analysis/IndirectCallVisitor.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/IndirectCallVisitor.h
  head/contrib/llvm/include/llvm/Analysis/InstructionPrecedenceTracking.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/InstructionPrecedenceTracking.h
  head/contrib/llvm/include/llvm/Analysis/LegacyDivergenceAnalysis.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/LegacyDivergenceAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/OrderedInstructions.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/OrderedInstructions.h
  head/contrib/llvm/include/llvm/Analysis/StackSafetyAnalysis.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/StackSafetyAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/SyncDependenceAnalysis.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Analysis/SyncDependenceAnalysis.h
  head/contrib/llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/AMDGPUMetadataVerifier.h
  head/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/MSP430.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/ELFRelocs/MSP430.def
  head/contrib/llvm/include/llvm/BinaryFormat/MsgPack.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/MsgPack.def
  head/contrib/llvm/include/llvm/BinaryFormat/MsgPack.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/MsgPack.h
  head/contrib/llvm/include/llvm/BinaryFormat/MsgPackReader.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/MsgPackReader.h
  head/contrib/llvm/include/llvm/BinaryFormat/MsgPackTypes.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/MsgPackTypes.h
  head/contrib/llvm/include/llvm/BinaryFormat/MsgPackWriter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/BinaryFormat/MsgPackWriter.h
  head/contrib/llvm/include/llvm/CodeGen/AsmPrinterHandler.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/AsmPrinterHandler.h
  head/contrib/llvm/include/llvm/CodeGen/BuiltinGCs.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/BuiltinGCs.h
  head/contrib/llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
  head/contrib/llvm/include/llvm/CodeGen/DebugHandlerBase.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/DebugHandlerBase.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
  head/contrib/llvm/include/llvm/CodeGen/MachinePipeliner.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/CodeGen/MachinePipeliner.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordHelpers.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecordHelpers.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecordHelpers.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumFrameData.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumFrameData.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAFrameData.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAFrameData.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBFrameData.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBFrameData.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumGlobals.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumGlobals.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSymbolEnumerator.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSymbolEnumerator.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeArray.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeArray.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeBuiltin.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeBuiltin.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeFunctionSig.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeFunctionSig.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypePointer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypePointer.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeTypedef.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeTypedef.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeUDT.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeUDT.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeVTShape.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeVTShape.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h
  head/contrib/llvm/include/llvm/Demangle/Compiler.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/Compiler.h
  head/contrib/llvm/include/llvm/Demangle/ItaniumDemangle.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/ItaniumDemangle.h
  head/contrib/llvm/include/llvm/Demangle/MicrosoftDemangle.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/MicrosoftDemangle.h
  head/contrib/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h
  head/contrib/llvm/include/llvm/Demangle/StringView.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/StringView.h
  head/contrib/llvm/include/llvm/Demangle/Utility.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Demangle/Utility.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/JITTargetMachineBuilder.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/ThreadSafeModule.h
  head/contrib/llvm/include/llvm/IR/CFGDiff.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/IR/CFGDiff.h
  head/contrib/llvm/include/llvm/IR/IntrinsicsRISCV.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/IR/IntrinsicsRISCV.td
  head/contrib/llvm/include/llvm/IR/PassInstrumentation.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/IR/PassInstrumentation.h
  head/contrib/llvm/include/llvm/IR/PassTimingInfo.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/IR/PassTimingInfo.h
  head/contrib/llvm/include/llvm/LTO/SummaryBasedOptimizations.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/LTO/SummaryBasedOptimizations.h
  head/contrib/llvm/include/llvm/MCA/
     - copied from r344778, projects/clang800-import/contrib/llvm/include/llvm/MCA/
  head/contrib/llvm/include/llvm/Passes/StandardInstrumentations.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Passes/StandardInstrumentations.h
  head/contrib/llvm/include/llvm/Support/AArch64TargetParser.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/AArch64TargetParser.h
  head/contrib/llvm/include/llvm/Support/ARMTargetParser.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/ARMTargetParser.h
  head/contrib/llvm/include/llvm/Support/BuryPointer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/BuryPointer.h
  head/contrib/llvm/include/llvm/Support/CFGUpdate.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/CFGUpdate.h
  head/contrib/llvm/include/llvm/Support/FileCheck.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/FileCheck.h
  head/contrib/llvm/include/llvm/Support/ItaniumManglingCanonicalizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/ItaniumManglingCanonicalizer.h
  head/contrib/llvm/include/llvm/Support/MSVCErrorWorkarounds.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/MSVCErrorWorkarounds.h
  head/contrib/llvm/include/llvm/Support/SymbolRemappingReader.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/SymbolRemappingReader.h
  head/contrib/llvm/include/llvm/Support/VirtualFileSystem.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Support/VirtualFileSystem.h
  head/contrib/llvm/include/llvm/Target/TargetPfmCounters.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Target/TargetPfmCounters.td
  head/contrib/llvm/include/llvm/TextAPI/
     - copied from r344778, projects/clang800-import/contrib/llvm/include/llvm/TextAPI/
  head/contrib/llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
  head/contrib/llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
  head/contrib/llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
  head/contrib/llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/Scalarizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Scalar/Scalarizer.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
  head/contrib/llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
  head/contrib/llvm/include/llvm/Transforms/Utils/GuardUtils.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Utils/GuardUtils.h
  head/contrib/llvm/include/llvm/Transforms/Vectorize/LoadStoreVectorizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/Transforms/Vectorize/LoadStoreVectorizer.h
  head/contrib/llvm/include/llvm/XRay/BlockIndexer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/BlockIndexer.h
  head/contrib/llvm/include/llvm/XRay/BlockPrinter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/BlockPrinter.h
  head/contrib/llvm/include/llvm/XRay/BlockVerifier.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/BlockVerifier.h
  head/contrib/llvm/include/llvm/XRay/FDRLogBuilder.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRLogBuilder.h
  head/contrib/llvm/include/llvm/XRay/FDRRecordConsumer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRRecordConsumer.h
  head/contrib/llvm/include/llvm/XRay/FDRRecordProducer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRRecordProducer.h
  head/contrib/llvm/include/llvm/XRay/FDRRecords.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRRecords.h
  head/contrib/llvm/include/llvm/XRay/FDRTraceExpander.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRTraceExpander.h
  head/contrib/llvm/include/llvm/XRay/FDRTraceWriter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FDRTraceWriter.h
  head/contrib/llvm/include/llvm/XRay/FileHeaderReader.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/FileHeaderReader.h
  head/contrib/llvm/include/llvm/XRay/Profile.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/Profile.h
  head/contrib/llvm/include/llvm/XRay/RecordPrinter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/XRay/RecordPrinter.h
  head/contrib/llvm/include/llvm/module.extern.modulemap
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/module.extern.modulemap
  head/contrib/llvm/include/llvm/module.install.modulemap
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/include/llvm/module.install.modulemap
  head/contrib/llvm/lib/Analysis/GuardUtils.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/GuardUtils.cpp
  head/contrib/llvm/lib/Analysis/IVDescriptors.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/IVDescriptors.cpp
  head/contrib/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp
  head/contrib/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp
  head/contrib/llvm/lib/Analysis/OrderedInstructions.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/OrderedInstructions.cpp
  head/contrib/llvm/lib/Analysis/StackSafetyAnalysis.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/StackSafetyAnalysis.cpp
  head/contrib/llvm/lib/Analysis/SyncDependenceAnalysis.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Analysis/SyncDependenceAnalysis.cpp
  head/contrib/llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp
  head/contrib/llvm/lib/BinaryFormat/MsgPackReader.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/BinaryFormat/MsgPackReader.cpp
  head/contrib/llvm/lib/BinaryFormat/MsgPackTypes.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/BinaryFormat/MsgPackTypes.cpp
  head/contrib/llvm/lib/BinaryFormat/MsgPackWriter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/BinaryFormat/MsgPackWriter.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/AsmPrinter/WasmException.h
  head/contrib/llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/GISelChangeObserver.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/GlobalISel/GISelChangeObserver.cpp
  head/contrib/llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordHelpers.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordHelpers.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/CodeView/TypeRecordHelpers.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumFrameData.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumFrameData.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAFrameData.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAFrameData.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumGlobals.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumGlobals.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSymbolEnumerator.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSymbolEnumerator.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeArray.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeArray.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeBuiltin.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeBuiltin.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeFunctionSig.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypePointer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypePointer.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeTypedef.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeTypedef.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeUDT.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeUDT.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeVTShape.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/NativeTypeVTShape.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp
  head/contrib/llvm/lib/Demangle/MicrosoftDemangleNodes.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Demangle/MicrosoftDemangleNodes.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
  head/contrib/llvm/lib/IR/PassInstrumentation.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/IR/PassInstrumentation.cpp
  head/contrib/llvm/lib/IR/PassTimingInfo.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/IR/PassTimingInfo.cpp
  head/contrib/llvm/lib/LTO/SummaryBasedOptimizations.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/LTO/SummaryBasedOptimizations.cpp
  head/contrib/llvm/lib/MC/MCParser/WasmAsmParser.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/MC/MCParser/WasmAsmParser.cpp
  head/contrib/llvm/lib/MCA/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/MCA/
  head/contrib/llvm/lib/OptRemarks/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/OptRemarks/
  head/contrib/llvm/lib/Passes/StandardInstrumentations.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Passes/StandardInstrumentations.cpp
  head/contrib/llvm/lib/Support/AArch64TargetParser.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/AArch64TargetParser.cpp
  head/contrib/llvm/lib/Support/ARMTargetParser.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/ARMTargetParser.cpp
  head/contrib/llvm/lib/Support/BuryPointer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/BuryPointer.cpp
  head/contrib/llvm/lib/Support/FileCheck.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/FileCheck.cpp
  head/contrib/llvm/lib/Support/ItaniumManglingCanonicalizer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/ItaniumManglingCanonicalizer.cpp
  head/contrib/llvm/lib/Support/SymbolRemappingReader.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/SymbolRemappingReader.cpp
  head/contrib/llvm/lib/Support/VirtualFileSystem.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Support/VirtualFileSystem.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64BranchTargets.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64CompressJumpTables.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64PfmCounters.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64PfmCounters.td
  head/contrib/llvm/lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM4.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM4.td
  head/contrib/llvm/lib/Target/AArch64/AArch64SchedPredExynos.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64SchedPredExynos.td
  head/contrib/llvm/lib/Target/AArch64/AArch64SchedPredicates.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64SchedPredicates.td
  head/contrib/llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AArch64/AArch64SpeculationHardening.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUFixFunctionBitcasts.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUFixFunctionBitcasts.cpp
  head/contrib/llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIAddIMGInit.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/SIAddIMGInit.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIFixupVectorISel.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/SIFixupVectorISel.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIModeRegister.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/AMDGPU/SIModeRegister.cpp
  head/contrib/llvm/lib/Target/BPF/BPFMIChecking.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/BPF/BPFMIChecking.cpp
  head/contrib/llvm/lib/Target/BPF/BTF.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/BPF/BTF.def
  head/contrib/llvm/lib/Target/BPF/BTF.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/BPF/BTF.h
  head/contrib/llvm/lib/Target/BPF/BTFDebug.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/BPF/BTFDebug.cpp
  head/contrib/llvm/lib/Target/BPF/BTFDebug.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/BPF/BTFDebug.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Hexagon/HexagonDepDecoders.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV5.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV5.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV5.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV5.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV66.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV66.td
  head/contrib/llvm/lib/Target/MSP430/AsmParser/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/AsmParser/
  head/contrib/llvm/lib/Target/MSP430/Disassembler/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/Disassembler/
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430AsmBackend.cpp
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFStreamer.cpp
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430FixupKinds.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430FixupKinds.h
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCCodeEmitter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCCodeEmitter.cpp
  head/contrib/llvm/lib/Target/Mips/MipsPreLegalizerCombiner.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Mips/MipsPreLegalizerCombiner.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/NVPTX/NVPTXProxyRegErasure.cpp
  head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h
  head/contrib/llvm/lib/Target/PowerPC/PPCPfmCounters.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/PowerPC/PPCPfmCounters.td
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
  head/contrib/llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVSystemOperands.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/RISCV/RISCVSystemOperands.td
  head/contrib/llvm/lib/Target/RISCV/Utils/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/Target/RISCV/Utils/
  head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyEHRestoreStackPointer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyEHRestoreStackPointer.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp
  head/contrib/llvm/lib/Target/X86/X86CondBrFolding.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/X86/X86CondBrFolding.cpp
  head/contrib/llvm/lib/Target/X86/X86DiscriminateMemOps.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/X86/X86DiscriminateMemOps.cpp
  head/contrib/llvm/lib/Target/X86/X86InsertPrefetch.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/X86/X86InsertPrefetch.cpp
  head/contrib/llvm/lib/Target/X86/X86ScheduleBdVer2.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Target/X86/X86ScheduleBdVer2.td
  head/contrib/llvm/lib/Testing/Support/SupportHelpers.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Testing/Support/SupportHelpers.cpp
  head/contrib/llvm/lib/TextAPI/
     - copied from r344778, projects/clang800-import/contrib/llvm/lib/TextAPI/
  head/contrib/llvm/lib/Transforms/IPO/HotColdSplitting.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/IPO/HotColdSplitting.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
  head/contrib/llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
  head/contrib/llvm/lib/Transforms/Scalar/WarnMissedTransforms.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Scalar/WarnMissedTransforms.cpp
  head/contrib/llvm/lib/Transforms/Utils/CanonicalizeAliases.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Utils/CanonicalizeAliases.cpp
  head/contrib/llvm/lib/Transforms/Utils/GuardUtils.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Utils/GuardUtils.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
  head/contrib/llvm/lib/XRay/BlockIndexer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/BlockIndexer.cpp
  head/contrib/llvm/lib/XRay/BlockPrinter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/BlockPrinter.cpp
  head/contrib/llvm/lib/XRay/BlockVerifier.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/BlockVerifier.cpp
  head/contrib/llvm/lib/XRay/FDRRecordProducer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/FDRRecordProducer.cpp
  head/contrib/llvm/lib/XRay/FDRRecords.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/FDRRecords.cpp
  head/contrib/llvm/lib/XRay/FDRTraceExpander.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/FDRTraceExpander.cpp
  head/contrib/llvm/lib/XRay/FDRTraceWriter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/FDRTraceWriter.cpp
  head/contrib/llvm/lib/XRay/FileHeaderReader.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/FileHeaderReader.cpp
  head/contrib/llvm/lib/XRay/LogBuilderConsumer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/LogBuilderConsumer.cpp
  head/contrib/llvm/lib/XRay/Profile.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/Profile.cpp
  head/contrib/llvm/lib/XRay/RecordInitializer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/RecordInitializer.cpp
  head/contrib/llvm/lib/XRay/RecordPrinter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/lib/XRay/RecordPrinter.cpp
  head/contrib/llvm/tools/clang/include/clang/AST/ASTContextAllocate.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/ASTContextAllocate.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTDumperUtils.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/ASTDumperUtils.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTImporterLookupTable.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/ASTImporterLookupTable.h
  head/contrib/llvm/tools/clang/include/clang/AST/AttrVisitor.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/AttrVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/FormatString.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/FormatString.h
  head/contrib/llvm/tools/clang/include/clang/AST/OSLog.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/OSLog.h
  head/contrib/llvm/tools/clang/include/clang/AST/TemplateArgumentVisitor.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/TemplateArgumentVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/TextNodeDumper.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/AST/TextNodeDumper.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/SelectorExtras.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Analysis/SelectorExtras.h
  head/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.def
  head/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/CodeGenOptions.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAST.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAST.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAnalysis.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticAnalysis.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticComment.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticComment.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTU.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTU.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriver.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriver.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontend.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontend.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLex.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLex.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParse.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParse.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticRefactoring.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticRefactoring.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSema.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSema.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerialization.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerialization.h
  head/contrib/llvm/tools/clang/include/clang/Basic/FixedPoint.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/FixedPoint.h
  head/contrib/llvm/tools/clang/include/clang/Basic/MSP430Target.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/MSP430Target.def
  head/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensionTypes.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensionTypes.def
  head/contrib/llvm/tools/clang/include/clang/Driver/DarwinSDKInfo.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Driver/DarwinSDKInfo.h
  head/contrib/llvm/tools/clang/include/clang/Parse/LoopHint.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Parse/LoopHint.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/PCHContainerOperations.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/Serialization/PCHContainerOperations.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/RetainSummaryManager.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/RetainSummaryManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h
  head/contrib/llvm/tools/clang/lib/AST/ASTImporterLookupTable.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/ASTImporterLookupTable.cpp
  head/contrib/llvm/tools/clang/lib/AST/FormatString.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/FormatString.cpp
  head/contrib/llvm/tools/clang/lib/AST/FormatStringParsing.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/FormatStringParsing.h
  head/contrib/llvm/tools/clang/lib/AST/OSLog.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/OSLog.cpp
  head/contrib/llvm/tools/clang/lib/AST/PrintfFormatString.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/PrintfFormatString.cpp
  head/contrib/llvm/tools/clang/lib/AST/ScanfFormatString.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/ScanfFormatString.cpp
  head/contrib/llvm/tools/clang/lib/AST/TextNodeDumper.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/AST/TextNodeDumper.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ExprMutationAnalyzer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Analysis/ExprMutationAnalyzer.cpp
  head/contrib/llvm/tools/clang/lib/Basic/CodeGenOptions.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Basic/CodeGenOptions.cpp
  head/contrib/llvm/tools/clang/lib/Basic/FixedPoint.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Basic/FixedPoint.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Basic/Targets/ARC.h
  head/contrib/llvm/tools/clang/lib/Driver/DarwinSDKInfo.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/DarwinSDKInfo.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hurd.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSP430.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCVToolchain.h
  head/contrib/llvm/tools/clang/lib/Serialization/PCHContainerOperations.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/Serialization/PCHContainerOperations.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObject/
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RetainSummaryManager.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RetainSummaryManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/TaintManager.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/TaintManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/MSP430.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lld/ELF/Arch/MSP430.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/RISCV.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lld/ELF/Arch/RISCV.cpp
  head/contrib/llvm/tools/lld/ELF/DWARF.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lld/ELF/DWARF.cpp
  head/contrib/llvm/tools/lld/ELF/DWARF.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lld/ELF/DWARF.h
  head/contrib/llvm/tools/lld/docs/missingkeyfunction.rst
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lld/docs/missingkeyfunction.rst
  head/contrib/llvm/tools/lldb/include/lldb/API/SBInitializerOptions.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/API/SBInitializerOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Highlighter.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Core/Highlighter.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/RichManglingContext.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Core/RichManglingContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/SafeMachO.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Host/SafeMachO.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameRecognizer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameRecognizer.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Broadcaster.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Broadcaster.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Event.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Event.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Listener.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Listener.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Predicate.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Predicate.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/RegisterValue.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/RegisterValue.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Reproducer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Reproducer.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Scalar.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/Scalar.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/State.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/include/lldb/Utility/State.h
  head/contrib/llvm/tools/lldb/source/API/SBInitializerOptions.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/API/SBInitializerOptions.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverScripted.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverScripted.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectReproducer.h
  head/contrib/llvm/tools/lldb/source/Core/Highlighter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Core/Highlighter.cpp
  head/contrib/llvm/tools/lldb/source/Core/RichManglingContext.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Core/RichManglingContext.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Architecture/Mips/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Architecture/Mips/
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxOptional.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxOptional.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ClangCommon/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Language/ClangCommon/
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/Breakpad/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/Breakpad/
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxProcMaps.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_ARM64.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Breakpad/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Breakpad/
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/NativePDB/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/NativePDB/
  head/contrib/llvm/tools/lldb/source/Target/StackFrameRecognizer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Target/StackFrameRecognizer.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Broadcaster.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/Broadcaster.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Event.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/Event.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Listener.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/Listener.cpp
  head/contrib/llvm/tools/lldb/source/Utility/RegisterValue.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/RegisterValue.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Reproducer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/Reproducer.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Scalar.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/Scalar.cpp
  head/contrib/llvm/tools/lldb/source/Utility/State.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/source/Utility/State.cpp
  head/contrib/llvm/tools/lldb/tools/driver/Options.td
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/lldb/tools/driver/Options.td
  head/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.cpp
  head/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-cov/CoverageExporterLcov.h
  head/contrib/llvm/tools/llvm-cxxmap/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-cxxmap/
  head/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.cpp
  head/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-mca/CodeRegionGenerator.h
  head/contrib/llvm/tools/llvm-mca/Views/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-mca/Views/
  head/contrib/llvm/tools/llvm-mca/include/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-mca/include/
  head/contrib/llvm/tools/llvm-mca/lib/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-mca/lib/
  head/contrib/llvm/tools/llvm-objcopy/Buffer.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/Buffer.cpp
  head/contrib/llvm/tools/llvm-objcopy/Buffer.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/Buffer.h
  head/contrib/llvm/tools/llvm-objcopy/COFF/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/COFF/
  head/contrib/llvm/tools/llvm-objcopy/CopyConfig.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/CopyConfig.cpp
  head/contrib/llvm/tools/llvm-objcopy/CopyConfig.h
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/CopyConfig.h
  head/contrib/llvm/tools/llvm-objcopy/ELF/
     - copied from r344778, projects/clang800-import/contrib/llvm/tools/llvm-objcopy/ELF/
  head/contrib/llvm/tools/llvm-xray/xray-fdr-dump.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/tools/llvm-xray/xray-fdr-dump.cpp
  head/contrib/llvm/utils/TableGen/ExegesisEmitter.cpp
     - copied unchanged from r344778, projects/clang800-import/contrib/llvm/utils/TableGen/ExegesisEmitter.cpp
Deleted:
  head/contrib/compiler-rt/lib/builtins/arm64/
  head/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsDlsymWin.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWeakAlias.cpp
  head/contrib/libc++/include/experimental/dynarray
  head/contrib/libc++/src/experimental/filesystem/
  head/contrib/llvm/include/llvm/Analysis/IndirectCallSiteVisitor.h
  head/contrib/llvm/include/llvm/CodeGen/GCs.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeBuiltinSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumSymbol.h
  head/contrib/llvm/include/llvm/IR/TypeBuilder.h
  head/contrib/llvm/include/llvm/Transforms/Utils/OrderedInstructions.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.h
  head/contrib/llvm/lib/CodeGen/MachinePassRegistry.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeBuiltinSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumSymbol.cpp
  head/contrib/llvm/lib/Demangle/Compiler.h
  head/contrib/llvm/lib/Demangle/StringView.h
  head/contrib/llvm/lib/Demangle/Utility.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsics.td
  head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.cpp
  head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPULaneDominator.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonGatherPacketize.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV4.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV3.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV4.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV4.td
  head/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.cpp
  head/contrib/llvm/lib/Target/Nios2/InstPrinter/Nios2InstPrinter.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.cpp
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2BaseInfo.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2ELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2FixupKinds.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.cpp
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.cpp
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.cpp
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.h
  head/contrib/llvm/lib/Target/Nios2/MCTargetDesc/Nios2TargetStreamer.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2.h
  head/contrib/llvm/lib/Target/Nios2/Nios2.td
  head/contrib/llvm/lib/Target/Nios2/Nios2AsmPrinter.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2CallingConv.td
  head/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2FrameLowering.h
  head/contrib/llvm/lib/Target/Nios2/Nios2ISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2ISelLowering.h
  head/contrib/llvm/lib/Target/Nios2/Nios2InstrFormats.td
  head/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.h
  head/contrib/llvm/lib/Target/Nios2/Nios2InstrInfo.td
  head/contrib/llvm/lib/Target/Nios2/Nios2MCInstLower.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2MachineFunction.h
  head/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.h
  head/contrib/llvm/lib/Target/Nios2/Nios2RegisterInfo.td
  head/contrib/llvm/lib/Target/Nios2/Nios2Schedule.td
  head/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2Subtarget.h
  head/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2TargetMachine.h
  head/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.cpp
  head/contrib/llvm/lib/Target/Nios2/Nios2TargetObjectFile.h
  head/contrib/llvm/lib/Target/Nios2/Nios2TargetStreamer.h
  head/contrib/llvm/lib/Target/Nios2/TargetInfo/Nios2TargetInfo.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
  head/contrib/llvm/lib/Target/Sparc/SparcTargetStreamer.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyStoreResults.cpp
  head/contrib/llvm/lib/Transforms/Utils/OrderedInstructions.cpp
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/OSLog.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/PseudoConstantAnalysis.h
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNios2.def
  head/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def
  head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PTHManager.h
  head/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ClangCheckers.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerRegistry.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTContext.h
  head/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/FormatStringParsing.h
  head/contrib/llvm/tools/clang/lib/Analysis/OSLog.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/PseudoConstantAnalysis.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Nios2.h
  head/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Arch/
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/RISCV.h
  head/contrib/llvm/tools/clang/lib/Frontend/CacheTokens.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/CodeGenOptions.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/PCHContainerOperations.cpp
  head/contrib/llvm/tools/clang/lib/Headers/cuda/
  head/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationDiagnostics.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ClangCheckers.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ClangSACheckers.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UninitializedObjectChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerRegistry.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SMTConstraintManager.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Inclusions/CMakeLists.txt
  head/contrib/llvm/tools/lld/ELF/GdbIndex.cpp
  head/contrib/llvm/tools/lld/ELF/GdbIndex.h
  head/contrib/llvm/tools/lld/include/lld/Core/TODO.txt
  head/contrib/llvm/tools/lldb/include/lldb/Core/Broadcaster.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Event.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Listener.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Scalar.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/State.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/Predicate.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/common/SoftwareBreakpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/GoASTContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/JavaASTContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/OCamlASTContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Either.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/FastDemangle.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Range.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h
  head/contrib/llvm/tools/lldb/source/Core/Broadcaster.cpp
  head/contrib/llvm/tools/lldb/source/Core/Event.cpp
  head/contrib/llvm/tools/lldb/source/Core/Listener.cpp
  head/contrib/llvm/tools/lldb/source/Core/RegisterValue.cpp
  head/contrib/llvm/tools/lldb/source/Core/Scalar.cpp
  head/contrib/llvm/tools/lldb/source/Core/State.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Architecture/PPC64/CMakeLists.txt
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoAST.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoLexer.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/gen_go_ast.py
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/CMakeLists.txt
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/OCaml/OCamlLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Java/JavaLanguageRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserGo.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserJava.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.h
  head/contrib/llvm/tools/lldb/source/Symbol/GoASTContext.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/JavaASTContext.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/OCamlASTContext.cpp
  head/contrib/llvm/tools/lldb/source/Utility/FastDemangle.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Range.cpp
  head/contrib/llvm/tools/llvm-mca/Context.cpp
  head/contrib/llvm/tools/llvm-mca/Context.h
  head/contrib/llvm/tools/llvm-mca/DispatchStage.cpp
  head/contrib/llvm/tools/llvm-mca/DispatchStage.h
  head/contrib/llvm/tools/llvm-mca/DispatchStatistics.cpp
  head/contrib/llvm/tools/llvm-mca/DispatchStatistics.h
  head/contrib/llvm/tools/llvm-mca/ExecuteStage.cpp
  head/contrib/llvm/tools/llvm-mca/ExecuteStage.h
  head/contrib/llvm/tools/llvm-mca/FetchStage.cpp
  head/contrib/llvm/tools/llvm-mca/FetchStage.h
  head/contrib/llvm/tools/llvm-mca/HWEventListener.cpp
  head/contrib/llvm/tools/llvm-mca/HWEventListener.h
  head/contrib/llvm/tools/llvm-mca/HardwareUnit.cpp
  head/contrib/llvm/tools/llvm-mca/HardwareUnit.h
  head/contrib/llvm/tools/llvm-mca/InstrBuilder.cpp
  head/contrib/llvm/tools/llvm-mca/InstrBuilder.h
  head/contrib/llvm/tools/llvm-mca/Instruction.cpp
  head/contrib/llvm/tools/llvm-mca/Instruction.h
  head/contrib/llvm/tools/llvm-mca/InstructionInfoView.cpp
  head/contrib/llvm/tools/llvm-mca/InstructionInfoView.h
  head/contrib/llvm/tools/llvm-mca/InstructionTables.cpp
  head/contrib/llvm/tools/llvm-mca/InstructionTables.h
  head/contrib/llvm/tools/llvm-mca/LSUnit.cpp
  head/contrib/llvm/tools/llvm-mca/LSUnit.h
  head/contrib/llvm/tools/llvm-mca/Pipeline.cpp
  head/contrib/llvm/tools/llvm-mca/Pipeline.h
  head/contrib/llvm/tools/llvm-mca/RegisterFile.cpp
  head/contrib/llvm/tools/llvm-mca/RegisterFile.h
  head/contrib/llvm/tools/llvm-mca/RegisterFileStatistics.cpp
  head/contrib/llvm/tools/llvm-mca/RegisterFileStatistics.h
  head/contrib/llvm/tools/llvm-mca/ResourcePressureView.cpp
  head/contrib/llvm/tools/llvm-mca/ResourcePressureView.h
  head/contrib/llvm/tools/llvm-mca/RetireControlUnit.cpp
  head/contrib/llvm/tools/llvm-mca/RetireControlUnit.h
  head/contrib/llvm/tools/llvm-mca/RetireControlUnitStatistics.cpp
  head/contrib/llvm/tools/llvm-mca/RetireControlUnitStatistics.h
  head/contrib/llvm/tools/llvm-mca/RetireStage.cpp
  head/contrib/llvm/tools/llvm-mca/RetireStage.h
  head/contrib/llvm/tools/llvm-mca/Scheduler.cpp
  head/contrib/llvm/tools/llvm-mca/Scheduler.h
  head/contrib/llvm/tools/llvm-mca/SchedulerStatistics.cpp
  head/contrib/llvm/tools/llvm-mca/SchedulerStatistics.h
  head/contrib/llvm/tools/llvm-mca/SourceMgr.h
  head/contrib/llvm/tools/llvm-mca/Stage.cpp
  head/contrib/llvm/tools/llvm-mca/Stage.h
  head/contrib/llvm/tools/llvm-mca/SummaryView.cpp
  head/contrib/llvm/tools/llvm-mca/SummaryView.h
  head/contrib/llvm/tools/llvm-mca/Support.cpp
  head/contrib/llvm/tools/llvm-mca/Support.h
  head/contrib/llvm/tools/llvm-mca/TimelineView.cpp
  head/contrib/llvm/tools/llvm-mca/TimelineView.h
  head/contrib/llvm/tools/llvm-mca/View.cpp
  head/contrib/llvm/tools/llvm-mca/View.h
  head/contrib/llvm/tools/llvm-objcopy/Object.cpp
  head/contrib/llvm/tools/llvm-objcopy/Object.h
  head/contrib/llvm/tools/llvm-pdbutil/Analyze.cpp
  head/contrib/llvm/tools/llvm-pdbutil/Analyze.h
Modified:
  head/ObsoleteFiles.inc
  head/UPDATING
  head/contrib/compiler-rt/LICENSE.TXT
  head/contrib/compiler-rt/include/sanitizer/allocator_interface.h
  head/contrib/compiler-rt/include/sanitizer/common_interface_defs.h
  head/contrib/compiler-rt/include/sanitizer/hwasan_interface.h
  head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h
  head/contrib/compiler-rt/include/xray/xray_log_interface.h
  head/contrib/compiler-rt/lib/asan/asan_allocator.h
  head/contrib/compiler-rt/lib/asan/asan_errors.cc
  head/contrib/compiler-rt/lib/asan/asan_errors.h
  head/contrib/compiler-rt/lib/asan/asan_flags.inc
  head/contrib/compiler-rt/lib/asan/asan_fuchsia.cc
  head/contrib/compiler-rt/lib/asan/asan_globals.cc
  head/contrib/compiler-rt/lib/asan/asan_globals_win.cc
  head/contrib/compiler-rt/lib/asan/asan_internal.h
  head/contrib/compiler-rt/lib/asan/asan_linux.cc
  head/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc
  head/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc
  head/contrib/compiler-rt/lib/asan/asan_malloc_win.cc
  head/contrib/compiler-rt/lib/asan/asan_new_delete.cc
  head/contrib/compiler-rt/lib/asan/asan_posix.cc
  head/contrib/compiler-rt/lib/asan/asan_report.h
  head/contrib/compiler-rt/lib/asan/asan_rtems.cc
  head/contrib/compiler-rt/lib/asan/asan_rtl.cc
  head/contrib/compiler-rt/lib/asan/asan_thread.cc
  head/contrib/compiler-rt/lib/asan/asan_win.cc
  head/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc
  head/contrib/compiler-rt/lib/builtins/arm/addsf3.S
  head/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S
  head/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmp.S
  head/contrib/compiler-rt/lib/builtins/clzdi2.c
  head/contrib/compiler-rt/lib/builtins/cpu_model.c
  head/contrib/compiler-rt/lib/builtins/ctzdi2.c
  head/contrib/compiler-rt/lib/builtins/divdc3.c
  head/contrib/compiler-rt/lib/builtins/divdf3.c
  head/contrib/compiler-rt/lib/builtins/divsc3.c
  head/contrib/compiler-rt/lib/builtins/divsf3.c
  head/contrib/compiler-rt/lib/builtins/divtc3.c
  head/contrib/compiler-rt/lib/builtins/emutls.c
  head/contrib/compiler-rt/lib/builtins/fp_lib.h
  head/contrib/compiler-rt/lib/builtins/gcc_personality_v0.c
  head/contrib/compiler-rt/lib/builtins/int_lib.h
  head/contrib/compiler-rt/lib/builtins/int_math.h
  head/contrib/compiler-rt/lib/builtins/int_types.h
  head/contrib/compiler-rt/lib/builtins/int_util.c
  head/contrib/compiler-rt/lib/builtins/int_util.h
  head/contrib/compiler-rt/lib/builtins/os_version_check.c
  head/contrib/compiler-rt/lib/builtins/ppc/divtc3.c
  head/contrib/compiler-rt/lib/cfi/cfi.cc
  head/contrib/compiler-rt/lib/cfi/cfi_blacklist.txt
  head/contrib/compiler-rt/lib/dfsan/dfsan.cc
  head/contrib/compiler-rt/lib/esan/esan_interceptors.cpp
  head/contrib/compiler-rt/lib/esan/esan_shadow.h
  head/contrib/compiler-rt/lib/esan/esan_sideline.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerCommand.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerCorpus.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerDefs.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerDriver.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerExtFunctionsWeak.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerFlags.def
  head/contrib/compiler-rt/lib/fuzzer/FuzzerIO.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerIO.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerIOPosix.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerIOWindows.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerInternal.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerLoop.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerMutate.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerMutate.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerOptions.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerTracePC.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerTracePC.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerUtil.h
  head/contrib/compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
  head/contrib/compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
  head/contrib/compiler-rt/lib/hwasan/hwasan.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_allocator.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_allocator.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_dynamic_shadow.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_flags.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_flags.inc
  head/contrib/compiler-rt/lib/hwasan/hwasan_interceptors.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_interface_internal.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_linux.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_mapping.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_new_delete.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_poisoning.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_report.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_report.h
  head/contrib/compiler-rt/lib/hwasan/hwasan_thread.cc
  head/contrib/compiler-rt/lib/hwasan/hwasan_thread.h
  head/contrib/compiler-rt/lib/interception/interception.h
  head/contrib/compiler-rt/lib/interception/interception_linux.h
  head/contrib/compiler-rt/lib/interception/interception_win.cc
  head/contrib/compiler-rt/lib/lsan/lsan_allocator.cc
  head/contrib/compiler-rt/lib/lsan/lsan_allocator.h
  head/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc
  head/contrib/compiler-rt/lib/lsan/lsan_interceptors.cc
  head/contrib/compiler-rt/lib/msan/msan.cc
  head/contrib/compiler-rt/lib/msan/msan_allocator.cc
  head/contrib/compiler-rt/lib/msan/msan_interceptors.cc
  head/contrib/compiler-rt/lib/msan/msan_linux.cc
  head/contrib/compiler-rt/lib/profile/GCDAProfiling.c
  head/contrib/compiler-rt/lib/profile/InstrProfData.inc
  head/contrib/compiler-rt/lib/profile/InstrProfilingPlatformLinux.c
  head/contrib/compiler-rt/lib/profile/InstrProfilingPlatformOther.c
  head/contrib/compiler-rt/lib/profile/InstrProfilingValue.c
  head/contrib/compiler-rt/lib/profile/WindowsMMap.c
  head/contrib/compiler-rt/lib/profile/WindowsMMap.h
  head/contrib/compiler-rt/lib/safestack/safestack.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_bytemap.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_combined.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_size_class_map.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_fuchsia.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_coverage_win_sections.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_file.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_interceptors_ioctl_netbsd.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_libc.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_openbsd.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_rtems.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_solaris.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stackdepot.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_libcdep.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_sparc.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_fuchsia.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_generic.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_aarch64.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_arm.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_x86_64.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_syscalls_netbsd.inc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_termination.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_unwind_linux_libcdep.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc
  head/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win_defs.h
  head/contrib/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
  head/contrib/compiler-rt/lib/scudo/scudo_allocator.cpp
  head/contrib/compiler-rt/lib/scudo/scudo_allocator.h
  head/contrib/compiler-rt/lib/scudo/scudo_malloc.cpp
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_debugging.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_flags.inc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors.h
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_libdispatch_mac.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_platform.h
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_platform_mac.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_report.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.h
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_aarch64.S
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_amd64.S
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc
  head/contrib/compiler-rt/lib/tsan/rtl/tsan_suppressions.cc
  head/contrib/compiler-rt/lib/ubsan/ubsan_checks.inc
  head/contrib/compiler-rt/lib/ubsan/ubsan_flags.inc
  head/contrib/compiler-rt/lib/ubsan/ubsan_handlers.cc
  head/contrib/compiler-rt/lib/ubsan/ubsan_handlers.h
  head/contrib/compiler-rt/lib/ubsan/ubsan_interface.inc
  head/contrib/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cc
  head/contrib/compiler-rt/lib/xray/xray_allocator.h
  head/contrib/compiler-rt/lib/xray/xray_basic_logging.cc
  head/contrib/compiler-rt/lib/xray/xray_buffer_queue.cc
  head/contrib/compiler-rt/lib/xray/xray_buffer_queue.h
  head/contrib/compiler-rt/lib/xray/xray_defs.h
  head/contrib/compiler-rt/lib/xray/xray_fdr_log_records.h
  head/contrib/compiler-rt/lib/xray/xray_fdr_logging.cc
  head/contrib/compiler-rt/lib/xray/xray_function_call_trie.h
  head/contrib/compiler-rt/lib/xray/xray_init.cc
  head/contrib/compiler-rt/lib/xray/xray_interface.cc
  head/contrib/compiler-rt/lib/xray/xray_profile_collector.cc
  head/contrib/compiler-rt/lib/xray/xray_profile_collector.h
  head/contrib/compiler-rt/lib/xray/xray_profiling.cc
  head/contrib/compiler-rt/lib/xray/xray_profiling_flags.inc
  head/contrib/compiler-rt/lib/xray/xray_segmented_array.h
  head/contrib/compiler-rt/lib/xray/xray_trampoline_x86_64.S
  head/contrib/compiler-rt/lib/xray/xray_tsc.h
  head/contrib/compiler-rt/lib/xray/xray_utils.cc
  head/contrib/compiler-rt/lib/xray/xray_utils.h
  head/contrib/compiler-rt/lib/xray/xray_x86_64.cc
  head/contrib/libc++/LICENSE.TXT
  head/contrib/libc++/include/__bit_reference
  head/contrib/libc++/include/__config
  head/contrib/libc++/include/__debug
  head/contrib/libc++/include/__functional_base
  head/contrib/libc++/include/__hash_table
  head/contrib/libc++/include/__libcpp_version
  head/contrib/libc++/include/__locale
  head/contrib/libc++/include/__mutex_base
  head/contrib/libc++/include/__node_handle
  head/contrib/libc++/include/__sso_allocator
  head/contrib/libc++/include/__string
  head/contrib/libc++/include/__threading_support
  head/contrib/libc++/include/__tree
  head/contrib/libc++/include/__tuple
  head/contrib/libc++/include/algorithm
  head/contrib/libc++/include/any
  head/contrib/libc++/include/array
  head/contrib/libc++/include/atomic
  head/contrib/libc++/include/bitset
  head/contrib/libc++/include/charconv
  head/contrib/libc++/include/chrono
  head/contrib/libc++/include/cmath
  head/contrib/libc++/include/complex
  head/contrib/libc++/include/cstddef
  head/contrib/libc++/include/deque
  head/contrib/libc++/include/exception
  head/contrib/libc++/include/experimental/any
  head/contrib/libc++/include/experimental/chrono
  head/contrib/libc++/include/experimental/coroutine
  head/contrib/libc++/include/experimental/memory_resource
  head/contrib/libc++/include/experimental/numeric
  head/contrib/libc++/include/experimental/optional
  head/contrib/libc++/include/experimental/ratio
  head/contrib/libc++/include/experimental/string_view
  head/contrib/libc++/include/experimental/system_error
  head/contrib/libc++/include/experimental/tuple
  head/contrib/libc++/include/filesystem
  head/contrib/libc++/include/forward_list
  head/contrib/libc++/include/fstream
  head/contrib/libc++/include/functional
  head/contrib/libc++/include/future
  head/contrib/libc++/include/iomanip
  head/contrib/libc++/include/iosfwd
  head/contrib/libc++/include/istream
  head/contrib/libc++/include/iterator
  head/contrib/libc++/include/limits
  head/contrib/libc++/include/list
  head/contrib/libc++/include/locale
  head/contrib/libc++/include/map
  head/contrib/libc++/include/memory
  head/contrib/libc++/include/module.modulemap
  head/contrib/libc++/include/mutex
  head/contrib/libc++/include/new
  head/contrib/libc++/include/numeric
  head/contrib/libc++/include/optional
  head/contrib/libc++/include/ostream
  head/contrib/libc++/include/random
  head/contrib/libc++/include/regex
  head/contrib/libc++/include/scoped_allocator
  head/contrib/libc++/include/set
  head/contrib/libc++/include/shared_mutex
  head/contrib/libc++/include/span
  head/contrib/libc++/include/sstream
  head/contrib/libc++/include/stddef.h
  head/contrib/libc++/include/stdexcept
  head/contrib/libc++/include/streambuf
  head/contrib/libc++/include/string
  head/contrib/libc++/include/string_view
  head/contrib/libc++/include/thread
  head/contrib/libc++/include/tuple
  head/contrib/libc++/include/type_traits
  head/contrib/libc++/include/typeinfo
  head/contrib/libc++/include/unordered_map
  head/contrib/libc++/include/unordered_set
  head/contrib/libc++/include/utility
  head/contrib/libc++/include/valarray
  head/contrib/libc++/include/variant
  head/contrib/libc++/include/vector
  head/contrib/libc++/include/version
  head/contrib/libc++/src/experimental/memory_resource.cpp
  head/contrib/libc++/src/filesystem/filesystem_common.h
  head/contrib/libc++/src/filesystem/operations.cpp
  head/contrib/libc++/src/future.cpp
  head/contrib/libc++/src/iostream.cpp
  head/contrib/libc++/src/new.cpp
  head/contrib/libc++/src/support/runtime/exception_fallback.ipp
  head/contrib/libc++/src/support/runtime/exception_glibcxx.ipp
  head/contrib/libc++/src/support/runtime/exception_libcxxrt.ipp
  head/contrib/libc++/src/support/runtime/exception_msvc.ipp
  head/contrib/libc++/src/thread.cpp
  head/contrib/llvm/FREEBSD-Xlist
  head/contrib/llvm/LICENSE.TXT
  head/contrib/llvm/include/llvm-c/Core.h
  head/contrib/llvm/include/llvm-c/DebugInfo.h
  head/contrib/llvm/include/llvm-c/ExecutionEngine.h
  head/contrib/llvm/include/llvm-c/OrcBindings.h
  head/contrib/llvm/include/llvm-c/TargetMachine.h
  head/contrib/llvm/include/llvm-c/Transforms/Scalar.h
  head/contrib/llvm/include/llvm-c/Types.h
  head/contrib/llvm/include/llvm-c/lto.h
  head/contrib/llvm/include/llvm/ADT/APFloat.h
  head/contrib/llvm/include/llvm/ADT/APInt.h
  head/contrib/llvm/include/llvm/ADT/Any.h
  head/contrib/llvm/include/llvm/ADT/BitVector.h
  head/contrib/llvm/include/llvm/ADT/DenseMap.h
  head/contrib/llvm/include/llvm/ADT/DenseSet.h
  head/contrib/llvm/include/llvm/ADT/GraphTraits.h
  head/contrib/llvm/include/llvm/ADT/Hashing.h
  head/contrib/llvm/include/llvm/ADT/ImmutableList.h
  head/contrib/llvm/include/llvm/ADT/IntervalMap.h
  head/contrib/llvm/include/llvm/ADT/Optional.h
  head/contrib/llvm/include/llvm/ADT/PointerIntPair.h
  head/contrib/llvm/include/llvm/ADT/PointerSumType.h
  head/contrib/llvm/include/llvm/ADT/PostOrderIterator.h
  head/contrib/llvm/include/llvm/ADT/STLExtras.h
  head/contrib/llvm/include/llvm/ADT/SmallBitVector.h
  head/contrib/llvm/include/llvm/ADT/SmallVector.h
  head/contrib/llvm/include/llvm/ADT/SparseBitVector.h
  head/contrib/llvm/include/llvm/ADT/StringExtras.h
  head/contrib/llvm/include/llvm/ADT/Triple.h
  head/contrib/llvm/include/llvm/ADT/iterator.h
  head/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h
  head/contrib/llvm/include/llvm/Analysis/BasicAliasAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfo.h
  head/contrib/llvm/include/llvm/Analysis/CFG.h
  head/contrib/llvm/include/llvm/Analysis/CFGPrinter.h
  head/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h
  head/contrib/llvm/include/llvm/Analysis/CaptureTracking.h
  head/contrib/llvm/include/llvm/Analysis/CmpInstAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/DemandedBits.h
  head/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/DivergenceAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/GlobalsModRef.h
  head/contrib/llvm/include/llvm/Analysis/InlineCost.h
  head/contrib/llvm/include/llvm/Analysis/InstructionSimplify.h
  head/contrib/llvm/include/llvm/Analysis/IteratedDominanceFrontier.h
  head/contrib/llvm/include/llvm/Analysis/LoopAccessAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/LoopInfo.h
  head/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h
  head/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/MemoryLocation.h
  head/contrib/llvm/include/llvm/Analysis/MemorySSA.h
  head/contrib/llvm/include/llvm/Analysis/MemorySSAUpdater.h
  head/contrib/llvm/include/llvm/Analysis/MustExecute.h
  head/contrib/llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h
  head/contrib/llvm/include/llvm/Analysis/ObjCARCInstKind.h
  head/contrib/llvm/include/llvm/Analysis/Passes.h
  head/contrib/llvm/include/llvm/Analysis/PhiValues.h
  head/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h
  head/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h
  head/contrib/llvm/include/llvm/Analysis/ScopedNoAliasAA.h
  head/contrib/llvm/include/llvm/Analysis/SparsePropagation.h
  head/contrib/llvm/include/llvm/Analysis/SyntheticCountsUtils.h
  head/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.def
  head/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h
  head/contrib/llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
  head/contrib/llvm/include/llvm/Analysis/TypeBasedAliasAnalysis.h
  head/contrib/llvm/include/llvm/Analysis/TypeMetadataUtils.h
  head/contrib/llvm/include/llvm/Analysis/ValueTracking.h
  head/contrib/llvm/include/llvm/Analysis/VectorUtils.h
  head/contrib/llvm/include/llvm/BinaryFormat/Dwarf.def
  head/contrib/llvm/include/llvm/BinaryFormat/Dwarf.h
  head/contrib/llvm/include/llvm/BinaryFormat/ELF.h
  head/contrib/llvm/include/llvm/BinaryFormat/MachO.h
  head/contrib/llvm/include/llvm/BinaryFormat/Wasm.h
  head/contrib/llvm/include/llvm/BinaryFormat/WasmRelocs.def
  head/contrib/llvm/include/llvm/Bitcode/BitcodeReader.h
  head/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h
  head/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h
  head/contrib/llvm/include/llvm/CodeGen/BasicTTIImpl.h
  head/contrib/llvm/include/llvm/CodeGen/CommandFlags.inc
  head/contrib/llvm/include/llvm/CodeGen/DwarfStringPoolEntry.h
  head/contrib/llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
  head/contrib/llvm/include/llvm/CodeGen/GCMetadata.h
  head/contrib/llvm/include/llvm/CodeGen/GCMetadataPrinter.h
  head/contrib/llvm/include/llvm/CodeGen/GCStrategy.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/CombinerInfo.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/GISelWorkList.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/RegisterBankInfo.h
  head/contrib/llvm/include/llvm/CodeGen/GlobalISel/Utils.h
  head/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h
  head/contrib/llvm/include/llvm/CodeGen/LinkAllAsmWriterComponents.h
  head/contrib/llvm/include/llvm/CodeGen/LinkAllCodegenComponents.h
  head/contrib/llvm/include/llvm/CodeGen/LiveIntervals.h
  head/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h
  head/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h
  head/contrib/llvm/include/llvm/CodeGen/MIRYamlMapping.h
  head/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h
  head/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h
  head/contrib/llvm/include/llvm/CodeGen/MachineFunction.h
  head/contrib/llvm/include/llvm/CodeGen/MachineInstr.h
  head/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h
  head/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h
  head/contrib/llvm/include/llvm/CodeGen/MachineModuleInfoImpls.h
  head/contrib/llvm/include/llvm/CodeGen/MachineOutliner.h
  head/contrib/llvm/include/llvm/CodeGen/MachinePassRegistry.h
  head/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h
  head/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h
  head/contrib/llvm/include/llvm/CodeGen/Passes.h
  head/contrib/llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h
  head/contrib/llvm/include/llvm/CodeGen/PseudoSourceValue.h
  head/contrib/llvm/include/llvm/CodeGen/RegAllocRegistry.h
  head/contrib/llvm/include/llvm/CodeGen/RegisterUsageInfo.h
  head/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h
  head/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h
  head/contrib/llvm/include/llvm/CodeGen/SchedulerRegistry.h
  head/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h
  head/contrib/llvm/include/llvm/CodeGen/SelectionDAGAddressAnalysis.h
  head/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h
  head/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h
  head/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h
  head/contrib/llvm/include/llvm/CodeGen/StackMaps.h
  head/contrib/llvm/include/llvm/CodeGen/TargetFrameLowering.h
  head/contrib/llvm/include/llvm/CodeGen/TargetInstrInfo.h
  head/contrib/llvm/include/llvm/CodeGen/TargetLowering.h
  head/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
  head/contrib/llvm/include/llvm/CodeGen/TargetPassConfig.h
  head/contrib/llvm/include/llvm/CodeGen/TargetRegisterInfo.h
  head/contrib/llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
  head/contrib/llvm/include/llvm/CodeGen/WasmEHFuncInfo.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/CVRecord.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeView.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewError.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/CodeViewRegisters.def
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/DebugFrameDataSubsection.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/RecordSerialization.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDeserializer.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeRecord.h
  head/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h
  head/contrib/llvm/include/llvm/DebugInfo/DIContext.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLoc.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugPubTable.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRnglists.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFFormValue.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFListTable.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFObject.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFSection.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnitIndex.h
  head/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
  head/contrib/llvm/include/llvm/DebugInfo/MSF/MSFError.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIADataStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumDebugStreams.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumInjectedSources.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumLineNumbers.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSectionContribs.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSourceFiles.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumSymbols.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAEnumTables.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIAError.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIARawSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/DIA/DIASession.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/GenericError.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBDataStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBEnumChildren.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBRawSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/IPDBSession.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/DbiStreamBuilder.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GSIStreamBuilder.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/GlobalsStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/InfoStreamBuilder.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/ModuleDebugStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumModules.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumTypes.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeExeSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeRawSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/NativeSession.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawError.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawTypes.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiHashing.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBExtras.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolAnnotation.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolBlock.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompiland.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandDetails.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCompilandEnv.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolCustom.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolData.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolExe.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFunc.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugEnd.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolFuncDebugStart.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolLabel.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolPublicSymbol.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolThunk.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeArray.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBaseClass.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeBuiltin.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeCustom.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeDimension.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFriend.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionArg.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeFunctionSig.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeManaged.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypePointer.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeTypedef.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeUDT.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTable.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolTypeVTableShape.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUnknown.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBSymbolUsingNamespace.h
  head/contrib/llvm/include/llvm/DebugInfo/PDB/PDBTypes.h
  head/contrib/llvm/include/llvm/Demangle/Demangle.h
  head/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h
  head/contrib/llvm/include/llvm/ExecutionEngine/JITSymbol.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileUtils.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Core.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/IRTransformLayer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Layer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/Legacy.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/NullResolver.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/ObjectTransformLayer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcABISupport.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h
  head/contrib/llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
  head/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h
  head/contrib/llvm/include/llvm/IR/Attributes.h
  head/contrib/llvm/include/llvm/IR/Attributes.td
  head/contrib/llvm/include/llvm/IR/BasicBlock.h
  head/contrib/llvm/include/llvm/IR/CFG.h
  head/contrib/llvm/include/llvm/IR/CallSite.h
  head/contrib/llvm/include/llvm/IR/CallingConv.h
  head/contrib/llvm/include/llvm/IR/Constant.h
  head/contrib/llvm/include/llvm/IR/Constants.h
  head/contrib/llvm/include/llvm/IR/DIBuilder.h
  head/contrib/llvm/include/llvm/IR/DataLayout.h
  head/contrib/llvm/include/llvm/IR/DebugInfoFlags.def
  head/contrib/llvm/include/llvm/IR/DebugInfoMetadata.h
  head/contrib/llvm/include/llvm/IR/DebugLoc.h
  head/contrib/llvm/include/llvm/IR/DiagnosticInfo.h
  head/contrib/llvm/include/llvm/IR/DomTreeUpdater.h
  head/contrib/llvm/include/llvm/IR/Dominators.h
  head/contrib/llvm/include/llvm/IR/Function.h
  head/contrib/llvm/include/llvm/IR/GlobalValue.h
  head/contrib/llvm/include/llvm/IR/IRBuilder.h
  head/contrib/llvm/include/llvm/IR/IRPrintingPasses.h
  head/contrib/llvm/include/llvm/IR/InstVisitor.h
  head/contrib/llvm/include/llvm/IR/InstrTypes.h
  head/contrib/llvm/include/llvm/IR/Instruction.def
  head/contrib/llvm/include/llvm/IR/Instruction.h
  head/contrib/llvm/include/llvm/IR/Instructions.h
  head/contrib/llvm/include/llvm/IR/IntrinsicInst.h
  head/contrib/llvm/include/llvm/IR/Intrinsics.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsAArch64.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsAMDGPU.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsHexagon.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsPowerPC.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsWebAssembly.td
  head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td
  head/contrib/llvm/include/llvm/IR/LLVMContext.h
  head/contrib/llvm/include/llvm/IR/LegacyPassManager.h
  head/contrib/llvm/include/llvm/IR/LegacyPassManagers.h
  head/contrib/llvm/include/llvm/IR/Metadata.h
  head/contrib/llvm/include/llvm/IR/Module.h
  head/contrib/llvm/include/llvm/IR/ModuleSummaryIndex.h
  head/contrib/llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
  head/contrib/llvm/include/llvm/IR/Operator.h
  head/contrib/llvm/include/llvm/IR/PassManager.h
  head/contrib/llvm/include/llvm/IR/PassManagerInternal.h
  head/contrib/llvm/include/llvm/IR/PatternMatch.h
  head/contrib/llvm/include/llvm/IR/RuntimeLibcalls.def
  head/contrib/llvm/include/llvm/IR/Value.h
  head/contrib/llvm/include/llvm/InitializePasses.h
  head/contrib/llvm/include/llvm/LTO/Config.h
  head/contrib/llvm/include/llvm/LTO/LTO.h
  head/contrib/llvm/include/llvm/LTO/legacy/LTOCodeGenerator.h
  head/contrib/llvm/include/llvm/LTO/legacy/ThinLTOCodeGenerator.h
  head/contrib/llvm/include/llvm/LinkAllPasses.h
  head/contrib/llvm/include/llvm/MC/MCAsmInfoWasm.h
  head/contrib/llvm/include/llvm/MC/MCAsmMacro.h
  head/contrib/llvm/include/llvm/MC/MCAssembler.h
  head/contrib/llvm/include/llvm/MC/MCCodeView.h
  head/contrib/llvm/include/llvm/MC/MCContext.h
  head/contrib/llvm/include/llvm/MC/MCDwarf.h
  head/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h
  head/contrib/llvm/include/llvm/MC/MCExpr.h
  head/contrib/llvm/include/llvm/MC/MCInst.h
  head/contrib/llvm/include/llvm/MC/MCInstrAnalysis.h
  head/contrib/llvm/include/llvm/MC/MCInstrDesc.h
  head/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h
  head/contrib/llvm/include/llvm/MC/MCObjectStreamer.h
  head/contrib/llvm/include/llvm/MC/MCParser/AsmLexer.h
  head/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h
  head/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h
  head/contrib/llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
  head/contrib/llvm/include/llvm/MC/MCRegisterInfo.h
  head/contrib/llvm/include/llvm/MC/MCSchedule.h
  head/contrib/llvm/include/llvm/MC/MCSection.h
  head/contrib/llvm/include/llvm/MC/MCStreamer.h
  head/contrib/llvm/include/llvm/MC/MCSymbolWasm.h
  head/contrib/llvm/include/llvm/MC/MCWasmObjectWriter.h
  head/contrib/llvm/include/llvm/MC/MCWin64EH.h
  head/contrib/llvm/include/llvm/MC/MCWinEH.h
  head/contrib/llvm/include/llvm/Object/COFF.h
  head/contrib/llvm/include/llvm/Object/ELF.h
  head/contrib/llvm/include/llvm/Object/ELFObjectFile.h
  head/contrib/llvm/include/llvm/Object/ELFTypes.h
  head/contrib/llvm/include/llvm/Object/Error.h
  head/contrib/llvm/include/llvm/Object/MachO.h
  head/contrib/llvm/include/llvm/Object/ObjectFile.h
  head/contrib/llvm/include/llvm/Object/RelocVisitor.h
  head/contrib/llvm/include/llvm/Object/Wasm.h
  head/contrib/llvm/include/llvm/Object/WasmTraits.h
  head/contrib/llvm/include/llvm/ObjectYAML/COFFYAML.h
  head/contrib/llvm/include/llvm/ObjectYAML/ELFYAML.h
  head/contrib/llvm/include/llvm/ObjectYAML/WasmYAML.h
  head/contrib/llvm/include/llvm/Option/OptTable.h
  head/contrib/llvm/include/llvm/Pass.h
  head/contrib/llvm/include/llvm/Passes/PassBuilder.h
  head/contrib/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
  head/contrib/llvm/include/llvm/ProfileData/GCOV.h
  head/contrib/llvm/include/llvm/ProfileData/InstrProf.h
  head/contrib/llvm/include/llvm/ProfileData/InstrProfReader.h
  head/contrib/llvm/include/llvm/ProfileData/SampleProf.h
  head/contrib/llvm/include/llvm/ProfileData/SampleProfReader.h
  head/contrib/llvm/include/llvm/ProfileData/SampleProfWriter.h
  head/contrib/llvm/include/llvm/Support/AArch64TargetParser.def
  head/contrib/llvm/include/llvm/Support/AMDGPUMetadata.h
  head/contrib/llvm/include/llvm/Support/ARMTargetParser.def
  head/contrib/llvm/include/llvm/Support/ARMWinEH.h
  head/contrib/llvm/include/llvm/Support/Allocator.h
  head/contrib/llvm/include/llvm/Support/BinaryStreamArray.h
  head/contrib/llvm/include/llvm/Support/BinaryStreamReader.h
  head/contrib/llvm/include/llvm/Support/Chrono.h
  head/contrib/llvm/include/llvm/Support/CodeGen.h
  head/contrib/llvm/include/llvm/Support/CommandLine.h
  head/contrib/llvm/include/llvm/Support/Compiler.h
  head/contrib/llvm/include/llvm/Support/Compression.h
  head/contrib/llvm/include/llvm/Support/Debug.h
  head/contrib/llvm/include/llvm/Support/DebugCounter.h
  head/contrib/llvm/include/llvm/Support/Error.h
  head/contrib/llvm/include/llvm/Support/ErrorHandling.h
  head/contrib/llvm/include/llvm/Support/FileOutputBuffer.h
  head/contrib/llvm/include/llvm/Support/FileSystem.h
  head/contrib/llvm/include/llvm/Support/FormatVariadicDetails.h
  head/contrib/llvm/include/llvm/Support/GenericDomTree.h
  head/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h
  head/contrib/llvm/include/llvm/Support/GraphWriter.h
  head/contrib/llvm/include/llvm/Support/JSON.h
  head/contrib/llvm/include/llvm/Support/LowLevelTypeImpl.h
  head/contrib/llvm/include/llvm/Support/Path.h
  head/contrib/llvm/include/llvm/Support/ScopedPrinter.h
  head/contrib/llvm/include/llvm/Support/TargetOpcodes.def
  head/contrib/llvm/include/llvm/Support/TargetParser.h
  head/contrib/llvm/include/llvm/Support/Threading.h
  head/contrib/llvm/include/llvm/Support/Timer.h
  head/contrib/llvm/include/llvm/Support/Win64EH.h
  head/contrib/llvm/include/llvm/Support/WithColor.h
  head/contrib/llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
  head/contrib/llvm/include/llvm/Support/X86TargetParser.def
  head/contrib/llvm/include/llvm/Support/YAMLTraits.h
  head/contrib/llvm/include/llvm/Support/raw_ostream.h
  head/contrib/llvm/include/llvm/Support/type_traits.h
  head/contrib/llvm/include/llvm/TableGen/StringMatcher.h
  head/contrib/llvm/include/llvm/Target/CodeGenCWrappers.h
  head/contrib/llvm/include/llvm/Target/GenericOpcodes.td
  head/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
  head/contrib/llvm/include/llvm/Target/Target.td
  head/contrib/llvm/include/llvm/Target/TargetInstrPredicate.td
  head/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h
  head/contrib/llvm/include/llvm/Target/TargetMachine.h
  head/contrib/llvm/include/llvm/Target/TargetOptions.h
  head/contrib/llvm/include/llvm/Target/TargetSchedule.td
  head/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td
  head/contrib/llvm/include/llvm/Testing/Support/SupportHelpers.h
  head/contrib/llvm/include/llvm/Transforms/IPO.h
  head/contrib/llvm/include/llvm/Transforms/IPO/FunctionAttrs.h
  head/contrib/llvm/include/llvm/Transforms/IPO/FunctionImport.h
  head/contrib/llvm/include/llvm/Transforms/IPO/SampleProfile.h
  head/contrib/llvm/include/llvm/Transforms/Instrumentation.h
  head/contrib/llvm/include/llvm/Transforms/Instrumentation/PGOInstrumentation.h
  head/contrib/llvm/include/llvm/Transforms/Scalar.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/GVN.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/JumpThreading.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
  head/contrib/llvm/include/llvm/Transforms/Scalar/SCCP.h
  head/contrib/llvm/include/llvm/Transforms/Utils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
  head/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h
  head/contrib/llvm/include/llvm/Transforms/Utils/CodeExtractor.h
  head/contrib/llvm/include/llvm/Transforms/Utils/FunctionImportUtils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/Local.h
  head/contrib/llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/ModuleUtils.h
  head/contrib/llvm/include/llvm/Transforms/Utils/PredicateInfo.h
  head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
  head/contrib/llvm/include/llvm/Transforms/Utils/UnrollLoop.h
  head/contrib/llvm/include/llvm/Transforms/Vectorize.h
  head/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
  head/contrib/llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
  head/contrib/llvm/include/llvm/XRay/Trace.h
  head/contrib/llvm/include/llvm/XRay/XRayRecord.h
  head/contrib/llvm/include/llvm/XRay/YAMLXRayRecord.h
  head/contrib/llvm/include/llvm/module.modulemap
  head/contrib/llvm/lib/Analysis/AliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp
  head/contrib/llvm/lib/Analysis/AliasSetTracker.cpp
  head/contrib/llvm/lib/Analysis/Analysis.cpp
  head/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/BlockFrequencyInfo.cpp
  head/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
  head/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp
  head/contrib/llvm/lib/Analysis/CFG.cpp
  head/contrib/llvm/lib/Analysis/CFGPrinter.cpp
  head/contrib/llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/CFLGraph.h
  head/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp
  head/contrib/llvm/lib/Analysis/CallGraph.cpp
  head/contrib/llvm/lib/Analysis/CallGraphSCCPass.cpp
  head/contrib/llvm/lib/Analysis/CaptureTracking.cpp
  head/contrib/llvm/lib/Analysis/CmpInstAnalysis.cpp
  head/contrib/llvm/lib/Analysis/ConstantFolding.cpp
  head/contrib/llvm/lib/Analysis/DemandedBits.cpp
  head/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp
  head/contrib/llvm/lib/Analysis/DivergenceAnalysis.cpp
  head/contrib/llvm/lib/Analysis/EHPersonalities.cpp
  head/contrib/llvm/lib/Analysis/GlobalsModRef.cpp
  head/contrib/llvm/lib/Analysis/IndirectCallPromotionAnalysis.cpp
  head/contrib/llvm/lib/Analysis/InlineCost.cpp
  head/contrib/llvm/lib/Analysis/InstructionSimplify.cpp
  head/contrib/llvm/lib/Analysis/IteratedDominanceFrontier.cpp
  head/contrib/llvm/lib/Analysis/LazyCallGraph.cpp
  head/contrib/llvm/lib/Analysis/LazyValueInfo.cpp
  head/contrib/llvm/lib/Analysis/Lint.cpp
  head/contrib/llvm/lib/Analysis/Loads.cpp
  head/contrib/llvm/lib/Analysis/LoopAccessAnalysis.cpp
  head/contrib/llvm/lib/Analysis/LoopAnalysisManager.cpp
  head/contrib/llvm/lib/Analysis/LoopInfo.cpp
  head/contrib/llvm/lib/Analysis/LoopPass.cpp
  head/contrib/llvm/lib/Analysis/MemDepPrinter.cpp
  head/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
  head/contrib/llvm/lib/Analysis/MemoryLocation.cpp
  head/contrib/llvm/lib/Analysis/MemorySSA.cpp
  head/contrib/llvm/lib/Analysis/MemorySSAUpdater.cpp
  head/contrib/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
  head/contrib/llvm/lib/Analysis/MustExecute.cpp
  head/contrib/llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/ObjCARCInstKind.cpp
  head/contrib/llvm/lib/Analysis/OrderedBasicBlock.cpp
  head/contrib/llvm/lib/Analysis/PhiValues.cpp
  head/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp
  head/contrib/llvm/lib/Analysis/RegionPass.cpp
  head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp
  head/contrib/llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp
  head/contrib/llvm/lib/Analysis/ScopedNoAliasAA.cpp
  head/contrib/llvm/lib/Analysis/SyntheticCountsUtils.cpp
  head/contrib/llvm/lib/Analysis/TargetLibraryInfo.cpp
  head/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp
  head/contrib/llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
  head/contrib/llvm/lib/Analysis/TypeMetadataUtils.cpp
  head/contrib/llvm/lib/Analysis/ValueTracking.cpp
  head/contrib/llvm/lib/Analysis/VectorUtils.cpp
  head/contrib/llvm/lib/AsmParser/LLLexer.cpp
  head/contrib/llvm/lib/AsmParser/LLParser.cpp
  head/contrib/llvm/lib/AsmParser/LLParser.h
  head/contrib/llvm/lib/AsmParser/LLToken.h
  head/contrib/llvm/lib/BinaryFormat/Dwarf.cpp
  head/contrib/llvm/lib/BinaryFormat/Magic.cpp
  head/contrib/llvm/lib/BinaryFormat/Wasm.cpp
  head/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
  head/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
  head/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.h
  head/contrib/llvm/lib/Bitcode/Reader/ValueList.cpp
  head/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
  head/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
  head/contrib/llvm/lib/CodeGen/Analysis.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h
  head/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.cpp
  head/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.h
  head/contrib/llvm/lib/CodeGen/AtomicExpandPass.cpp
  head/contrib/llvm/lib/CodeGen/BranchFolding.cpp
  head/contrib/llvm/lib/CodeGen/BreakFalseDeps.cpp
  head/contrib/llvm/lib/CodeGen/BuiltinGCs.cpp
  head/contrib/llvm/lib/CodeGen/CFIInstrInserter.cpp
  head/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp
  head/contrib/llvm/lib/CodeGen/CodeGen.cpp
  head/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp
  head/contrib/llvm/lib/CodeGen/DFAPacketizer.cpp
  head/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp
  head/contrib/llvm/lib/CodeGen/ExpandMemCmp.cpp
  head/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp
  head/contrib/llvm/lib/CodeGen/GCMetadata.cpp
  head/contrib/llvm/lib/CodeGen/GCRootLowering.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/Combiner.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/RegisterBankInfo.cpp
  head/contrib/llvm/lib/CodeGen/GlobalISel/Utils.cpp
  head/contrib/llvm/lib/CodeGen/GlobalMerge.cpp
  head/contrib/llvm/lib/CodeGen/IfConversion.cpp
  head/contrib/llvm/lib/CodeGen/ImplicitNullChecks.cpp
  head/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp
  head/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp
  head/contrib/llvm/lib/CodeGen/LiveDebugValues.cpp
  head/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp
  head/contrib/llvm/lib/CodeGen/LiveDebugVariables.h
  head/contrib/llvm/lib/CodeGen/LiveInterval.cpp
  head/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp
  head/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp
  head/contrib/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp
  head/contrib/llvm/lib/CodeGen/MIRCanonicalizerPass.cpp
  head/contrib/llvm/lib/CodeGen/MIRParser/MILexer.cpp
  head/contrib/llvm/lib/CodeGen/MIRParser/MILexer.h
  head/contrib/llvm/lib/CodeGen/MIRParser/MIParser.cpp
  head/contrib/llvm/lib/CodeGen/MIRParser/MIRParser.cpp
  head/contrib/llvm/lib/CodeGen/MIRPrinter.cpp
  head/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp
  head/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp
  head/contrib/llvm/lib/CodeGen/MachineCSE.cpp
  head/contrib/llvm/lib/CodeGen/MachineCombiner.cpp
  head/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp
  head/contrib/llvm/lib/CodeGen/MachineFunction.cpp
  head/contrib/llvm/lib/CodeGen/MachineFunctionPass.cpp
  head/contrib/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp
  head/contrib/llvm/lib/CodeGen/MachineInstr.cpp
  head/contrib/llvm/lib/CodeGen/MachineInstrBundle.cpp
  head/contrib/llvm/lib/CodeGen/MachineLICM.cpp
  head/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp
  head/contrib/llvm/lib/CodeGen/MachineModuleInfoImpls.cpp
  head/contrib/llvm/lib/CodeGen/MachineOperand.cpp
  head/contrib/llvm/lib/CodeGen/MachineOutliner.cpp
  head/contrib/llvm/lib/CodeGen/MachinePipeliner.cpp
  head/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp
  head/contrib/llvm/lib/CodeGen/MachineScheduler.cpp
  head/contrib/llvm/lib/CodeGen/MachineSink.cpp
  head/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp
  head/contrib/llvm/lib/CodeGen/MachineVerifier.cpp
  head/contrib/llvm/lib/CodeGen/MacroFusion.cpp
  head/contrib/llvm/lib/CodeGen/OptimizePHIs.cpp
  head/contrib/llvm/lib/CodeGen/PHIElimination.cpp
  head/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp
  head/contrib/llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
  head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp
  head/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp
  head/contrib/llvm/lib/CodeGen/ReachingDefAnalysis.cpp
  head/contrib/llvm/lib/CodeGen/RegAllocFast.cpp
  head/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp
  head/contrib/llvm/lib/CodeGen/RegUsageInfoCollector.cpp
  head/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp
  head/contrib/llvm/lib/CodeGen/RegisterPressure.cpp
  head/contrib/llvm/lib/CodeGen/RegisterUsageInfo.cpp
  head/contrib/llvm/lib/CodeGen/SafeStack.cpp
  head/contrib/llvm/lib/CodeGen/SafeStackColoring.cpp
  head/contrib/llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp
  head/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp
  head/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
  head/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h
  head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h
  head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGAddressAnalysis.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp
  head/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
  head/contrib/llvm/lib/CodeGen/SlotIndexes.cpp
  head/contrib/llvm/lib/CodeGen/SplitKit.h
  head/contrib/llvm/lib/CodeGen/StackColoring.cpp
  head/contrib/llvm/lib/CodeGen/StackMaps.cpp
  head/contrib/llvm/lib/CodeGen/StackProtector.cpp
  head/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp
  head/contrib/llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
  head/contrib/llvm/lib/CodeGen/TargetInstrInfo.cpp
  head/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp
  head/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
  head/contrib/llvm/lib/CodeGen/TargetOptionsImpl.cpp
  head/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp
  head/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
  head/contrib/llvm/lib/CodeGen/VirtRegMap.cpp
  head/contrib/llvm/lib/CodeGen/WasmEHPrepare.cpp
  head/contrib/llvm/lib/CodeGen/WinEHPrepare.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/CVSymbolVisitor.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/CodeViewError.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/DebugCrossImpSubsection.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/DebugFrameDataSubsection.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/DebugStringTableSubsection.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/EnumTables.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/TypeIndex.cpp
  head/contrib/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAddr.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugPubTable.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRangeList.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRnglists.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFFormValue.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFGdbIndex.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFListTable.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp
  head/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
  head/contrib/llvm/lib/DebugInfo/MSF/MSFError.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIADataStream.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumDebugStreams.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumInjectedSources.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumLineNumbers.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSectionContribs.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSourceFiles.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumSymbols.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAEnumTables.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIAError.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIARawSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASectionContrib.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASession.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIASourceFile.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/DIA/DIATable.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/GenericError.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/DbiModuleDescriptorBuilder.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStreamBuilder.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/GlobalsStream.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/InfoStreamBuilder.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/ModuleDebugStream.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeCompilandSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumModules.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeEnumTypes.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeExeSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeRawSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/RawError.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/TpiHashing.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDB.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBExtras.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBInterfaceAnchors.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolAnnotation.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolBlock.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandDetails.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCompilandEnv.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolCustom.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolData.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolExe.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugEnd.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolFuncDebugStart.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolLabel.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolPublicSymbol.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolThunk.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeArray.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBaseClass.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeBuiltin.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeCustom.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeDimension.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeEnum.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFriend.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionArg.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeFunctionSig.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeManaged.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypePointer.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeTypedef.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeUDT.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTable.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolTypeVTableShape.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUnknown.cpp
  head/contrib/llvm/lib/DebugInfo/PDB/PDBSymbolUsingNamespace.cpp
  head/contrib/llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
  head/contrib/llvm/lib/Demangle/ItaniumDemangle.cpp
  head/contrib/llvm/lib/Demangle/MicrosoftDemangle.cpp
  head/contrib/llvm/lib/ExecutionEngine/GDBRegistrationListener.cpp
  head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp
  head/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
  head/contrib/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
  head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
  head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
  head/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/Core.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/Layer.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/Legacy.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/NullResolver.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindings.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/OrcCBindingsStack.h
  head/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp
  head/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h
  head/contrib/llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp
  head/contrib/llvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCOFF.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldCheckerImpl.h
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h
  head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldMachOARM.h
  head/contrib/llvm/lib/FuzzMutate/IRMutator.cpp
  head/contrib/llvm/lib/FuzzMutate/RandomIRBuilder.cpp
  head/contrib/llvm/lib/IR/AsmWriter.cpp
  head/contrib/llvm/lib/IR/Attributes.cpp
  head/contrib/llvm/lib/IR/AutoUpgrade.cpp
  head/contrib/llvm/lib/IR/BasicBlock.cpp
  head/contrib/llvm/lib/IR/ConstantFold.cpp
  head/contrib/llvm/lib/IR/Constants.cpp
  head/contrib/llvm/lib/IR/ConstantsContext.h
  head/contrib/llvm/lib/IR/Core.cpp
  head/contrib/llvm/lib/IR/DIBuilder.cpp
  head/contrib/llvm/lib/IR/DataLayout.cpp
  head/contrib/llvm/lib/IR/DebugInfo.cpp
  head/contrib/llvm/lib/IR/DebugInfoMetadata.cpp
  head/contrib/llvm/lib/IR/DebugLoc.cpp
  head/contrib/llvm/lib/IR/DiagnosticInfo.cpp
  head/contrib/llvm/lib/IR/DomTreeUpdater.cpp
  head/contrib/llvm/lib/IR/Dominators.cpp
  head/contrib/llvm/lib/IR/Function.cpp
  head/contrib/llvm/lib/IR/Globals.cpp
  head/contrib/llvm/lib/IR/IRBuilder.cpp
  head/contrib/llvm/lib/IR/IRPrintingPasses.cpp
  head/contrib/llvm/lib/IR/Instruction.cpp
  head/contrib/llvm/lib/IR/Instructions.cpp
  head/contrib/llvm/lib/IR/IntrinsicInst.cpp
  head/contrib/llvm/lib/IR/LLVMContext.cpp
  head/contrib/llvm/lib/IR/LLVMContextImpl.h
  head/contrib/llvm/lib/IR/LegacyPassManager.cpp
  head/contrib/llvm/lib/IR/MDBuilder.cpp
  head/contrib/llvm/lib/IR/Metadata.cpp
  head/contrib/llvm/lib/IR/Module.cpp
  head/contrib/llvm/lib/IR/ModuleSummaryIndex.cpp
  head/contrib/llvm/lib/IR/SafepointIRVerifier.cpp
  head/contrib/llvm/lib/IR/Type.cpp
  head/contrib/llvm/lib/IR/Value.cpp
  head/contrib/llvm/lib/IR/Verifier.cpp
  head/contrib/llvm/lib/LTO/LTO.cpp
  head/contrib/llvm/lib/LTO/LTOBackend.cpp
  head/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp
  head/contrib/llvm/lib/LTO/LTOModule.cpp
  head/contrib/llvm/lib/LTO/ThinLTOCodeGenerator.cpp
  head/contrib/llvm/lib/LTO/UpdateCompilerUsed.cpp
  head/contrib/llvm/lib/Linker/IRMover.cpp
  head/contrib/llvm/lib/MC/ConstantPools.cpp
  head/contrib/llvm/lib/MC/ELFObjectWriter.cpp
  head/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp
  head/contrib/llvm/lib/MC/MCAsmInfoWasm.cpp
  head/contrib/llvm/lib/MC/MCAsmStreamer.cpp
  head/contrib/llvm/lib/MC/MCAssembler.cpp
  head/contrib/llvm/lib/MC/MCCodeView.cpp
  head/contrib/llvm/lib/MC/MCContext.cpp
  head/contrib/llvm/lib/MC/MCDwarf.cpp
  head/contrib/llvm/lib/MC/MCELFObjectTargetWriter.cpp
  head/contrib/llvm/lib/MC/MCExpr.cpp
  head/contrib/llvm/lib/MC/MCFragment.cpp
  head/contrib/llvm/lib/MC/MCInst.cpp
  head/contrib/llvm/lib/MC/MCInstrAnalysis.cpp
  head/contrib/llvm/lib/MC/MCInstrDesc.cpp
  head/contrib/llvm/lib/MC/MCMachOStreamer.cpp
  head/contrib/llvm/lib/MC/MCNullStreamer.cpp
  head/contrib/llvm/lib/MC/MCObjectFileInfo.cpp
  head/contrib/llvm/lib/MC/MCObjectStreamer.cpp
  head/contrib/llvm/lib/MC/MCParser/AsmLexer.cpp
  head/contrib/llvm/lib/MC/MCParser/AsmParser.cpp
  head/contrib/llvm/lib/MC/MCParser/DarwinAsmParser.cpp
  head/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp
  head/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp
  head/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp
  head/contrib/llvm/lib/MC/MCRegisterInfo.cpp
  head/contrib/llvm/lib/MC/MCSection.cpp
  head/contrib/llvm/lib/MC/MCSectionELF.cpp
  head/contrib/llvm/lib/MC/MCStreamer.cpp
  head/contrib/llvm/lib/MC/MCWasmStreamer.cpp
  head/contrib/llvm/lib/MC/MCWin64EH.cpp
  head/contrib/llvm/lib/MC/MachObjectWriter.cpp
  head/contrib/llvm/lib/MC/WasmObjectWriter.cpp
  head/contrib/llvm/lib/MC/WinCOFFObjectWriter.cpp
  head/contrib/llvm/lib/Object/ArchiveWriter.cpp
  head/contrib/llvm/lib/Object/Binary.cpp
  head/contrib/llvm/lib/Object/COFFObjectFile.cpp
  head/contrib/llvm/lib/Object/ELF.cpp
  head/contrib/llvm/lib/Object/ELFObjectFile.cpp
  head/contrib/llvm/lib/Object/Error.cpp
  head/contrib/llvm/lib/Object/MachOObjectFile.cpp
  head/contrib/llvm/lib/Object/ModuleSymbolTable.cpp
  head/contrib/llvm/lib/Object/Object.cpp
  head/contrib/llvm/lib/Object/ObjectFile.cpp
  head/contrib/llvm/lib/Object/WasmObjectFile.cpp
  head/contrib/llvm/lib/Object/WindowsResource.cpp
  head/contrib/llvm/lib/ObjectYAML/COFFYAML.cpp
  head/contrib/llvm/lib/ObjectYAML/CodeViewYAMLDebugSections.cpp
  head/contrib/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
  head/contrib/llvm/lib/ObjectYAML/ELFYAML.cpp
  head/contrib/llvm/lib/ObjectYAML/WasmYAML.cpp
  head/contrib/llvm/lib/Option/OptTable.cpp
  head/contrib/llvm/lib/Passes/PassBuilder.cpp
  head/contrib/llvm/lib/Passes/PassRegistry.def
  head/contrib/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
  head/contrib/llvm/lib/ProfileData/GCOV.cpp
  head/contrib/llvm/lib/ProfileData/InstrProf.cpp
  head/contrib/llvm/lib/ProfileData/InstrProfReader.cpp
  head/contrib/llvm/lib/ProfileData/ProfileSummaryBuilder.cpp
  head/contrib/llvm/lib/ProfileData/SampleProf.cpp
  head/contrib/llvm/lib/ProfileData/SampleProfReader.cpp
  head/contrib/llvm/lib/ProfileData/SampleProfWriter.cpp
  head/contrib/llvm/lib/Support/APInt.cpp
  head/contrib/llvm/lib/Support/BinaryStreamError.cpp
  head/contrib/llvm/lib/Support/COM.cpp
  head/contrib/llvm/lib/Support/CachePruning.cpp
  head/contrib/llvm/lib/Support/CodeGenCoverage.cpp
  head/contrib/llvm/lib/Support/CommandLine.cpp
  head/contrib/llvm/lib/Support/Compression.cpp
  head/contrib/llvm/lib/Support/DebugCounter.cpp
  head/contrib/llvm/lib/Support/Error.cpp
  head/contrib/llvm/lib/Support/FileOutputBuffer.cpp
  head/contrib/llvm/lib/Support/FoldingSet.cpp
  head/contrib/llvm/lib/Support/FormatVariadic.cpp
  head/contrib/llvm/lib/Support/Hashing.cpp
  head/contrib/llvm/lib/Support/Host.cpp
  head/contrib/llvm/lib/Support/JSON.cpp
  head/contrib/llvm/lib/Support/Locale.cpp
  head/contrib/llvm/lib/Support/LockFileManager.cpp
  head/contrib/llvm/lib/Support/Path.cpp
  head/contrib/llvm/lib/Support/Process.cpp
  head/contrib/llvm/lib/Support/RandomNumberGenerator.cpp
  head/contrib/llvm/lib/Support/Signals.cpp
  head/contrib/llvm/lib/Support/SourceMgr.cpp
  head/contrib/llvm/lib/Support/StringSaver.cpp
  head/contrib/llvm/lib/Support/TargetParser.cpp
  head/contrib/llvm/lib/Support/TargetRegistry.cpp
  head/contrib/llvm/lib/Support/Timer.cpp
  head/contrib/llvm/lib/Support/Triple.cpp
  head/contrib/llvm/lib/Support/Unix/Path.inc
  head/contrib/llvm/lib/Support/Unix/Signals.inc
  head/contrib/llvm/lib/Support/Unix/Threading.inc
  head/contrib/llvm/lib/Support/Windows/Path.inc
  head/contrib/llvm/lib/Support/Windows/Process.inc
  head/contrib/llvm/lib/Support/Windows/Program.inc
  head/contrib/llvm/lib/Support/Windows/Threading.inc
  head/contrib/llvm/lib/Support/Windows/WindowsSupport.h
  head/contrib/llvm/lib/Support/WithColor.cpp
  head/contrib/llvm/lib/Support/YAMLTraits.cpp
  head/contrib/llvm/lib/Support/raw_ostream.cpp
  head/contrib/llvm/lib/TableGen/Main.cpp
  head/contrib/llvm/lib/TableGen/Record.cpp
  head/contrib/llvm/lib/TableGen/TGLexer.cpp
  head/contrib/llvm/lib/TableGen/TGLexer.h
  head/contrib/llvm/lib/TableGen/TGParser.h
  head/contrib/llvm/lib/Target/AArch64/AArch64.h
  head/contrib/llvm/lib/Target/AArch64/AArch64.td
  head/contrib/llvm/lib/Target/AArch64/AArch64A57FPLoadBalancing.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.h
  head/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td
  head/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.h
  head/contrib/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h
  head/contrib/llvm/lib/Target/AArch64/AArch64InstrFormats.td
  head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.h
  head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td
  head/contrib/llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64LegalizerInfo.h
  head/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
  head/contrib/llvm/lib/Target/AArch64/AArch64MacroFusion.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.h
  head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.td
  head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM1.td
  head/contrib/llvm/lib/Target/AArch64/AArch64SchedExynosM3.td
  head/contrib/llvm/lib/Target/AArch64/AArch64Schedule.td
  head/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h
  head/contrib/llvm/lib/Target/AArch64/AArch64SystemOperands.td
  head/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
  head/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
  head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
  head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp
  head/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp
  head/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
  head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.h
  head/contrib/llvm/lib/Target/AArch64/SVEInstrFormats.td
  head/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
  head/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPU.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAliasAnalysis.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUGISel.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUGenRegisterBankInfo.def
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUInline.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUIntrinsicInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUMacroFusion.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPTNote.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterBanks.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetObjectFile.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
  head/contrib/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
  head/contrib/llvm/lib/Target/AMDGPU/BUFInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/DSInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/FLATInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/GCNILPSched.cpp
  head/contrib/llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
  head/contrib/llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp
  head/contrib/llvm/lib/Target/AMDGPU/GCNProcessors.td
  head/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp
  head/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.h
  head/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
  head/contrib/llvm/lib/Target/AMDGPU/MIMGInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/R600EmitClauseMarkers.cpp
  head/contrib/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
  head/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/R600InstrInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/R600Instructions.td
  head/contrib/llvm/lib/Target/AMDGPU/R600MachineScheduler.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIDefines.h
  head/contrib/llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIFixWWMLiveness.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.h
  head/contrib/llvm/lib/Target/AMDGPU/SIInsertSkips.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIInstrFormats.td
  head/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.td
  head/contrib/llvm/lib/Target/AMDGPU/SIInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/SIIntrinsics.td
  head/contrib/llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td
  head/contrib/llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
  head/contrib/llvm/lib/Target/AMDGPU/SMInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/SOPInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
  head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/Utils/AMDKernelCodeTInfo.h
  head/contrib/llvm/lib/Target/AMDGPU/VOP1Instructions.td
  head/contrib/llvm/lib/Target/AMDGPU/VOP2Instructions.td
  head/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td
  head/contrib/llvm/lib/Target/AMDGPU/VOP3PInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/VOPCInstructions.td
  head/contrib/llvm/lib/Target/AMDGPU/VOPInstructions.td
  head/contrib/llvm/lib/Target/ARC/ARCTargetMachine.cpp
  head/contrib/llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.cpp
  head/contrib/llvm/lib/Target/ARM/ARM.td
  head/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp
  head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h
  head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
  head/contrib/llvm/lib/Target/ARM/ARMCallLowering.cpp
  head/contrib/llvm/lib/Target/ARM/ARMCallLowering.h
  head/contrib/llvm/lib/Target/ARM/ARMCodeGenPrepare.cpp
  head/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
  head/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
  head/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp
  head/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp
  head/contrib/llvm/lib/Target/ARM/ARMFrameLowering.h
  head/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp
  head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h
  head/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td
  head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h
  head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td
  head/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td
  head/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td
  head/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td
  head/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td
  head/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp
  head/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.h
  head/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
  head/contrib/llvm/lib/Target/ARM/ARMMacroFusion.cpp
  head/contrib/llvm/lib/Target/ARM/ARMMacroFusion.h
  head/contrib/llvm/lib/Target/ARM/ARMParallelDSP.cpp
  head/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp
  head/contrib/llvm/lib/Target/ARM/ARMSubtarget.h
  head/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp
  head/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
  head/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.h
  head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
  head/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
  head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
  head/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
  head/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
  head/contrib/llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
  head/contrib/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/AVR/AVRISelLowering.cpp
  head/contrib/llvm/lib/Target/AVR/AVRInstrInfo.td
  head/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.cpp
  head/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.td
  head/contrib/llvm/lib/Target/AVR/AVRTargetMachine.cpp
  head/contrib/llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
  head/contrib/llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
  head/contrib/llvm/lib/Target/BPF/BPF.h
  head/contrib/llvm/lib/Target/BPF/BPFAsmPrinter.cpp
  head/contrib/llvm/lib/Target/BPF/BPFRegisterInfo.h
  head/contrib/llvm/lib/Target/BPF/BPFTargetMachine.cpp
  head/contrib/llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
  head/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h
  head/contrib/llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
  head/contrib/llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
  head/contrib/llvm/lib/Target/Hexagon/Hexagon.h
  head/contrib/llvm/lib/Target/Hexagon/Hexagon.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonBitTracker.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepArch.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepIICHVX.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepIICScalar.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepITypes.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrFormats.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepInstrInfo.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepMappings.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepOperands.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonDepTimingClasses.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormats.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsics.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonIntrinsicsV5.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonPatterns.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonPseudo.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonSchedule.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV60.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV62.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV65.td
  head/contrib/llvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonStoreWidening.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
  head/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
  head/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.cpp
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonInstPrinter.h
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCDuplexInfo.cpp
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCExpr.cpp
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.h
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.cpp
  head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonShuffler.h
  head/contrib/llvm/lib/Target/Hexagon/RDFDeadCode.cpp
  head/contrib/llvm/lib/Target/Hexagon/RDFGraph.cpp
  head/contrib/llvm/lib/Target/Hexagon/RDFLiveness.cpp
  head/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.cpp
  head/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
  head/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.h
  head/contrib/llvm/lib/Target/Lanai/LanaiMemAluCombiner.cpp
  head/contrib/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
  head/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.cpp
  head/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.h
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.cpp
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp
  head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.h
  head/contrib/llvm/lib/Target/MSP430/MSP430.h
  head/contrib/llvm/lib/Target/MSP430/MSP430.td
  head/contrib/llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
  head/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
  head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.h
  head/contrib/llvm/lib/Target/MSP430/MSP430InstrFormats.td
  head/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.cpp
  head/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.h
  head/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.td
  head/contrib/llvm/lib/Target/MSP430/MSP430MCInstLower.cpp
  head/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.td
  head/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
  head/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
  head/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
  head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
  head/contrib/llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td
  head/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td
  head/contrib/llvm/lib/Target/Mips/MicroMipsInstrFormats.td
  head/contrib/llvm/lib/Target/Mips/MicroMipsInstrInfo.td
  head/contrib/llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp
  head/contrib/llvm/lib/Target/Mips/Mips.h
  head/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp
  head/contrib/llvm/lib/Target/Mips/Mips16ISelLowering.cpp
  head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp
  head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h
  head/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td
  head/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td
  head/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td
  head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp
  head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.h
  head/contrib/llvm/lib/Target/Mips/MipsBranchExpansion.cpp
  head/contrib/llvm/lib/Target/Mips/MipsCCState.cpp
  head/contrib/llvm/lib/Target/Mips/MipsCallLowering.cpp
  head/contrib/llvm/lib/Target/Mips/MipsCallLowering.h
  head/contrib/llvm/lib/Target/Mips/MipsCondMov.td
  head/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
  head/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp
  head/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp
  head/contrib/llvm/lib/Target/Mips/MipsISelLowering.h
  head/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td
  head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td
  head/contrib/llvm/lib/Target/Mips/MipsInstructionSelector.cpp
  head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MipsLegalizerInfo.h
  head/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp
  head/contrib/llvm/lib/Target/Mips/MipsMSAInstrInfo.td
  head/contrib/llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h
  head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.td
  head/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.cpp
  head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
  head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h
  head/contrib/llvm/lib/Target/Mips/MipsSchedule.td
  head/contrib/llvm/lib/Target/Mips/MipsScheduleGeneric.td
  head/contrib/llvm/lib/Target/Mips/MipsSubtarget.h
  head/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp
  head/contrib/llvm/lib/Target/Mips/MipsTargetObjectFile.cpp
  head/contrib/llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp
  head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.cpp
  head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h
  head/contrib/llvm/lib/Target/NVPTX/NVPTX.h
  head/contrib/llvm/lib/Target/NVPTX/NVPTX.td
  head/contrib/llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
  head/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.h
  head/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
  head/contrib/llvm/lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
  head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
  head/contrib/llvm/lib/Target/NVPTX/NVVMReflect.cpp
  head/contrib/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
  head/contrib/llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
  head/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp
  head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp
  head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h
  head/contrib/llvm/lib/Target/PowerPC/P9InstrResources.td
  head/contrib/llvm/lib/Target/PowerPC/PPC.td
  head/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td
  head/contrib/llvm/lib/Target/PowerPC/PPCExpandISEL.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h
  head/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h
  head/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrHTM.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.h
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrQPX.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrSPE.td
  head/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td
  head/contrib/llvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h
  head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.td
  head/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td
  head/contrib/llvm/lib/Target/PowerPC/PPCSchedule440.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleA2.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE5500.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG3.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4Plus.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG5.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleP8.td
  head/contrib/llvm/lib/Target/PowerPC/PPCScheduleP9.td
  head/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
  head/contrib/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
  head/contrib/llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
  head/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.cpp
  head/contrib/llvm/lib/Target/RISCV/InstPrinter/RISCVInstPrinter.h
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
  head/contrib/llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
  head/contrib/llvm/lib/Target/RISCV/RISCV.h
  head/contrib/llvm/lib/Target/RISCV/RISCV.td
  head/contrib/llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVISelLowering.h
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrFormats.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfo.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoA.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoC.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoD.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoF.td
  head/contrib/llvm/lib/Target/RISCV/RISCVInstrInfoM.td
  head/contrib/llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
  head/contrib/llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
  head/contrib/llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
  head/contrib/llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
  head/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp
  head/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.h
  head/contrib/llvm/lib/Target/Sparc/LeonFeatures.td
  head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
  head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
  head/contrib/llvm/lib/Target/Sparc/Sparc.td
  head/contrib/llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
  head/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp
  head/contrib/llvm/lib/Target/Sparc/SparcISelLowering.h
  head/contrib/llvm/lib/Target/Sparc/SparcInstr64Bit.td
  head/contrib/llvm/lib/Target/Sparc/SparcInstrAliases.td
  head/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td
  head/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.cpp
  head/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.h
  head/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp
  head/contrib/llvm/lib/Target/Sparc/SparcSubtarget.h
  head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp
  head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.h
  head/contrib/llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.h
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZInstrVector.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.h
  head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZSchedule.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ13.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ196.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td
  head/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.h
  head/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
  head/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp
  head/contrib/llvm/lib/Target/TargetMachine.cpp
  head/contrib/llvm/lib/Target/TargetMachineC.cpp
  head/contrib/llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
  head/contrib/llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
  head/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.cpp
  head/contrib/llvm/lib/Target/WebAssembly/InstPrinter/WebAssemblyInstPrinter.h
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyAsmBackend.cpp
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyFixupKinds.h
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.cpp
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyTargetStreamer.h
  head/contrib/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
  head/contrib/llvm/lib/Target/WebAssembly/README.txt
  head/contrib/llvm/lib/Target/WebAssembly/WebAssembly.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssembly.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyCallIndirectFixup.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExceptionInfo.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISD.def
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrConv.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrExceptRef.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFloat.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrFormats.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInteger.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrMemory.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerBrUnless.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyLowerGlobalDtors.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyMachineFunctionInfo.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeLiveIntervals.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyOptimizeReturned.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyPrepareForLiveIntervals.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.td
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyReplacePhysRegs.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
  head/contrib/llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
  head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
  head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp
  head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
  head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h
  head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp
  head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
  head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
  head/contrib/llvm/lib/Target/X86/ShadowCallStack.cpp
  head/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp
  head/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.h
  head/contrib/llvm/lib/Target/X86/X86.h
  head/contrib/llvm/lib/Target/X86/X86.td
  head/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp
  head/contrib/llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
  head/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp
  head/contrib/llvm/lib/Target/X86/X86CallLowering.cpp
  head/contrib/llvm/lib/Target/X86/X86CallLowering.h
  head/contrib/llvm/lib/Target/X86/X86CallingConv.td
  head/contrib/llvm/lib/Target/X86/X86CmovConversion.cpp
  head/contrib/llvm/lib/Target/X86/X86DomainReassignment.cpp
  head/contrib/llvm/lib/Target/X86/X86FastISel.cpp
  head/contrib/llvm/lib/Target/X86/X86FixupBWInsts.cpp
  head/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp
  head/contrib/llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
  head/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp
  head/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
  head/contrib/llvm/lib/Target/X86/X86ISelLowering.h
  head/contrib/llvm/lib/Target/X86/X86Instr3DNow.td
  head/contrib/llvm/lib/Target/X86/X86InstrAVX512.td
  head/contrib/llvm/lib/Target/X86/X86InstrArithmetic.td
  head/contrib/llvm/lib/Target/X86/X86InstrCMovSetCC.td
  head/contrib/llvm/lib/Target/X86/X86InstrCompiler.td
  head/contrib/llvm/lib/Target/X86/X86InstrControl.td
  head/contrib/llvm/lib/Target/X86/X86InstrExtension.td
  head/contrib/llvm/lib/Target/X86/X86InstrFMA.td
  head/contrib/llvm/lib/Target/X86/X86InstrFPStack.td
  head/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
  head/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp
  head/contrib/llvm/lib/Target/X86/X86InstrInfo.h
  head/contrib/llvm/lib/Target/X86/X86InstrInfo.td
  head/contrib/llvm/lib/Target/X86/X86InstrMMX.td
  head/contrib/llvm/lib/Target/X86/X86InstrSSE.td
  head/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td
  head/contrib/llvm/lib/Target/X86/X86InstrVecCompiler.td
  head/contrib/llvm/lib/Target/X86/X86InstrXOP.td
  head/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp
  head/contrib/llvm/lib/Target/X86/X86InterleavedAccess.cpp
  head/contrib/llvm/lib/Target/X86/X86IntrinsicsInfo.h
  head/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp
  head/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp
  head/contrib/llvm/lib/Target/X86/X86MacroFusion.cpp
  head/contrib/llvm/lib/Target/X86/X86MacroFusion.h
  head/contrib/llvm/lib/Target/X86/X86OptimizeLEAs.cpp
  head/contrib/llvm/lib/Target/X86/X86PfmCounters.td
  head/contrib/llvm/lib/Target/X86/X86RegisterBankInfo.cpp
  head/contrib/llvm/lib/Target/X86/X86RegisterInfo.td
  head/contrib/llvm/lib/Target/X86/X86RetpolineThunks.cpp
  head/contrib/llvm/lib/Target/X86/X86SchedBroadwell.td
  head/contrib/llvm/lib/Target/X86/X86SchedHaswell.td
  head/contrib/llvm/lib/Target/X86/X86SchedPredicates.td
  head/contrib/llvm/lib/Target/X86/X86SchedSandyBridge.td
  head/contrib/llvm/lib/Target/X86/X86SchedSkylakeClient.td
  head/contrib/llvm/lib/Target/X86/X86SchedSkylakeServer.td
  head/contrib/llvm/lib/Target/X86/X86Schedule.td
  head/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td
  head/contrib/llvm/lib/Target/X86/X86ScheduleBtVer2.td
  head/contrib/llvm/lib/Target/X86/X86ScheduleSLM.td
  head/contrib/llvm/lib/Target/X86/X86ScheduleZnver1.td
  head/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
  head/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
  head/contrib/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h
  head/contrib/llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
  head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp
  head/contrib/llvm/lib/Target/X86/X86Subtarget.h
  head/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp
  head/contrib/llvm/lib/Target/X86/X86TargetMachine.h
  head/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp
  head/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.h
  head/contrib/llvm/lib/Target/X86/X86WinEHState.cpp
  head/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp
  head/contrib/llvm/lib/Target/XCore/XCoreISelDAGToDAG.cpp
  head/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp
  head/contrib/llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
  head/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.h
  head/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.cpp
  head/contrib/llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp
  head/contrib/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp
  head/contrib/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
  head/contrib/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombineInternal.h
  head/contrib/llvm/lib/Transforms/Coroutines/CoroElide.cpp
  head/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp
  head/contrib/llvm/lib/Transforms/Coroutines/CoroSplit.cpp
  head/contrib/llvm/lib/Transforms/Coroutines/Coroutines.cpp
  head/contrib/llvm/lib/Transforms/IPO/AlwaysInliner.cpp
  head/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
  head/contrib/llvm/lib/Transforms/IPO/CalledValuePropagation.cpp
  head/contrib/llvm/lib/Transforms/IPO/ConstantMerge.cpp
  head/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
  head/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp
  head/contrib/llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
  head/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp
  head/contrib/llvm/lib/Transforms/IPO/FunctionImport.cpp
  head/contrib/llvm/lib/Transforms/IPO/GlobalDCE.cpp
  head/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp
  head/contrib/llvm/lib/Transforms/IPO/IPO.cpp
  head/contrib/llvm/lib/Transforms/IPO/Inliner.cpp
  head/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp
  head/contrib/llvm/lib/Transforms/IPO/LowerTypeTests.cpp
  head/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp
  head/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp
  head/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  head/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp
  head/contrib/llvm/lib/Transforms/IPO/SCCP.cpp
  head/contrib/llvm/lib/Transforms/IPO/SampleProfile.cpp
  head/contrib/llvm/lib/Transforms/IPO/SyntheticCountsPropagation.cpp
  head/contrib/llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
  head/contrib/llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
  head/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/CFGMST.h
  head/contrib/llvm/lib/Transforms/Instrumentation/CGProfile.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
  head/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
  head/contrib/llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
  head/contrib/llvm/lib/Transforms/ObjCARC/DependencyAnalysis.cpp
  head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARC.h
  head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
  head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
  head/contrib/llvm/lib/Transforms/Scalar/ADCE.cpp
  head/contrib/llvm/lib/Transforms/Scalar/BDCE.cpp
  head/contrib/llvm/lib/Transforms/Scalar/CallSiteSplitting.cpp
  head/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
  head/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp
  head/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
  head/contrib/llvm/lib/Transforms/Scalar/DCE.cpp
  head/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
  head/contrib/llvm/lib/Transforms/Scalar/DivRemPairs.cpp
  head/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp
  head/contrib/llvm/lib/Transforms/Scalar/GVN.cpp
  head/contrib/llvm/lib/Transforms/Scalar/GVNHoist.cpp
  head/contrib/llvm/lib/Transforms/Scalar/GVNSink.cpp
  head/contrib/llvm/lib/Transforms/Scalar/GuardWidening.cpp
  head/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
  head/contrib/llvm/lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
  head/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LICM.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopDistribute.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopInterchange.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopPassManager.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopPredication.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopSink.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LoopVersioningLICM.cpp
  head/contrib/llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
  head/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
  head/contrib/llvm/lib/Transforms/Scalar/MergeICmps.cpp
  head/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
  head/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp
  head/contrib/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp
  head/contrib/llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
  head/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp
  head/contrib/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
  head/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp
  head/contrib/llvm/lib/Transforms/Scalar/SROA.cpp
  head/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp
  head/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp
  head/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
  head/contrib/llvm/lib/Transforms/Scalar/Sink.cpp
  head/contrib/llvm/lib/Transforms/Scalar/SpeculateAroundPHIs.cpp
  head/contrib/llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
  head/contrib/llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
  head/contrib/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
  head/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp
  head/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
  head/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp
  head/contrib/llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp
  head/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp
  head/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp
  head/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
  head/contrib/llvm/lib/Transforms/Utils/EscapeEnumerator.cpp
  head/contrib/llvm/lib/Transforms/Utils/Evaluator.cpp
  head/contrib/llvm/lib/Transforms/Utils/FlattenCFG.cpp
  head/contrib/llvm/lib/Transforms/Utils/FunctionComparator.cpp
  head/contrib/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
  head/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp
  head/contrib/llvm/lib/Transforms/Utils/LibCallsShrinkWrap.cpp
  head/contrib/llvm/lib/Transforms/Utils/Local.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
  head/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
  head/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp
  head/contrib/llvm/lib/Transforms/Utils/ModuleUtils.cpp
  head/contrib/llvm/lib/Transforms/Utils/PredicateInfo.cpp
  head/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
  head/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
  head/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
  head/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
  head/contrib/llvm/lib/Transforms/Utils/SplitModule.cpp
  head/contrib/llvm/lib/Transforms/Utils/Utils.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
  head/contrib/llvm/lib/Transforms/Vectorize/VPlan.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/VPlan.h
  head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGBuilder.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/VPlanHCFGTransforms.cpp
  head/contrib/llvm/lib/Transforms/Vectorize/VPlanValue.h
  head/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp
  head/contrib/llvm/lib/XRay/InstrumentationMap.cpp
  head/contrib/llvm/lib/XRay/Trace.cpp
  head/contrib/llvm/tools/bugpoint/CrashDebugger.cpp
  head/contrib/llvm/tools/bugpoint/ExecutionDriver.cpp
  head/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp
  head/contrib/llvm/tools/bugpoint/ToolRunner.cpp
  head/contrib/llvm/tools/bugpoint/ToolRunner.h
  head/contrib/llvm/tools/clang/FREEBSD-Xlist
  head/contrib/llvm/tools/clang/LICENSE.TXT
  head/contrib/llvm/tools/clang/include/clang-c/Index.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTImporter.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTStructuralEquivalence.h
  head/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h
  head/contrib/llvm/tools/clang/include/clang/AST/Attr.h
  head/contrib/llvm/tools/clang/include/clang/AST/AttrIterator.h
  head/contrib/llvm/tools/clang/include/clang/AST/BaseSubobject.h
  head/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h
  head/contrib/llvm/tools/clang/include/clang/AST/Comment.h
  head/contrib/llvm/tools/clang/include/clang/AST/CommentDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/AST/CommentVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/Decl.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclOpenMP.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h
  head/contrib/llvm/tools/clang/include/clang/AST/EvaluatedExprVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/Expr.h
  head/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h
  head/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h
  head/contrib/llvm/tools/clang/include/clang/AST/ExprOpenMP.h
  head/contrib/llvm/tools/clang/include/clang/AST/GlobalDecl.h
  head/contrib/llvm/tools/clang/include/clang/AST/LexicallyOrderedRecursiveASTVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/Mangle.h
  head/contrib/llvm/tools/clang/include/clang/AST/NSAPI.h
  head/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h
  head/contrib/llvm/tools/clang/include/clang/AST/ODRHash.h
  head/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h
  head/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.def
  head/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h
  head/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h
  head/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/Stmt.h
  head/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h
  head/contrib/llvm/tools/clang/include/clang/AST/StmtDataCollectors.td
  head/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h
  head/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h
  head/contrib/llvm/tools/clang/include/clang/AST/StmtVisitor.h
  head/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h
  head/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h
  head/contrib/llvm/tools/clang/include/clang/AST/Type.h
  head/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h
  head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h
  head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h
  head/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Parser.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/LiveVariables.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDeclContext.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/CallGraph.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/CloneDetection.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/ConstructionContext.h
  head/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h
  head/contrib/llvm/tools/clang/include/clang/Basic/AlignedAllocation.h
  head/contrib/llvm/tools/clang/include/clang/Basic/AllDiagnostics.h
  head/contrib/llvm/tools/clang/include/clang/Basic/Attr.td
  head/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td
  head/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAArch64.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAMDGPU.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsARM.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsHexagon.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsPPC.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsWebAssembly.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def
  head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86_64.def
  head/contrib/llvm/tools/clang/include/clang/Basic/Cuda.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DebugInfoOptions.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DeclNodes.td
  head/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCrossTUKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td
  head/contrib/llvm/tools/clang/include/clang/Basic/Features.def
  head/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h
  head/contrib/llvm/tools/clang/include/clang/Basic/FileSystemStatCache.h
  head/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h
  head/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def
  head/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h
  head/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h
  head/contrib/llvm/tools/clang/include/clang/Basic/OpenCLExtensions.def
  head/contrib/llvm/tools/clang/include/clang/Basic/OpenCLOptions.h
  head/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def
  head/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h
  head/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h
  head/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def
  head/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.h
  head/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h
  head/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h
  head/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h
  head/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td
  head/contrib/llvm/tools/clang/include/clang/Basic/TargetBuiltins.h
  head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h
  head/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h
  head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def
  head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h
  head/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h
  head/contrib/llvm/tools/clang/include/clang/Basic/X86Target.def
  head/contrib/llvm/tools/clang/include/clang/Basic/XRayInstr.h
  head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td
  head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon_incl.td
  head/contrib/llvm/tools/clang/include/clang/CodeGen/CGFunctionInfo.h
  head/contrib/llvm/tools/clang/include/clang/CodeGen/SwiftCallingConv.h
  head/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTUDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/CrossTU/CrossTranslationUnit.h
  head/contrib/llvm/tools/clang/include/clang/Driver/Action.h
  head/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td
  head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td
  head/contrib/llvm/tools/clang/include/clang/Driver/Distro.h
  head/contrib/llvm/tools/clang/include/clang/Driver/Driver.h
  head/contrib/llvm/tools/clang/include/clang/Driver/DriverDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Driver/Job.h
  head/contrib/llvm/tools/clang/include/clang/Driver/Options.td
  head/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h
  head/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h
  head/contrib/llvm/tools/clang/include/clang/Driver/Types.def
  head/contrib/llvm/tools/clang/include/clang/Format/Format.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/ASTConsumers.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def
  head/contrib/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/PrecompiledPreamble.h
  head/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h
  head/contrib/llvm/tools/clang/include/clang/Index/IndexDataConsumer.h
  head/contrib/llvm/tools/clang/include/clang/Index/IndexSymbol.h
  head/contrib/llvm/tools/clang/include/clang/Index/IndexingAction.h
  head/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h
  head/contrib/llvm/tools/clang/include/clang/Lex/CodeCompletionHandler.h
  head/contrib/llvm/tools/clang/include/clang/Lex/DirectoryLookup.h
  head/contrib/llvm/tools/clang/include/clang/Lex/HeaderMap.h
  head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h
  head/contrib/llvm/tools/clang/include/clang/Lex/LexDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h
  head/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h
  head/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h
  head/contrib/llvm/tools/clang/include/clang/Lex/Pragma.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h
  head/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h
  head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h
  head/contrib/llvm/tools/clang/include/clang/Lex/TokenConcatenation.h
  head/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h
  head/contrib/llvm/tools/clang/include/clang/Parse/ParseDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Parse/Parser.h
  head/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h
  head/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteOptions.h
  head/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h
  head/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h
  head/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h
  head/contrib/llvm/tools/clang/include/clang/Sema/Overload.h
  head/contrib/llvm/tools/clang/include/clang/Sema/ParsedAttr.h
  head/contrib/llvm/tools/clang/include/clang/Sema/Scope.h
  head/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h
  head/contrib/llvm/tools/clang/include/clang/Sema/Sema.h
  head/contrib/llvm/tools/clang/include/clang/Sema/SemaDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/ContinuousRangeMap.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/GlobalModuleIndex.h
  head/contrib/llvm/tools/clang/include/clang/Serialization/SerializationDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/CheckerBase.td
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Analyses.def
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/RangedConstraintManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Regions.def
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTSolver.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h
  head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/AllTUsExecution.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/ArgumentsAdjusters.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabasePluginRegistry.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/DiagnosticsYaml.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/Execution.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring/RefactoringDiagnostic.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/StandaloneExecution.h
  head/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h
  head/contrib/llvm/tools/clang/include/clang/module.modulemap
  head/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCAttrs.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCCalls.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransProtectedScope.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnbridgedCasts.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/TransformActions.cpp
  head/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp
  head/contrib/llvm/tools/clang/lib/AST/APValue.cpp
  head/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp
  head/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp
  head/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp
  head/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp
  head/contrib/llvm/tools/clang/lib/AST/ASTStructuralEquivalence.cpp
  head/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp
  head/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp
  head/contrib/llvm/tools/clang/lib/AST/CommentParser.cpp
  head/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp
  head/contrib/llvm/tools/clang/lib/AST/Decl.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclOpenMP.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp
  head/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp
  head/contrib/llvm/tools/clang/lib/AST/Expr.cpp
  head/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp
  head/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp
  head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp
  head/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp
  head/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp
  head/contrib/llvm/tools/clang/lib/AST/Linkage.h
  head/contrib/llvm/tools/clang/lib/AST/Mangle.cpp
  head/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp
  head/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp
  head/contrib/llvm/tools/clang/lib/AST/NestedNameSpecifier.cpp
  head/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp
  head/contrib/llvm/tools/clang/lib/AST/OpenMPClause.cpp
  head/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp
  head/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp
  head/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp
  head/contrib/llvm/tools/clang/lib/AST/SelectorLocationsKind.cpp
  head/contrib/llvm/tools/clang/lib/AST/Stmt.cpp
  head/contrib/llvm/tools/clang/lib/AST/StmtCXX.cpp
  head/contrib/llvm/tools/clang/lib/AST/StmtObjC.cpp
  head/contrib/llvm/tools/clang/lib/AST/StmtOpenMP.cpp
  head/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp
  head/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp
  head/contrib/llvm/tools/clang/lib/AST/Type.cpp
  head/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp
  head/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp
  head/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp
  head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp
  head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp
  head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Parser.cpp
  head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/CloneDetection.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/Consumed.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/LiveVariables.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ProgramPoint.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp
  head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Builtins.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Cuda.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp
  head/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp
  head/contrib/llvm/tools/clang/lib/Basic/FileSystemStatCache.cpp
  head/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Module.cpp
  head/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp
  head/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp
  head/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp
  head/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/AArch64.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/AMDGPU.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/ARM.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Hexagon.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Mips.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/NVPTX.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/OSTargets.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/PPC.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/SPIR.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/Sparc.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/WebAssembly.h
  head/contrib/llvm/tools/clang/lib/Basic/Targets/X86.cpp
  head/contrib/llvm/tools/clang/lib/Basic/Targets/X86.h
  head/contrib/llvm/tools/clang/lib/Basic/Version.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGCoroutine.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGNonTrivialStruct.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGVTT.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenABITypes.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h
  head/contrib/llvm/tools/clang/lib/CodeGen/ConstantEmitter.h
  head/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CoverageMappingGen.h
  head/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/MacroPPCallbacks.h
  head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/SwiftCallingConv.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/VarBypassDetector.h
  head/contrib/llvm/tools/clang/lib/CrossTU/CrossTranslationUnit.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Action.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Distro.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Driver.cpp
  head/contrib/llvm/tools/clang/lib/Driver/Job.cpp
  head/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/AMDGPU.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/AArch64.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/ARM.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/X86.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/BareMetal.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/CommonArgs.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Cuda.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/FreeBSD.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Fuchsia.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/HIP.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Hexagon.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Linux.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Minix.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/MipsLinux.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/OpenBSD.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/PS4CPU.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Solaris.h
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.cpp
  head/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.h
  head/contrib/llvm/tools/clang/lib/Driver/Types.cpp
  head/contrib/llvm/tools/clang/lib/Driver/XRayArgs.cpp
  head/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp
  head/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp
  head/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp
  head/contrib/llvm/tools/clang/lib/Format/Format.cpp
  head/contrib/llvm/tools/clang/lib/Format/FormatToken.h
  head/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.cpp
  head/contrib/llvm/tools/clang/lib/Format/FormatTokenLexer.h
  head/contrib/llvm/tools/clang/lib/Format/NamespaceEndCommentsFixer.cpp
  head/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp
  head/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h
  head/contrib/llvm/tools/clang/lib/Format/UnwrappedLineFormatter.cpp
  head/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp
  head/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h
  head/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/PrecompiledPreamble.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/FrontendActions.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/InclusionRewriter.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/RewriteObjC.cpp
  head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp
  head/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
  head/contrib/llvm/tools/clang/lib/Headers/__clang_cuda_runtime_wrapper.h
  head/contrib/llvm/tools/clang/lib/Headers/adxintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/altivec.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512bwintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512dqintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512fintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512pfintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vbmi2intrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vbmiintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vbmivlintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vlbwintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vlintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/avx512vlvbmi2intrin.h
  head/contrib/llvm/tools/clang/lib/Headers/bmiintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/cuda_wrappers/new
  head/contrib/llvm/tools/clang/lib/Headers/emmintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/float.h
  head/contrib/llvm/tools/clang/lib/Headers/immintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/intrin.h
  head/contrib/llvm/tools/clang/lib/Headers/lzcntintrin.h
  head/contrib/llvm/tools/clang/lib/Headers/opencl-c.h
  head/contrib/llvm/tools/clang/lib/Headers/vecintrin.h
  head/contrib/llvm/tools/clang/lib/Index/CommentToXML.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexSymbol.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexingAction.cpp
  head/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp
  head/contrib/llvm/tools/clang/lib/Index/SimpleFormatContext.h
  head/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp
  head/contrib/llvm/tools/clang/lib/Lex/HeaderMap.cpp
  head/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp
  head/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp
  head/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp
  head/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp
  head/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp
  head/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp
  head/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp
  head/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp
  head/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp
  head/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp
  head/contrib/llvm/tools/clang/lib/Lex/TokenConcatenation.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp
  head/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp
  head/contrib/llvm/tools/clang/lib/Parse/Parser.cpp
  head/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp
  head/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp
  head/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp
  head/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp
  head/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp
  head/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp
  head/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp
  head/contrib/llvm/tools/clang/lib/Sema/ParsedAttr.cpp
  head/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp
  head/contrib/llvm/tools/clang/lib/Sema/Sema.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaCUDA.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaCoroutine.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp
  head/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h
  head/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp
  head/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AllocationState.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCInstMethSignature.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CloneChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeleteWithNonVirtualDtorChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GTestChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/InterCheckerAPI.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IteratorChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.h
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NoReturnFunctionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NumberObjectConversionChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PaddingChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TrustNonnullChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Checker.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/DynamicTypeMap.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangedConstraintManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/WorkList.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp
  head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/ASTDiff/ASTDiff.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/AllTUsExecution.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/ArgumentsAdjusters.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Core/Diagnostic.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Core/Lookup.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Core/Replacement.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Execution.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Refactoring/ASTSelection.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Extract/Extract.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRFinder.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/StandaloneExecution.cpp
  head/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp
  head/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp
  head/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp
  head/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp
  head/contrib/llvm/tools/clang/tools/driver/cc1gen_reproducer_main.cpp
  head/contrib/llvm/tools/clang/tools/driver/driver.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/ClangOptionDocEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp
  head/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h
  head/contrib/llvm/tools/lld/COFF/Chunks.cpp
  head/contrib/llvm/tools/lld/COFF/Chunks.h
  head/contrib/llvm/tools/lld/COFF/Config.h
  head/contrib/llvm/tools/lld/COFF/DLL.cpp
  head/contrib/llvm/tools/lld/COFF/DLL.h
  head/contrib/llvm/tools/lld/COFF/Driver.cpp
  head/contrib/llvm/tools/lld/COFF/Driver.h
  head/contrib/llvm/tools/lld/COFF/DriverUtils.cpp
  head/contrib/llvm/tools/lld/COFF/ICF.cpp
  head/contrib/llvm/tools/lld/COFF/InputFiles.cpp
  head/contrib/llvm/tools/lld/COFF/InputFiles.h
  head/contrib/llvm/tools/lld/COFF/LTO.cpp
  head/contrib/llvm/tools/lld/COFF/MapFile.cpp
  head/contrib/llvm/tools/lld/COFF/MarkLive.cpp
  head/contrib/llvm/tools/lld/COFF/MinGW.cpp
  head/contrib/llvm/tools/lld/COFF/MinGW.h
  head/contrib/llvm/tools/lld/COFF/Options.td
  head/contrib/llvm/tools/lld/COFF/PDB.cpp
  head/contrib/llvm/tools/lld/COFF/PDB.h
  head/contrib/llvm/tools/lld/COFF/SymbolTable.cpp
  head/contrib/llvm/tools/lld/COFF/SymbolTable.h
  head/contrib/llvm/tools/lld/COFF/Symbols.cpp
  head/contrib/llvm/tools/lld/COFF/Symbols.h
  head/contrib/llvm/tools/lld/COFF/Writer.cpp
  head/contrib/llvm/tools/lld/COFF/Writer.h
  head/contrib/llvm/tools/lld/Common/Args.cpp
  head/contrib/llvm/tools/lld/Common/ErrorHandler.cpp
  head/contrib/llvm/tools/lld/Common/Strings.cpp
  head/contrib/llvm/tools/lld/Common/TargetOptionsCommandFlags.cpp
  head/contrib/llvm/tools/lld/ELF/AArch64ErrataFix.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/AArch64.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/AMDGPU.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/ARM.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/AVR.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/Hexagon.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/Mips.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/PPC.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/SPARCV9.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/X86.cpp
  head/contrib/llvm/tools/lld/ELF/Arch/X86_64.cpp
  head/contrib/llvm/tools/lld/ELF/CMakeLists.txt
  head/contrib/llvm/tools/lld/ELF/CallGraphSort.cpp
  head/contrib/llvm/tools/lld/ELF/Config.h
  head/contrib/llvm/tools/lld/ELF/Driver.cpp
  head/contrib/llvm/tools/lld/ELF/Driver.h
  head/contrib/llvm/tools/lld/ELF/DriverUtils.cpp
  head/contrib/llvm/tools/lld/ELF/EhFrame.cpp
  head/contrib/llvm/tools/lld/ELF/ICF.cpp
  head/contrib/llvm/tools/lld/ELF/InputFiles.cpp
  head/contrib/llvm/tools/lld/ELF/InputFiles.h
  head/contrib/llvm/tools/lld/ELF/InputSection.cpp
  head/contrib/llvm/tools/lld/ELF/InputSection.h
  head/contrib/llvm/tools/lld/ELF/LTO.cpp
  head/contrib/llvm/tools/lld/ELF/LTO.h
  head/contrib/llvm/tools/lld/ELF/LinkerScript.cpp
  head/contrib/llvm/tools/lld/ELF/LinkerScript.h
  head/contrib/llvm/tools/lld/ELF/MapFile.cpp
  head/contrib/llvm/tools/lld/ELF/MarkLive.cpp
  head/contrib/llvm/tools/lld/ELF/Options.td
  head/contrib/llvm/tools/lld/ELF/OutputSections.cpp
  head/contrib/llvm/tools/lld/ELF/OutputSections.h
  head/contrib/llvm/tools/lld/ELF/Relocations.cpp
  head/contrib/llvm/tools/lld/ELF/Relocations.h
  head/contrib/llvm/tools/lld/ELF/ScriptLexer.cpp
  head/contrib/llvm/tools/lld/ELF/ScriptLexer.h
  head/contrib/llvm/tools/lld/ELF/ScriptParser.cpp
  head/contrib/llvm/tools/lld/ELF/SymbolTable.cpp
  head/contrib/llvm/tools/lld/ELF/SymbolTable.h
  head/contrib/llvm/tools/lld/ELF/Symbols.cpp
  head/contrib/llvm/tools/lld/ELF/Symbols.h
  head/contrib/llvm/tools/lld/ELF/SyntheticSections.cpp
  head/contrib/llvm/tools/lld/ELF/SyntheticSections.h
  head/contrib/llvm/tools/lld/ELF/Target.cpp
  head/contrib/llvm/tools/lld/ELF/Target.h
  head/contrib/llvm/tools/lld/ELF/Thunks.cpp
  head/contrib/llvm/tools/lld/ELF/Writer.cpp
  head/contrib/llvm/tools/lld/FREEBSD-Xlist
  head/contrib/llvm/tools/lld/LICENSE.TXT
  head/contrib/llvm/tools/lld/docs/NewLLD.rst
  head/contrib/llvm/tools/lld/docs/README.txt
  head/contrib/llvm/tools/lld/docs/Readers.rst
  head/contrib/llvm/tools/lld/docs/ReleaseNotes.rst
  head/contrib/llvm/tools/lld/docs/WebAssembly.rst
  head/contrib/llvm/tools/lld/docs/conf.py
  head/contrib/llvm/tools/lld/docs/index.rst
  head/contrib/llvm/tools/lld/docs/ld.lld.1
  head/contrib/llvm/tools/lld/docs/open_projects.rst
  head/contrib/llvm/tools/lld/docs/windows_support.rst
  head/contrib/llvm/tools/lld/include/lld/Common/Args.h
  head/contrib/llvm/tools/lld/include/lld/Common/ErrorHandler.h
  head/contrib/llvm/tools/lld/include/lld/Common/LLVM.h
  head/contrib/llvm/tools/lld/include/lld/Common/Strings.h
  head/contrib/llvm/tools/lld/include/lld/Common/TargetOptionsCommandFlags.h
  head/contrib/llvm/tools/lld/include/lld/Common/Threads.h
  head/contrib/llvm/tools/lld/lib/Driver/DarwinLdDriver.cpp
  head/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
  head/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
  head/contrib/llvm/tools/lld/tools/lld/lld.cpp
  head/contrib/llvm/tools/lldb/FREEBSD-Xlist
  head/contrib/llvm/tools/lldb/include/lldb/API/LLDB.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBAddress.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBCommandInterpreter.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBCommandReturnObject.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBDebugger.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBDefines.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBExpressionOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBFileSpec.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBFrame.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfo.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBMemoryRegionInfoList.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBModule.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBStructuredData.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBSymbolContext.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBThread.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBThreadPlan.h
  head/contrib/llvm/tools/lldb/include/lldb/API/SBVariablesOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointID.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointIDList.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointList.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocation.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationList.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointName.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolver.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverAddress.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileLine.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverName.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSite.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSiteList.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Stoppoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/StoppointLocation.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointList.h
  head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/WatchpointOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Address.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/AddressRange.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolver.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverFileLine.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/AddressResolverName.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Architecture.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ClangForward.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Disassembler.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/DumpDataExtractor.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/EmulateInstruction.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/FileLineResolver.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/FileSpecList.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/FormatEntity.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/IOHandler.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/LoadedModuleInfoList.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Mangled.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/MappedHash.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Module.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ModuleSpec.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Opcode.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/PluginInterface.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/RangeMap.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/STLUtils.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/SearchFilter.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Section.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/SourceManager.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/StreamAsynchronousIO.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/StreamBuffer.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/StreamFile.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/StructuredDataImpl.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseMap.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeDenseSet.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLMap.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeSTLVector.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ThreadSafeValue.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/UniqueCStringMap.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/UserSettingsController.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/Value.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectCast.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectChild.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResult.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultCast.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultChild.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultImpl.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectDynamicValue.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectList.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectMemory.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectRegister.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
  head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectVariable.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DataVisualization.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatCache.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatClasses.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatManager.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersContainer.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormattersHelpers.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/LanguageCategory.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/StringPrinter.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeCategory.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeCategoryMap.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSynthetic.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeValidator.h
  head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/ValueObjectPrinter.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/Expression.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionParser.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionVariable.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/FunctionCaller.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/LLVMUserExpression.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/Materializer.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/REPL.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/UserExpression.h
  head/contrib/llvm/tools/lldb/include/lldb/Expression/UtilityFunction.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/Debug.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/Editline.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/File.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadBase.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/MonitoringProcessLauncher.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/PipeBase.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/ProcessRunLock.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/SocketAddress.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/StringConvert.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/Symbols.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/TaskPool.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/XML.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpointList.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeRegisterContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/openbsd/HostInfoOpenBSD.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostProcessPosix.h
  head/contrib/llvm/tools/lldb/include/lldb/Host/posix/PipePosix.h
  head/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializer.h
  head/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemInitializerCommon.h
  head/contrib/llvm/tools/lldb/include/lldb/Initialization/SystemLifetimeManager.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandAlias.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandCompletions.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandHistory.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObject.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectMultiword.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObjectRegexCommand.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandReturnObject.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionArgParser.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupBoolean.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFile.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFormat.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupOutputFile.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupPlatform.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupString.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUInt64.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUUID.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupValueObjectDisplay.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupVariable.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValue.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArgs.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArray.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueBoolean.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueChar.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueDictionary.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueEnumeration.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpecList.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormat.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormatEntity.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueLanguage.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValuePathMappings.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueProperties.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueRegex.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueSInt64.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueString.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUInt64.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUUID.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/Property.h
  head/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/Block.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTImporter.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCallbacks.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCommon.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangUtil.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/CompileUnit.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/CompilerType.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/DebugMacros.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/Function.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/LineTable.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectContainer.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContextScope.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolFile.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolVendor.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/Symtab.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/TypeSystem.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindPlan.h
  head/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindTable.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/CPPLanguageRuntime.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/DynamicLoader.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContextScope.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntime.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/InstrumentationRuntimeStopInfo.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Language.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/LanguageRuntime.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Memory.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryHistory.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/OperatingSystem.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Process.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessStructReader.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/QueueItem.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadHistory.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/SectionLoadList.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/StackFrameList.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/StackID.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/StopInfo.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/SystemRuntime.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Target.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/TargetList.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlan.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanBase.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunction.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunctionUsingABI.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallUserExpression.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanPython.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanRunToAddress.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanShouldStopHere.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInRange.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInstruction.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOut.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverBreakpoint.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverRange.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepRange.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepThrough.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepUntil.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanTracer.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/UnixSignals.h
  head/contrib/llvm/tools/lldb/include/lldb/Target/Unwind.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/ArchSpec.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Baton.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/CompletionRequest.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Connection.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/ConstString.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferHeap.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/DataBufferLLVM.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/DataEncoder.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/DataExtractor.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/FileSpec.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Iterable.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/LLDBAssert.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Log.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/RegularExpression.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/SelectHelper.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/SharingPtr.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Stream.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StreamCallback.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StreamGDBRemote.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StreamString.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StreamTee.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractor.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StringExtractorGDBRemote.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StringList.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/StructuredData.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/Timer.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/UUID.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/UserID.h
  head/contrib/llvm/tools/lldb/include/lldb/Utility/VMRange.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-defines.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-enumerations.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-private-interfaces.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h
  head/contrib/llvm/tools/lldb/include/lldb/lldb-types.h
  head/contrib/llvm/tools/lldb/include/lldb/module.modulemap
  head/contrib/llvm/tools/lldb/source/API/SBAddress.cpp
  head/contrib/llvm/tools/lldb/source/API/SBAttachInfo.cpp
  head/contrib/llvm/tools/lldb/source/API/SBBreakpoint.cpp
  head/contrib/llvm/tools/lldb/source/API/SBBreakpointName.cpp
  head/contrib/llvm/tools/lldb/source/API/SBBreakpointOptionCommon.cpp
  head/contrib/llvm/tools/lldb/source/API/SBBroadcaster.cpp
  head/contrib/llvm/tools/lldb/source/API/SBCommandInterpreter.cpp
  head/contrib/llvm/tools/lldb/source/API/SBCommandReturnObject.cpp
  head/contrib/llvm/tools/lldb/source/API/SBCompileUnit.cpp
  head/contrib/llvm/tools/lldb/source/API/SBData.cpp
  head/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp
  head/contrib/llvm/tools/lldb/source/API/SBDeclaration.cpp
  head/contrib/llvm/tools/lldb/source/API/SBError.cpp
  head/contrib/llvm/tools/lldb/source/API/SBEvent.cpp
  head/contrib/llvm/tools/lldb/source/API/SBExpressionOptions.cpp
  head/contrib/llvm/tools/lldb/source/API/SBFileSpec.cpp
  head/contrib/llvm/tools/lldb/source/API/SBFileSpecList.cpp
  head/contrib/llvm/tools/lldb/source/API/SBFrame.cpp
  head/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp
  head/contrib/llvm/tools/lldb/source/API/SBLaunchInfo.cpp
  head/contrib/llvm/tools/lldb/source/API/SBLineEntry.cpp
  head/contrib/llvm/tools/lldb/source/API/SBListener.cpp
  head/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfoList.cpp
  head/contrib/llvm/tools/lldb/source/API/SBModule.cpp
  head/contrib/llvm/tools/lldb/source/API/SBModuleSpec.cpp
  head/contrib/llvm/tools/lldb/source/API/SBPlatform.cpp
  head/contrib/llvm/tools/lldb/source/API/SBProcess.cpp
  head/contrib/llvm/tools/lldb/source/API/SBProcessInfo.cpp
  head/contrib/llvm/tools/lldb/source/API/SBQueue.cpp
  head/contrib/llvm/tools/lldb/source/API/SBSection.cpp
  head/contrib/llvm/tools/lldb/source/API/SBSourceManager.cpp
  head/contrib/llvm/tools/lldb/source/API/SBStream.cpp
  head/contrib/llvm/tools/lldb/source/API/SBStringList.cpp
  head/contrib/llvm/tools/lldb/source/API/SBStructuredData.cpp
  head/contrib/llvm/tools/lldb/source/API/SBSymbolContext.cpp
  head/contrib/llvm/tools/lldb/source/API/SBSymbolContextList.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTarget.cpp
  head/contrib/llvm/tools/lldb/source/API/SBThread.cpp
  head/contrib/llvm/tools/lldb/source/API/SBThreadPlan.cpp
  head/contrib/llvm/tools/lldb/source/API/SBType.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeCategory.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeFilter.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeFormat.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeNameSpecifier.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeSummary.cpp
  head/contrib/llvm/tools/lldb/source/API/SBTypeSynthetic.cpp
  head/contrib/llvm/tools/lldb/source/API/SBValue.cpp
  head/contrib/llvm/tools/lldb/source/API/SBValueList.cpp
  head/contrib/llvm/tools/lldb/source/API/SBVariablesOptions.cpp
  head/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.cpp
  head/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.h
  head/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointIDList.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationCollection.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationList.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointName.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolver.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverAddress.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileRegex.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSite.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSiteList.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/Stoppoint.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/StoppointCallbackContext.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/StoppointLocation.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/Watchpoint.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointList.cpp
  head/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointOptions.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandCompletions.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectApropos.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectGUI.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectLanguage.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectMultiword.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectVersion.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectVersion.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.h
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp
  head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.h
  head/contrib/llvm/tools/lldb/source/Core/Address.cpp
  head/contrib/llvm/tools/lldb/source/Core/AddressRange.cpp
  head/contrib/llvm/tools/lldb/source/Core/AddressResolverFileLine.cpp
  head/contrib/llvm/tools/lldb/source/Core/AddressResolverName.cpp
  head/contrib/llvm/tools/lldb/source/Core/Communication.cpp
  head/contrib/llvm/tools/lldb/source/Core/Debugger.cpp
  head/contrib/llvm/tools/lldb/source/Core/Disassembler.cpp
  head/contrib/llvm/tools/lldb/source/Core/DumpDataExtractor.cpp
  head/contrib/llvm/tools/lldb/source/Core/DumpRegisterValue.cpp
  head/contrib/llvm/tools/lldb/source/Core/DynamicLoader.cpp
  head/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp
  head/contrib/llvm/tools/lldb/source/Core/FileLineResolver.cpp
  head/contrib/llvm/tools/lldb/source/Core/FileSpecList.cpp
  head/contrib/llvm/tools/lldb/source/Core/FormatEntity.cpp
  head/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp
  head/contrib/llvm/tools/lldb/source/Core/Mangled.cpp
  head/contrib/llvm/tools/lldb/source/Core/Module.cpp
  head/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp
  head/contrib/llvm/tools/lldb/source/Core/Opcode.cpp
  head/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp
  head/contrib/llvm/tools/lldb/source/Core/SearchFilter.cpp
  head/contrib/llvm/tools/lldb/source/Core/Section.cpp
  head/contrib/llvm/tools/lldb/source/Core/SourceManager.cpp
  head/contrib/llvm/tools/lldb/source/Core/StreamAsynchronousIO.cpp
  head/contrib/llvm/tools/lldb/source/Core/StreamFile.cpp
  head/contrib/llvm/tools/lldb/source/Core/UserSettingsController.cpp
  head/contrib/llvm/tools/lldb/source/Core/Value.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectCast.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResult.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultChild.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultImpl.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectList.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectRegister.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp
  head/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/CXXFunctionPointer.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/DataVisualization.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/DumpValueObjectOptions.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/FormatCache.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/FormatClasses.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/FormatManager.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/FormattersHelpers.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/LanguageCategory.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/StringPrinter.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeCategory.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeCategoryMap.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeSummary.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeSynthetic.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/TypeValidator.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/ValueObjectPrinter.cpp
  head/contrib/llvm/tools/lldb/source/DataFormatters/VectorType.cpp
  head/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp
  head/contrib/llvm/tools/lldb/source/Expression/ExpressionSourceCode.cpp
  head/contrib/llvm/tools/lldb/source/Expression/FunctionCaller.cpp
  head/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp
  head/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp
  head/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp
  head/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp
  head/contrib/llvm/tools/lldb/source/Expression/LLVMUserExpression.cpp
  head/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp
  head/contrib/llvm/tools/lldb/source/Expression/REPL.cpp
  head/contrib/llvm/tools/lldb/source/Expression/UtilityFunction.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/File.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/FileSystem.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/Host.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/HostNativeThreadBase.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/HostThread.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/MainLoop.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/MonitoringProcessLauncher.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/NativeRegisterContext.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/ProcessRunLock.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/PseudoTerminal.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/SocketAddress.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/StringConvert.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/Symbols.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/TaskPool.cpp
  head/contrib/llvm/tools/lldb/source/Host/common/XML.cpp
  head/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp
  head/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp
  head/contrib/llvm/tools/lldb/source/Host/netbsd/Host.cpp
  head/contrib/llvm/tools/lldb/source/Host/netbsd/HostInfoNetBSD.cpp
  head/contrib/llvm/tools/lldb/source/Host/openbsd/Host.cpp
  head/contrib/llvm/tools/lldb/source/Host/openbsd/HostInfoOpenBSD.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/FileSystem.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/HostInfoPosix.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/HostProcessPosix.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/PipePosix.cpp
  head/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
  head/contrib/llvm/tools/lldb/source/Initialization/SystemInitializerCommon.cpp
  head/contrib/llvm/tools/lldb/source/Initialization/SystemLifetimeManager.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandAlias.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectRegexCommand.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.h
  head/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionArgParser.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupArchitecture.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFile.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupOutputFile.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupString.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUInt64.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUUID.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArgs.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueChar.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpecLIst.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormatEntity.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValuePathMappings.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueRegex.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueSInt64.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueString.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUInt64.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp
  head/contrib/llvm/tools/lldb/source/Interpreter/Property.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Architecture/Arm/ArchitectureArm.h
  head/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionHelper.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangHost.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h
  head/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulationStateARM.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.h
  head/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ASan/ASanRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/TSan/TSanRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusNameParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxBitset.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSArray.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSError.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSException.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Language/ObjCPlusPlus/ObjCPlusPlusLanguage.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTypeEncodingParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h
  head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.h
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.h
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h
  head/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.h
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIX.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/ProcessPOSIXLog.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ARMUtils.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/GDBRemoteSignals.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryThread.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryUnwind.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/MipsLinuxSignals.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/NetBSDSignals.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_i386.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMach_x86_64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_s390x.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64le.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_s390x.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_s390x.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteLog.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_32.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.h
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ThreadMinidump.h
  head/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.h
  head/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
  head/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
  head/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAttribute.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDataExtractor.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacro.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDeclContext.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/LogChannelDWARF.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwoDwp.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwp.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/UniqueDWARFASTType.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/PDBLocationToDWARFExpression.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.h
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.h
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
  head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.h
  head/contrib/llvm/tools/lldb/source/Symbol/ArmUnwindInfo.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Block.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/ClangASTImporter.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/ClangExternalASTSourceCallbacks.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/ClangUtil.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/CompactUnwindInfo.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/CompileUnit.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/CompilerType.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/FuncUnwinders.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Function.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/LineEntry.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Symbol.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/SymbolFile.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/SymbolVendor.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Type.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/TypeList.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/TypeMap.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/TypeSystem.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/UnwindPlan.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/UnwindTable.cpp
  head/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp
  head/contrib/llvm/tools/lldb/source/Target/ABI.cpp
  head/contrib/llvm/tools/lldb/source/Target/CPPLanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Target/ExecutionContext.cpp
  head/contrib/llvm/tools/lldb/source/Target/InstrumentationRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp
  head/contrib/llvm/tools/lldb/source/Target/Language.cpp
  head/contrib/llvm/tools/lldb/source/Target/LanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Target/Memory.cpp
  head/contrib/llvm/tools/lldb/source/Target/MemoryHistory.cpp
  head/contrib/llvm/tools/lldb/source/Target/ModuleCache.cpp
  head/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Target/OperatingSystem.cpp
  head/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp
  head/contrib/llvm/tools/lldb/source/Target/Platform.cpp
  head/contrib/llvm/tools/lldb/source/Target/Process.cpp
  head/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp
  head/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp
  head/contrib/llvm/tools/lldb/source/Target/Queue.cpp
  head/contrib/llvm/tools/lldb/source/Target/QueueItem.cpp
  head/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp
  head/contrib/llvm/tools/lldb/source/Target/RegisterNumber.cpp
  head/contrib/llvm/tools/lldb/source/Target/SectionLoadHistory.cpp
  head/contrib/llvm/tools/lldb/source/Target/SectionLoadList.cpp
  head/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp
  head/contrib/llvm/tools/lldb/source/Target/StackFrameList.cpp
  head/contrib/llvm/tools/lldb/source/Target/StackID.cpp
  head/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp
  head/contrib/llvm/tools/lldb/source/Target/SystemRuntime.cpp
  head/contrib/llvm/tools/lldb/source/Target/Target.cpp
  head/contrib/llvm/tools/lldb/source/Target/TargetList.cpp
  head/contrib/llvm/tools/lldb/source/Target/Thread.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadList.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlan.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanBase.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunctionUsingABI.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallOnFunctionExit.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallUserExpression.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanPython.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanRunToAddress.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanShouldStopHere.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInRange.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInstruction.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOut.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverBreakpoint.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverRange.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepRange.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepThrough.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepUntil.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp
  head/contrib/llvm/tools/lldb/source/Target/ThreadSpec.cpp
  head/contrib/llvm/tools/lldb/source/Target/UnixSignals.cpp
  head/contrib/llvm/tools/lldb/source/Target/UnwindAssembly.cpp
  head/contrib/llvm/tools/lldb/source/Utility/ArchSpec.cpp
  head/contrib/llvm/tools/lldb/source/Utility/CompletionRequest.cpp
  head/contrib/llvm/tools/lldb/source/Utility/ConstString.cpp
  head/contrib/llvm/tools/lldb/source/Utility/DataBufferHeap.cpp
  head/contrib/llvm/tools/lldb/source/Utility/DataBufferLLVM.cpp
  head/contrib/llvm/tools/lldb/source/Utility/DataEncoder.cpp
  head/contrib/llvm/tools/lldb/source/Utility/DataExtractor.cpp
  head/contrib/llvm/tools/lldb/source/Utility/FileSpec.cpp
  head/contrib/llvm/tools/lldb/source/Utility/JSON.cpp
  head/contrib/llvm/tools/lldb/source/Utility/LLDBAssert.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Log.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Logging.cpp
  head/contrib/llvm/tools/lldb/source/Utility/SelectHelper.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Status.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Stream.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StreamGDBRemote.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StreamString.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StringExtractor.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StringList.cpp
  head/contrib/llvm/tools/lldb/source/Utility/StructuredData.cpp
  head/contrib/llvm/tools/lldb/source/Utility/TildeExpressionResolver.cpp
  head/contrib/llvm/tools/lldb/source/Utility/Timer.cpp
  head/contrib/llvm/tools/lldb/source/Utility/UUID.cpp
  head/contrib/llvm/tools/lldb/source/Utility/VASprintf.cpp
  head/contrib/llvm/tools/lldb/source/Utility/VMRange.cpp
  head/contrib/llvm/tools/lldb/tools/driver/Driver.cpp
  head/contrib/llvm/tools/lldb/tools/driver/Driver.h
  head/contrib/llvm/tools/lldb/tools/driver/Platform.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgSet.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValBase.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValConsume.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValFile.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValOptionLong.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValString.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdArgValThreadGrp.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdBreak.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbInfo.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbSet.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdGdbShow.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdTarget.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdFactory.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnBase.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebugSessionInfo.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnLog.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnResources.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MICmnStreamStdin.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIDataTypes.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMain.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverMgr.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilDebug.h
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilFileStd.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilMapIdToVariant.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-mi/MIUtilString.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-server/SystemInitializerLLGS.h
  head/contrib/llvm/tools/lldb/tools/lldb-server/lldb-gdbserver.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-server/lldb-platform.cpp
  head/contrib/llvm/tools/lldb/tools/lldb-server/lldb-server.cpp
  head/contrib/llvm/tools/lli/lli.cpp
  head/contrib/llvm/tools/llvm-ar/llvm-ar.cpp
  head/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp
  head/contrib/llvm/tools/llvm-cov/CodeCoverage.cpp
  head/contrib/llvm/tools/llvm-cov/CoverageExporter.h
  head/contrib/llvm/tools/llvm-cov/CoverageExporterJson.cpp
  head/contrib/llvm/tools/llvm-cov/CoverageExporterJson.h
  head/contrib/llvm/tools/llvm-cov/CoverageViewOptions.h
  head/contrib/llvm/tools/llvm-cov/SourceCoverageView.cpp
  head/contrib/llvm/tools/llvm-cov/SourceCoverageViewHTML.cpp
  head/contrib/llvm/tools/llvm-cov/TestingSupport.cpp
  head/contrib/llvm/tools/llvm-cxxdump/llvm-cxxdump.cpp
  head/contrib/llvm/tools/llvm-diff/DifferenceEngine.cpp
  head/contrib/llvm/tools/llvm-dwarfdump/Statistics.cpp
  head/contrib/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
  head/contrib/llvm/tools/llvm-lto/llvm-lto.cpp
  head/contrib/llvm/tools/llvm-lto2/llvm-lto2.cpp
  head/contrib/llvm/tools/llvm-mc/llvm-mc.cpp
  head/contrib/llvm/tools/llvm-mca/CodeRegion.cpp
  head/contrib/llvm/tools/llvm-mca/CodeRegion.h
  head/contrib/llvm/tools/llvm-mca/PipelinePrinter.cpp
  head/contrib/llvm/tools/llvm-mca/PipelinePrinter.h
  head/contrib/llvm/tools/llvm-mca/llvm-mca.cpp
  head/contrib/llvm/tools/llvm-nm/llvm-nm.cpp
  head/contrib/llvm/tools/llvm-objcopy/ObjcopyOpts.td
  head/contrib/llvm/tools/llvm-objcopy/StripOpts.td
  head/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.cpp
  head/contrib/llvm/tools/llvm-objcopy/llvm-objcopy.h
  head/contrib/llvm/tools/llvm-objdump/COFFDump.cpp
  head/contrib/llvm/tools/llvm-objdump/ELFDump.cpp
  head/contrib/llvm/tools/llvm-objdump/MachODump.cpp
  head/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp
  head/contrib/llvm/tools/llvm-objdump/llvm-objdump.h
  head/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.cpp
  head/contrib/llvm/tools/llvm-pdbutil/DumpOutputStyle.h
  head/contrib/llvm/tools/llvm-pdbutil/InputFile.cpp
  head/contrib/llvm/tools/llvm-pdbutil/InputFile.h
  head/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/MinimalSymbolDumper.h
  head/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/MinimalTypeDumper.h
  head/contrib/llvm/tools/llvm-pdbutil/PdbYaml.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PdbYaml.h
  head/contrib/llvm/tools/llvm-pdbutil/PrettyClassDefinitionDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PrettyCompilandDumper.h
  head/contrib/llvm/tools/llvm-pdbutil/PrettyEnumDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PrettyFunctionDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/PrettyTypeDumper.h
  head/contrib/llvm/tools/llvm-pdbutil/PrettyTypedefDumper.cpp
  head/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
  head/contrib/llvm/tools/llvm-pdbutil/YAMLOutputStyle.h
  head/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
  head/contrib/llvm/tools/llvm-pdbutil/llvm-pdbutil.h
  head/contrib/llvm/tools/llvm-profdata/llvm-profdata.cpp
  head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
  head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h
  head/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp
  head/contrib/llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
  head/contrib/llvm/tools/llvm-readobj/ELFDumper.cpp
  head/contrib/llvm/tools/llvm-readobj/MachODumper.cpp
  head/contrib/llvm/tools/llvm-readobj/ObjDumper.h
  head/contrib/llvm/tools/llvm-readobj/WasmDumper.cpp
  head/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp
  head/contrib/llvm/tools/llvm-readobj/llvm-readobj.h
  head/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
  head/contrib/llvm/tools/llvm-stress/llvm-stress.cpp
  head/contrib/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
  head/contrib/llvm/tools/llvm-xray/xray-account.cpp
  head/contrib/llvm/tools/llvm-xray/xray-converter.cpp
  head/contrib/llvm/tools/llvm-xray/xray-graph.cpp
  head/contrib/llvm/tools/llvm-xray/xray-stacks.cpp
  head/contrib/llvm/tools/opt/Debugify.cpp
  head/contrib/llvm/tools/opt/NewPMDriver.cpp
  head/contrib/llvm/tools/opt/opt.cpp
  head/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp
  head/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp
  head/contrib/llvm/utils/TableGen/CTagsEmitter.cpp
  head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp
  head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h
  head/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp
  head/contrib/llvm/utils/TableGen/CodeGenInstruction.h
  head/contrib/llvm/utils/TableGen/CodeGenIntrinsics.h
  head/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp
  head/contrib/llvm/utils/TableGen/CodeGenRegisters.h
  head/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp
  head/contrib/llvm/utils/TableGen/CodeGenSchedule.h
  head/contrib/llvm/utils/TableGen/CodeGenTarget.cpp
  head/contrib/llvm/utils/TableGen/DAGISelMatcher.cpp
  head/contrib/llvm/utils/TableGen/DAGISelMatcher.h
  head/contrib/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
  head/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp
  head/contrib/llvm/utils/TableGen/FastISelEmitter.cpp
  head/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp
  head/contrib/llvm/utils/TableGen/GlobalISelEmitter.cpp
  head/contrib/llvm/utils/TableGen/InfoByHwMode.cpp
  head/contrib/llvm/utils/TableGen/InfoByHwMode.h
  head/contrib/llvm/utils/TableGen/InstrDocsEmitter.cpp
  head/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp
  head/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp
  head/contrib/llvm/utils/TableGen/PredicateExpander.cpp
  head/contrib/llvm/utils/TableGen/PredicateExpander.h
  head/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp
  head/contrib/llvm/utils/TableGen/SearchableTableEmitter.cpp
  head/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp
  head/contrib/llvm/utils/TableGen/TableGen.cpp
  head/contrib/llvm/utils/TableGen/TableGenBackends.h
  head/contrib/llvm/utils/TableGen/WebAssemblyDisassemblerEmitter.cpp
  head/contrib/llvm/utils/TableGen/X86ModRMFilters.h
  head/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp
  head/etc/mtree/BSD.debug.dist
  head/etc/mtree/BSD.usr.dist
  head/lib/clang/freebsd_cc_version.h
  head/lib/clang/headers/Makefile
  head/lib/clang/include/clang/Basic/Version.inc
  head/lib/clang/include/clang/Config/config.h
  head/lib/clang/include/lld/Common/Version.inc
  head/lib/clang/include/llvm/Config/config.h
  head/lib/clang/include/llvm/Config/llvm-config.h
  head/lib/clang/include/llvm/Support/VCSRevision.h
  head/lib/clang/libclang/Makefile
  head/lib/clang/liblldb/Makefile
  head/lib/clang/libllvm/Makefile
  head/lib/clang/libllvmminimal/Makefile
  head/lib/libc++/Makefile
  head/lib/libclang_rt/Makefile.inc
  head/lib/libclang_rt/asan/Makefile
  head/lib/libclang_rt/asan_dynamic/Makefile
  head/lib/libclang_rt/msan/Makefile
  head/lib/libclang_rt/safestack/Makefile
  head/lib/libclang_rt/stats/Makefile
  head/lib/libclang_rt/tsan/Makefile
  head/lib/libclang_rt/ubsan_standalone/Makefile
  head/sys/sys/param.h
  head/tools/build/mk/OptionalObsoleteFiles.inc
  head/usr.bin/clang/lld/Makefile
  head/usr.bin/clang/lldb/Makefile
  head/usr.bin/clang/llvm-cov/Makefile
  head/usr.bin/clang/llvm-mca/Makefile
  head/usr.bin/clang/llvm-objcopy/Makefile
  head/usr.bin/clang/llvm-pdbutil/Makefile
  head/usr.bin/clang/llvm-tblgen/Makefile
Directory Properties:
  head/   (props changed)
  head/MAINTAINERS   (props changed)
  head/cddl/   (props changed)
  head/cddl/contrib/opensolaris/   (props changed)
  head/cddl/contrib/opensolaris/cmd/zfs/   (props changed)
  head/cddl/contrib/opensolaris/lib/libzfs/   (props changed)
  head/contrib/compiler-rt/   (props changed)
  head/contrib/compiler-rt/lib/fuzzer/   (props changed)
  head/contrib/elftoolchain/   (props changed)
  head/contrib/ipfilter/   (props changed)
  head/contrib/libarchive/   (props changed)
  head/contrib/libc++/   (props changed)
  head/contrib/llvm/   (props changed)
  head/contrib/llvm/tools/clang/   (props changed)
  head/contrib/llvm/tools/lld/   (props changed)
  head/contrib/llvm/tools/lldb/   (props changed)
  head/contrib/netbsd-tests/   (props changed)
  head/contrib/openpam/   (props changed)
  head/crypto/openssh/   (props changed)
  head/crypto/openssl/   (props changed)
  head/sys/cddl/contrib/opensolaris/   (props changed)
  head/sys/contrib/dev/acpica/   (props changed)
  head/sys/contrib/ipfilter/   (props changed)
  head/sys/contrib/xz-embedded/   (props changed)
  head/sys/dev/syscons/scterm-dumb.c   (props changed)
  head/sys/dev/syscons/scterm-sc.c   (props changed)
  head/sys/dev/syscons/sctermvar.h   (props changed)
  head/usr.sbin/bhyve/pci_xhci.c   (props changed)
  head/usr.sbin/bhyve/usb_mouse.c   (props changed)

Modified: head/ObsoleteFiles.inc
==============================================================================
--- head/ObsoleteFiles.inc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/ObsoleteFiles.inc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -38,6 +38,158 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20190304: new libc++ import which bumps version from 7.0.1 to 8.0.0.
+OLD_FILES+=usr/include/c++/v1/experimental/dynarray
+# 20190304: new clang import which bumps version from 7.0.1 to 8.0.0.
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/allocator_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/asan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/common_interface_defs.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/coverage_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/dfsan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/esan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/hwasan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/linux_syscall_hooks.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/lsan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/msan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/netbsd_syscall_hooks.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/scudo_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/tsan_interface.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sanitizer/tsan_interface_atomic.h
+OLD_DIRS+=usr/lib/clang/7.0.1/include/sanitizer
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_builtin_vars.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_cmath.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_complex_builtins.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_device_functions.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_intrinsics.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_libdevice_declares.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_math_forward_declares.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__clang_cuda_runtime_wrapper.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__stddef_max_align_t.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__wmmintrin_aes.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/__wmmintrin_pclmul.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/adxintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/altivec.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/ammintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/arm64intr.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/arm_acle.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/arm_fp16.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/arm_neon.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/armintr.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx2intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512bitalgintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512bwintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512cdintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512dqintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512erintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512fintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512ifmaintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512ifmavlintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512pfintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmi2intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmiintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vbmivlintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlbitalgintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlbwintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlcdintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vldqintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlvbmi2intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vlvnniintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vnniintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vpopcntdqintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avx512vpopcntdqvlintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/avxintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/bmi2intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/bmiintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/cetintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/cldemoteintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/clflushoptintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/clwbintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/clzerointrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/cpuid.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/emmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/f16cintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/fma4intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/fmaintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/fxsrintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/gfniintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/htmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/htmxlintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/ia32intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/immintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/invpcidintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/lwpintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/lzcntintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/mm3dnow.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/mm_malloc.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/mmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/module.modulemap
+OLD_FILES+=usr/lib/clang/7.0.1/include/movdirintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/msa.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/mwaitxintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/nmmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/opencl-c.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/pconfigintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/pkuintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/pmmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/popcntintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/prfchwintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/ptwriteintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/rdseedintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/rtmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/s390intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/sgxintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/shaintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/smmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/tbmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/tmmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/vadefs.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/vaesintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/vecintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/vpclmulqdqintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/waitpkgintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/wbnoinvdintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/wmmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/x86intrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xmmintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xopintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xsavecintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xsaveintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xsaveoptintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xsavesintrin.h
+OLD_FILES+=usr/lib/clang/7.0.1/include/xtestintrin.h
+OLD_DIRS+=usr/lib/clang/7.0.1/include
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-i386.so
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-preinit-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-preinit-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan-x86_64.so
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan_cxx-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.asan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.msan-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.msan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-arm.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-armhf.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.profile-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.safestack-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.safestack-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats_client-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.stats_client-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.tsan-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_minimal-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a
+OLD_FILES+=usr/lib/clang/7.0.1/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a
+OLD_DIRS+=usr/lib/clang/7.0.1/lib/freebsd
+OLD_DIRS+=usr/lib/clang/7.0.1/lib
+OLD_DIRS+=usr/lib/clang/7.0.1
 # 20190227: rename seq.h to seqc.h
 OLD_FILES+=usr/include/sys/seq.h
 # 20190222: libifconfig made INTERNALLIB

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/UPDATING	Mon Mar  4 19:39:59 2019	(r344779)
@@ -31,6 +31,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20190304:
+	Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to
+	8.0.0.  Please see the 20141231 entry below for information about
+	prerequisites and upgrading, if you are not already using clang 3.5.0
+	or higher.
+
 20190219:
 	drm and drm2 have been removed from the tree. Please see
 	https://wiki.freebsd.org/Graphics for the latest information on

Modified: head/contrib/compiler-rt/LICENSE.TXT
==============================================================================
--- head/contrib/compiler-rt/LICENSE.TXT	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/LICENSE.TXT	Mon Mar  4 19:39:59 2019	(r344779)
@@ -14,7 +14,7 @@ Full text of the relevant licenses is included below.
 University of Illinois/NCSA
 Open Source License
 
-Copyright (c) 2009-2018 by the contributors listed in CREDITS.TXT
+Copyright (c) 2009-2019 by the contributors listed in CREDITS.TXT
 
 All rights reserved.
 

Modified: head/contrib/compiler-rt/include/sanitizer/allocator_interface.h
==============================================================================
--- head/contrib/compiler-rt/include/sanitizer/allocator_interface.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/include/sanitizer/allocator_interface.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -82,7 +82,6 @@ extern "C" {
      Currently available with ASan only.
   */
   void __sanitizer_purge_allocator(void);
-
 #ifdef __cplusplus
 }  // extern "C"
 #endif

Modified: head/contrib/compiler-rt/include/sanitizer/common_interface_defs.h
==============================================================================
--- head/contrib/compiler-rt/include/sanitizer/common_interface_defs.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/include/sanitizer/common_interface_defs.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -124,6 +124,12 @@ extern "C" {
 
   // Symbolizes the supplied 'pc' using the format string 'fmt'.
   // Outputs at most 'out_buf_size' bytes into 'out_buf'.
+  // If 'out_buf' is not empty then output is zero or more non empty C strings
+  // followed by single empty C string. Multiple strings can be returned if PC
+  // corresponds to inlined function. Inlined frames are printed in the order
+  // from "most-inlined" to the "least-inlined", so the last frame should be the
+  // not inlined function.
+  // Inlined frames can be removed with 'symbolize_inline_frames=0'.
   // The format syntax is described in
   // lib/sanitizer_common/sanitizer_stacktrace_printer.h.
   void __sanitizer_symbolize_pc(void *pc, const char *fmt, char *out_buf,

Modified: head/contrib/compiler-rt/include/sanitizer/hwasan_interface.h
==============================================================================
--- head/contrib/compiler-rt/include/sanitizer/hwasan_interface.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/include/sanitizer/hwasan_interface.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -19,6 +19,12 @@
 #ifdef __cplusplus
 extern "C" {
 #endif
+  // Initialize shadow but not the rest of the runtime.
+  // Does not call libc unless there is an error.
+  // Can be called multiple times, or not at all (in which case shadow will
+  // be initialized in compiler-inserted __hwasan_init() call).
+  void __hwasan_shadow_init(void);
+
   // This function may be optionally provided by user and should return
   // a string containing HWASan runtime options. See asan_flags.h for details.
   const char* __hwasan_default_options(void);
@@ -26,6 +32,51 @@ extern "C" {
   void __hwasan_enable_allocator_tagging(void);
   void __hwasan_disable_allocator_tagging(void);
 
+  // Mark region of memory with the given tag. Both address and size need to be
+  // 16-byte aligned.
+  void __hwasan_tag_memory(const volatile void *p, unsigned char tag,
+                           size_t size);
+
+  /// Set pointer tag. Previous tag is lost.
+  void *__hwasan_tag_pointer(const volatile void *p, unsigned char tag);
+
+  // Set memory tag from the current SP address to the given address to zero.
+  // This is meant to annotate longjmp and other non-local jumps.
+  // This function needs to know the (almost) exact destination frame address;
+  // clearing shadow for the entire thread stack like __asan_handle_no_return
+  // does would cause false reports.
+  void __hwasan_handle_longjmp(const void *sp_dst);
+
+  // Libc hook for thread creation. Should be called in the child thread before
+  // any instrumented code.
+  void __hwasan_thread_enter();
+
+  // Libc hook for thread destruction. No instrumented code should run after
+  // this call.
+  void __hwasan_thread_exit();
+
+  // Print shadow and origin for the memory range to stderr in a human-readable
+  // format.
+  void __hwasan_print_shadow(const volatile void *x, size_t size);
+
+  // Print one-line report about the memory usage of the current process.
+  void __hwasan_print_memory_usage();
+
+  int __sanitizer_posix_memalign(void **memptr, size_t alignment, size_t size);
+  void * __sanitizer_memalign(size_t alignment, size_t size);
+  void * __sanitizer_aligned_alloc(size_t alignment, size_t size);
+  void * __sanitizer___libc_memalign(size_t alignment, size_t size);
+  void * __sanitizer_valloc(size_t size);
+  void * __sanitizer_pvalloc(size_t size);
+  void __sanitizer_free(void *ptr);
+  void __sanitizer_cfree(void *ptr);
+  size_t __sanitizer_malloc_usable_size(const void *ptr);
+  struct mallinfo __sanitizer_mallinfo();
+  int __sanitizer_mallopt(int cmd, int value);
+  void __sanitizer_malloc_stats(void);
+  void * __sanitizer_calloc(size_t nmemb, size_t size);
+  void * __sanitizer_realloc(void *ptr, size_t size);
+  void * __sanitizer_malloc(size_t size);
 #ifdef __cplusplus
 }  // extern "C"
 #endif

Modified: head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h
==============================================================================
--- head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/include/sanitizer/netbsd_syscall_hooks.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -21,8 +21,8 @@
 // DO NOT EDIT! THIS FILE HAS BEEN GENERATED!
 //
 // Generated with: generate_netbsd_syscalls.awk
-// Generated date: 2018-03-03
-// Generated from: syscalls.master,v 1.291 2018/01/06 16:41:23 kamil Exp
+// Generated date: 2018-10-30
+// Generated from: syscalls.master,v 1.293 2018/07/31 13:00:13 rjs Exp
 //
 //===----------------------------------------------------------------------===//
 #ifndef SANITIZER_NETBSD_SYSCALL_HOOKS_H
@@ -986,7 +986,15 @@
 #define __sanitizer_syscall_post_fpathconf(res, fd, name)                      \
   __sanitizer_syscall_post_impl_fpathconf(res, (long long)(fd),                \
                                           (long long)(name))
-/* syscall 193 has been skipped */
+#define __sanitizer_syscall_pre_getsockopt2(s, level, name, val, avalsize)     \
+  __sanitizer_syscall_pre_impl_getsockopt2(                                    \
+      (long long)(s), (long long)(level), (long long)(name), (long long)(val), \
+      (long long)(avalsize))
+#define __sanitizer_syscall_post_getsockopt2(res, s, level, name, val,         \
+                                             avalsize)                         \
+  __sanitizer_syscall_post_impl_getsockopt2(                                   \
+      res, (long long)(s), (long long)(level), (long long)(name),              \
+      (long long)(val), (long long)(avalsize))
 #define __sanitizer_syscall_pre_getrlimit(which, rlp)                          \
   __sanitizer_syscall_pre_impl_getrlimit((long long)(which), (long long)(rlp))
 #define __sanitizer_syscall_post_getrlimit(res, which, rlp)                    \
@@ -1752,18 +1760,8 @@
   __sanitizer_syscall_post_impl___sigaction_sigtramp(                          \
       res, (long long)(signum), (long long)(nsa), (long long)(osa),            \
       (long long)(tramp), (long long)(vers))
-#define __sanitizer_syscall_pre_pmc_get_info(ctr, op, args)                    \
-  __sanitizer_syscall_pre_impl_pmc_get_info((long long)(ctr), (long long)(op), \
-                                            (long long)(args))
-#define __sanitizer_syscall_post_pmc_get_info(res, ctr, op, args)              \
-  __sanitizer_syscall_post_impl_pmc_get_info(                                  \
-      res, (long long)(ctr), (long long)(op), (long long)(args))
-#define __sanitizer_syscall_pre_pmc_control(ctr, op, args)                     \
-  __sanitizer_syscall_pre_impl_pmc_control((long long)(ctr), (long long)(op),  \
-                                           (long long)(args))
-#define __sanitizer_syscall_post_pmc_control(res, ctr, op, args)               \
-  __sanitizer_syscall_post_impl_pmc_control(                                   \
-      res, (long long)(ctr), (long long)(op), (long long)(args))
+/* syscall 341 has been skipped */
+/* syscall 342 has been skipped */
 #define __sanitizer_syscall_pre_rasctl(addr, len, op)                          \
   __sanitizer_syscall_pre_impl_rasctl((long long)(addr), (long long)(len),     \
                                       (long long)(op))
@@ -3444,7 +3442,13 @@ void __sanitizer_syscall_post_impl_pathconf(long long 
 void __sanitizer_syscall_pre_impl_fpathconf(long long fd, long long name);
 void __sanitizer_syscall_post_impl_fpathconf(long long res, long long fd,
                                              long long name);
-/* syscall 193 has been skipped */
+void __sanitizer_syscall_pre_impl_getsockopt2(long long s, long long level,
+                                              long long name, long long val,
+                                              long long avalsize);
+void __sanitizer_syscall_post_impl_getsockopt2(long long res, long long s,
+                                               long long level, long long name,
+                                               long long val,
+                                               long long avalsize);
 void __sanitizer_syscall_pre_impl_getrlimit(long long which, long long rlp);
 void __sanitizer_syscall_post_impl_getrlimit(long long res, long long which,
                                              long long rlp);
@@ -4001,14 +4005,8 @@ void __sanitizer_syscall_pre_impl___sigaction_sigtramp
 void __sanitizer_syscall_post_impl___sigaction_sigtramp(
     long long res, long long signum, long long nsa, long long osa,
     long long tramp, long long vers);
-void __sanitizer_syscall_pre_impl_pmc_get_info(long long ctr, long long op,
-                                               long long args);
-void __sanitizer_syscall_post_impl_pmc_get_info(long long res, long long ctr,
-                                                long long op, long long args);
-void __sanitizer_syscall_pre_impl_pmc_control(long long ctr, long long op,
-                                              long long args);
-void __sanitizer_syscall_post_impl_pmc_control(long long res, long long ctr,
-                                               long long op, long long args);
+/* syscall 341 has been skipped */
+/* syscall 342 has been skipped */
 void __sanitizer_syscall_pre_impl_rasctl(long long addr, long long len,
                                          long long op);
 void __sanitizer_syscall_post_impl_rasctl(long long res, long long addr,

Modified: head/contrib/compiler-rt/include/xray/xray_log_interface.h
==============================================================================
--- head/contrib/compiler-rt/include/xray/xray_log_interface.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/include/xray/xray_log_interface.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -158,8 +158,8 @@ struct XRayLogImpl {
   /// The log initialization routine provided by the implementation, always
   /// provided with the following parameters:
   ///
-  ///   - buffer size
-  ///   - maximum number of buffers
+  ///   - buffer size (unused)
+  ///   - maximum number of buffers (unused)
   ///   - a pointer to an argument struct that the implementation MUST handle
   ///   - the size of the argument struct
   ///
@@ -354,26 +354,5 @@ XRayLogFlushStatus __xray_log_process_buffers(void (*P
                                                                 XRayBuffer));
 
 } // extern "C"
-
-namespace __xray {
-
-/// DEPRECATED: Use __xray_log_init_mode(...) instead, and provide flag
-/// configuration strings to set the options instead.
-/// Options used by the LLVM XRay FDR logging implementation.
-struct FDRLoggingOptions {
-  bool ReportErrors = false;
-  int Fd = -1;
-};
-
-/// DEPRECATED: Use __xray_log_init_mode(...) instead, and provide flag
-/// configuration strings to set the options instead.
-/// Options used by the LLVM XRay Basic (Naive) logging implementation.
-struct BasicLoggingOptions {
-  int DurationFilterMicros = 0;
-  size_t MaxStackDepth = 0;
-  size_t ThreadBufferSize = 0;
-};
-
-} // namespace __xray
 
 #endif // XRAY_XRAY_LOG_INTERFACE_H

Modified: head/contrib/compiler-rt/lib/asan/asan_allocator.h
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_allocator.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_allocator.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -148,6 +148,7 @@ const uptr kAllocatorSpace = 0x600000000000ULL;
 const uptr kAllocatorSize  =  0x40000000000ULL;  // 4T.
 typedef DefaultSizeClassMap SizeClassMap;
 # endif
+template <typename AddressSpaceViewTy>
 struct AP64 {  // Allocator64 parameters. Deliberately using a short name.
   static const uptr kSpaceBeg = kAllocatorSpace;
   static const uptr kSpaceSize = kAllocatorSize;
@@ -155,37 +156,57 @@ struct AP64 {  // Allocator64 parameters. Deliberately
   typedef __asan::SizeClassMap SizeClassMap;
   typedef AsanMapUnmapCallback MapUnmapCallback;
   static const uptr kFlags = 0;
+  using AddressSpaceView = AddressSpaceViewTy;
 };
 
-typedef SizeClassAllocator64<AP64> PrimaryAllocator;
+template <typename AddressSpaceView>
+using PrimaryAllocatorASVT = SizeClassAllocator64<AP64<AddressSpaceView>>;
+using PrimaryAllocator = PrimaryAllocatorASVT<LocalAddressSpaceView>;
 #else  // Fallback to SizeClassAllocator32.
 static const uptr kRegionSizeLog = 20;
 static const uptr kNumRegions = SANITIZER_MMAP_RANGE_SIZE >> kRegionSizeLog;
 # if SANITIZER_WORDSIZE == 32
-typedef FlatByteMap<kNumRegions> ByteMap;
+template <typename AddressSpaceView>
+using ByteMapASVT = FlatByteMap<kNumRegions, AddressSpaceView>;
 # elif SANITIZER_WORDSIZE == 64
-typedef TwoLevelByteMap<(kNumRegions >> 12), 1 << 12> ByteMap;
+template <typename AddressSpaceView>
+using ByteMapASVT =
+    TwoLevelByteMap<(kNumRegions >> 12), 1 << 12, AddressSpaceView>;
 # endif
 typedef CompactSizeClassMap SizeClassMap;
+template <typename AddressSpaceViewTy>
 struct AP32 {
   static const uptr kSpaceBeg = 0;
   static const u64 kSpaceSize = SANITIZER_MMAP_RANGE_SIZE;
   static const uptr kMetadataSize = 16;
   typedef __asan::SizeClassMap SizeClassMap;
   static const uptr kRegionSizeLog = __asan::kRegionSizeLog;
-  typedef __asan::ByteMap ByteMap;
+  using AddressSpaceView = AddressSpaceViewTy;
+  using ByteMap = __asan::ByteMapASVT<AddressSpaceView>;
   typedef AsanMapUnmapCallback MapUnmapCallback;
   static const uptr kFlags = 0;
 };
-typedef SizeClassAllocator32<AP32> PrimaryAllocator;
+template <typename AddressSpaceView>
+using PrimaryAllocatorASVT = SizeClassAllocator32<AP32<AddressSpaceView> >;
+using PrimaryAllocator = PrimaryAllocatorASVT<LocalAddressSpaceView>;
 #endif  // SANITIZER_CAN_USE_ALLOCATOR64
 
 static const uptr kNumberOfSizeClasses = SizeClassMap::kNumClasses;
-typedef SizeClassAllocatorLocalCache<PrimaryAllocator> AllocatorCache;
-typedef LargeMmapAllocator<AsanMapUnmapCallback> SecondaryAllocator;
-typedef CombinedAllocator<PrimaryAllocator, AllocatorCache,
-    SecondaryAllocator> AsanAllocator;
+template <typename AddressSpaceView>
+using AllocatorCacheASVT =
+    SizeClassAllocatorLocalCache<PrimaryAllocatorASVT<AddressSpaceView>>;
+using AllocatorCache = AllocatorCacheASVT<LocalAddressSpaceView>;
 
+template <typename AddressSpaceView>
+using SecondaryAllocatorASVT =
+    LargeMmapAllocator<AsanMapUnmapCallback, DefaultLargeMmapAllocatorPtrArray,
+                       AddressSpaceView>;
+template <typename AddressSpaceView>
+using AsanAllocatorASVT =
+    CombinedAllocator<PrimaryAllocatorASVT<AddressSpaceView>,
+                      AllocatorCacheASVT<AddressSpaceView>,
+                      SecondaryAllocatorASVT<AddressSpaceView>>;
+using AsanAllocator = AsanAllocatorASVT<LocalAddressSpaceView>;
 
 struct AsanThreadLocalMallocStorage {
   uptr quarantine_cache[16];

Modified: head/contrib/compiler-rt/lib/asan/asan_errors.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_errors.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_errors.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -125,9 +125,8 @@ void ErrorAllocTypeMismatch::Print() {
   Decorator d;
   Printf("%s", d.Error());
   Report("ERROR: AddressSanitizer: %s (%s vs %s) on %p\n",
-         scariness.GetDescription(),
-         alloc_names[alloc_type], dealloc_names[dealloc_type],
-         addr_description.addr);
+         scariness.GetDescription(), alloc_names[alloc_type],
+         dealloc_names[dealloc_type], addr_description.Address());
   Printf("%s", d.Default());
   CHECK_GT(dealloc_stack->size, 0);
   scariness.Print();

Modified: head/contrib/compiler-rt/lib/asan/asan_errors.h
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_errors.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_errors.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -110,8 +110,8 @@ struct ErrorFreeNotMalloced : ErrorBase {
 
 struct ErrorAllocTypeMismatch : ErrorBase {
   const BufferedStackTrace *dealloc_stack;
-  HeapAddressDescription addr_description;
   AllocType alloc_type, dealloc_type;
+  AddressDescription addr_description;
 
   ErrorAllocTypeMismatch() = default;  // (*)
   ErrorAllocTypeMismatch(u32 tid, BufferedStackTrace *stack, uptr addr,
@@ -119,9 +119,8 @@ struct ErrorAllocTypeMismatch : ErrorBase {
       : ErrorBase(tid, 10, "alloc-dealloc-mismatch"),
         dealloc_stack(stack),
         alloc_type(alloc_type_),
-        dealloc_type(dealloc_type_) {
-    GetHeapAddressInformation(addr, 1, &addr_description);
-  };
+        dealloc_type(dealloc_type_),
+        addr_description(addr, 1, false) {}
   void Print();
 };
 

Modified: head/contrib/compiler-rt/lib/asan/asan_flags.inc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_flags.inc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_flags.inc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -152,8 +152,6 @@ ASAN_FLAG(const char *, suppressions, "", "Suppression
 ASAN_FLAG(bool, halt_on_error, true,
           "Crash the program after printing the first error report "
           "(WARNING: USE AT YOUR OWN RISK!)")
-ASAN_FLAG(bool, use_odr_indicator, false,
-          "Use special ODR indicator symbol for ODR violation detection")
 ASAN_FLAG(bool, allocator_frees_and_returns_null_on_realloc_zero, true,
           "realloc(p, 0) is equivalent to free(p) by default (Same as the "
           "POSIX standard). If set to false, realloc(p, 0) will return a "

Modified: head/contrib/compiler-rt/lib/asan/asan_fuchsia.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_fuchsia.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_fuchsia.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -190,6 +190,13 @@ static void ThreadExitHook(void *hook, uptr os_id) {
   AsanThread::TSDDtor(per_thread);
 }
 
+bool HandleDlopenInit() {
+  // Not supported on this platform.
+  static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN,
+                "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false");
+  return false;
+}
+
 }  // namespace __asan
 
 // These are declared (in extern "C") by <zircon/sanitizer.h>.

Modified: head/contrib/compiler-rt/lib/asan/asan_globals.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_globals.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_globals.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -83,9 +83,11 @@ static bool IsAddressNearGlobal(uptr addr, const __asa
 }
 
 static void ReportGlobal(const Global &g, const char *prefix) {
-  Report("%s Global[%p]: beg=%p size=%zu/%zu name=%s module=%s dyn_init=%zu\n",
-         prefix, &g, (void *)g.beg, g.size, g.size_with_redzone, g.name,
-         g.module_name, g.has_dynamic_init);
+  Report(
+      "%s Global[%p]: beg=%p size=%zu/%zu name=%s module=%s dyn_init=%zu "
+      "odr_indicator=%p\n",
+      prefix, &g, (void *)g.beg, g.size, g.size_with_redzone, g.name,
+      g.module_name, g.has_dynamic_init, (void *)g.odr_indicator);
   if (g.location) {
     Report("  location (%p): name=%s[%p], %d %d\n", g.location,
            g.location->filename, g.location->filename, g.location->line_no,
@@ -133,6 +135,9 @@ enum GlobalSymbolState {
 // this method in case compiler instruments global variables through their
 // local aliases.
 static void CheckODRViolationViaIndicator(const Global *g) {
+  // Instrumentation requests to skip ODR check.
+  if (g->odr_indicator == UINTPTR_MAX)
+    return;
   u8 *odr_indicator = reinterpret_cast<u8 *>(g->odr_indicator);
   if (*odr_indicator == UNREGISTERED) {
     *odr_indicator = REGISTERED;
@@ -183,9 +188,7 @@ static void CheckODRViolationViaPoisoning(const Global
 // This routine chooses between two different methods of ODR violation
 // detection.
 static inline bool UseODRIndicator(const Global *g) {
-  // Use ODR indicator method iff use_odr_indicator flag is set and
-  // indicator symbol address is not 0.
-  return flags()->use_odr_indicator && g->odr_indicator > 0;
+  return g->odr_indicator > 0;
 }
 
 // Register a global variable.
@@ -248,7 +251,7 @@ static void UnregisterGlobal(const Global *g) {
   // implementation. It might not be worth doing anyway.
 
   // Release ODR indicator.
-  if (UseODRIndicator(g)) {
+  if (UseODRIndicator(g) && g->odr_indicator != UINTPTR_MAX) {
     u8 *odr_indicator = reinterpret_cast<u8 *>(g->odr_indicator);
     *odr_indicator = UNREGISTERED;
   }

Modified: head/contrib/compiler-rt/lib/asan/asan_globals_win.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_globals_win.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_globals_win.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -29,7 +29,7 @@ static void call_on_globals(void (*hook)(__asan_global
   __asan_global *end = &__asan_globals_end;
   uptr bytediff = (uptr)end - (uptr)start;
   if (bytediff % sizeof(__asan_global) != 0) {
-#ifdef SANITIZER_DLL_THUNK
+#if defined(SANITIZER_DLL_THUNK) || defined(SANITIZER_DYNAMIC_RUNTIME_THUNK)
     __debugbreak();
 #else
     CHECK("corrupt asan global array");

Modified: head/contrib/compiler-rt/lib/asan/asan_internal.h
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_internal.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_internal.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -111,6 +111,11 @@ void *AsanDlSymNext(const char *sym);
 
 void ReserveShadowMemoryRange(uptr beg, uptr end, const char *name);
 
+// Returns `true` iff most of ASan init process should be skipped due to the
+// ASan library being loaded via `dlopen()`. Platforms may perform any
+// `dlopen()` specific initialization inside this function.
+bool HandleDlopenInit();
+
 // Add convenient macro for interface functions that may be represented as
 // weak hooks.
 #define ASAN_MALLOC_HOOK(ptr, size)                                   \

Modified: head/contrib/compiler-rt/lib/asan/asan_linux.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_linux.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_linux.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -248,6 +248,13 @@ void *AsanDlSymNext(const char *sym) {
   return dlsym(RTLD_NEXT, sym);
 }
 
+bool HandleDlopenInit() {
+  // Not supported on this platform.
+  static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN,
+                "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false");
+  return false;
+}
+
 } // namespace __asan
 
 #endif  // SANITIZER_FREEBSD || SANITIZER_LINUX || SANITIZER_NETBSD ||

Modified: head/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_malloc_linux.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -209,7 +209,7 @@ INTERCEPTOR(struct fake_mallinfo, mallinfo, void) {
 }
 
 INTERCEPTOR(int, mallopt, int cmd, int value) {
-  return -1;
+  return 0;
 }
 #endif // SANITIZER_INTERCEPT_MALLOPT_AND_MALLINFO
 

Modified: head/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_malloc_mac.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -61,4 +61,25 @@ using namespace __asan;
 
 #include "sanitizer_common/sanitizer_malloc_mac.inc"
 
+namespace COMMON_MALLOC_NAMESPACE {
+bool HandleDlopenInit() {
+  static_assert(SANITIZER_SUPPORTS_INIT_FOR_DLOPEN,
+                "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be true");
+  // We have no reliable way of knowing how we are being loaded
+  // so make it a requirement on Apple platforms to set this environment
+  // variable to indicate that we want to perform initialization via
+  // dlopen().
+  auto init_str = GetEnv("APPLE_ASAN_INIT_FOR_DLOPEN");
+  if (!init_str)
+    return false;
+  if (internal_strncmp(init_str, "1", 1) != 0)
+    return false;
+  // When we are loaded via `dlopen()` path we still initialize the malloc zone
+  // so Symbolication clients (e.g. `leaks`) that load the ASan allocator can
+  // find an initialized malloc zone.
+  InitMallocZoneFields();
+  return true;
+}
+}  // namespace COMMON_MALLOC_NAMESPACE
+
 #endif

Modified: head/contrib/compiler-rt/lib/asan/asan_malloc_win.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_malloc_win.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_malloc_win.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -14,9 +14,18 @@
 
 #include "sanitizer_common/sanitizer_platform.h"
 #if SANITIZER_WINDOWS
-#define WIN32_LEAN_AND_MEAN
-#include <windows.h>
+// Intentionally not including windows.h here, to avoid the risk of
+// pulling in conflicting declarations of these functions. (With mingw-w64,
+// there's a risk of windows.h pulling in stdint.h.)
+typedef int BOOL;
+typedef void *HANDLE;
+typedef const void *LPCVOID;
+typedef void *LPVOID;
 
+#define HEAP_ZERO_MEMORY           0x00000008
+#define HEAP_REALLOC_IN_PLACE_ONLY 0x00000010
+
+
 #include "asan_allocator.h"
 #include "asan_interceptors.h"
 #include "asan_internal.h"
@@ -125,13 +134,18 @@ void *_recalloc_base(void *p, size_t n, size_t elem_si
 }
 
 ALLOCATION_FUNCTION_ATTRIBUTE
-size_t _msize(const void *ptr) {
+size_t _msize(void *ptr) {
   GET_CURRENT_PC_BP_SP;
   (void)sp;
   return asan_malloc_usable_size(ptr, pc, bp);
 }
 
 ALLOCATION_FUNCTION_ATTRIBUTE
+size_t _msize_base(void *ptr) {
+  return _msize(ptr);
+}
+
+ALLOCATION_FUNCTION_ATTRIBUTE
 void *_expand(void *memblock, size_t size) {
   // _expand is used in realloc-like functions to resize the buffer if possible.
   // We don't want memory to stand still while resizing buffers, so return 0.
@@ -226,6 +240,7 @@ void ReplaceSystemMalloc() {
   TryToOverrideFunction("_recalloc_base", (uptr)_recalloc);
   TryToOverrideFunction("_recalloc_crt", (uptr)_recalloc);
   TryToOverrideFunction("_msize", (uptr)_msize);
+  TryToOverrideFunction("_msize_base", (uptr)_msize);
   TryToOverrideFunction("_expand", (uptr)_expand);
   TryToOverrideFunction("_expand_base", (uptr)_expand);
 

Modified: head/contrib/compiler-rt/lib/asan/asan_new_delete.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_new_delete.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_new_delete.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -26,7 +26,7 @@
 // anyway by passing extra -export flags to the linker, which is exactly that
 // dllexport would normally do. We need to export them in order to make the
 // VS2015 dynamic CRT (MD) work.
-#if SANITIZER_WINDOWS
+#if SANITIZER_WINDOWS && defined(_MSC_VER)
 #define CXX_OPERATOR_ATTRIBUTE
 #define COMMENT_EXPORT(sym) __pragma(comment(linker, "/export:" sym))
 #ifdef _WIN64

Modified: head/contrib/compiler-rt/lib/asan/asan_posix.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_posix.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_posix.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -40,6 +40,51 @@ void AsanOnDeadlySignal(int signo, void *siginfo, void
 
 // ---------------------- TSD ---------------- {{{1
 
+#if SANITIZER_NETBSD || SANITIZER_FREEBSD
+// Thread Static Data cannot be used in early init on NetBSD and FreeBSD.
+// Reuse the Asan TSD API for compatibility with existing code
+// with an alternative implementation.
+
+static void (*tsd_destructor)(void *tsd) = nullptr;
+
+struct tsd_key {
+  tsd_key() : key(nullptr) {}
+  ~tsd_key() {
+    CHECK(tsd_destructor);
+    if (key)
+      (*tsd_destructor)(key);
+  }
+  void *key;
+};
+
+static thread_local struct tsd_key key;
+
+void AsanTSDInit(void (*destructor)(void *tsd)) {
+  CHECK(!tsd_destructor);
+  tsd_destructor = destructor;
+}
+
+void *AsanTSDGet() {
+  CHECK(tsd_destructor);
+  return key.key;
+}
+
+void AsanTSDSet(void *tsd) {
+  CHECK(tsd_destructor);
+  CHECK(tsd);
+  CHECK(!key.key);
+  key.key = tsd;
+}
+
+void PlatformTSDDtor(void *tsd) {
+  CHECK(tsd_destructor);
+  CHECK_EQ(key.key, tsd);
+  key.key = nullptr;
+  // Make sure that signal handler can not see a stale current thread pointer.
+  atomic_signal_fence(memory_order_seq_cst);
+  AsanThread::TSDDtor(tsd);
+}
+#else
 static pthread_key_t tsd_key;
 static bool tsd_key_inited = false;
 void AsanTSDInit(void (*destructor)(void *tsd)) {
@@ -67,6 +112,7 @@ void PlatformTSDDtor(void *tsd) {
   }
   AsanThread::TSDDtor(tsd);
 }
+#endif
 }  // namespace __asan
 
 #endif  // SANITIZER_POSIX

Modified: head/contrib/compiler-rt/lib/asan/asan_report.h
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_report.h	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_report.h	Mon Mar  4 19:39:59 2019	(r344779)
@@ -12,6 +12,9 @@
 // ASan-private header for error reporting functions.
 //===----------------------------------------------------------------------===//
 
+#ifndef ASAN_REPORT_H
+#define ASAN_REPORT_H
+
 #include "asan_allocator.h"
 #include "asan_internal.h"
 #include "asan_thread.h"
@@ -92,3 +95,4 @@ void ReportMacCfReallocUnknown(uptr addr, uptr zone_pt
                                BufferedStackTrace *stack);
 
 }  // namespace __asan
+#endif  // ASAN_REPORT_H

Modified: head/contrib/compiler-rt/lib/asan/asan_rtems.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_rtems.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_rtems.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -213,6 +213,12 @@ static void HandleExit() {
   }
 }
 
+bool HandleDlopenInit() {
+  // Not supported on this platform.
+  static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN,
+                "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false");
+  return false;
+}
 }  // namespace __asan
 
 // These are declared (in extern "C") by <some_path/sanitizer.h>.

Modified: head/contrib/compiler-rt/lib/asan/asan_rtl.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_rtl.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_rtl.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -383,6 +383,19 @@ void PrintAddressSpaceLayout() {
           kHighShadowBeg > kMidMemEnd);
 }
 
+#if defined(__thumb__) && defined(__linux__)
+#define START_BACKGROUND_THREAD_IN_ASAN_INTERNAL
+#endif
+
+#ifndef START_BACKGROUND_THREAD_IN_ASAN_INTERNAL
+static bool UNUSED __local_asan_dyninit = [] {
+  MaybeStartBackgroudThread();
+  SetSoftRssLimitExceededCallback(AsanSoftRssLimitExceededCallback);
+
+  return false;
+}();
+#endif
+
 static void AsanInitInternal() {
   if (LIKELY(asan_inited)) return;
   SanitizerToolName = "AddressSanitizer";
@@ -396,6 +409,14 @@ static void AsanInitInternal() {
   // initialization steps look at flags().
   InitializeFlags();
 
+  // Stop performing init at this point if we are being loaded via
+  // dlopen() and the platform supports it.
+  if (SANITIZER_SUPPORTS_INIT_FOR_DLOPEN && UNLIKELY(HandleDlopenInit())) {
+    asan_init_is_running = false;
+    VReport(1, "AddressSanitizer init is being performed for dlopen().\n");
+    return;
+  }
+
   AsanCheckIncompatibleRT();
   AsanCheckDynamicRTPrereqs();
   AvoidCVE_2016_2143();
@@ -420,6 +441,8 @@ static void AsanInitInternal() {
   __asan_option_detect_stack_use_after_return =
       flags()->detect_stack_use_after_return;
 
+  __sanitizer::InitializePlatformEarly();
+
   // Re-exec ourselves if we need to set additional env or command line args.
   MaybeReexec();
 
@@ -447,8 +470,10 @@ static void AsanInitInternal() {
   allocator_options.SetFrom(flags(), common_flags());
   InitializeAllocator(allocator_options);
 
+#ifdef START_BACKGROUND_THREAD_IN_ASAN_INTERNAL
   MaybeStartBackgroudThread();
   SetSoftRssLimitExceededCallback(AsanSoftRssLimitExceededCallback);
+#endif
 
   // On Linux AsanThread::ThreadStart() calls malloc() that's why asan_inited
   // should be set to 1 prior to initializing the threads.

Modified: head/contrib/compiler-rt/lib/asan/asan_thread.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_thread.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_thread.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -223,9 +223,11 @@ void AsanThread::Init(const InitOptions *options) {
   atomic_store(&stack_switching_, false, memory_order_release);
   CHECK_EQ(this->stack_size(), 0U);
   SetThreadStackAndTls(options);
-  CHECK_GT(this->stack_size(), 0U);
-  CHECK(AddrIsInMem(stack_bottom_));
-  CHECK(AddrIsInMem(stack_top_ - 1));
+  if (stack_top_ != stack_bottom_) {
+    CHECK_GT(this->stack_size(), 0U);
+    CHECK(AddrIsInMem(stack_bottom_));
+    CHECK(AddrIsInMem(stack_top_ - 1));
+  }
   ClearShadowForThreadStackAndTLS();
   fake_stack_ = nullptr;
   if (__asan_option_detect_stack_use_after_return)
@@ -289,20 +291,23 @@ void AsanThread::SetThreadStackAndTls(const InitOption
   DCHECK_EQ(options, nullptr);
   uptr tls_size = 0;
   uptr stack_size = 0;
-  GetThreadStackAndTls(tid() == 0, const_cast<uptr *>(&stack_bottom_),
-                       const_cast<uptr *>(&stack_size), &tls_begin_, &tls_size);
+  GetThreadStackAndTls(tid() == 0, &stack_bottom_, &stack_size, &tls_begin_,
+                       &tls_size);
   stack_top_ = stack_bottom_ + stack_size;
   tls_end_ = tls_begin_ + tls_size;
   dtls_ = DTLS_Get();
 
-  int local;
-  CHECK(AddrIsInStack((uptr)&local));
+  if (stack_top_ != stack_bottom_) {
+    int local;
+    CHECK(AddrIsInStack((uptr)&local));
+  }
 }
 
 #endif  // !SANITIZER_FUCHSIA && !SANITIZER_RTEMS
 
 void AsanThread::ClearShadowForThreadStackAndTLS() {
-  PoisonShadow(stack_bottom_, stack_top_ - stack_bottom_, 0);
+  if (stack_top_ != stack_bottom_)
+    PoisonShadow(stack_bottom_, stack_top_ - stack_bottom_, 0);
   if (tls_begin_ != tls_end_) {
     uptr tls_begin_aligned = RoundDownTo(tls_begin_, SHADOW_GRANULARITY);
     uptr tls_end_aligned = RoundUpTo(tls_end_, SHADOW_GRANULARITY);
@@ -314,6 +319,9 @@ void AsanThread::ClearShadowForThreadStackAndTLS() {
 
 bool AsanThread::GetStackFrameAccessByAddr(uptr addr,
                                            StackFrameAccess *access) {
+  if (stack_top_ == stack_bottom_)
+    return false;
+
   uptr bottom = 0;
   if (AddrIsInStack(addr)) {
     bottom = stack_bottom();

Modified: head/contrib/compiler-rt/lib/asan/asan_win.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_win.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_win.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -159,6 +159,14 @@ INTERCEPTOR_WINAPI(DWORD, CreateThread,
 namespace __asan {
 
 void InitializePlatformInterceptors() {
+  // The interceptors were not designed to be removable, so we have to keep this
+  // module alive for the life of the process.
+  HMODULE pinned;
+  CHECK(GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS |
+                           GET_MODULE_HANDLE_EX_FLAG_PIN,
+                           (LPCWSTR)&InitializePlatformInterceptors,
+                           &pinned));
+
   ASAN_INTERCEPT_FUNC(CreateThread);
   ASAN_INTERCEPT_FUNC(SetUnhandledExceptionFilter);
 
@@ -312,6 +320,13 @@ int __asan_set_seh_filter() {
   if (prev_seh_handler != &SEHHandler)
     default_seh_handler = prev_seh_handler;
   return 0;
+}
+
+bool HandleDlopenInit() {
+  // Not supported on this platform.
+  static_assert(!SANITIZER_SUPPORTS_INIT_FOR_DLOPEN,
+                "Expected SANITIZER_SUPPORTS_INIT_FOR_DLOPEN to be false");
+  return false;
 }
 
 #if !ASAN_DYNAMIC

Modified: head/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc
==============================================================================
--- head/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/asan/asan_win_dll_thunk.cc	Mon Mar  4 19:39:59 2019	(r344779)
@@ -48,6 +48,7 @@ INTERCEPT_WRAP_W_WWW(_recalloc)
 INTERCEPT_WRAP_W_WWW(_recalloc_base)
 
 INTERCEPT_WRAP_W_W(_msize)
+INTERCEPT_WRAP_W_W(_msize_base)
 INTERCEPT_WRAP_W_W(_expand)
 INTERCEPT_WRAP_W_W(_expand_dbg)
 

Modified: head/contrib/compiler-rt/lib/builtins/arm/addsf3.S
==============================================================================
--- head/contrib/compiler-rt/lib/builtins/arm/addsf3.S	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/builtins/arm/addsf3.S	Mon Mar  4 19:39:59 2019	(r344779)
@@ -178,7 +178,7 @@ LOCAL_LABEL(do_substraction):
 
   push {r0, r1, r2, r3}
   movs r0, r4
-  bl   __clzsi2
+  bl   SYMBOL_NAME(__clzsi2)
   movs r5, r0
   pop {r0, r1, r2, r3}
   // shift = rep_clz(aSignificand) - rep_clz(implicitBit << 3);

Modified: head/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S
==============================================================================
--- head/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S	Mon Mar  4 19:23:43 2019	(r344778)
+++ head/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmp.S	Mon Mar  4 19:39:59 2019	(r344779)
@@ -55,7 +55,7 @@ DEFINE_COMPILERRT_FUNCTION(__aeabi_cdcmpeq)
         mov ip, #APSR_C
         msr APSR_nzcvq, ip
 #else
-        msr CPSR_f, #APSR_C
+        msr APSR_nzcvq, #APSR_C

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Mon Mar  4 19:51:00 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C71D11520B76;
 Mon,  4 Mar 2019 19:51:00 +0000 (UTC) (envelope-from sjg@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6F9728463A;
 Mon,  4 Mar 2019 19:51:00 +0000 (UTC) (envelope-from sjg@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 647AD8C23;
 Mon,  4 Mar 2019 19:51:00 +0000 (UTC) (envelope-from sjg@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24Jp0Px025495;
 Mon, 4 Mar 2019 19:51:00 GMT (envelope-from sjg@FreeBSD.org)
Received: (from sjg@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24Jp0tA025494;
 Mon, 4 Mar 2019 19:51:00 GMT (envelope-from sjg@FreeBSD.org)
Message-Id: <201903041951.x24Jp0tA025494@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org
 using -f
From: "Simon J. Gerraty" <sjg@FreeBSD.org>
Date: Mon, 4 Mar 2019 19:51:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344780 - head/stand/common
X-SVN-Group: head
X-SVN-Commit-Author: sjg
X-SVN-Commit-Paths: head/stand/common
X-SVN-Commit-Revision: 344780
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6F9728463A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 19:51:01 -0000

Author: sjg
Date: Mon Mar  4 19:50:59 2019
New Revision: 344780
URL: https://svnweb.freebsd.org/changeset/base/344780

Log:
  Add -d flag to load command
  
  When doing load -t manifest -d increments debug level
  
  Reviewed by:	stevek

Modified:
  head/stand/common/module.c

Modified: head/stand/common/module.c
==============================================================================
--- head/stand/common/module.c	Mon Mar  4 19:39:59 2019	(r344779)
+++ head/stand/common/module.c	Mon Mar  4 19:50:59 2019	(r344780)
@@ -106,9 +106,9 @@ command_load(int argc, char *argv[])
     char	*typestr;
     char	*prefix;
     char	*skip;
-    int		dofile, dokld, ch, error;
+    int		dflag, dofile, dokld, ch, error;
 
-    dokld = dofile = 0;
+    dflag = dokld = dofile = 0;
     optind = 1;
     optreset = 1;
     typestr = NULL;
@@ -117,8 +117,11 @@ command_load(int argc, char *argv[])
 	return (CMD_CRIT);
     }
     prefix = skip = NULL;
-    while ((ch = getopt(argc, argv, "kp:s:t:")) != -1) {
+    while ((ch = getopt(argc, argv, "dkp:s:t:")) != -1) {
 	switch(ch) {
+	case 'd':
+	    dflag++;
+	    break;
 	case 'k':
 	    dokld = 1;
 	    break;
@@ -152,6 +155,8 @@ command_load(int argc, char *argv[])
 
 #ifdef LOADER_VERIEXEC
 	if (strncmp(typestr, "manifest", 8) == 0) {
+	    if (dflag > 0)
+		ve_debug_set(dflag);
 	    return (load_manifest(argv[1], prefix, skip, NULL));
 	}
 #endif

From owner-svn-src-all@freebsd.org  Mon Mar  4 20:25:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 62FAA1521AEC;
 Mon,  4 Mar 2019 20:25:35 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "Client", Issuer "CA" (not verified))
 by mx1.freebsd.org (Postfix) with ESMTPS id ECC5586469;
 Mon,  4 Mar 2019 20:25:33 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA
 id 0u9Rh4UtOEtQm0u9Th9WET; Mon, 04 Mar 2019 13:25:31 -0700
X-Authority-Analysis: v=2.3 cv=Vqpd/N+n c=1 sm=1 tr=0
 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17
 a=8nJEP1OIZ-IA:10 a=NTGMnVQrEZIA:10 a=xfDLHkLGAAAA:8 a=YxBL1-UpAAAA:8
 a=pGLkceISAAAA:8 a=6I5d2MoRAAAA:8 a=yyVpRMpY5pa3p9pvJCcA:9
 a=7NTLRdJfDz6b4EGh:21 a=_VKl0IChOzxr_xR7:21 a=wPNLvfGTeEIA:10
 a=UJ0tAi3fqDAA:10 a=IfaqVvZgccqrtc8gcwf2:22 a=Ia-lj3WSrqcvXOmTRaiG:22
 a=IjZwj45LgO3ly-622nXo:22
Received: from slippy.cwsent.com (slippy8 [10.2.2.6])
 by spqr.komquats.com (Postfix) with ESMTPS id EA230763;
 Mon,  4 Mar 2019 12:25:28 -0800 (PST)
Received: from slippy.cwsent.com (localhost [127.0.0.1])
 by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id x24KP93r021610;
 Mon, 4 Mar 2019 12:25:09 -0800 (PST)
 (envelope-from Cy.Schubert@cschubert.com)
Received: from slippy (cy@localhost)
 by slippy.cwsent.com (8.15.2/8.15.2/Submit) with ESMTP id x24KP9uU021607;
 Mon, 4 Mar 2019 12:25:09 -0800 (PST)
 (envelope-from Cy.Schubert@cschubert.com)
Message-Id: <201903042025.x24KP9uU021607@slippy.cwsent.com>
X-Authentication-Warning: slippy.cwsent.com: cy owned process doing -bs
X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7.1
Reply-to: Cy Schubert <Cy.Schubert@cschubert.com>
From: Cy Schubert <Cy.Schubert@cschubert.com>
X-os: FreeBSD
X-Sender: cy@cwsent.com
X-URL: http://www.cschubert.com/
To: Edward Napierala <trasz@freebsd.org>
cc: Cy Schubert <Cy.Schubert@cschubert.com>,
 Konstantin Belousov <kostikbel@gmail.com>,
 src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
In-Reply-To: Message from Edward Napierala <trasz@freebsd.org> of "Mon,
 04 Mar 2019 15:26:39 +0000."
 <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gmail.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Date: Mon, 04 Mar 2019 12:25:09 -0800
X-CMAE-Envelope: MS4wfM0ozJjBytrUdds4XIyLoByzbh6FMxedOygaYolECCDVZoetcAerAHVpXWu5RVpIfQYeeCPH2zonLjOV5qsqVZ+1tahy8ynmj80UqCt8BYiUsITRhZfU
 JZqCV3b4s9jRLKLRbJnxjmSNptfnGU6UEDGwCuGDMqReftwF7UArlrbi3BU2OHZ5gdWTTQdTzqFS6GqJprvUe8bAcBXR7lj1w+nOKHEcEEsFNL//k5iqy8wY
 HSndpQwA2aNH89RrvBfgjhnmhWcDuD28J7WCwgkArN+nTKQdyEx+cHVO5I8bQHOxSKo0EKiLvntyq1okCOJ9pw==
X-Rspamd-Queue-Id: ECC5586469
X-Spamd-Bar: ----
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-4.88 / 15.00]; ARC_NA(0.00)[];
 RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_COUNT_FIVE(0.00)[5];
 FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[];
 TO_DN_SOME(0.00)[]; MV_CASE(0.50)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain];
 HAS_XAW(0.00)[]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com];
 RCPT_COUNT_FIVE(0.00)[6]; REPLYTO_EQ_FROM(0.00)[];
 TO_MATCH_ENVRCPT_SOME(0.00)[];
 MX_GOOD(-0.01)[cached: spqr.komquats.com];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_SPF_NA(0.00)[];
 RCVD_IN_DNSWL_LOW(-0.10)[12.134.59.64.list.dnswl.org : 127.0.5.1];
 R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+];
 ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA];
 RCVD_TLS_LAST(0.00)[];
 IP_SCORE(-2.20)[ip: (-5.98), ipnet: 64.59.128.0/20(-2.76), asn: 6327(-2.17),
 country: CA(-0.09)]; 
 RECEIVED_SPAMHAUS_PBL(0.00)[17.125.67.70.zen.spamhaus.org : 127.0.0.11]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 20:25:35 -0000

In message <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gma
il.com>
, Edward Napierala writes:
> pon., 4 mar 2019 o 15:17 Cy Schubert <Cy.Schubert@cschubert.com> napisał(a):
> >
> > On March 4, 2019 6:30:21 AM PST, Konstantin Belousov <kostikbel@gmail.com> 
> wrote:
> > >On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
> > >> pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com>
> > >napisał(a):
> > >> > > +     p = curthread;
> > >> > Why do you name it 'p', which is typical for process, and not 'td',
> > >you are
> > >> > changing most of the code anyway.
> > >>
> > >> To keep the diff size smaller.  You're right, this touches a lot of
> > >stuff,
> > >> but most of those added lines are temporary anyway - they will be
> > >> removed later, when the td is pushed down even more.
> > >But if you create code churn, doing it only half way is worse.
> > >
> > >>
> > >> > Also I am curious why. It is certainly fine to remove td when it is
> > >used
> > >> > as a formal placeholder argument only. But when the first action in
> > >the
> > >> > function is evaluation of curthread() it becomes less obvious.
> > >>
> > >> Again, many/most of those are temporary.  I'm trying to push td down
> > >> in small steps, "layer by layer", so it's easy to review.
> > >>
> > >> > curthread() become very cheap on modern amd64, I am not so sure
> > >about
> > >> > older machines or non-x86 cases.
> > >>
> > >> The main reason is readability.  Right now there's no easy way to
> > >tell whether
> > >> a function can be passed any td, or if it must be curthread.
> > >I must admit that this is the weirdnest argument against 'td' that I
> > >ever
> > >heard.  I saw more or less reasonable argumentation
> > >- that using less arguments make one more register for argument passing
> > >  (amd64 has 6 input arg regs),
> > >- that less arguments make smaller call code.
> > >But trust me, in all cases where function can take td != curthread, it
> > >is
> > >either obvious or well-known for anybody who works with that code.
> > >
> > >Before you start doing a lot of small changes (AKA continous churn)
> > >please formulate your goals and get some public feedback.  My immediate
> > >question that I want answered before you ever start touching the code,
> > >is what you plan to do with
> > >       sys_syscall(struct thread *td, uap)
> >
> > Agreed on all points. At the very least this group of commits should be rev
> iewed on phabricator.
>
> It has been, even though they are pretty much mechanical changes.
>
> > Can we back all these commits out until there is a proper review, please?
>
> The review from the NFS maintainer is not enough?
>

As it's NFS-only maybe though for anything substantial, like this, the 
more eyes the better.

I'd agree with kib@ that we want to keep the amount of churn down, 
though it's understood that you want to separate the functional changes 
from the cosmetic ones. I tend to do the review and use git svn to 
separate the functional from the cosmetic changes, batching changes if 
I can. It's more work but IMO well worth it.


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.



From owner-svn-src-all@freebsd.org  Mon Mar  4 21:10:43 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E10791523280;
 Mon,  4 Mar 2019 21:10:42 +0000 (UTC)
 (envelope-from bdrewery@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 8594F88544;
 Mon,  4 Mar 2019 21:10:42 +0000 (UTC)
 (envelope-from bdrewery@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 2CD3599AD;
 Mon,  4 Mar 2019 21:10:41 +0000 (UTC)
 (envelope-from bdrewery@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24LAfnj067796;
 Mon, 4 Mar 2019 21:10:41 GMT (envelope-from bdrewery@FreeBSD.org)
Received: (from bdrewery@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24LAf2b067795;
 Mon, 4 Mar 2019 21:10:41 GMT (envelope-from bdrewery@FreeBSD.org)
Message-Id: <201903042110.x24LAf2b067795@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to
 bdrewery@FreeBSD.org using -f
From: Bryan Drewery <bdrewery@FreeBSD.org>
Date: Mon, 4 Mar 2019 21:10: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: r344781 - stable/12/tools/build/mk
X-SVN-Group: stable-12
X-SVN-Commit-Author: bdrewery
X-SVN-Commit-Paths: stable/12/tools/build/mk
X-SVN-Commit-Revision: 344781
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 8594F88544
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 21:10:43 -0000

Author: bdrewery
Date: Mon Mar  4 21:10:40 2019
New Revision: 344781
URL: https://svnweb.freebsd.org/changeset/base/344781

Log:
  MFC r344666:
  
    bsd.nls.mk isn't optional.
  
  PR:		232527

Modified:
  stable/12/tools/build/mk/OptionalObsoleteFiles.inc
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tools/build/mk/OptionalObsoleteFiles.inc
==============================================================================
--- stable/12/tools/build/mk/OptionalObsoleteFiles.inc	Mon Mar  4 19:50:59 2019	(r344780)
+++ stable/12/tools/build/mk/OptionalObsoleteFiles.inc	Mon Mar  4 21:10:40 2019	(r344781)
@@ -6592,7 +6592,6 @@ OLD_DIRS+=var/yp
 .if ${MK_NLS} == no
 OLD_DIRS+=usr/share/nls/
 OLD_DIRS+=usr/share/nls/C
-OLD_FILES+=usr/share/mk/bsd.nls.mk
 OLD_FILES+=usr/share/nls/C/ee.cat
 OLD_DIRS+=usr/share/nls/af_ZA.ISO8859-1
 OLD_DIRS+=usr/share/nls/af_ZA.ISO8859-15

From owner-svn-src-all@freebsd.org  Mon Mar  4 22:01:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D07441524A0F;
 Mon,  4 Mar 2019 22:01:10 +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)
 server-signature RSA-PSS (4096 bits)
 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 74C278A8ED;
 Mon,  4 Mar 2019 22:01:10 +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 68352A3AD;
 Mon,  4 Mar 2019 22:01:10 +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 x24M1ASB096799;
 Mon, 4 Mar 2019 22:01:10 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24M1AAh096798;
 Mon, 4 Mar 2019 22:01:10 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903042201.x24M1AAh096798@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Mon, 4 Mar 2019 22:01:10 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344782 - head/sys/net
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/net
X-SVN-Commit-Revision: 344782
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 74C278A8ED
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.972,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 22:01:11 -0000

Author: mav
Date: Mon Mar  4 22:01:09 2019
New Revision: 344782
URL: https://svnweb.freebsd.org/changeset/base/344782

Log:
  bridge: Fix spurious warnings about capabilities
  
  Mask off the bits we don't care about when checking that capabilities
  of the member interfaces have been disabled as intended.
  
  Submitted by:	Ryan Moeller <ryan@ixsystems.com>
  Reviewed by:	kristof, mav
  MFC after:	1 week
  Sponsored by:	iXsystems, Inc.
  Differential Revision:	https://reviews.freebsd.org/D18924

Modified:
  head/sys/net/if_bridge.c

Modified: head/sys/net/if_bridge.c
==============================================================================
--- head/sys/net/if_bridge.c	Mon Mar  4 21:10:40 2019	(r344781)
+++ head/sys/net/if_bridge.c	Mon Mar  4 22:01:09 2019	(r344782)
@@ -925,7 +925,7 @@ bridge_set_ifcap(struct bridge_softc *sc, struct bridg
 {
 	struct ifnet *ifp = bif->bif_ifp;
 	struct ifreq ifr;
-	int error;
+	int error, mask, stuck;
 
 	BRIDGE_UNLOCK_ASSERT(sc);
 
@@ -938,10 +938,12 @@ bridge_set_ifcap(struct bridge_softc *sc, struct bridg
 			if_printf(sc->sc_ifp,
 			    "error setting capabilities on %s: %d\n",
 			    ifp->if_xname, error);
-		if ((ifp->if_capenable & ~set) != 0)
+		mask = BRIDGE_IFCAPS_MASK | BRIDGE_IFCAPS_STRIP;
+		stuck = ifp->if_capenable & mask & ~set;
+		if (stuck != 0)
 			if_printf(sc->sc_ifp,
 			    "can't disable some capabilities on %s: 0x%x\n",
-			    ifp->if_xname, ifp->if_capenable & ~set);
+			    ifp->if_xname, stuck);
 	}
 }
 

From owner-svn-src-all@freebsd.org  Mon Mar  4 22:04:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E1BF1524AC9;
 Mon,  4 Mar 2019 22:04:22 +0000 (UTC) (envelope-from sjg@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0DE718ADCC;
 Mon,  4 Mar 2019 22:04:22 +0000 (UTC) (envelope-from sjg@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 F3443A432;
 Mon,  4 Mar 2019 22:04:21 +0000 (UTC) (envelope-from sjg@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x24M4L1W000174;
 Mon, 4 Mar 2019 22:04:21 GMT (envelope-from sjg@FreeBSD.org)
Received: (from sjg@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x24M4LbZ000172;
 Mon, 4 Mar 2019 22:04:21 GMT (envelope-from sjg@FreeBSD.org)
Message-Id: <201903042204.x24M4LbZ000172@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org
 using -f
From: "Simon J. Gerraty" <sjg@FreeBSD.org>
Date: Mon, 4 Mar 2019 22:04:21 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344784 - in head/lib/libsecureboot: . tests
X-SVN-Group: head
X-SVN-Commit-Author: sjg
X-SVN-Commit-Paths: in head/lib/libsecureboot: . tests
X-SVN-Commit-Revision: 344784
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0DE718ADCC
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.972,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 22:04:22 -0000

Author: sjg
Date: Mon Mar  4 22:04:21 2019
New Revision: 344784
URL: https://svnweb.freebsd.org/changeset/base/344784

Log:
  Allow for reproducible build
  
  Use SOURCE_DATE_EPOCH for BUILD_UTC if MK_REPRODUCIBLE_BUILD is yes.
  Default SOURCE_DATE_EPOCH to 2019-01-01
  
  Reviewed by:	emaste
  Sponsored by:	Juniper Networks
  Differential Revision:	https://reviews.freebsd.org/D19464

Modified:
  head/lib/libsecureboot/Makefile.inc
  head/lib/libsecureboot/tests/Makefile

Modified: head/lib/libsecureboot/Makefile.inc
==============================================================================
--- head/lib/libsecureboot/Makefile.inc	Mon Mar  4 22:03:09 2019	(r344783)
+++ head/lib/libsecureboot/Makefile.inc	Mon Mar  4 22:04:21 2019	(r344784)
@@ -92,6 +92,19 @@ VE_HASH_KAT_STR?= vc_PEM
 XCFLAGS.vets+= -DVE_HASH_KAT_STR=${VE_HASH_KAT_STR}
 .endif
 
+# this should be updated occassionally this is 2019-01-01Z
+SOURCE_DATE_EPOCH?= 1546329600
+.if ${MK_REPRODUCIBLE_BUILD} == "yes"
+BUILD_UTC?= ${SOURCE_DATE_EPOCH}
+.endif
+# BUILD_UTC provides a basis for the loader's notion of time
+# By default we use the mtime of BUILD_UTC_FILE
+.if empty(BUILD_UTC_FILE)
+BUILD_UTC_FILE:= ${.PARSEDIR:tA}/${.PARSEFILE}
+.endif
+# you can of course set BUILD_UTC to any value you like
+BUILD_UTC?= ${${STAT:Ustat} -f %m ${BUILD_UTC_FILE}:L:sh}
+
 # Generate ta.h containing one or more PEM encoded trust anchors in ta_PEM.
 #
 # If we are doing self-tests, we define another arrary vc_PEM
@@ -110,9 +123,7 @@ ta.h: ${.ALLTARGETS:M[tv]*pem:O:u}
 	( cat ${.ALLSRC:N*crl*:Mv*.pem} /dev/null | \
 	file2c -sx 'static const char vc_PEM[] = {' '};'; echo ) >> ${.TARGET}
 .endif
-.if !empty(BUILD_UTC_FILE)
-	echo '#define BUILD_UTC ${${STAT:Ustat} -f %m ${BUILD_UTC_FILE}:L:sh}' >> ${.TARGET} ${.OODATE:MNOMETA_CMP}
-.endif
+	echo '#define BUILD_UTC ${BUILD_UTC}' >> ${.TARGET} ${.OODATE:MNOMETA_CMP}
 
 # This header records our preference for signature extensions.
 vesigned.o vesigned.po vesigned.pico: vse.h

Modified: head/lib/libsecureboot/tests/Makefile
==============================================================================
--- head/lib/libsecureboot/tests/Makefile	Mon Mar  4 22:03:09 2019	(r344783)
+++ head/lib/libsecureboot/tests/Makefile	Mon Mar  4 22:04:21 2019	(r344784)
@@ -1,5 +1,7 @@
 # $FreeBSD$
 
+.include <src.opts.mk>
+
 PROG= tvo
 
 SRCS+= tvo.c

From owner-svn-src-all@freebsd.org  Mon Mar  4 23:13:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9648615269AF;
 Mon,  4 Mar 2019 23:13:08 +0000 (UTC)
 (envelope-from rmacklem@uoguelph.ca)
Received: from CAN01-QB1-obe.outbound.protection.outlook.com
 (mail-eopbgr660073.outbound.protection.outlook.com [40.107.66.73])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-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 0A7908D888;
 Mon,  4 Mar 2019 23:13:07 +0000 (UTC)
 (envelope-from rmacklem@uoguelph.ca)
Received: from QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM (52.132.89.15) by
 QB1PR01MB3764.CANPRD01.PROD.OUTLOOK.COM (52.132.86.220) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.1665.19; Mon, 4 Mar 2019 23:13:05 +0000
Received: from QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM
 ([fe80::89d1:c1e9:cb2:3e66]) by QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM
 ([fe80::89d1:c1e9:cb2:3e66%3]) with mapi id 15.20.1665.020; Mon, 4 Mar 2019
 23:13:05 +0000
From: Rick Macklem <rmacklem@uoguelph.ca>
To: Edward Napierala <trasz@freebsd.org>, Cy Schubert
 <Cy.Schubert@cschubert.com>
CC: Konstantin Belousov <kostikbel@gmail.com>, src-committers
 <src-committers@freebsd.org>, "svn-src-all@freebsd.org"
 <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org"
 <svn-src-head@freebsd.org>
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
Thread-Topic: svn commit: r344758 - in head/sys/fs: nfs nfsserver
Thread-Index: AQHU0sh37D5whbm3V0KPeIP62mR5+qX8FWOf
Date: Mon, 4 Mar 2019 23:13:05 +0000
Message-ID: <QB1PR01MB3537715B615DC86781069252DD710@QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM>
References: Message from Edward Napierala <trasz@freebsd.org>   of "Mon, 04
 Mar 2019 15:26:39 +0000."
 <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gmail.com>,
 <201903042025.x24KP9uU021607@slippy.cwsent.com>
In-Reply-To: <201903042025.x24KP9uU021607@slippy.cwsent.com>
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: aae4af59-f316-4841-4f74-08d6a0f6f56c
x-microsoft-antispam: BCL:0; PCL:0;
 RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(7193020);
 SRVR:QB1PR01MB3764; 
x-ms-traffictypediagnostic: QB1PR01MB3764:
x-microsoft-exchange-diagnostics: =?Windows-1252?Q?1; QB1PR01MB3764;
 23:f6VhlT+g76AXzThKtRqCe5GMt/77LdJtk+ROR?=
 =?Windows-1252?Q?1GjAaMLgpizO+CbJYqtWu3FE4DB+wCBx2ve3A/NleNG45+xH0w4bHA6q?=
 =?Windows-1252?Q?Pl9w+9LIUG+e/n3hD7FbeoyydmLnmM2gQzhdHAeJDfs08a9h1FB6wLoD?=
 =?Windows-1252?Q?seYLoOi7S35rcnLmoKxX7hzU97p55OR62RchgzwFagVsu1Isp8czU3S/?=
 =?Windows-1252?Q?TBx850auhfOBRJRxYkbuUWsNeACHTx4s4rBXNKnKypYYlLYGd4YXRKBV?=
 =?Windows-1252?Q?6TdMdHJBFTGWlJIhFmZhM7zgkYstTxJnBXRPa9CpVxFsmWzkbFbBni21?=
 =?Windows-1252?Q?GNb+cD+YStmSfK2gZOsv/WQXVYWNXyscIZOUXrDc0F6JehcWNCzarDfw?=
 =?Windows-1252?Q?nQaKSMh1niRVuQjKOgMQXQbmGE3cWegI14+9k+j89igMp1ClmGd7wKrY?=
 =?Windows-1252?Q?qM3mHoKd2ahZth997aIoJ8PncKDcL+zul39i633bkMZRshQdYqkYMviU?=
 =?Windows-1252?Q?EUSzev+nwRgf3pWLr9sJAyeuEzaawMz2v/F1MJErxUWjP/jlMOMh5y5H?=
 =?Windows-1252?Q?L6sCewC290nOO60N3+rBfjhSROLgrmwo9zpE+9I239AvlKu6mUS+H4IQ?=
 =?Windows-1252?Q?kIWeMQwfWVeTQDPT8kbAFX2ZoYGeJbJMZqzPkOwc6Kq/tfUkmcdn2mD9?=
 =?Windows-1252?Q?rHM2f3GQvKE2wnH0WgaiGbgvmeFGZpqfeidm9IcNc+9CNY2PY533PGqL?=
 =?Windows-1252?Q?oCoKUpvao4wIGd+gGZlYqjGNs0ZYO3zfzRxfxHKmSvXYIWgOCVmecJai?=
 =?Windows-1252?Q?B8/lUhrgfQYwx13X/6i/BFDTbe0g02sRy/W3Zal4KKOZiv3Y/fWmLpUr?=
 =?Windows-1252?Q?wYVliHeefY8LFmPUvMHsDqwbykokdV0p8vnGM7LSwrmDodWfAx20CNJh?=
 =?Windows-1252?Q?eZQzo/OS8XS/uDJw9ewfV+WqWPBLbtIvjpbkXe0/sPYRag2LSBlSrfDP?=
 =?Windows-1252?Q?MxWN5FQBBCggDPv76OmfPYSTt+//1TAZZpY61zBr1Uiwzw2i9VytaGIf?=
 =?Windows-1252?Q?SA26oR4cr7XAdcNxB60zpMrM2fMHcuC3VdX8/HGBujPR1kp/fgYYzwC/?=
 =?Windows-1252?Q?V8bpOTkPP4DlD2otrYOHFO+C2yTxSG3Stl4kLdDGGZyQ3mDhwrEzLULb?=
 =?Windows-1252?Q?j4i20J1DHBzVCWCEj6mYXu0BFzegXaK3BkMApQ7LUge34scwTsWw8b27?=
 =?Windows-1252?Q?ccOuKIvW8bVZ7rjsA=3D=3D?=
x-microsoft-antispam-prvs: <QB1PR01MB3764DBEE6213C3ABC94EFFFBDD710@QB1PR01MB3764.CANPRD01.PROD.OUTLOOK.COM>
x-forefront-prvs: 09669DB681
x-forefront-antispam-report: SFV:NSPM;
 SFS:(10009020)(39860400002)(346002)(376002)(366004)(396003)(136003)(199004)(189003)(2906002)(26005)(33656002)(68736007)(25786009)(186003)(305945005)(105586002)(71200400001)(71190400001)(106356001)(4326008)(97736004)(256004)(14444005)(74482002)(6506007)(14454004)(478600001)(6246003)(54906003)(110136005)(86362001)(786003)(316002)(74316002)(53936002)(9686003)(99286004)(6436002)(7696005)(476003)(8676002)(81166006)(81156014)(76176011)(11346002)(55016002)(446003)(8936002)(102836004)(486006)(229853002)(5660300002);
 DIR:OUT; SFP:1101; SCL:1; SRVR:QB1PR01MB3764;
 H:QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM; FPR:; SPF:None; LANG:en;
 PTR:InfoNoRecords; A:1; MX:1; 
received-spf: None (protection.outlook.com: uoguelph.ca does not designate
 permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: uldHPSN8/S4/OWptEY08+hT7qGCoZwCoPyV1v8JgFpBBF/dsoVcLILsDJ0LTBHTH5qlcw8zuZbR+/EBKW8Hjk0PjtzE4yJwa63y/v+cMRrqME5tyEwJsCIW+YCOnM9AwZwD5EUDY9LFKb92PFnBBMYqdDp2Gn4BqCJhX8vjF7y/lHkzIL8m5iBE09aTOJ3Akk5Ey7VpRfcjb24FYFD6cemV8RFKHGfMRYHOkSXEIDGLjWKlVsNm/7otk/Ik+mPvFCb2TCFGkcWNniNMBnwX3QAwXiW5mfkUEIP89KYsu//5QedL5a45bkPYT/0XjyqI/qn0ac3X7ZloywSlgNgp9fZsZj9xh/U34ag+tbbftKNXanlOr0NKjKsYRFR6lsrFXMpOaRdzZNMbz4NBKt4VF0Qq4JcQ8lDMJZszX3Qt0J7Y=
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-OriginatorOrg: uoguelph.ca
X-MS-Exchange-CrossTenant-Network-Message-Id: aae4af59-f316-4841-4f74-08d6a0f6f56c
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Mar 2019 23:13:05.7997 (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-Transport-CrossTenantHeadersStamped: QB1PR01MB3764
X-Rspamd-Queue-Id: 0A7908D888
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.90 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.90)[-0.896,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 23:13:08 -0000

Cy Schubert wrote:
>Sent: Monday, March 4, 2019 3:25 PM
>To: Edward Napierala
>Cc: Cy Schubert; Konstantin Belousov; src-committers; svn-src-all@freebsd.=
org; svn-src->head@freebsd.org
>Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
>
>In message <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gma
il.com>
, Edward Napierala writes:
>> pon., 4 mar 2019 o 15:17 Cy Schubert <Cy.Schubert@cschubert.com> napisa=
=C5=82(a):
>> >
>> > On March 4, 2019 6:30:21 AM PST, Konstantin Belousov <kostikbel@gmail.=
com>
>> wrote:
>> > >On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
>> > >> pon., 4 mar 2019 o 13:20 Konstantin Belousov <kostikbel@gmail.com>
>> > >napisa=C5=82(a):
>> > >> > > +     p =3D curthread;
>> > >> > Why do you name it 'p', which is typical for process, and not 'td=
',
>> > >you are
>> > >> > changing most of the code anyway.
>> > >>
>> > >> To keep the diff size smaller.  You're right, this touches a lot of
>> > >stuff,
>> > >> but most of those added lines are temporary anyway - they will be
>> > >> removed later, when the td is pushed down even more.
>> > >But if you create code churn, doing it only half way is worse.
>> > >
>> > >>
>> > >> > Also I am curious why. It is certainly fine to remove td when it =
is
>> > >used
>> > >> > as a formal placeholder argument only. But when the first action =
in
>> > >the
>> > >> > function is evaluation of curthread() it becomes less obvious.
>> > >>
>> > >> Again, many/most of those are temporary.  I'm trying to push td dow=
n
>> > >> in small steps, "layer by layer", so it's easy to review.
>> > >>
>> > >> > curthread() become very cheap on modern amd64, I am not so sure
>> > >about
>> > >> > older machines or non-x86 cases.
>> > >>
>> > >> The main reason is readability.  Right now there's no easy way to
>> > >tell whether
>> > >> a function can be passed any td, or if it must be curthread.
>> > >I must admit that this is the weirdnest argument against 'td' that I
>> > >ever
>> > >heard.  I saw more or less reasonable argumentation
>> > >- that using less arguments make one more register for argument passi=
ng
>> > >  (amd64 has 6 input arg regs),
>> > >- that less arguments make smaller call code.
>> > >But trust me, in all cases where function can take td !=3D curthread,=
 it
>> > >is
>> > >either obvious or well-known for anybody who works with that code.
>> > >
>> > >Before you start doing a lot of small changes (AKA continous churn)
>> > >please formulate your goals and get some public feedback.  My immedia=
te
>> > >question that I want answered before you ever start touching the code=
,
>> > >is what you plan to do with
>> > >       sys_syscall(struct thread *td, uap)
>> >
>> > Agreed on all points. At the very least this group of commits should b=
e rev
>> iewed on phabricator.
>>
>> It has been, even though they are pretty much mechanical changes.
>>
>> > Can we back all these commits out until there is a proper review, plea=
se?
>>
>> The review from the NFS maintainer is not enough?
>>
Btw, I've never listed myself as the NFS maintainer. I need to go look to s=
ee if
someone else put me in the maintainer's list. I understand that it is mostl=
y authored
by me, but I consider it FreeBSD project code once committed. (Others do co=
mmits
to it without my review and that is just fine with me.)

>As it's NFS-only maybe though for anything substantial, like this, the
>more eyes the better.
>
>I'd agree with kib@ that we want to keep the amount of churn down,
>though it's understood that you want to separate the functional changes
>from the cosmetic ones. I tend to do the review and use git svn to
>separate the functional from the cosmetic changes, batching changes if
>I can. It's more work but IMO well worth it.
This is way too technical for me. I can barely look at a "diff" and make se=
nse of it.;-)

It sounds like there needs to be a discussion (on freebsd-fs@ perhaps?) of =
the
"big picture change" here.

All I am going to do with the patches in phabricator is take a quick look t=
o see
if I can spot anything that will break the code.
(I did mention that I didn't understand why he was doing this in one of the=
 reviews,
 but noted that it didn't break anything.)

Oh, and the variable was called "p" because the code started in OpenBSD, wh=
ere it
was a proc ptr and I kept it portable by replacing "struct proc" with NFSPR=
OC_T.
(This portability is no longer a consideration.)

I'll hold off on further phabricator reviews until the "big picture" change=
 gets discussed
on some mailing list. (I don't see phabricator as the correct tool for "big=
 picture"
discussions.)

rick




From owner-svn-src-all@freebsd.org  Mon Mar  4 23:25:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 315CF1526DE2;
 Mon,  4 Mar 2019 23:25:03 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "Client", Issuer "CA" (not verified))
 by mx1.freebsd.org (Postfix) with ESMTPS id 6E1598DFA2;
 Mon,  4 Mar 2019 23:25:02 +0000 (UTC)
 (envelope-from cy.schubert@cschubert.com)
Received: from spqr.komquats.com ([70.67.125.17]) by shaw.ca with ESMTPA
 id 0wx7hbNCeJjE40wx9hqVxB; Mon, 04 Mar 2019 16:25:00 -0700
X-Authority-Analysis: v=2.3 cv=Lq7sNUVc c=1 sm=1 tr=0
 a=VFtTW3WuZNDh6VkGe7fA3g==:117 a=VFtTW3WuZNDh6VkGe7fA3g==:17
 a=IkcTkHD0fZMA:10 a=NTGMnVQrEZIA:10 a=hF2rLc1pAAAA:8 a=6I5d2MoRAAAA:8
 a=xfDLHkLGAAAA:8 a=YxBL1-UpAAAA:8 a=pGLkceISAAAA:8 a=CzpIpZ3pSPfZevzj2WcA:9
 a=jMizxHKGjwZ4905R:21 a=Wtuxhp6T8zpQJ01D:21 a=QEXdDO2ut3YA:10
 a=UJ0tAi3fqDAA:10 a=O9OM7dhJW_8Hj9EqqvKN:22 a=IjZwj45LgO3ly-622nXo:22
 a=IfaqVvZgccqrtc8gcwf2:22 a=Ia-lj3WSrqcvXOmTRaiG:22
Received: from android-68f84e02b5988183.esitwifi.local
 (S0106788a207e2972.gv.shawcable.net [70.66.154.233])
 by spqr.komquats.com (Postfix) with ESMTPSA id 7D835A29;
 Mon,  4 Mar 2019 15:24:56 -0800 (PST)
Date: Mon, 04 Mar 2019 15:24:33 -0800
User-Agent: K-9 Mail for Android
In-Reply-To: <QB1PR01MB3537715B615DC86781069252DD710@QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM>
References: Message from Edward Napierala <trasz@freebsd.org> of "Mon,
 04 Mar 2019 15:26:39 +0000."
 <CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail.gmail.com>,
 <201903042025.x24KP9uU021607@slippy.cwsent.com>
 <QB1PR01MB3537715B615DC86781069252DD710@QB1PR01MB3537.CANPRD01.PROD.OUTLOOK.COM>
MIME-Version: 1.0
Content-Type: text/plain;
 charset=utf-8
Content-Transfer-Encoding: quoted-printable
Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
To: Rick Macklem <rmacklem@uoguelph.ca>,Edward Napierala <trasz@freebsd.org>
CC: Konstantin Belousov <kostikbel@gmail.com>,
 src-committers <src-committers@freebsd.org>,
 "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,
 "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
From: Cy Schubert <Cy.Schubert@cschubert.com>
Message-ID: <59652042-485B-41DE-9421-DC7AA6CC8D83@cschubert.com>
X-CMAE-Envelope: MS4wfMHENnoIH/li/HreDyO29NB0Y2H6bLCX2MhSYMYdO5rRv1lV2z+sQjhkucxiw2jpwgWIcsrZwasoP4z7hUaRjiCugG2r/EyZqqa1VnDQmKE4hFkO83wg
 fvy3FsT3AVhYLJLYHHry0bG0V7d7FoyBpxVfyVJgql1+noHBrpfcPwfEiXswwG6CCnq2bMl57JEOjoUdixiuhInpVFyf+sPuzH+AARMfsLHqU+ECRGtZgmDM
 zQCYrKW4SHxmdbWK1O5tT3DkW+A/hyXw5mR6YarKSz+/ld2gY4Ts2qT29IwICF/CRxhAX5oF9nvV9OZ4WrWtZakhz33Adboc5KxcU1+4G3x/BcS9JR47jm+s
 Nm0p/pYX
X-Rspamd-Queue-Id: 6E1598DFA2
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.97 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.97)[-0.965,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 04 Mar 2019 23:25:03 -0000

On March 4, 2019 3:13:05 PM PST, Rick Macklem <rmacklem@uoguelph=2Eca> wrot=
e:
>Cy Schubert wrote:
>>Sent: Monday, March 4, 2019 3:25 PM
>>To: Edward Napierala
>>Cc: Cy Schubert; Konstantin Belousov; src-committers;
>svn-src-all@freebsd=2Eorg; svn-src->head@freebsd=2Eorg
>>Subject: Re: svn commit: r344758 - in head/sys/fs: nfs nfsserver
>>
>>In message
><CAFLM3-pFi_-yhMx4bhm_0S5FK3BdLh1xbXV+cKgPks7d8cttMw@mail=2Egma
>il=2Ecom>
>, Edward Napierala writes:
>>> pon=2E, 4 mar 2019 o 15:17 Cy Schubert <Cy=2ESchubert@cschubert=2Ecom>
>napisa=C3=85=E2=80=9A(a):
>>> >
>>> > On March 4, 2019 6:30:21 AM PST, Konstantin Belousov
><kostikbel@gmail=2Ecom>
>>> wrote:
>>> > >On Mon, Mar 04, 2019 at 01:31:37PM +0000, Edward Napierala wrote:
>>> > >> pon=2E, 4 mar 2019 o 13:20 Konstantin Belousov
><kostikbel@gmail=2Ecom>
>>> > >napisa=C3=85=E2=80=9A(a):
>>> > >> > > +     p =3D curthread;
>>> > >> > Why do you name it 'p', which is typical for process, and not
>'td',
>>> > >you are
>>> > >> > changing most of the code anyway=2E
>>> > >>
>>> > >> To keep the diff size smaller=2E  You're right, this touches a
>lot of
>>> > >stuff,
>>> > >> but most of those added lines are temporary anyway - they will
>be
>>> > >> removed later, when the td is pushed down even more=2E
>>> > >But if you create code churn, doing it only half way is worse=2E
>>> > >
>>> > >>
>>> > >> > Also I am curious why=2E It is certainly fine to remove td when
>it is
>>> > >used
>>> > >> > as a formal placeholder argument only=2E But when the first
>action in
>>> > >the
>>> > >> > function is evaluation of curthread() it becomes less
>obvious=2E
>>> > >>
>>> > >> Again, many/most of those are temporary=2E  I'm trying to push td
>down
>>> > >> in small steps, "layer by layer", so it's easy to review=2E
>>> > >>
>>> > >> > curthread() become very cheap on modern amd64, I am not so
>sure
>>> > >about
>>> > >> > older machines or non-x86 cases=2E
>>> > >>
>>> > >> The main reason is readability=2E  Right now there's no easy way
>to
>>> > >tell whether
>>> > >> a function can be passed any td, or if it must be curthread=2E
>>> > >I must admit that this is the weirdnest argument against 'td'
>that I
>>> > >ever
>>> > >heard=2E  I saw more or less reasonable argumentation
>>> > >- that using less arguments make one more register for argument
>passing
>>> > >  (amd64 has 6 input arg regs),
>>> > >- that less arguments make smaller call code=2E
>>> > >But trust me, in all cases where function can take td !=3D
>curthread, it
>>> > >is
>>> > >either obvious or well-known for anybody who works with that
>code=2E
>>> > >
>>> > >Before you start doing a lot of small changes (AKA continous
>churn)
>>> > >please formulate your goals and get some public feedback=2E  My
>immediate
>>> > >question that I want answered before you ever start touching the
>code,
>>> > >is what you plan to do with
>>> > >       sys_syscall(struct thread *td, uap)
>>> >
>>> > Agreed on all points=2E At the very least this group of commits
>should be rev
>>> iewed on phabricator=2E
>>>
>>> It has been, even though they are pretty much mechanical changes=2E
>>>
>>> > Can we back all these commits out until there is a proper review,
>please?
>>>
>>> The review from the NFS maintainer is not enough?
>>>
>Btw, I've never listed myself as the NFS maintainer=2E I need to go look
>to see if
>someone else put me in the maintainer's list=2E I understand that it is
>mostly authored
>by me, but I consider it FreeBSD project code once committed=2E (Others
>do commits
>to it without my review and that is just fine with me=2E)
>
>>As it's NFS-only maybe though for anything substantial, like this, the
>>more eyes the better=2E
>>
>>I'd agree with kib@ that we want to keep the amount of churn down,
>>though it's understood that you want to separate the functional
>changes
>>from the cosmetic ones=2E I tend to do the review and use git svn to
>>separate the functional from the cosmetic changes, batching changes if
>>I can=2E It's more work but IMO well worth it=2E
>This is way too technical for me=2E I can barely look at a "diff" and
>make sense of it=2E;-)
>
>It sounds like there needs to be a discussion (on freebsd-fs@ perhaps?)
>of the
>"big picture change" here=2E
>
>All I am going to do with the patches in phabricator is take a quick
>look to see
>if I can spot anything that will break the code=2E
>(I did mention that I didn't understand why he was doing this in one of
>the reviews,
> but noted that it didn't break anything=2E)

IMO the why is always more important than the how=2E If there is no reason=
 why then how is irrelevant=2E

>
>Oh, and the variable was called "p" because the code started in
>OpenBSD, where it
>was a proc ptr and I kept it portable by replacing "struct proc" with
>NFSPROC_T=2E
>(This portability is no longer a consideration=2E)
>
>I'll hold off on further phabricator reviews until the "big picture"
>change gets discussed
>on some mailing list=2E (I don't see phabricator as the correct tool for
>"big picture"
>discussions=2E)
>
>rick

Hopefully my inline reply on this phone worked=2E If not I'll try again to=
night=2E

--=20
Pardon the typos and autocorrect, small keyboard in use=2E
Cheers,
Cy Schubert <Cy=2ESchubert@cschubert=2Ecom>
FreeBSD UNIX: <cy@FreeBSD=2Eorg> Web: http://www=2EFreeBSD=2Eorg

	The need of the many outweighs the greed of the few=2E

From owner-svn-src-all@freebsd.org  Tue Mar  5 02:53:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3027C150C215;
 Tue,  5 Mar 2019 02:53:42 +0000 (UTC) (envelope-from hrs@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CB65271E03;
 Tue,  5 Mar 2019 02:53:41 +0000 (UTC) (envelope-from hrs@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 BE800DBEB;
 Tue,  5 Mar 2019 02:53:41 +0000 (UTC) (envelope-from hrs@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x252rf5e052130;
 Tue, 5 Mar 2019 02:53:41 GMT (envelope-from hrs@FreeBSD.org)
Received: (from hrs@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x252rfsM052129;
 Tue, 5 Mar 2019 02:53:41 GMT (envelope-from hrs@FreeBSD.org)
Message-Id: <201903050253.x252rfsM052129@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: hrs set sender to hrs@FreeBSD.org
 using -f
From: Hiroki Sato <hrs@FreeBSD.org>
Date: Tue, 5 Mar 2019 02:53:41 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344788 - head/usr.sbin/rtadvctl
X-SVN-Group: head
X-SVN-Commit-Author: hrs
X-SVN-Commit-Paths: head/usr.sbin/rtadvctl
X-SVN-Commit-Revision: 344788
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CB65271E03
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.964,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 02:53:42 -0000

Author: hrs
Date: Tue Mar  5 02:53:41 2019
New Revision: 344788
URL: https://svnweb.freebsd.org/changeset/base/344788

Log:
  Fix grammar.
  
  Submitted by:	Massimiliano Stucchi

Modified:
  head/usr.sbin/rtadvctl/rtadvctl.8

Modified: head/usr.sbin/rtadvctl/rtadvctl.8
==============================================================================
--- head/usr.sbin/rtadvctl/rtadvctl.8	Tue Mar  5 01:00:38 2019	(r344787)
+++ head/usr.sbin/rtadvctl/rtadvctl.8	Tue Mar  5 02:53:41 2019	(r344788)
@@ -40,7 +40,7 @@ daemon
 .Op Ar interface ...
 .Sh DESCRIPTION
 .Nm
-is a utility that communicates with
+is a utility that communicates with the
 .Xr rtadvd 8
 daemon and displays information about Router Advertisement messages being
 sent on each interface.
@@ -63,21 +63,22 @@ The subcommands are as follows:
 .Bl -tag -width indent
 .\"
 .It reload Op interfaces...
-Specifies to reload the configuration file.  If one or more
-.Ar interface
-is specified, configuration entries for the interfaces will be reloaded
+Specifies to reload the configuration file.
+If one or more
+.Ar interfaces
+are specified, configuration entries for the interfaces will be reloaded
 selectively.
 .It enable interfaces...
-Specifies to mark the interface as enable and to try to reload the
+Specifies to mark the interface as enabled and to tries to reload the
 configuration entry.
 This subcommand is useful for dynamically-added interfaces.
 .Pp
 The
 .Xr rtadvd 8
-daemon marks an interface as enable if the interface exists and the
-configuration file has a valid entry for that when it is invoked.
+daemon marks an interface as enabled if the interface exists and the
+configuration file has a valid entry for it when it is invoked.
 .It disable interfaces...
-Specifies to mark the interface as disable.
+Specifies to mark the interface as disabled.
 .It shutdown
 Makes the
 .Xr rtadvd 8
@@ -88,7 +89,7 @@ daemon will send several RAs with zero lifetime to inv
 information on each interface.
 It will take at most nine seconds.
 .It show Op interfaces...
-Displays information on Router Advertisement messages being sent
+Displays information about the Router Advertisement messages being sent
 on each interface.
 .El
 .Sh SEE ALSO

From owner-svn-src-all@freebsd.org  Tue Mar  5 04:15:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 09DD815106BD;
 Tue,  5 Mar 2019 04:15:35 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9CA2D758E4;
 Tue,  5 Mar 2019 04:15:34 +0000 (UTC)
 (envelope-from marcel@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 8C1DBEB13;
 Tue,  5 Mar 2019 04:15:34 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x254FYHb094979;
 Tue, 5 Mar 2019 04:15:34 GMT (envelope-from marcel@FreeBSD.org)
Received: (from marcel@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x254FYh3094978;
 Tue, 5 Mar 2019 04:15:34 GMT (envelope-from marcel@FreeBSD.org)
Message-Id: <201903050415.x254FYh3094978@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: marcel set sender to
 marcel@FreeBSD.org using -f
From: Marcel Moolenaar <marcel@FreeBSD.org>
Date: Tue, 5 Mar 2019 04:15:34 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344790 - head/sys/geom/part
X-SVN-Group: head
X-SVN-Commit-Author: marcel
X-SVN-Commit-Paths: head/sys/geom/part
X-SVN-Commit-Revision: 344790
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9CA2D758E4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 04:15:35 -0000

Author: marcel
Date: Tue Mar  5 04:15:34 2019
New Revision: 344790
URL: https://svnweb.freebsd.org/changeset/base/344790

Log:
  Revert revision 254095
  
  In revision 254095, gpt_entries is not set to match the on-disk
  hdr_entries, but rather is computed based on available space.
  There are 2 problems with this:
  
  1.  The GPT backend respects hdr_entries and only reads and writes
      that number of partition entries.  On top of that, CRC32 is
      computed over the table that has hdr_entries elements.  When
      the common code works on what is possibly a larger number, the
      behaviour becomes inconsistent and problematic.  In particular,
      it would be possible to add a new partition that on a reboot
      isn't there anymore.
  2.  The calculation of gpt_entries is based on flawed assumptions.
      The GPT specification does not dictate that sectors are layed
      out in a particular way that the available space can be
      determined by looking at LBAs.  In practice, implementations
      do the same thing, because there's no reason to do it any
      other way.  Still, GPT allows certain freedoms that can be
      exploited in some form or shape if the need arises.
  
  PR:		229977
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D19438

Modified:
  head/sys/geom/part/g_part_gpt.c

Modified: head/sys/geom/part/g_part_gpt.c
==============================================================================
--- head/sys/geom/part/g_part_gpt.c	Tue Mar  5 03:27:32 2019	(r344789)
+++ head/sys/geom/part/g_part_gpt.c	Tue Mar  5 04:15:34 2019	(r344790)
@@ -990,10 +990,9 @@ g_part_gpt_read(struct g_part_table *basetable, struct
 
 	basetable->gpt_first = table->hdr->hdr_lba_start;
 	basetable->gpt_last = table->hdr->hdr_lba_end;
-	basetable->gpt_entries = (table->hdr->hdr_lba_start - 2) *
-	    pp->sectorsize / table->hdr->hdr_entsz;
+	basetable->gpt_entries = table->hdr->hdr_entries;
 
-	for (index = table->hdr->hdr_entries - 1; index >= 0; index--) {
+	for (index = basetable->gpt_entries - 1; index >= 0; index--) {
 		if (EQUUID(&tbl[index].ent_type, &gpt_uuid_unused))
 			continue;
 		entry = (struct g_part_gpt_entry *)g_part_new_entry(

From owner-svn-src-all@freebsd.org  Tue Mar  5 04:16:51 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C4C61510817;
 Tue,  5 Mar 2019 04:16:51 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 4476F75A99;
 Tue,  5 Mar 2019 04:16:51 +0000 (UTC)
 (envelope-from jhibbits@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 39557EB22;
 Tue,  5 Mar 2019 04:16:51 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x254Gpw8095088;
 Tue, 5 Mar 2019 04:16:51 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x254Gpgt095087;
 Tue, 5 Mar 2019 04:16:51 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903050416.x254Gpgt095087@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Tue, 5 Mar 2019 04:16:51 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344791 - head/contrib/binutils/opcodes
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/contrib/binutils/opcodes
X-SVN-Commit-Revision: 344791
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4476F75A99
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 04:16:51 -0000

Author: jhibbits
Date: Tue Mar  5 04:16:50 2019
New Revision: 344791
URL: https://svnweb.freebsd.org/changeset/base/344791

Log:
  Fix binutils compilation error with Clang 8
  
  Summary:
  This change fixes the following compilation error when using clang 8 to cross
  compile base to powerpc64:
  
  ```
  /usr/src/gnu/usr.bin/binutils/libopcodes/../../../../contrib/binutils/opcodes/ppc-dis.c:100:35:
  error: arithmetic on a null pointer treated as a cast from integer to pointer is
  a GNU extension [-Werror,-Wnull-pointer-arithmetic]
    info->private_data = (char *) 0 + dialect;
  		       ~~~~~~~~~~ ^
  1 error generated.
  *** [ppc-dis.o] Error code 1
  
  make[6]: stopped in /usr/src/gnu/usr.bin/binutils/libopcodes
  1 error
  ```
  
  Test Plan:
  - buildworld for x86_64 (native)
  - buildworld for powerpc64 (cross)
  - buildworld for powerpc64 (native)
  
  Submitted by:	alfredo.junior_eldorado.org.br
  Reviewed By:	emaste, pfg, brooks
  Differential Revision:	https://reviews.freebsd.org/D19235

Modified:
  head/contrib/binutils/opcodes/ppc-dis.c

Modified: head/contrib/binutils/opcodes/ppc-dis.c
==============================================================================
--- head/contrib/binutils/opcodes/ppc-dis.c	Tue Mar  5 04:15:34 2019	(r344790)
+++ head/contrib/binutils/opcodes/ppc-dis.c	Tue Mar  5 04:16:50 2019	(r344791)
@@ -20,6 +20,7 @@ along with this file; see the file COPYING.  If not, w
 Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
 
 #include <stdio.h>
+#include <inttypes.h>
 #include "sysdep.h"
 #include "dis-asm.h"
 #include "opcode/ppc.h"
@@ -97,7 +98,7 @@ powerpc_dialect (struct disassemble_info *info)
 	dialect |= PPC_OPCODE_64;
     }
 
-  info->private_data = (char *) 0 + dialect;
+  info->private_data = (void *)(uintptr_t)dialect;
   return dialect;
 }
 

From owner-svn-src-all@freebsd.org  Tue Mar  5 07:54:50 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B2B6151C22D;
 Tue,  5 Mar 2019 07:54:50 +0000 (UTC)
 (envelope-from mmacy@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)
 server-signature RSA-PSS (4096 bits)
 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 2D80585103;
 Tue,  5 Mar 2019 07:54:50 +0000 (UTC)
 (envelope-from mmacy@freebsd.org)
Received: from mail-io1-f43.google.com (mail-io1-f43.google.com
 [209.85.166.43])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 (Authenticated sender: mmacy)
 by smtp.freebsd.org (Postfix) with ESMTPSA id 0A37116F61;
 Tue,  5 Mar 2019 07:54:50 +0000 (UTC)
 (envelope-from mmacy@freebsd.org)
Received: by mail-io1-f43.google.com with SMTP id p18so6246257ioh.5;
 Mon, 04 Mar 2019 23:54:50 -0800 (PST)
X-Gm-Message-State: APjAAAW5j1Sn13/5dGYn6FsWtKhKDeqfcQMf/7zbr0EDjdBpKWEr01lT
 RxsSBQnKTeIYNzrLXM4yLdRzGfe3KDpyYLR7eNs=
X-Google-Smtp-Source: APXvYqyTLZ4tO8pXBRoDewLleXLvuV+CESDxLQMiNybY8bQde2ZlShb8Ri7oImeZZ27fCYQ2sD7X9BOHdkniNb1U7bI=
X-Received: by 2002:a6b:7d47:: with SMTP id d7mr11503046ioq.237.1551772489508; 
 Mon, 04 Mar 2019 23:54:49 -0800 (PST)
MIME-Version: 1.0
References: <201902232114.x1NLE0cH085345@repo.freebsd.org>
 <CAOtMX2hD=o+F1z1sErDuBxaL8qm+S-BDAwvLr=1z0MhmAJ8ang@mail.gmail.com>
 <CAPrugNrnKeDkqsqDtPyTCsPBK6rUsAThog1KO1u3FPCGihD3sw@mail.gmail.com>
 <CAOtMX2j5tFdapsHr3WwVAG3PjUNBuuvoZSiy9L=_7c925M=zRQ@mail.gmail.com>
In-Reply-To: <CAOtMX2j5tFdapsHr3WwVAG3PjUNBuuvoZSiy9L=_7c925M=zRQ@mail.gmail.com>
From: Matthew Macy <mmacy@freebsd.org>
Date: Mon, 4 Mar 2019 23:54:38 -0800
X-Gmail-Original-Message-ID: <CAPrugNrKBQr27dmPR5RgOH-9azKiO2tSEymSCrmU3J2yABL3wQ@mail.gmail.com>
Message-ID: <CAPrugNrKBQr27dmPR5RgOH-9azKiO2tSEymSCrmU3J2yABL3wQ@mail.gmail.com>
Subject: Re: svn commit: r344487 - in head/sys: conf gnu/gcov
To: Alan Somers <asomers@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 2D80585103
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[freebsd.org];
 NEURAL_HAM_SHORT(-0.97)[-0.970,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 07:54:50 -0000

World? It looks like there's a version mismatch between the kernel and modules.

-M

On Thu, Feb 28, 2019 at 7:11 PM Alan Somers <asomers@freebsd.org> wrote:
>
> On Thu, Feb 28, 2019 at 6:40 PM Matthew Macy <mmacy@freebsd.org> wrote:
> >
> > to config add:
> > options LINDEBUGFS
> > options GCOV
> >
> > compile kernel with gcc (otherwise it will be a no-op)
> >
> > sysctl debug.gcov.enable=1
> >
> > mount -t debugfs debugfs /sys/kernel/debug
> >
> > (or wherever) and the output artifacts will appear under gcov/<kernel
> > build path> - you need to be root to see the artifacts
> >
> > gcov can then generate the results as it would normally from the
> > profiling and the build time artifacts
> >
> > bug reports welcome
> >
> >
> > -M
>
> Here's a bug report: I rebuilt the kernel but boot fails with this
> error.  Do I need to rebuild world too?
>
> Mounting local filesystems:kldload: fdescfs.ko: lost base for reltab
> linker_load_file: /boot/kernel/fdescfs.ko - unsupported file type
> mount: fdescfs: Operation not supported by device
> Mounting /etc/fstab filesystems failed, will retry after root mount hold release
> kldload: fdescfs.ko: lost base for reltab
> linker_load_file: /boot/kernel/fdescfs.ko - unsupported file type
> mount: fdescfs: Operation not supported by device
> .
> Mounting /etc/fstab filesystems failed, startup aborted

From owner-svn-src-all@freebsd.org  Tue Mar  5 08:33:15 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B3A6151D6C4;
 Tue,  5 Mar 2019 08:33:15 +0000 (UTC) (envelope-from jah@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 1E879862E0;
 Tue,  5 Mar 2019 08:33:15 +0000 (UTC) (envelope-from jah@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 055551980C;
 Tue,  5 Mar 2019 08:33:15 +0000 (UTC) (envelope-from jah@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x258XE6V029560;
 Tue, 5 Mar 2019 08:33:14 GMT (envelope-from jah@FreeBSD.org)
Received: (from jah@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x258XE41029559;
 Tue, 5 Mar 2019 08:33:14 GMT (envelope-from jah@FreeBSD.org)
Message-Id: <201903050833.x258XE41029559@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jah set sender to jah@FreeBSD.org
 using -f
From: "Jason A. Harmening" <jah@FreeBSD.org>
Date: Tue, 5 Mar 2019 08:33:14 +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: r344792 - stable/12/sys/vm
X-SVN-Group: stable-12
X-SVN-Commit-Author: jah
X-SVN-Commit-Paths: stable/12/sys/vm
X-SVN-Commit-Revision: 344792
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1E879862E0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.956,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 08:33:15 -0000

Author: jah
Date: Tue Mar  5 08:33:14 2019
New Revision: 344792
URL: https://svnweb.freebsd.org/changeset/base/344792

Log:
  MFC r344561:
  
  Fix incorrect assertion in vnode_pager_generic_getpages()

Modified:
  stable/12/sys/vm/vnode_pager.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/vm/vnode_pager.c
==============================================================================
--- stable/12/sys/vm/vnode_pager.c	Tue Mar  5 04:16:50 2019	(r344791)
+++ stable/12/sys/vm/vnode_pager.c	Tue Mar  5 08:33:14 2019	(r344792)
@@ -774,7 +774,7 @@ vnode_pager_generic_getpages(struct vnode *vp, vm_page
 
 	KASSERT(foff < object->un_pager.vnp.vnp_size,
 	    ("%s: page %p offset beyond vp %p size", __func__, m[0], vp));
-	KASSERT(count <= sizeof(bp->b_pages),
+	KASSERT(count <= nitems(bp->b_pages),
 	    ("%s: requested %d pages", __func__, count));
 
 	/*

From owner-svn-src-all@freebsd.org  Tue Mar  5 08:45:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 57C71151DDB4;
 Tue,  5 Mar 2019 08:45:08 +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)
 server-signature RSA-PSS (4096 bits)
 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 F2A8C86989;
 Tue,  5 Mar 2019 08:45:07 +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 E5887199ED;
 Tue,  5 Mar 2019 08:45:07 +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 x258j72Z035160;
 Tue, 5 Mar 2019 08:45:07 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x258j7T2035155;
 Tue, 5 Mar 2019 08:45:07 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903050845.x258j7T2035155@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Tue, 5 Mar 2019 08:45: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: r344793 - stable/12/tests/sys/netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/12/tests/sys/netpfil/pf
X-SVN-Commit-Revision: 344793
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: F2A8C86989
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 08:45:08 -0000

Author: kp
Date: Tue Mar  5 08:45:07 2019
New Revision: 344793
URL: https://svnweb.freebsd.org/changeset/base/344793

Log:
  MFC r344692:
  
  pf tests: Test CVE-2019-5597
  
  Generate a fragmented packet with different header chains, to provoke
  the incorrect behaviour of pf.
  Without the fix this will trigger a panic.
  
  Obtained from:	Corentin Bayet, Nicolas Collignon, Luca Moro at Synacktiv

Added:
  stable/12/tests/sys/netpfil/pf/CVE-2019-5597.py
     - copied unchanged from r344692, head/tests/sys/netpfil/pf/CVE-2019-5597.py
Modified:
  stable/12/tests/sys/netpfil/pf/Makefile
  stable/12/tests/sys/netpfil/pf/fragmentation.sh
Directory Properties:
  stable/12/   (props changed)

Copied: stable/12/tests/sys/netpfil/pf/CVE-2019-5597.py (from r344692, head/tests/sys/netpfil/pf/CVE-2019-5597.py)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/tests/sys/netpfil/pf/CVE-2019-5597.py	Tue Mar  5 08:45:07 2019	(r344793, copy of r344692, head/tests/sys/netpfil/pf/CVE-2019-5597.py)
@@ -0,0 +1,35 @@
+#!/usr/local/bin/python2.7
+
+import random
+import scapy.all as sp
+import sys
+
+UDP_PROTO  = 17
+AH_PROTO   = 51
+FRAG_PROTO = 44
+
+def main():
+    intf = sys.argv[1]
+    ipv6_src = sys.argv[2]
+    ipv6_dst = sys.argv[3]
+
+    ipv6_main = sp.IPv6(dst=ipv6_dst, src=ipv6_src)
+
+    padding = 8
+    fid = random.randint(0,100000)
+    frag_0 = sp.IPv6ExtHdrFragment(id=fid, nh=UDP_PROTO, m=1, offset=0)
+    frag_1 = sp.IPv6ExtHdrFragment(id=fid, nh=UDP_PROTO, m=0, offset=padding/8)
+    
+    pkt1_opts = sp.AH(nh=AH_PROTO, payloadlen=200) \
+            / sp.Raw('XXXX' * 199) \
+            / sp.AH(nh=FRAG_PROTO, payloadlen=1) \
+            / frag_1
+
+    pkt0 = sp.Ether() / ipv6_main / frag_0 / sp.Raw('A' * padding)
+    pkt1 = sp.Ether() / ipv6_main / pkt1_opts / sp.Raw('B' * padding)
+
+    sp.sendp(pkt0, iface=intf, verbose=False)
+    sp.sendp(pkt1, iface=intf, verbose=False)
+
+if __name__ == '__main__':
+	main()

Modified: stable/12/tests/sys/netpfil/pf/Makefile
==============================================================================
--- stable/12/tests/sys/netpfil/pf/Makefile	Tue Mar  5 08:33:14 2019	(r344792)
+++ stable/12/tests/sys/netpfil/pf/Makefile	Tue Mar  5 08:45:07 2019	(r344793)
@@ -19,8 +19,10 @@ ATF_TESTS_SH+=	anchor \
 
 ${PACKAGE}FILES+=	utils.subr \
 			echo_inetd.conf \
-			pft_ping.py
+			pft_ping.py \
+			CVE-2019-5597.py
 
 ${PACKAGE}FILESMODE_pft_ping.py=	0555
+${PACKAGE}FILESMODE_CVE-2019-5597.py=	0555
 
 .include <bsd.test.mk>

Modified: stable/12/tests/sys/netpfil/pf/fragmentation.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/fragmentation.sh	Tue Mar  5 08:33:14 2019	(r344792)
+++ stable/12/tests/sys/netpfil/pf/fragmentation.sh	Tue Mar  5 08:45:07 2019	(r344793)
@@ -104,6 +104,11 @@ v6_body()
 
 	atf_check -s exit:0 -o ignore\
 		ping6 -c 1 -b 70000 -s 65000 2001:db8:43::3
+
+	$(atf_get_srcdir)/CVE-2019-5597.py \
+		${epair_send}a \
+		2001:db8:42::1 \
+		2001:db8:43::3
 }
 
 v6_cleanup()

From owner-svn-src-all@freebsd.org  Tue Mar  5 13:21:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1EA31529F8F;
 Tue,  5 Mar 2019 13:21:08 +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)
 server-signature RSA-PSS (4096 bits)
 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 121486A7C0;
 Tue,  5 Mar 2019 13:21:08 +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 02F601CA47;
 Tue,  5 Mar 2019 13:21:08 +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 x25DL7hV078264;
 Tue, 5 Mar 2019 13:21:07 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25DL7jR078263;
 Tue, 5 Mar 2019 13:21:07 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903051321.x25DL7jR078263@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Tue, 5 Mar 2019 13:21:07 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344794 - head/sys/net
X-SVN-Group: head
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: head/sys/net
X-SVN-Commit-Revision: 344794
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 121486A7C0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 13:21:08 -0000

Author: kp
Date: Tue Mar  5 13:21:07 2019
New Revision: 344794
URL: https://svnweb.freebsd.org/changeset/base/344794

Log:
  tun: VIMAGE fix for if_tun cloner
  
  The if_tun cloner is not virtualised, but if_clone_attach() does use a
  virtualised list of cloners.
  The result is that we can't find the if_tun cloner when we try to remove
  a renamed tun interface. Virtualise the cloner, and move the final
  cleanup into a sysuninit so that we're sure this happens after all of
  the vnet_sysuninits
  
  Note that we need unit numbers to be system-unique (rather than unique
  per vnet, as is done by if_clone_simple()). The unit number is used to
  create the corresponding /dev/tunX device node, and this node must match
  with the interface.
  Switch to if_clone_advanced() so that we have control over the unit
  numbers.
  
  Reproduction scenario:
  	jail -c -n foo persist vnet
  	jexec test ifconfig tun create
  	jexec test ifconfig tun0 name wg0
  	jexec test ifconfig wg0 destroy
  
  PR:		235704
  Reviewed by:	bz, hrs, hselasky
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D19248

Modified:
  head/sys/net/if_tun.c

Modified: head/sys/net/if_tun.c
==============================================================================
--- head/sys/net/if_tun.c	Tue Mar  5 08:45:07 2019	(r344793)
+++ head/sys/net/if_tun.c	Tue Mar  5 13:21:07 2019	(r344794)
@@ -41,6 +41,7 @@
 #include <sys/uio.h>
 #include <sys/malloc.h>
 #include <sys/random.h>
+#include <sys/ctype.h>
 
 #include <net/if.h>
 #include <net/if_var.h>
@@ -105,6 +106,7 @@ struct tun_softc {
  * which is static after setup.
  */
 static struct mtx tunmtx;
+static eventhandler_tag tag;
 static const char tunname[] = "tun";
 static MALLOC_DEFINE(M_TUN, tunname, "Tunnel Interface");
 static int tundebug = 0;
@@ -129,9 +131,12 @@ static int	tunoutput(struct ifnet *, struct mbuf *,
 		    const struct sockaddr *, struct route *ro);
 static void	tunstart(struct ifnet *);
 
-static int	tun_clone_create(struct if_clone *, int, caddr_t);
-static void	tun_clone_destroy(struct ifnet *);
-static struct if_clone *tun_cloner;
+static int	tun_clone_match(struct if_clone *ifc, const char *name);
+static int	tun_clone_create(struct if_clone *, char *, size_t, caddr_t);
+static int	tun_clone_destroy(struct if_clone *, struct ifnet *);
+static struct unrhdr	*tun_unrhdr;
+VNET_DEFINE_STATIC(struct if_clone *, tun_cloner);
+#define V_tun_cloner VNET(tun_cloner)
 
 static d_open_t		tunopen;
 static d_close_t	tunclose;
@@ -173,11 +178,35 @@ static struct cdevsw tun_cdevsw = {
 };
 
 static int
-tun_clone_create(struct if_clone *ifc, int unit, caddr_t params)
+tun_clone_match(struct if_clone *ifc, const char *name)
 {
+	if (strncmp(tunname, name, 3) == 0 &&
+	    (name[3] == '\0' || isdigit(name[3])))
+		return (1);
+
+	return (0);
+}
+
+static int
+tun_clone_create(struct if_clone *ifc, char *name, size_t len, caddr_t params)
+{
 	struct cdev *dev;
-	int i;
+	int err, unit, i;
 
+	err = ifc_name2unit(name, &unit);
+	if (err != 0)
+		return (err);
+
+	if (unit != -1) {
+		/* If this unit number is still available that/s okay. */
+		if (alloc_unr_specific(tun_unrhdr, unit) == -1)
+			return (EEXIST);
+	} else {
+		unit = alloc_unr(tun_unrhdr);
+	}
+
+	snprintf(name, IFNAMSIZ, "%s%d", tunname, unit);
+
 	/* find any existing device, or allocate new unit number */
 	i = clone_create(&tunclones, &tun_cdevsw, &unit, &dev, 0);
 	if (i) {
@@ -252,6 +281,7 @@ tun_destroy(struct tun_softc *tp)
 	dev = tp->tun_dev;
 	bpfdetach(TUN2IFP(tp));
 	if_detach(TUN2IFP(tp));
+	free_unr(tun_unrhdr, TUN2IFP(tp)->if_dunit);
 	if_free(TUN2IFP(tp));
 	destroy_dev(dev);
 	seldrain(&tp->tun_rsel);
@@ -263,8 +293,8 @@ tun_destroy(struct tun_softc *tp)
 	CURVNET_RESTORE();
 }
 
-static void
-tun_clone_destroy(struct ifnet *ifp)
+static int
+tun_clone_destroy(struct if_clone *ifc, struct ifnet *ifp)
 {
 	struct tun_softc *tp = ifp->if_softc;
 
@@ -272,39 +302,64 @@ tun_clone_destroy(struct ifnet *ifp)
 	TAILQ_REMOVE(&tunhead, tp, tun_list);
 	mtx_unlock(&tunmtx);
 	tun_destroy(tp);
+
+	return (0);
 }
 
+static void
+vnet_tun_init(const void *unused __unused)
+{
+	V_tun_cloner = if_clone_advanced(tunname, 0, tun_clone_match,
+			tun_clone_create, tun_clone_destroy);
+}
+VNET_SYSINIT(vnet_tun_init, SI_SUB_PROTO_IF, SI_ORDER_ANY,
+		vnet_tun_init, NULL);
+
+static void
+vnet_tun_uninit(const void *unused __unused)
+{
+	if_clone_detach(V_tun_cloner);
+}
+VNET_SYSUNINIT(vnet_tun_uninit, SI_SUB_PROTO_IF, SI_ORDER_ANY,
+    vnet_tun_uninit, NULL);
+
+static void
+tun_uninit(const void *unused __unused)
+{
+	struct tun_softc *tp;
+
+	EVENTHANDLER_DEREGISTER(dev_clone, tag);
+	drain_dev_clone_events();
+
+	mtx_lock(&tunmtx);
+	while ((tp = TAILQ_FIRST(&tunhead)) != NULL) {
+		TAILQ_REMOVE(&tunhead, tp, tun_list);
+		mtx_unlock(&tunmtx);
+		tun_destroy(tp);
+		mtx_lock(&tunmtx);
+	}
+	mtx_unlock(&tunmtx);
+	delete_unrhdr(tun_unrhdr);
+	clone_cleanup(&tunclones);
+	mtx_destroy(&tunmtx);
+}
+SYSUNINIT(tun_uninit, SI_SUB_PROTO_IF, SI_ORDER_ANY, tun_uninit, NULL);
+
 static int
 tunmodevent(module_t mod, int type, void *data)
 {
-	static eventhandler_tag tag;
-	struct tun_softc *tp;
 
 	switch (type) {
 	case MOD_LOAD:
 		mtx_init(&tunmtx, "tunmtx", NULL, MTX_DEF);
 		clone_setup(&tunclones);
+		tun_unrhdr = new_unrhdr(0, IF_MAXUNIT, &tunmtx);
 		tag = EVENTHANDLER_REGISTER(dev_clone, tunclone, 0, 1000);
 		if (tag == NULL)
 			return (ENOMEM);
-		tun_cloner = if_clone_simple(tunname, tun_clone_create,
-		    tun_clone_destroy, 0);
 		break;
 	case MOD_UNLOAD:
-		if_clone_detach(tun_cloner);
-		EVENTHANDLER_DEREGISTER(dev_clone, tag);
-		drain_dev_clone_events();
-
-		mtx_lock(&tunmtx);
-		while ((tp = TAILQ_FIRST(&tunhead)) != NULL) {
-			TAILQ_REMOVE(&tunhead, tp, tun_list);
-			mtx_unlock(&tunmtx);
-			tun_destroy(tp);
-			mtx_lock(&tunmtx);
-		}
-		mtx_unlock(&tunmtx);
-		clone_cleanup(&tunclones);
-		mtx_destroy(&tunmtx);
+		/* See tun_uninit, so it's done after the vnet_sysuninit() */
 		break;
 	default:
 		return EOPNOTSUPP;

From owner-svn-src-all@freebsd.org  Tue Mar  5 14:47:16 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BAD3B150243F;
 Tue,  5 Mar 2019 14:47:16 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 59C646E141;
 Tue,  5 Mar 2019 14:47:16 +0000 (UTC)
 (envelope-from hselasky@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 47DA71D849;
 Tue,  5 Mar 2019 14:47:16 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x25ElG8b023741;
 Tue, 5 Mar 2019 14:47:16 GMT (envelope-from hselasky@FreeBSD.org)
Received: (from hselasky@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25ElGNR023740;
 Tue, 5 Mar 2019 14:47:16 GMT (envelope-from hselasky@FreeBSD.org)
Message-Id: <201903051447.x25ElGNR023740@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: hselasky set sender to
 hselasky@FreeBSD.org using -f
From: Hans Petter Selasky <hselasky@FreeBSD.org>
Date: Tue, 5 Mar 2019 14:47:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344795 - head/lib/libusb
X-SVN-Group: head
X-SVN-Commit-Author: hselasky
X-SVN-Commit-Paths: head/lib/libusb
X-SVN-Commit-Revision: 344795
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 59C646E141
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 14:47:16 -0000

Author: hselasky
Date: Tue Mar  5 14:47:15 2019
New Revision: 344795
URL: https://svnweb.freebsd.org/changeset/base/344795

Log:
  Fix typos in libusb.
  
  Found by:		Denis Ahrens <denis@h3q.com>
  MFC after:		1 week
  Sponsored by:		Mellanox Technologies

Modified:
  head/lib/libusb/libusb10.c

Modified: head/lib/libusb/libusb10.c
==============================================================================
--- head/lib/libusb/libusb10.c	Tue Mar  5 13:21:07 2019	(r344794)
+++ head/lib/libusb/libusb10.c	Tue Mar  5 14:47:15 2019	(r344795)
@@ -539,7 +539,7 @@ libusb_open_device_with_vid_pid(libusb_context *ctx, u
 	if (ctx == NULL)
 		return (NULL);		/* be NULL safe */
 
-	DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "libusb_open_device_width_vid_pid enter");
+	DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "libusb_open_device_with_vid_pid enter");
 
 	if ((i = libusb_get_device_list(ctx, &devs)) < 0)
 		return (NULL);
@@ -563,7 +563,7 @@ libusb_open_device_with_vid_pid(libusb_context *ctx, u
 	}
 
 	libusb_free_device_list(devs, 1);
-	DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "libusb_open_device_width_vid_pid leave");
+	DPRINTF(ctx, LIBUSB_DEBUG_FUNCTION, "libusb_open_device_with_vid_pid leave");
 	return (pdev);
 }
 

From owner-svn-src-all@freebsd.org  Tue Mar  5 15:23:29 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 02C90150473A;
 Tue,  5 Mar 2019 15:23:29 +0000 (UTC)
 (envelope-from netchild@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9BB416F6C7;
 Tue,  5 Mar 2019 15:23:28 +0000 (UTC)
 (envelope-from netchild@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 6FBE71DF19;
 Tue,  5 Mar 2019 15:23:28 +0000 (UTC)
 (envelope-from netchild@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x25FNS4A044826;
 Tue, 5 Mar 2019 15:23:28 GMT (envelope-from netchild@FreeBSD.org)
Received: (from netchild@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25FNSqQ044825;
 Tue, 5 Mar 2019 15:23:28 GMT (envelope-from netchild@FreeBSD.org)
Message-Id: <201903051523.x25FNSqQ044825@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: netchild set sender to
 netchild@FreeBSD.org using -f
From: Alexander Leidinger <netchild@FreeBSD.org>
Date: Tue, 5 Mar 2019 15:23:28 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344796 - head/tools/kerneldoc/subsys
X-SVN-Group: head
X-SVN-Commit-Author: netchild
X-SVN-Commit-Paths: head/tools/kerneldoc/subsys
X-SVN-Commit-Revision: 344796
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9BB416F6C7
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.951,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 15:23:29 -0000

Author: netchild
Date: Tue Mar  5 15:23:28 2019
New Revision: 344796
URL: https://svnweb.freebsd.org/changeset/base/344796

Log:
  remove the removed-from-source drm/drm2 parts

Deleted:
  head/tools/kerneldoc/subsys/Doxyfile-dev_drm
  head/tools/kerneldoc/subsys/Doxyfile-dev_drm2

From owner-svn-src-all@freebsd.org  Tue Mar  5 15:49:31 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BE369150573B;
 Tue,  5 Mar 2019 15:49:31 +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)
 server-signature RSA-PSS (4096 bits)
 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 419277048B;
 Tue,  5 Mar 2019 15:49:31 +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 3640F1E296;
 Tue,  5 Mar 2019 15:49:31 +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 x25FnU5h055144;
 Tue, 5 Mar 2019 15:49:30 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25FnUrt055143;
 Tue, 5 Mar 2019 15:49:30 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903051549.x25FnUrt055143@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Tue, 5 Mar 2019 15:49:30 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344797 - head/tests/sys/net
X-SVN-Group: head
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: head/tests/sys/net
X-SVN-Commit-Revision: 344797
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 419277048B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.974,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 15:49:31 -0000

Author: kp
Date: Tue Mar  5 15:49:30 2019
New Revision: 344797
URL: https://svnweb.freebsd.org/changeset/base/344797

Log:
  tun tests: Test renaming and destroying a tun interface in a vnet jail
  
  There was a problem destroying renamed tun interfaces in vnet jails. This was
  fixed in r344794. Test the previously failing scenario.
  
  PR:		235704
  MFC after:	2 weeks

Added:
  head/tests/sys/net/if_tun_test.sh   (contents, props changed)
Modified:
  head/tests/sys/net/Makefile

Modified: head/tests/sys/net/Makefile
==============================================================================
--- head/tests/sys/net/Makefile	Tue Mar  5 15:23:28 2019	(r344796)
+++ head/tests/sys/net/Makefile	Tue Mar  5 15:49:30 2019	(r344797)
@@ -7,6 +7,7 @@ BINDIR=		${TESTSDIR}
 
 ATF_TESTS_SH+=	if_lagg_test
 ATF_TESTS_SH+=	if_clone_test
+ATF_TESTS_SH+=	if_tun_test
 
 # The tests are written to be run in parallel, but doing so leads to random
 # panics.  I think it's because the kernel's list of interfaces isn't properly

Added: head/tests/sys/net/if_tun_test.sh
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tests/sys/net/if_tun_test.sh	Tue Mar  5 15:49:30 2019	(r344797)
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+. $(atf_get_srcdir)/../common/vnet.subr
+
+atf_test_case "235704" "cleanup"
+235704_head()
+{
+	atf_set descr "Test PR #235704"
+	atf_set require.user root
+}
+
+235704_body()
+{
+	vnet_init
+	vnet_mkjail one
+
+	tun=$(jexec one ifconfig tun create)
+	jexec one ifconfig ${tun} name foo
+	atf_check -s exit:0 jexec one ifconfig foo destroy
+}
+
+235704_cleanup()
+{
+	vnet_cleanup
+}
+
+atf_init_test_cases()
+{
+	atf_add_test_case "235704"
+}

From owner-svn-src-all@freebsd.org  Tue Mar  5 16:18:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 797C31506BED;
 Tue,  5 Mar 2019 16:18:07 +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)
 server-signature RSA-PSS (4096 bits)
 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 19417718A4;
 Tue,  5 Mar 2019 16:18:07 +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 09E9B1E7C8;
 Tue,  5 Mar 2019 16:18:07 +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 x25GI6SS070639;
 Tue, 5 Mar 2019 16:18:06 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25GI6jH070638;
 Tue, 5 Mar 2019 16:18:06 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051618.x25GI6jH070638@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 16:18:06 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344798 - head/lib/clang/libllvm
X-SVN-Group: head
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: head/lib/clang/libllvm
X-SVN-Commit-Revision: 344798
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 19417718A4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.97)[-0.974,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 16:18:07 -0000

Author: emaste
Date: Tue Mar  5 16:18:06 2019
New Revision: 344798
URL: https://svnweb.freebsd.org/changeset/base/344798

Log:
  libllvm: promote WithColor and xxhash to SRCS_MIN
  
  The armv6 build failed in CI due to missing symbols (from these two
  source files) in the bootstrap Clang.
  
  This affected only armv6 because other Clang-using archs are using LLD
  as the bootstrap linker, and thus include SRCS_MIW via LLD_BOOTSTRAP.
  
  Reported by:	CI, via lwhsu
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/lib/clang/libllvm/Makefile

Modified: head/lib/clang/libllvm/Makefile
==============================================================================
--- head/lib/clang/libllvm/Makefile	Tue Mar  5 15:49:30 2019	(r344797)
+++ head/lib/clang/libllvm/Makefile	Tue Mar  5 16:18:06 2019	(r344798)
@@ -866,7 +866,7 @@ SRCS_MIN+=	Support/UnicodeCaseFold.cpp
 SRCS_MIN+=	Support/Valgrind.cpp
 SRCS_MIN+=	Support/VirtualFileSystem.cpp
 SRCS_MIN+=	Support/VersionTuple.cpp
-SRCS_MIW+=	Support/WithColor.cpp
+SRCS_MIN+=	Support/WithColor.cpp
 SRCS_MIN+=	Support/YAMLParser.cpp
 SRCS_MIN+=	Support/YAMLTraits.cpp
 SRCS_MIN+=	Support/circular_raw_ostream.cpp
@@ -877,7 +877,7 @@ SRCS_MIN+=	Support/regerror.c
 SRCS_MIN+=	Support/regexec.c
 SRCS_MIN+=	Support/regfree.c
 SRCS_MIN+=	Support/regstrlcpy.c
-SRCS_MIW+=	Support/xxhash.cpp
+SRCS_MIN+=	Support/xxhash.cpp
 SRCS_MIN+=	TableGen/Error.cpp
 SRCS_MIN+=	TableGen/JSONBackend.cpp
 SRCS_MIN+=	TableGen/Main.cpp

From owner-svn-src-all@freebsd.org  Tue Mar  5 16:28:36 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B500C1507315;
 Tue,  5 Mar 2019 16:28:36 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: from mail-lj1-f196.google.com (mail-lj1-f196.google.com
 [209.85.208.196])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 4577872076;
 Tue,  5 Mar 2019 16:28:36 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: by mail-lj1-f196.google.com with SMTP id l5so8152042lje.1;
 Tue, 05 Mar 2019 08:28:36 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=LENWOBxn852TKip04JPxMrIbGvZdL9hsQNreeqNgJNI=;
 b=P1MWb74+1jee4USYc1yHtoPocHZny5qRaxsiI08dyj6M/ebfVysPCoCISJLrHfasBH
 iWCoO4novT6baHO1ExrQt4Vx5GMpVSLG+bhyfs60PwWJQfE3QkW4FEphf43meobFLkoC
 +PYrkXg+yNfbapEB8izxaIqcexb1Cb6XE9CvuFTTs8FtAeT4At41T3I79LW7jGtENVpR
 U7dpaDAQ6UOLI3g6uKFemEXIT2V5ulUVqpYMd56T7FVm8dKJzg4zB3LDffuZXRDzX3VU
 73/BdSs/NEuAoze3IpiJKDGbmzt/Y4hp/x33CzfDR+V3qxW5tWqmpHfFpF3My5VC10va
 wWyQ==
X-Gm-Message-State: APjAAAUEv1zj/Z//s04mcAZ6TX4BvlMMo6MoKEe4RAlRCrv5iFP83y6q
 xqyQpWUM049NEZf8IoORN+pmhurRMmqc6JRJvLyf3Q==
X-Google-Smtp-Source: APXvYqz4ATdxuLiRyEK8Wm/RPZvBeFcefqClsyeHhI67kTAvnzIfQO++MUUdLUjfZFrxf84kjI4uzslAZh9wxWTVJv8=
X-Received: by 2002:a2e:9dda:: with SMTP id x26mr14247384ljj.53.1551803308777; 
 Tue, 05 Mar 2019 08:28:28 -0800 (PST)
MIME-Version: 1.0
References: <201902232114.x1NLE0cH085345@repo.freebsd.org>
 <CAOtMX2hD=o+F1z1sErDuBxaL8qm+S-BDAwvLr=1z0MhmAJ8ang@mail.gmail.com>
 <CAPrugNrnKeDkqsqDtPyTCsPBK6rUsAThog1KO1u3FPCGihD3sw@mail.gmail.com>
 <CAOtMX2j5tFdapsHr3WwVAG3PjUNBuuvoZSiy9L=_7c925M=zRQ@mail.gmail.com>
 <CAPrugNrKBQr27dmPR5RgOH-9azKiO2tSEymSCrmU3J2yABL3wQ@mail.gmail.com>
In-Reply-To: <CAPrugNrKBQr27dmPR5RgOH-9azKiO2tSEymSCrmU3J2yABL3wQ@mail.gmail.com>
From: Alan Somers <asomers@freebsd.org>
Date: Tue, 5 Mar 2019 09:28:17 -0700
Message-ID: <CAOtMX2h3mrOUNh_UotnVzzmwiWcLi2Sp9utcxzXnf9-25KCy4Q@mail.gmail.com>
Subject: Re: svn commit: r344487 - in head/sys: conf gnu/gcov
To: Matthew Macy <mmacy@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 4577872076
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.955,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 16:28:37 -0000

It's not a problem with the version; they're built from the same
source.  But is there a problem with the compiler?  Can a GCC-built
kernel work with Clang-built world?

On Tue, Mar 5, 2019 at 12:54 AM Matthew Macy <mmacy@freebsd.org> wrote:
>
> World? It looks like there's a version mismatch between the kernel and modules.
>
> -M
>
> On Thu, Feb 28, 2019 at 7:11 PM Alan Somers <asomers@freebsd.org> wrote:
> >
> > On Thu, Feb 28, 2019 at 6:40 PM Matthew Macy <mmacy@freebsd.org> wrote:
> > >
> > > to config add:
> > > options LINDEBUGFS
> > > options GCOV
> > >
> > > compile kernel with gcc (otherwise it will be a no-op)
> > >
> > > sysctl debug.gcov.enable=1
> > >
> > > mount -t debugfs debugfs /sys/kernel/debug
> > >
> > > (or wherever) and the output artifacts will appear under gcov/<kernel
> > > build path> - you need to be root to see the artifacts
> > >
> > > gcov can then generate the results as it would normally from the
> > > profiling and the build time artifacts
> > >
> > > bug reports welcome
> > >
> > >
> > > -M
> >
> > Here's a bug report: I rebuilt the kernel but boot fails with this
> > error.  Do I need to rebuild world too?
> >
> > Mounting local filesystems:kldload: fdescfs.ko: lost base for reltab
> > linker_load_file: /boot/kernel/fdescfs.ko - unsupported file type
> > mount: fdescfs: Operation not supported by device
> > Mounting /etc/fstab filesystems failed, will retry after root mount hold release
> > kldload: fdescfs.ko: lost base for reltab
> > linker_load_file: /boot/kernel/fdescfs.ko - unsupported file type
> > mount: fdescfs: Operation not supported by device
> > .
> > Mounting /etc/fstab filesystems failed, startup aborted

From owner-svn-src-all@freebsd.org  Tue Mar  5 16:48:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 057B61508398;
 Tue,  5 Mar 2019 16:48:07 +0000 (UTC)
 (envelope-from cse.cem@gmail.com)
Received: from mail-it1-f173.google.com (mail-it1-f173.google.com
 [209.85.166.173])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 9749D72FA3;
 Tue,  5 Mar 2019 16:48:06 +0000 (UTC)
 (envelope-from cse.cem@gmail.com)
Received: by mail-it1-f173.google.com with SMTP id v2so5046081ith.3;
 Tue, 05 Mar 2019 08:48:06 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:reply-to
 :from:date:message-id:subject:to:cc;
 bh=TkpnsEbHqmh0wcslVdsh8A7mEcpxKLIlW8mVE1KmRm0=;
 b=j6DRuKTOsY6Gh0opFS/AVUFzGnQYcK6RQOWRwO4YYslX1pNK7Rox7xUdIIYGoz1u2Z
 +2jH+KSRDg8UomrU9phXsrszkW9r4Zp5mSrOtfcf0IrXOisTtRB8UfxTmCExT9jC3sXk
 dBtmQA3p21XnqM+wiUo1aRok/9Se/4Ronvaq28Awdtx6+R5H/FAtyWhkGBnYv+y1owBY
 dZSAyltvWIMBGAn4aS3lAfL7i7oJ7bqs3CiXTf47/N/KVry5G8jd+rGC5tMSsYdd+mic
 XNGdTM9xhWI0MsN1nXXMTGZiPF91SIMbRHsIxOq8tRwWw5oWHyC/hYHKjerd7NmSA0Ks
 liHw==
X-Gm-Message-State: APjAAAXEHe3aycgvrIXAAcobfeoxKlkECt/epZL5Ix2sDxqRvQ3lhYA6
 4+A9iWo2WiCBM3vJJSQ57b5HfkAb
X-Google-Smtp-Source: APXvYqyya4dXV4TObZ3QyoldW/zb37fZ0VP88ZHwk17yPPbtjyfev+2G4aeIOj9a0JiGobuerO/dIg==
X-Received: by 2002:a24:3655:: with SMTP id l82mr3268478itl.107.1551804477862; 
 Tue, 05 Mar 2019 08:47:57 -0800 (PST)
Received: from mail-it1-f171.google.com (mail-it1-f171.google.com.
 [209.85.166.171])
 by smtp.gmail.com with ESMTPSA id l2sm3841166ioj.55.2019.03.05.08.47.57
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 05 Mar 2019 08:47:57 -0800 (PST)
Received: by mail-it1-f171.google.com with SMTP id z131so5031944itf.5;
 Tue, 05 Mar 2019 08:47:57 -0800 (PST)
X-Received: by 2002:a24:55c9:: with SMTP id e192mr2953861itb.166.1551804477343; 
 Tue, 05 Mar 2019 08:47:57 -0800 (PST)
MIME-Version: 1.0
References: <201902232114.x1NLE0cH085345@repo.freebsd.org>
 <CAOtMX2hD=o+F1z1sErDuBxaL8qm+S-BDAwvLr=1z0MhmAJ8ang@mail.gmail.com>
 <CAPrugNrnKeDkqsqDtPyTCsPBK6rUsAThog1KO1u3FPCGihD3sw@mail.gmail.com>
 <CAOtMX2j5tFdapsHr3WwVAG3PjUNBuuvoZSiy9L=_7c925M=zRQ@mail.gmail.com>
 <CAPrugNrKBQr27dmPR5RgOH-9azKiO2tSEymSCrmU3J2yABL3wQ@mail.gmail.com>
 <CAOtMX2h3mrOUNh_UotnVzzmwiWcLi2Sp9utcxzXnf9-25KCy4Q@mail.gmail.com>
In-Reply-To: <CAOtMX2h3mrOUNh_UotnVzzmwiWcLi2Sp9utcxzXnf9-25KCy4Q@mail.gmail.com>
Reply-To: cem@freebsd.org
From: Conrad Meyer <cem@freebsd.org>
Date: Tue, 5 Mar 2019 08:47:46 -0800
X-Gmail-Original-Message-ID: <CAG6CVpV8WBuByj9eocPYoaftuMwgpsx2VAxU8CPCaj737cAEnA@mail.gmail.com>
Message-ID: <CAG6CVpV8WBuByj9eocPYoaftuMwgpsx2VAxU8CPCaj737cAEnA@mail.gmail.com>
Subject: Re: svn commit: r344487 - in head/sys: conf gnu/gcov
To: Alan Somers <asomers@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 9749D72FA3
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.98 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0]; TAGGED_FROM(0.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 16:48:07 -0000

Hi Alan,

On Tue, Mar 5, 2019 at 8:28 AM Alan Somers <asomers@freebsd.org> wrote:
> It's not a problem with the version; they're built from the same
> source.  But is there a problem with the compiler?  Can a GCC-built
> kernel work with Clang-built world?

Sure; I use this configuration all the time (at least, without gcov).

Best,
Conrad

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:11:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C7925150B65A;
 Tue,  5 Mar 2019 18:11:37 +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)
 server-signature RSA-PSS (4096 bits)
 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 671C277C20;
 Tue,  5 Mar 2019 18:11:37 +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 5C3581FAC9;
 Tue,  5 Mar 2019 18:11:37 +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 x25IBbBd032853;
 Tue, 5 Mar 2019 18:11:37 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IBbhq032852;
 Tue, 5 Mar 2019 18:11:37 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051811.x25IBbhq032852@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:11:37 +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: r344800 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344800
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 671C277C20
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:11:38 -0000

Author: emaste
Date: Tue Mar  5 18:11:36 2019
New Revision: 344800
URL: https://svnweb.freebsd.org/changeset/base/344800

Log:
  MFC r343589: freebsd-update: regenerate man page database after update
  
  These are currently not reproducible because they're built by the
  makewhatis on the freebsd-update build host, not the one in the tree.
  Regenerate after update, and later we can avoid including it in
  freebsd-update data.
  
  PR:		214545, 217389
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:10:06 2019	(r344799)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:11:36 2019	(r344800)
@@ -2907,6 +2907,17 @@ Kernel updates have been installed.  Please reboot and
 			cap_mkdb ${BASEDIR}/etc/login.conf
 		fi
 
+		# Rebuild man page databases, if necessary.
+		for D in /usr/share/man /usr/share/openssl/man; do
+			if [ ! -d ${BASEDIR}/$D ]; then
+				continue
+			fi
+			if [ -z "$(find ${BASEDIR}/$D -type f -newer ${BASEDIR}/$D/mandoc.db)" ]; then
+				continue;
+			fi
+			makewhatis ${BASEDIR}/$D
+		done
+
 		# We've finished installing the world and deleting old files
 		# which are not shared libraries.
 		touch $1/worlddone

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:10:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CCD97150B4A3;
 Tue,  5 Mar 2019 18:10:07 +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)
 server-signature RSA-PSS (4096 bits)
 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 7572277A41;
 Tue,  5 Mar 2019 18:10:07 +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 68EAB1FA7C;
 Tue,  5 Mar 2019 18:10:07 +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 x25IA7mS030435;
 Tue, 5 Mar 2019 18:10:07 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IA7BR030434;
 Tue, 5 Mar 2019 18:10:07 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051810.x25IA7BR030434@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:10: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: r344799 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344799
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7572277A41
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:10:08 -0000

Author: emaste
Date: Tue Mar  5 18:10:06 2019
New Revision: 344799
URL: https://svnweb.freebsd.org/changeset/base/344799

Log:
  MFC r343589: freebsd-update: regenerate man page database after update
  
  These are currently not reproducible because they're built by the
  makewhatis on the freebsd-update build host, not the one in the tree.
  Regenerate after update, and later we can avoid including it in
  freebsd-update data.
  
  PR:		214545, 217389
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 16:18:06 2019	(r344798)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:10:06 2019	(r344799)
@@ -2907,6 +2907,17 @@ Kernel updates have been installed.  Please reboot and
 			cap_mkdb ${BASEDIR}/etc/login.conf
 		fi
 
+		# Rebuild man page databases, if necessary.
+		for D in /usr/share/man /usr/share/openssl/man; do
+			if [ ! -d ${BASEDIR}/$D ]; then
+				continue
+			fi
+			if [ -z "$(find ${BASEDIR}/$D -type f -newer ${BASEDIR}/$D/mandoc.db)" ]; then
+				continue;
+			fi
+			makewhatis ${BASEDIR}/$D
+		done
+
 		# We've finished installing the world and deleting old files
 		# which are not shared libraries.
 		touch $1/worlddone

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:15:36 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C89ED150B779;
 Tue,  5 Mar 2019 18:15:36 +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)
 server-signature RSA-PSS (4096 bits)
 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 6B5DD80009;
 Tue,  5 Mar 2019 18:15:36 +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 5DA7B1FC1D;
 Tue,  5 Mar 2019 18:15:36 +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 x25IFavx035710;
 Tue, 5 Mar 2019 18:15:36 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IFaMb035709;
 Tue, 5 Mar 2019 18:15:36 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051815.x25IFaMb035709@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:15:36 +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: r344801 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344801
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6B5DD80009
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:15:37 -0000

Author: emaste
Date: Tue Mar  5 18:15:35 2019
New Revision: 344801
URL: https://svnweb.freebsd.org/changeset/base/344801

Log:
  MFC r343409: freebsd-update: Stop installing empty component sets
  
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reported by:	rgrimes
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:11:36 2019	(r344800)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:15:35 2019	(r344801)
@@ -2170,7 +2170,7 @@ upgrade_guess_components () {
 		    sort -k 2,2 -t ' ' > compfreq.present
 		join -t ' ' -1 2 -2 2 compfreq.present compfreq.total |
 		    while read S P T; do
-			if [ ${P} -gt `expr ${T} / 2` ]; then
+			if [ ${T} -ne 0 -a ${P} -gt `expr ${T} / 2` ]; then
 				echo ${S}
 			fi
 		    done > comp.present

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:17:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6434150B839;
 Tue,  5 Mar 2019 18:17:07 +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)
 server-signature RSA-PSS (4096 bits)
 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 5D1FD80159;
 Tue,  5 Mar 2019 18:17:07 +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 526E71FC1E;
 Tue,  5 Mar 2019 18:17:07 +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 x25IH7GA035835;
 Tue, 5 Mar 2019 18:17:07 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IH7nT035834;
 Tue, 5 Mar 2019 18:17:07 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051817.x25IH7nT035834@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:17:07 +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: r344802 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344802
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5D1FD80159
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:17:08 -0000

Author: emaste
Date: Tue Mar  5 18:17:06 2019
New Revision: 344802
URL: https://svnweb.freebsd.org/changeset/base/344802

Log:
  MFC r343409: freebsd-update: Stop installing empty component sets
  
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reported by:	rgrimes
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:15:35 2019	(r344801)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:17:06 2019	(r344802)
@@ -2170,7 +2170,7 @@ upgrade_guess_components () {
 		    sort -k 2,2 -t ' ' > compfreq.present
 		join -t ' ' -1 2 -2 2 compfreq.present compfreq.total |
 		    while read S P T; do
-			if [ ${P} -gt `expr ${T} / 2` ]; then
+			if [ ${T} -ne 0 -a ${P} -gt `expr ${T} / 2` ]; then
 				echo ${S}
 			fi
 		    done > comp.present

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:19:27 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BC6D6150B980;
 Tue,  5 Mar 2019 18:19:27 +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)
 server-signature RSA-PSS (4096 bits)
 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 5D8CA803C7;
 Tue,  5 Mar 2019 18:19:27 +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 33E901FC1F;
 Tue,  5 Mar 2019 18:19:27 +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 x25IJR6D036007;
 Tue, 5 Mar 2019 18:19:27 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IJRLc036006;
 Tue, 5 Mar 2019 18:19:27 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051819.x25IJRLc036006@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:19: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: r344803 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344803
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5D8CA803C7
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:19:28 -0000

Author: emaste
Date: Tue Mar  5 18:19:26 2019
New Revision: 344803
URL: https://svnweb.freebsd.org/changeset/base/344803

Log:
  MFC r343407: freebsd-update: open $PAGER only if necessary
  
  PR:		194547, 208497
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:17:06 2019	(r344802)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:19:26 2019	(r344803)
@@ -1921,13 +1921,11 @@ fetch_create_manifest () {
 
 	# Report to the user if any updates were avoided due to local changes
 	if [ -s modifiedfiles ]; then
-		echo
-		echo -n "The following files are affected by updates, "
-		echo "but no changes have"
-		echo -n "been downloaded because the files have been "
-		echo "modified locally:"
-		cat modifiedfiles
-	fi | $PAGER
+		cat - modifiedfiles <<- EOF | ${PAGER}
+			The folling files are affected by updates but no changes have
+			been downloaded because the files have been modified locally:
+		EOF
+	fi
 	rm modifiedfiles
 
 	# If no files will be updated, tell the user and exit
@@ -1953,30 +1951,29 @@ fetch_create_manifest () {
 
 	# Report removed files, if any
 	if [ -s files.removed ]; then
-		echo
-		echo -n "The following files will be removed "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-		cat files.removed
-	fi | $PAGER
+		cat - files.removed <<- EOF | ${PAGER}
+			The following files will be removed as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.removed
 
 	# Report added files, if any
 	if [ -s files.added ]; then
-		echo
-		echo -n "The following files will be added "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-		cat files.added
-	fi | $PAGER
+		cat - files.added <<- EOF | ${PAGER}
+			The following files will be added as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.added
 
 	# Report updated files, if any
 	if [ -s files.updated ]; then
-		echo
-		echo -n "The following files will be updated "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-
-		cat files.updated
-	fi | $PAGER
+		cat - files.updated <<- EOF | ${PAGER}
+			The following files will be updated as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.updated
 
 	# Create a directory for the install manifest.

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:20:17 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id ADCC3150BA32;
 Tue,  5 Mar 2019 18:20:17 +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)
 server-signature RSA-PSS (4096 bits)
 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 564B080543;
 Tue,  5 Mar 2019 18:20:17 +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 329951FC25;
 Tue,  5 Mar 2019 18:20:17 +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 x25IKHD6036152;
 Tue, 5 Mar 2019 18:20:17 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IKHJW036151;
 Tue, 5 Mar 2019 18:20:17 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051820.x25IKHJW036151@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:20:17 +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: r344804 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344804
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 564B080543
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:20:17 -0000

Author: emaste
Date: Tue Mar  5 18:20:16 2019
New Revision: 344804
URL: https://svnweb.freebsd.org/changeset/base/344804

Log:
  MFC r343407: freebsd-update: open $PAGER only if necessary
  
  PR:		194547, 208497
  Submitted by:   Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:19:26 2019	(r344803)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:20:16 2019	(r344804)
@@ -1921,13 +1921,11 @@ fetch_create_manifest () {
 
 	# Report to the user if any updates were avoided due to local changes
 	if [ -s modifiedfiles ]; then
-		echo
-		echo -n "The following files are affected by updates, "
-		echo "but no changes have"
-		echo -n "been downloaded because the files have been "
-		echo "modified locally:"
-		cat modifiedfiles
-	fi | $PAGER
+		cat - modifiedfiles <<- EOF | ${PAGER}
+			The folling files are affected by updates but no changes have
+			been downloaded because the files have been modified locally:
+		EOF
+	fi
 	rm modifiedfiles
 
 	# If no files will be updated, tell the user and exit
@@ -1953,30 +1951,29 @@ fetch_create_manifest () {
 
 	# Report removed files, if any
 	if [ -s files.removed ]; then
-		echo
-		echo -n "The following files will be removed "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-		cat files.removed
-	fi | $PAGER
+		cat - files.removed <<- EOF | ${PAGER}
+			The following files will be removed as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.removed
 
 	# Report added files, if any
 	if [ -s files.added ]; then
-		echo
-		echo -n "The following files will be added "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-		cat files.added
-	fi | $PAGER
+		cat - files.added <<- EOF | ${PAGER}
+			The following files will be added as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.added
 
 	# Report updated files, if any
 	if [ -s files.updated ]; then
-		echo
-		echo -n "The following files will be updated "
-		echo "as part of updating to ${RELNUM}-p${RELPATCHNUM}:"
-
-		cat files.updated
-	fi | $PAGER
+		cat - files.updated <<- EOF | ${PAGER}
+			The following files will be updated as part of updating to
+			${RELNUM}-p${RELPATCHNUM}:
+		EOF
+	fi
 	rm files.updated
 
 	# Create a directory for the install manifest.

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:23:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 19BCA150BF9C;
 Tue,  5 Mar 2019 18:23:32 +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)
 server-signature RSA-PSS (4096 bits)
 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 B312080B9F;
 Tue,  5 Mar 2019 18:23:31 +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 9E2401FDC4;
 Tue,  5 Mar 2019 18:23:31 +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 x25INVYr041324;
 Tue, 5 Mar 2019 18:23:31 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25INVVa041323;
 Tue, 5 Mar 2019 18:23:31 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051823.x25INVVa041323@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:23: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: r344805 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344805
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B312080B9F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:23:32 -0000

Author: emaste
Date: Tue Mar  5 18:23:31 2019
New Revision: 344805
URL: https://svnweb.freebsd.org/changeset/base/344805

Log:
  MFC r343412: Fix a typo/wordsmith a description modified in [MFC of r343407]

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:20:16 2019	(r344804)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:23:31 2019	(r344805)
@@ -1922,8 +1922,9 @@ fetch_create_manifest () {
 	# Report to the user if any updates were avoided due to local changes
 	if [ -s modifiedfiles ]; then
 		cat - modifiedfiles <<- EOF | ${PAGER}
-			The folling files are affected by updates but no changes have
-			been downloaded because the files have been modified locally:
+			The following files are affected by updates. No changes have
+			been downloaded, however, because the files have been modified
+			locally:
 		EOF
 	fi
 	rm modifiedfiles

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:23:56 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 42FF3150C027;
 Tue,  5 Mar 2019 18:23:56 +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)
 server-signature RSA-PSS (4096 bits)
 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 DEBF780CD3;
 Tue,  5 Mar 2019 18:23:55 +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 D348A1FDC5;
 Tue,  5 Mar 2019 18:23:55 +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 x25INtkQ041403;
 Tue, 5 Mar 2019 18:23:55 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25INtGZ041402;
 Tue, 5 Mar 2019 18:23:55 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051823.x25INtGZ041402@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:23: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: r344806 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344806
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DEBF780CD3
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:23:56 -0000

Author: emaste
Date: Tue Mar  5 18:23:55 2019
New Revision: 344806
URL: https://svnweb.freebsd.org/changeset/base/344806

Log:
  MFC r343412: Fix a typo/wordsmith a description modified in [MFC of r343407]

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:23:31 2019	(r344805)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:23:55 2019	(r344806)
@@ -1922,8 +1922,9 @@ fetch_create_manifest () {
 	# Report to the user if any updates were avoided due to local changes
 	if [ -s modifiedfiles ]; then
 		cat - modifiedfiles <<- EOF | ${PAGER}
-			The folling files are affected by updates but no changes have
-			been downloaded because the files have been modified locally:
+			The following files are affected by updates. No changes have
+			been downloaded, however, because the files have been modified
+			locally:
 		EOF
 	fi
 	rm modifiedfiles

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:26:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C23FB150C1FA;
 Tue,  5 Mar 2019 18:26:35 +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)
 server-signature RSA-PSS (4096 bits)
 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 449A080F59;
 Tue,  5 Mar 2019 18:26:35 +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 35D801FDC8;
 Tue,  5 Mar 2019 18:26:35 +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 x25IQZAL041590;
 Tue, 5 Mar 2019 18:26:35 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IQZ0r041589;
 Tue, 5 Mar 2019 18:26:35 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051826.x25IQZ0r041589@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:26:35 +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: r344807 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344807
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 449A080F59
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:26:35 -0000

Author: emaste
Date: Tue Mar  5 18:26:34 2019
New Revision: 344807
URL: https://svnweb.freebsd.org/changeset/base/344807

Log:
  MFC r343411: freebsd-update: Clarify unsupported upgrade message
  
  PR:		204115
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:23:55 2019	(r344806)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:26:34 2019	(r344807)
@@ -994,7 +994,16 @@ fetch_pick_server () {
 
 # Have we run out of mirrors?
 	if [ `wc -l < serverlist` -eq 0 ]; then
-		echo "No mirrors remaining, giving up."
+		cat <<- EOF
+			No mirrors remaining, giving up.
+
+			This may be because upgrading from this platform (${ARCH})
+			or release (${RELNUM}) is unsupported by `basename $0`. Only
+			platforms with Tier 1 support can be upgraded by `basename $0`.
+			See https://www.freebsd.org/platforms/index.html for more info.
+
+			If unsupported, FreeBSD must be upgraded by source.
+		EOF
 		return 1
 	fi
 

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:27:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 86F23150C2CE;
 Tue,  5 Mar 2019 18:27:30 +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)
 server-signature RSA-PSS (4096 bits)
 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 2B8CA810D0;
 Tue,  5 Mar 2019 18:27:30 +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 198121FDCA;
 Tue,  5 Mar 2019 18:27:30 +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 x25IRTdY041701;
 Tue, 5 Mar 2019 18:27:29 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IRTgK041700;
 Tue, 5 Mar 2019 18:27:29 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051827.x25IRTgK041700@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:27:29 +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: r344808 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344808
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2B8CA810D0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:27:30 -0000

Author: emaste
Date: Tue Mar  5 18:27:29 2019
New Revision: 344808
URL: https://svnweb.freebsd.org/changeset/base/344808

Log:
  MFC r343411: freebsd-update: Clarify unsupported upgrade message
  
  PR:		204115
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:26:34 2019	(r344807)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:27:29 2019	(r344808)
@@ -994,7 +994,16 @@ fetch_pick_server () {
 
 # Have we run out of mirrors?
 	if [ `wc -l < serverlist` -eq 0 ]; then
-		echo "No mirrors remaining, giving up."
+		cat <<- EOF
+			No mirrors remaining, giving up.
+
+			This may be because upgrading from this platform (${ARCH})
+			or release (${RELNUM}) is unsupported by `basename $0`. Only
+			platforms with Tier 1 support can be upgraded by `basename $0`.
+			See https://www.freebsd.org/platforms/index.html for more info.
+
+			If unsupported, FreeBSD must be upgraded by source.
+		EOF
 		return 1
 	fi
 

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:29:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7FCC8150C4B4;
 Tue,  5 Mar 2019 18:29:26 +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)
 server-signature RSA-PSS (4096 bits)
 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 24C4A81373;
 Tue,  5 Mar 2019 18:29:26 +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 1AD7D1FDCD;
 Tue,  5 Mar 2019 18:29:26 +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 x25ITPgN041863;
 Tue, 5 Mar 2019 18:29:25 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25ITP9j041862;
 Tue, 5 Mar 2019 18:29:25 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051829.x25ITP9j041862@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:29: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: r344809 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344809
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 24C4A81373
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:29:26 -0000

Author: emaste
Date: Tue Mar  5 18:29:25 2019
New Revision: 344809
URL: https://svnweb.freebsd.org/changeset/base/344809

Log:
  MFC r343270: freebsd-update: Update /etc/passwd after password db changes
  
  Add -p to pwd_mkdb in order to ensure password db changes are also
  included in /etc/passwd.
  
  PR:		165954, 232921, 229487
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	jilles
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:27:29 2019	(r344808)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:29:25 2019	(r344809)
@@ -2903,10 +2903,11 @@ Kernel updates have been installed.  Please reboot and
 		install_from_index INDEX-NEW || return 1
 		install_delete INDEX-OLD INDEX-NEW || return 1
 
-		# Rebuild /etc/spwd.db and /etc/pwd.db if necessary.
+		# Rebuild generated pwd files.
 		if [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/spwd.db ] ||
-		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/pwd.db ]; then
-			pwd_mkdb -d ${BASEDIR}/etc ${BASEDIR}/etc/master.passwd
+		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/pwd.db ] ||
+		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/passwd ]; then
+			pwd_mkdb -d ${BASEDIR}/etc -p ${BASEDIR}/etc/master.passwd
 		fi
 
 		# Rebuild /etc/login.conf.db if necessary.

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:30:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31F48150C5E1;
 Tue,  5 Mar 2019 18:30:44 +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)
 server-signature RSA-PSS (4096 bits)
 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 CB8018157B;
 Tue,  5 Mar 2019 18:30:43 +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 C08FE1FDDF;
 Tue,  5 Mar 2019 18:30:43 +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 x25IUhSt042044;
 Tue, 5 Mar 2019 18:30:43 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IUhYC042043;
 Tue, 5 Mar 2019 18:30:43 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051830.x25IUhYC042043@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:30: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: r344810 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344810
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CB8018157B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:30:44 -0000

Author: emaste
Date: Tue Mar  5 18:30:43 2019
New Revision: 344810
URL: https://svnweb.freebsd.org/changeset/base/344810

Log:
  MFC r343270: freebsd-update: Update /etc/passwd after password db changes
  
  Add -p to pwd_mkdb in order to ensure password db changes are also
  included in /etc/passwd.
  
  PR:		165954, 232921, 229487
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	jilles
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:29:25 2019	(r344809)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:30:43 2019	(r344810)
@@ -2903,10 +2903,11 @@ Kernel updates have been installed.  Please reboot and
 		install_from_index INDEX-NEW || return 1
 		install_delete INDEX-OLD INDEX-NEW || return 1
 
-		# Rebuild /etc/spwd.db and /etc/pwd.db if necessary.
+		# Rebuild generated pwd files.
 		if [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/spwd.db ] ||
-		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/pwd.db ]; then
-			pwd_mkdb -d ${BASEDIR}/etc ${BASEDIR}/etc/master.passwd
+		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/pwd.db ] ||
+		    [ ${BASEDIR}/etc/master.passwd -nt ${BASEDIR}/etc/passwd ]; then
+			pwd_mkdb -d ${BASEDIR}/etc -p ${BASEDIR}/etc/master.passwd
 		fi
 
 		# Rebuild /etc/login.conf.db if necessary.

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:52:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97051150D516;
 Tue,  5 Mar 2019 18:52:14 +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)
 server-signature RSA-PSS (4096 bits)
 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 3D3638283A;
 Tue,  5 Mar 2019 18:52:14 +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 30F0A20305;
 Tue,  5 Mar 2019 18:52:14 +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 x25IqEpY056307;
 Tue, 5 Mar 2019 18:52:14 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IqEGK056296;
 Tue, 5 Mar 2019 18:52:14 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051852.x25IqEGK056296@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:52:14 +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: r344811 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344811
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3D3638283A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:52:14 -0000

Author: emaste
Date: Tue Mar  5 18:52:13 2019
New Revision: 344811
URL: https://svnweb.freebsd.org/changeset/base/344811

Log:
  MFC r343152: freebsd-update: Use BASEDIR when checking for src component
  
  src could potentially be installed under the based dir
  and not under the root or vice versa.
  
  PR:		224048
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:30:43 2019	(r344810)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:52:13 2019	(r344811)
@@ -221,7 +221,7 @@ config_KeepModifiedMetadata () {
 config_Components () {
 	for C in $@; do
 		if [ "$C" = "src" ]; then
-			if [ -e /usr/src/COPYRIGHT ]; then
+			if [ -e "${BASEDIR}/usr/src/COPYRIGHT" ]; then
 				COMPONENTS="${COMPONENTS} ${C}"
 			else
 				echo "src component not installed, skipped"

From owner-svn-src-all@freebsd.org  Tue Mar  5 18:54:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D9208150D6F9;
 Tue,  5 Mar 2019 18:54:47 +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)
 server-signature RSA-PSS (4096 bits)
 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 7D7DB82BEE;
 Tue,  5 Mar 2019 18:54:47 +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 70BF520331;
 Tue,  5 Mar 2019 18:54:47 +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 x25IslpH057505;
 Tue, 5 Mar 2019 18:54:47 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25IslAW057504;
 Tue, 5 Mar 2019 18:54:47 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051854.x25IslAW057504@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 18:54:47 +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: r344813 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344813
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7D7DB82BEE
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 18:54:48 -0000

Author: emaste
Date: Tue Mar  5 18:54:47 2019
New Revision: 344813
URL: https://svnweb.freebsd.org/changeset/base/344813

Log:
  freebsd-update: Use BASEDIR when checking for src componentfreebsd-update: Use BMFC r343152: freebsd-update: Use BASEDIR when checking for src component
  
  src could potentially be installed under the based dir
  and not under the root or vice versa.
  
  PR:		224048
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Reviewed by:	delphij
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:53:28 2019	(r344812)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:54:47 2019	(r344813)
@@ -221,7 +221,7 @@ config_KeepModifiedMetadata () {
 config_Components () {
 	for C in $@; do
 		if [ "$C" = "src" ]; then
-			if [ -e /usr/src/COPYRIGHT ]; then
+			if [ -e "${BASEDIR}/usr/src/COPYRIGHT" ]; then
 				COMPONENTS="${COMPONENTS} ${C}"
 			else
 				echo "src component not installed, skipped"

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:01:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83DA2150DEE1;
 Tue,  5 Mar 2019 19:01:58 +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)
 server-signature RSA-PSS (4096 bits)
 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 24DAA831C2;
 Tue,  5 Mar 2019 19:01:58 +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 1AC93203B0;
 Tue,  5 Mar 2019 19:01:58 +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 x25J1vS4060256;
 Tue, 5 Mar 2019 19:01:57 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25J1vFl060255;
 Tue, 5 Mar 2019 19:01:57 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051901.x25J1vFl060255@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:01:57 +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: r344814 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344814
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 24DAA831C2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:01:58 -0000

Author: emaste
Date: Tue Mar  5 19:01:57 2019
New Revision: 344814
URL: https://svnweb.freebsd.org/changeset/base/344814

Log:
  MFC freebsd-update: Clarify unsupported release upgrade error message
  
  MFC r343122:
  
  freebsd-update: Clarify unsupported release upgrade error message
  
  Notify users that upgrading from -CURRENT or -STABLE is unsupported by
  freebsd-update.
  
  Also ensure --currently-running provides a correctly formatted release
  (as done by -r).
  
  Reported by:	yuri
  Reviewed by:	bcran
  
  MFC r343268:
  
  frebsd-update: fix --currently-running after r343122
  
  Reported by:	Brandon Schneider
  
  MFC rr343271:
  
  freebsd-update: Allow upgrade from pre-release builds
  
  Update r343122 to include -ALPHA, -BETA and -RC releases as
  upgrade-able via freebsd-update.
  
  Reported by:	delphij, des
  Reviewed by:	delphij
  
  PR:		234771
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 18:54:47 2019	(r344813)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 19:01:57 2019	(r344814)
@@ -304,6 +304,15 @@ config_TargetRelease () {
 	fi
 }
 
+# Pretend current release is FreeBSD $1
+config_SourceRelease () {
+	UNAME_r=$1
+	if echo ${UNAME_r} | grep -qE '^[0-9.]+$'; then
+		UNAME_r="${UNAME_r}-RELEASE"
+	fi
+	export UNAME_r
+}
+
 # Define what happens to output of utilities
 config_VerboseLevel () {
 	if [ -z ${VERBOSELEVEL} ]; then
@@ -442,7 +451,8 @@ parse_cmdline () {
 			NOTTYOK=1
 			;;
 		--currently-running)
-			shift; export UNAME_r="$1"
+			shift
+			config_SourceRelease $1 || usage
 			;;
 
 		# Configuration file equivalents
@@ -657,6 +667,24 @@ fetchupgrade_check_params () {
 	ARCH=`uname -m`
 	FETCHDIR=${RELNUM}/${ARCH}
 	PATCHDIR=${RELNUM}/${ARCH}/bp
+
+	# Disallow upgrade from a version that is not a release
+	case ${RELNUM} in
+		*-RELEASE | *-ALPHA*  | *-BETA* | *-RC*)
+			;;
+		*)
+			echo -n "`basename $0`: "
+			cat <<- EOF
+				Cannot upgrade from a version that is not a release
+				(including alpha, beta and release candidates)
+				using `basename $0`. Instead, FreeBSD can be directly
+				upgraded by source or upgraded to a RELEASE/RELENG version
+				prior to running `basename $0`.
+				Currently running: ${RELNUM}
+			EOF
+			exit 1
+			;;
+	esac
 
 	# Figure out what directory contains the running kernel
 	BOOTFILE=`sysctl -n kern.bootfile`

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:07:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1C0E8150E309;
 Tue,  5 Mar 2019 19:07:47 +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)
 server-signature RSA-PSS (4096 bits)
 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 B6574836B6;
 Tue,  5 Mar 2019 19:07:46 +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 91590204FD;
 Tue,  5 Mar 2019 19:07:46 +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 x25J7kYc063232;
 Tue, 5 Mar 2019 19:07:46 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25J7keq063231;
 Tue, 5 Mar 2019 19:07:46 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051907.x25J7keq063231@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:07: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: r344815 - stable/11/usr.sbin/freebsd-update
X-SVN-Group: stable-11
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/11/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344815
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B6574836B6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:07:47 -0000

Author: emaste
Date: Tue Mar  5 19:07:46 2019
New Revision: 344815
URL: https://svnweb.freebsd.org/changeset/base/344815

Log:
  MFC freebsd-update: Clarify unsupported release upgrade error message
  
  MFC r343122:
  
  freebsd-update: Clarify unsupported release upgrade error message
  
  Notify users that upgrading from -CURRENT or -STABLE is unsupported by
  freebsd-update.
  
  Also ensure --currently-running provides a correctly formatted release
  (as done by -r).
  
  Reported by:	yuri
  Reviewed by:	bcran
  
  MFC r343268:
  
  frebsd-update: fix --currently-running after r343122
  
  Reported by:	Brandon Schneider
  
  MFC r343271:
  
  freebsd-update: Allow upgrade from pre-release builds
  
  Update r343122 to include -ALPHA, -BETA and -RC releases as
  upgrade-able via freebsd-update.
  
  Reported by:	delphij, des
  Reviewed by:	delphij
  
  MFC r343410:
  
  freebsd-update: fix style from r343271 change
  
  PR:		234771
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/11/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 19:01:57 2019	(r344814)
+++ stable/11/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 19:07:46 2019	(r344815)
@@ -304,6 +304,15 @@ config_TargetRelease () {
 	fi
 }
 
+# Pretend current release is FreeBSD $1
+config_SourceRelease () {
+	UNAME_r=$1
+	if echo ${UNAME_r} | grep -qE '^[0-9.]+$'; then
+		UNAME_r="${UNAME_r}-RELEASE"
+	fi
+	export UNAME_r
+}
+
 # Define what happens to output of utilities
 config_VerboseLevel () {
 	if [ -z ${VERBOSELEVEL} ]; then
@@ -442,7 +451,8 @@ parse_cmdline () {
 			NOTTYOK=1
 			;;
 		--currently-running)
-			shift; export UNAME_r="$1"
+			shift
+			config_SourceRelease $1 || usage
 			;;
 
 		# Configuration file equivalents
@@ -657,6 +667,24 @@ fetchupgrade_check_params () {
 	ARCH=`uname -m`
 	FETCHDIR=${RELNUM}/${ARCH}
 	PATCHDIR=${RELNUM}/${ARCH}/bp
+
+	# Disallow upgrade from a version that is not a release
+	case ${RELNUM} in
+	*-RELEASE | *-ALPHA*  | *-BETA* | *-RC*)
+		;;
+	*)
+		echo -n "`basename $0`: "
+		cat <<- EOF
+			Cannot upgrade from a version that is not a release
+			(including alpha, beta and release candidates)
+			using `basename $0`. Instead, FreeBSD can be directly
+			upgraded by source or upgraded to a RELEASE/RELENG version
+			prior to running `basename $0`.
+			Currently running: ${RELNUM}
+		EOF
+		exit 1
+		;;
+	esac
 
 	# Figure out what directory contains the running kernel
 	BOOTFILE=`sysctl -n kern.bootfile`

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:08:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 846A9150E3A5;
 Tue,  5 Mar 2019 19:08:38 +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)
 server-signature RSA-PSS (4096 bits)
 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 2874B83817;
 Tue,  5 Mar 2019 19:08:38 +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 1C58D20509;
 Tue,  5 Mar 2019 19:08:38 +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 x25J8bK6063345;
 Tue, 5 Mar 2019 19:08:37 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25J8bva063344;
 Tue, 5 Mar 2019 19:08:37 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051908.x25J8bva063344@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:08:37 +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: r344816 - stable/12/usr.sbin/freebsd-update
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344816
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2874B83817
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:08:38 -0000

Author: emaste
Date: Tue Mar  5 19:08:37 2019
New Revision: 344816
URL: https://svnweb.freebsd.org/changeset/base/344816

Log:
  MFC r343410:
  
  freebsd-update: fix style from r343271 change
  
  PR:		234771
  Submitted by:	Gerald Aryeetey <aryeeteygerald_rogers.com>
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/usr.sbin/freebsd-update/freebsd-update.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/freebsd-update/freebsd-update.sh
==============================================================================
--- stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 19:07:46 2019	(r344815)
+++ stable/12/usr.sbin/freebsd-update/freebsd-update.sh	Tue Mar  5 19:08:37 2019	(r344816)
@@ -670,20 +670,20 @@ fetchupgrade_check_params () {
 
 	# Disallow upgrade from a version that is not a release
 	case ${RELNUM} in
-		*-RELEASE | *-ALPHA*  | *-BETA* | *-RC*)
-			;;
-		*)
-			echo -n "`basename $0`: "
-			cat <<- EOF
-				Cannot upgrade from a version that is not a release
-				(including alpha, beta and release candidates)
-				using `basename $0`. Instead, FreeBSD can be directly
-				upgraded by source or upgraded to a RELEASE/RELENG version
-				prior to running `basename $0`.
-				Currently running: ${RELNUM}
-			EOF
-			exit 1
-			;;
+	*-RELEASE | *-ALPHA*  | *-BETA* | *-RC*)
+		;;
+	*)
+		echo -n "`basename $0`: "
+		cat <<- EOF
+			Cannot upgrade from a version that is not a release
+			(including alpha, beta and release candidates)
+			using `basename $0`. Instead, FreeBSD can be directly
+			upgraded by source or upgraded to a RELEASE/RELENG version
+			prior to running `basename $0`.
+			Currently running: ${RELNUM}
+		EOF
+		exit 1
+		;;
 	esac
 
 	# Figure out what directory contains the running kernel

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:12:52 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD0D1150E6D4;
 Tue,  5 Mar 2019 19:12:52 +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)
 server-signature RSA-PSS (4096 bits)
 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 6464083C8E;
 Tue,  5 Mar 2019 19:12:52 +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 56A73206CA;
 Tue,  5 Mar 2019 19:12:52 +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 x25JCqrG068142;
 Tue, 5 Mar 2019 19:12:52 GMT (envelope-from erj@FreeBSD.org)
Received: (from erj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25JCqOj068140;
 Tue, 5 Mar 2019 19:12:52 GMT (envelope-from erj@FreeBSD.org)
Message-Id: <201903051912.x25JCqOj068140@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: erj set sender to erj@FreeBSD.org
 using -f
From: Eric Joyner <erj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:12:52 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344817 - in head/sys: dev/e1000 net
X-SVN-Group: head
X-SVN-Commit-Author: erj
X-SVN-Commit-Paths: in head/sys: dev/e1000 net
X-SVN-Commit-Revision: 344817
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6464083C8E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:12:53 -0000

Author: erj
Date: Tue Mar  5 19:12:51 2019
New Revision: 344817
URL: https://svnweb.freebsd.org/changeset/base/344817

Log:
  Remove references to CONTIGMALLOC_WORKS in iflib and em
  
  From Jake:
  "The iflib_fl_setup() function tries to pick various buffer sizes based
  on the max_frame_size value defined by the parent driver. However, this
  code was wrapped under CONTIGMALLOC_WORKS, which was never actually
  defined anywhere.
  
  This same code pattern was used in if_em.c, likely trying to match
  what iflib uses.
  
  Since CONTIGMALLOC_WORKS is not defined, remove this dead code from
  iflib_fl_setup and if_em.c
  
  Given that various iflib drivers appear to be using a similar
  calculation, it might be worth making this buffer size a value that the
  driver can peek at in the future."
  
  Submitted by:	Jacob Keller <jacob.e.keller@intel.com>
  Reviewed by:	shurd@
  MFC after:	1 week
  Sponsored by:	Intel Corporation
  Differential Revision:	https://reviews.freebsd.org/D19199

Modified:
  head/sys/dev/e1000/if_em.c
  head/sys/net/iflib.c

Modified: head/sys/dev/e1000/if_em.c
==============================================================================
--- head/sys/dev/e1000/if_em.c	Tue Mar  5 19:08:37 2019	(r344816)
+++ head/sys/dev/e1000/if_em.c	Tue Mar  5 19:12:51 2019	(r344817)
@@ -1276,15 +1276,8 @@ em_if_init(if_ctx_t ctx)
 	 */
 	if (adapter->hw.mac.max_frame_size <= 2048)
 		adapter->rx_mbuf_sz = MCLBYTES;
-#ifndef CONTIGMALLOC_WORKS
 	else
 		adapter->rx_mbuf_sz = MJUMPAGESIZE;
-#else
-	else if (adapter->hw.mac.max_frame_size <= 4096)
-		adapter->rx_mbuf_sz = MJUMPAGESIZE;
-	else
-		adapter->rx_mbuf_sz = MJUM9BYTES;
-#endif
 	em_initialize_receive_unit(ctx);
 
 	/* Use real VLAN Filter support? */

Modified: head/sys/net/iflib.c
==============================================================================
--- head/sys/net/iflib.c	Tue Mar  5 19:08:37 2019	(r344816)
+++ head/sys/net/iflib.c	Tue Mar  5 19:12:51 2019	(r344817)
@@ -2187,17 +2187,8 @@ iflib_fl_setup(iflib_fl_t fl)
 	 */
 	if (sctx->isc_max_frame_size <= 2048)
 		fl->ifl_buf_size = MCLBYTES;
-#ifndef CONTIGMALLOC_WORKS
 	else
 		fl->ifl_buf_size = MJUMPAGESIZE;
-#else
-	else if (sctx->isc_max_frame_size <= 4096)
-		fl->ifl_buf_size = MJUMPAGESIZE;
-	else if (sctx->isc_max_frame_size <= 9216)
-		fl->ifl_buf_size = MJUM9BYTES;
-	else
-		fl->ifl_buf_size = MJUM16BYTES;
-#endif
 	if (fl->ifl_buf_size > ctx->ifc_max_fl_buf_size)
 		ctx->ifc_max_fl_buf_size = fl->ifl_buf_size;
 	fl->ifl_cltype = m_gettype(fl->ifl_buf_size);

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:17:25 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A6D3150E81C;
 Tue,  5 Mar 2019 19:17:25 +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)
 server-signature RSA-PSS (4096 bits)
 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 0CDCC83EAF;
 Tue,  5 Mar 2019 19:17:25 +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 F317F206EC;
 Tue,  5 Mar 2019 19:17:24 +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 x25JHOWN068420;
 Tue, 5 Mar 2019 19:17:24 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25JHOuV068419;
 Tue, 5 Mar 2019 19:17:24 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903051917.x25JHOuV068419@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:17:24 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344818 - head/usr.sbin/freebsd-update
X-SVN-Group: head
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: head/usr.sbin/freebsd-update
X-SVN-Commit-Revision: 344818
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0CDCC83EAF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.978,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:17:25 -0000

Author: emaste
Date: Tue Mar  5 19:17:24 2019
New Revision: 344818
URL: https://svnweb.freebsd.org/changeset/base/344818

Log:
  freebsd-update.8: update example to contemporary versions
  
  PR:		235761
  Reported by:	linimon
  MFC after:	1 week

Modified:
  head/usr.sbin/freebsd-update/freebsd-update.8

Modified: head/usr.sbin/freebsd-update/freebsd-update.8
==============================================================================
--- head/usr.sbin/freebsd-update/freebsd-update.8	Tue Mar  5 19:12:51 2019	(r344817)
+++ head/usr.sbin/freebsd-update/freebsd-update.8	Tue Mar  5 19:17:24 2019	(r344818)
@@ -59,13 +59,13 @@ by the
 .Fx
 Release Engineering Team, e.g.,
 .Fx
-10.3-RELEASE and
+11.2-RELEASE and
 .Fx
-11.0-RELEASE, but not
+12.0-RELEASE, but not
 .Fx
-10.3-STABLE or
+11.2-STABLE or
 .Fx
-12-CURRENT.
+13.0-CURRENT.
 .Sh OPTIONS
 The following options are supported:
 .Bl -tag -width "-r newrelease"

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:37:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AA3A8150F607;
 Tue,  5 Mar 2019 19:37:07 +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)
 server-signature RSA-PSS (4096 bits)
 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 4A44A84F44;
 Tue,  5 Mar 2019 19:37:07 +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 37E1320A4D;
 Tue,  5 Mar 2019 19:37: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 x25Jb7fb079187;
 Tue, 5 Mar 2019 19:37:07 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25Jb7jB079186;
 Tue, 5 Mar 2019 19:37:07 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903051937.x25Jb7jB079186@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:37: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: r344819 - stable/12/sys/kern
X-SVN-Group: stable-12
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: stable/12/sys/kern
X-SVN-Commit-Revision: 344819
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4A44A84F44
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:37:07 -0000

Author: markj
Date: Tue Mar  5 19:37:06 2019
New Revision: 344819
URL: https://svnweb.freebsd.org/changeset/base/344819

Log:
  MFC r344278:
  Move a racy assertion in filt_pipewrite().
  
  PR:	235640

Modified:
  stable/12/sys/kern/sys_pipe.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/kern/sys_pipe.c
==============================================================================
--- stable/12/sys/kern/sys_pipe.c	Tue Mar  5 19:17:24 2019	(r344818)
+++ stable/12/sys/kern/sys_pipe.c	Tue Mar  5 19:37:06 2019	(r344819)
@@ -1743,15 +1743,19 @@ static int
 filt_pipewrite(struct knote *kn, long hint)
 {
 	struct pipe *wpipe;
-   
+
+	/*
+	 * If this end of the pipe is closed, the knote was removed from the
+	 * knlist and the list lock (i.e., the pipe lock) is therefore not held.
+	 */
 	wpipe = kn->kn_hook;
-	PIPE_LOCK_ASSERT(wpipe, MA_OWNED);
 	if (wpipe->pipe_present != PIPE_ACTIVE ||
 	    (wpipe->pipe_state & PIPE_EOF)) {
 		kn->kn_data = 0;
 		kn->kn_flags |= EV_EOF;
 		return (1);
 	}
+	PIPE_LOCK_ASSERT(wpipe, MA_OWNED);
 	kn->kn_data = (wpipe->pipe_buffer.size > 0) ?
 	    (wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) : PIPE_BUF;
 	if (wpipe->pipe_state & PIPE_DIRECTW)

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:39:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC7E5150F759;
 Tue,  5 Mar 2019 19:39:14 +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)
 server-signature RSA-PSS (4096 bits)
 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 7E09F8511D;
 Tue,  5 Mar 2019 19:39:14 +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 62A9420A4F;
 Tue,  5 Mar 2019 19:39:14 +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 x25JdEs6079340;
 Tue, 5 Mar 2019 19:39:14 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25JdEoe079339;
 Tue, 5 Mar 2019 19:39:14 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903051939.x25JdEoe079339@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:39:14 +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: r344820 - stable/11/sys/kern
X-SVN-Group: stable-11
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: stable/11/sys/kern
X-SVN-Commit-Revision: 344820
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7E09F8511D
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:39:15 -0000

Author: markj
Date: Tue Mar  5 19:39:13 2019
New Revision: 344820
URL: https://svnweb.freebsd.org/changeset/base/344820

Log:
  MFC r344278:
  Move a racy assertion in filt_pipewrite().
  
  PR:	235640

Modified:
  stable/11/sys/kern/sys_pipe.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/kern/sys_pipe.c
==============================================================================
--- stable/11/sys/kern/sys_pipe.c	Tue Mar  5 19:37:06 2019	(r344819)
+++ stable/11/sys/kern/sys_pipe.c	Tue Mar  5 19:39:13 2019	(r344820)
@@ -1809,15 +1809,19 @@ static int
 filt_pipewrite(struct knote *kn, long hint)
 {
 	struct pipe *wpipe;
-   
+
+	/*
+	 * If this end of the pipe is closed, the knote was removed from the
+	 * knlist and the list lock (i.e., the pipe lock) is therefore not held.
+	 */
 	wpipe = kn->kn_hook;
-	PIPE_LOCK_ASSERT(wpipe, MA_OWNED);
 	if (wpipe->pipe_present != PIPE_ACTIVE ||
 	    (wpipe->pipe_state & PIPE_EOF)) {
 		kn->kn_data = 0;
 		kn->kn_flags |= EV_EOF;
 		return (1);
 	}
+	PIPE_LOCK_ASSERT(wpipe, MA_OWNED);
 	kn->kn_data = (wpipe->pipe_buffer.size > 0) ?
 	    (wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) : PIPE_BUF;
 	if (wpipe->pipe_state & PIPE_DIRECTW)

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:41:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 26297150FA0F;
 Tue,  5 Mar 2019 19:41: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)
 server-signature RSA-PSS (4096 bits)
 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 B9B3085368;
 Tue,  5 Mar 2019 19:41: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 AF55720B88;
 Tue,  5 Mar 2019 19:41: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 x25Jf8sN081093;
 Tue, 5 Mar 2019 19:41:08 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25Jf8gd081092;
 Tue, 5 Mar 2019 19:41:08 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903051941.x25Jf8gd081092@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:41: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: r344821 - stable/12/sys/geom/concat
X-SVN-Group: stable-12
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: stable/12/sys/geom/concat
X-SVN-Commit-Revision: 344821
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B9B3085368
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:41:09 -0000

Author: markj
Date: Tue Mar  5 19:41:08 2019
New Revision: 344821
URL: https://svnweb.freebsd.org/changeset/base/344821

Log:
  MFC r344600:
  Add a missing return statement to g_concat_kernel_dump().

Modified:
  stable/12/sys/geom/concat/g_concat.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/geom/concat/g_concat.c
==============================================================================
--- stable/12/sys/geom/concat/g_concat.c	Tue Mar  5 19:39:13 2019	(r344820)
+++ stable/12/sys/geom/concat/g_concat.c	Tue Mar  5 19:41:08 2019	(r344821)
@@ -238,8 +238,10 @@ g_concat_kernel_dump(struct bio *bp)
 		    sc->sc_disks[i].d_end > gkd->offset)
 			break;
 	}
-	if (i == sc->sc_ndisks)
+	if (i == sc->sc_ndisks) {
 		g_io_deliver(bp, EOPNOTSUPP);
+		return;
+	}
 	disk = &sc->sc_disks[i];
 	gkd->offset -= disk->d_start;
 	if (gkd->length > disk->d_end - disk->d_start - gkd->offset)

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:41:33 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68DEF150FA97;
 Tue,  5 Mar 2019 19:41:33 +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)
 server-signature RSA-PSS (4096 bits)
 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 1102C854E2;
 Tue,  5 Mar 2019 19:41:33 +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 0656D20BAC;
 Tue,  5 Mar 2019 19:41:33 +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 x25JfWug081901;
 Tue, 5 Mar 2019 19:41:32 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25JfWEv081900;
 Tue, 5 Mar 2019 19:41:32 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903051941.x25JfWEv081900@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:41: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: r344822 - stable/11/sys/geom/concat
X-SVN-Group: stable-11
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: stable/11/sys/geom/concat
X-SVN-Commit-Revision: 344822
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1102C854E2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.975,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:41:33 -0000

Author: markj
Date: Tue Mar  5 19:41:32 2019
New Revision: 344822
URL: https://svnweb.freebsd.org/changeset/base/344822

Log:
  MFC r344600:
  Add a missing return statement to g_concat_kernel_dump().

Modified:
  stable/11/sys/geom/concat/g_concat.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/geom/concat/g_concat.c
==============================================================================
--- stable/11/sys/geom/concat/g_concat.c	Tue Mar  5 19:41:08 2019	(r344821)
+++ stable/11/sys/geom/concat/g_concat.c	Tue Mar  5 19:41:32 2019	(r344822)
@@ -219,8 +219,10 @@ g_concat_kernel_dump(struct bio *bp)
 		    sc->sc_disks[i].d_end > gkd->offset)
 			break;
 	}
-	if (i == sc->sc_ndisks)
+	if (i == sc->sc_ndisks) {
 		g_io_deliver(bp, EOPNOTSUPP);
+		return;
+	}
 	disk = &sc->sc_disks[i];
 	gkd->offset -= disk->d_start;
 	if (gkd->length > disk->d_end - disk->d_start - gkd->offset)

From owner-svn-src-all@freebsd.org  Tue Mar  5 19:45:39 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 288C6150FCB0;
 Tue,  5 Mar 2019 19:45:39 +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)
 server-signature RSA-PSS (4096 bits)
 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 C15038598A;
 Tue,  5 Mar 2019 19:45: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 B694B20C01;
 Tue,  5 Mar 2019 19:45: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 x25JjcY8084798;
 Tue, 5 Mar 2019 19:45:38 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25Jjc8t084792;
 Tue, 5 Mar 2019 19:45:38 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903051945.x25Jjc8t084792@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 19:45:37 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344823 - in head: sys/kern sys/sys usr.bin/procstat
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: in head: sys/kern sys/sys usr.bin/procstat
X-SVN-Commit-Revision: 344823
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C15038598A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.978,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 19:45:39 -0000

Author: markj
Date: Tue Mar  5 19:45:37 2019
New Revision: 344823
URL: https://svnweb.freebsd.org/changeset/base/344823

Log:
  Show wiring state of map entries in procstat -v.
  
  Note that only entries wired by userspace are shown as such.  In
  particular, entries transiently wired by sysctl_wire_old_buffer() are
  not flagged as wired in procstat -v output.
  
  Reviewed by:	kib (previous version)
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D19461

Modified:
  head/sys/kern/kern_proc.c
  head/sys/sys/user.h
  head/usr.bin/procstat/procstat.1
  head/usr.bin/procstat/procstat_vm.c

Modified: head/sys/kern/kern_proc.c
==============================================================================
--- head/sys/kern/kern_proc.c	Tue Mar  5 19:41:32 2019	(r344822)
+++ head/sys/kern/kern_proc.c	Tue Mar  5 19:45:37 2019	(r344823)
@@ -2487,6 +2487,8 @@ kern_proc_vmmap_out(struct proc *p, struct sbuf *sb, s
 			kve->kve_flags |= KVME_FLAG_GROWS_UP;
 		if (entry->eflags & MAP_ENTRY_GROWS_DOWN)
 			kve->kve_flags |= KVME_FLAG_GROWS_DOWN;
+		if (entry->eflags & MAP_ENTRY_USER_WIRED)
+			kve->kve_flags |= KVME_FLAG_USER_WIRED;
 
 		last_timestamp = map->timestamp;
 		vm_map_unlock_read(map);

Modified: head/sys/sys/user.h
==============================================================================
--- head/sys/sys/user.h	Tue Mar  5 19:41:32 2019	(r344822)
+++ head/sys/sys/user.h	Tue Mar  5 19:45:37 2019	(r344823)
@@ -471,6 +471,7 @@ struct kinfo_file {
 #define	KVME_FLAG_SUPER		0x00000008
 #define	KVME_FLAG_GROWS_UP	0x00000010
 #define	KVME_FLAG_GROWS_DOWN	0x00000020
+#define	KVME_FLAG_USER_WIRED	0x00000040
 
 #if defined(__amd64__)
 #define	KINFO_OVMENTRY_SIZE	1168

Modified: head/usr.bin/procstat/procstat.1
==============================================================================
--- head/usr.bin/procstat/procstat.1	Tue Mar  5 19:41:32 2019	(r344822)
+++ head/usr.bin/procstat/procstat.1	Tue Mar  5 19:45:37 2019	(r344823)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd October 14, 2017
+.Dd March 4, 2019
 .Dt PROCSTAT 1
 .Os
 .Sh NAME
@@ -662,6 +662,11 @@ one or more superpage mappings are used
 grows down (top-down stack)
 .It U
 grows up (bottom-up stack)
+.It W
+pages in this range are locked by
+.Xr mlock 2
+or
+.Xr mlockall 2
 .El
 .Ss ELF Auxiliary Vector
 Display ELF auxiliary vector values:
@@ -684,6 +689,8 @@ auxiliary vector value
 .Xr sockstat 1 ,
 .Xr cap_enter 2 ,
 .Xr cap_rights_limit 2 ,
+.Xr mlock 2 ,
+.Xr mlockall 2 ,
 .Xr libprocstat 3 ,
 .Xr libxo 3 ,
 .Xr signal 3 ,

Modified: head/usr.bin/procstat/procstat_vm.c
==============================================================================
--- head/usr.bin/procstat/procstat_vm.c	Tue Mar  5 19:41:32 2019	(r344822)
+++ head/usr.bin/procstat/procstat_vm.c	Tue Mar  5 19:45:37 2019	(r344823)
@@ -53,7 +53,7 @@ procstat_vm(struct procstat *procstat, struct kinfo_pr
 
 	ptrwidth = 2*sizeof(void *) + 2;
 	if ((procstat_opts & PS_OPT_NOHEADER) == 0)
-		xo_emit("{T:/%5s %*s %*s %3s %4s %4s %3s %3s %-4s %-2s %-s}\n",
+		xo_emit("{T:/%5s %*s %*s %3s %4s %4s %3s %3s %-5s %-2s %-s}\n",
 		    "PID", ptrwidth, "START", ptrwidth, "END", "PRT", "RES",
 		    "PRES", "REF", "SHD", "FLAG", "TP", "PATH");
 
@@ -98,9 +98,11 @@ procstat_vm(struct procstat *procstat, struct kinfo_pr
 		    KVME_FLAG_NEEDS_COPY ? "N" : "-");
 		xo_emit("{d:super_pages/%-1s}", kve->kve_flags &
 		    KVME_FLAG_SUPER ? "S" : "-");
-		xo_emit("{d:grows_down/%-1s} ", kve->kve_flags &
+		xo_emit("{d:grows_down/%-1s}", kve->kve_flags &
 		    KVME_FLAG_GROWS_UP ? "U" : kve->kve_flags &
 		    KVME_FLAG_GROWS_DOWN ? "D" : "-");
+		xo_emit("{d:wired/%-1s} ", kve->kve_flags &
+		    KVME_FLAG_USER_WIRED ? "W" : "-");
 		xo_open_container("kve_flags");
 		xo_emit("{en:copy_on_write/%s}", kve->kve_flags &
 		    KVME_FLAG_COW ? "true" : "false");
@@ -112,6 +114,8 @@ procstat_vm(struct procstat *procstat, struct kinfo_pr
 		    KVME_FLAG_GROWS_UP ? "true" : "false");
 		xo_emit("{en:grows_down/%s}", kve->kve_flags &
 		    KVME_FLAG_GROWS_DOWN ? "true" : "false");
+		xo_emit("{en:wired/%s}", kve->kve_flags &
+		    KVME_FLAG_USER_WIRED ? "true" : "false");
 		xo_close_container("kve_flags");
 		switch (kve->kve_type) {
 		case KVME_TYPE_NONE:

From owner-svn-src-all@freebsd.org  Tue Mar  5 21:06:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED74C1513530;
 Tue,  5 Mar 2019 21:06:31 +0000 (UTC)
 (envelope-from mat.macy@gmail.com)
Received: from mail-io1-xd35.google.com (mail-io1-xd35.google.com
 [IPv6:2607:f8b0:4864:20::d35])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 75881889B2;
 Tue,  5 Mar 2019 21:06:31 +0000 (UTC)
 (envelope-from mat.macy@gmail.com)
Received: by mail-io1-xd35.google.com with SMTP id p196so8266790iod.9;
 Tue, 05 Mar 2019 13:06:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=Z2mUZGK5VQuBJPk4RWGrJtB5EYA5oi9Dy8iNeVGZ1Ho=;
 b=GTh5f+ZfrQy5MTD/RvBRL17kXhhv5ewWN+RoxcN3n4p+d9g+l7jyqzqlLMmC8BOEl8
 5qc8yqZVKoZsOhisdyb+aYulUd7VaEuA/IPgxJF6FAQ3munnU68ys4n8JhqkuCe1okto
 yFr8YtSbCqTTB/UI3rQwaIfYv01A32LdV3MFW4qSRgM1TZDQemOm+5sILTw6yv+fuOQN
 sDelu9PRgbcy4IrzqVGqUKnnv9rJ8I9gLLma4mb7wvz6h6er08lVmO9xW/TGWEfU8Zy0
 w2p1J3xrrwDpDSUf8loYR5x1BJhqkeWdGeKoQ+I0m5vdn3ML+bwqSIxmkeGCTUqwdvLC
 qgEw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=Z2mUZGK5VQuBJPk4RWGrJtB5EYA5oi9Dy8iNeVGZ1Ho=;
 b=nPqqux24bbUUIrZxwfyXSz3llh+YOEpN8UjK6fgFixi069oLpH4hY2zB3fEAssgnsc
 PP3vQYOiJ1D7L9vDkWUax2JdYWyMdlHPXNmSuBdSnhkvObPUqVsGZnn0+rhegVVVawW5
 QqV8atGOaDSILA/gcar5yroJB6WkGZ1ZXWOBlA38Wgo3xhy5DwAjNEfWPRm8aIs9FPFP
 5Zggzas5WEgiw+sBKTpzPJrwwGk/ycQAmO4P56SaPDNS9253xRj3rJctWzQhw6FvqPpc
 GMPU/pdzZ3JEao9dOFTQ42IpzlwxCYYq2cXzc29bU9No8sno+qF9hMLfL5RbPaLG5oWt
 cjIQ==
X-Gm-Message-State: APjAAAUBSeHdKUg4KFoBTRk/1Zm3XH8yW9FHpTnjb7Of/9Sl+6bkIdT+
 M3CQC/MLw2NZkNuEIVkwKh8UbwpcA7yIzx5f/GdmTOC8
X-Google-Smtp-Source: APXvYqz0T8JhsrBk8+a0Wl8uCyFZMB9pKCgK/Frhgc29+NuqhJ3aPhF0trd5XzH5ltnG2x8WxH7juGHBUahGpN0iwGM=
X-Received: by 2002:a6b:7d47:: with SMTP id d7mr1193356ioq.237.1551819990102; 
 Tue, 05 Mar 2019 13:06:30 -0800 (PST)
MIME-Version: 1.0
References: <201903051912.x25JCqOj068140@repo.freebsd.org>
In-Reply-To: <201903051912.x25JCqOj068140@repo.freebsd.org>
From: Matthew Macy <mat.macy@gmail.com>
Date: Tue, 5 Mar 2019 13:06:18 -0800
Message-ID: <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
Subject: Re: svn commit: r344817 - in head/sys: dev/e1000 net
To: Eric Joyner <erj@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 75881889B2
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.99)[-0.988,0]; REPLY(-4.00)[];
 TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 21:06:32 -0000

This represents a misunderstanding of how defines are used. This left
the option open to the user to enable the use of larger than page size
buffers as it does enable better performance. Over the course of a
long uptime memory can get too fragmented. However, this left it open
to the end consumer.

I'd like to see this reverted with perhaps a better name for the
define and the addition of an explanatory comment.
Thanks.

-M

On Tue, Mar 5, 2019 at 11:13 AM Eric Joyner <erj@freebsd.org> wrote:
>
> Author: erj
> Date: Tue Mar  5 19:12:51 2019
> New Revision: 344817
> URL: https://svnweb.freebsd.org/changeset/base/344817
>
> Log:
>   Remove references to CONTIGMALLOC_WORKS in iflib and em
>
>   From Jake:
>   "The iflib_fl_setup() function tries to pick various buffer sizes based
>   on the max_frame_size value defined by the parent driver. However, this
>   code was wrapped under CONTIGMALLOC_WORKS, which was never actually
>   defined anywhere.
>
>   This same code pattern was used in if_em.c, likely trying to match
>   what iflib uses.
>
>   Since CONTIGMALLOC_WORKS is not defined, remove this dead code from
>   iflib_fl_setup and if_em.c
>
>   Given that various iflib drivers appear to be using a similar
>   calculation, it might be worth making this buffer size a value that the
>   driver can peek at in the future."
>
>   Submitted by: Jacob Keller <jacob.e.keller@intel.com>
>   Reviewed by:  shurd@
>   MFC after:    1 week
>   Sponsored by: Intel Corporation
>   Differential Revision:        https://reviews.freebsd.org/D19199
>
> Modified:
>   head/sys/dev/e1000/if_em.c
>   head/sys/net/iflib.c
>
> Modified: head/sys/dev/e1000/if_em.c
> ==============================================================================
> --- head/sys/dev/e1000/if_em.c  Tue Mar  5 19:08:37 2019        (r344816)
> +++ head/sys/dev/e1000/if_em.c  Tue Mar  5 19:12:51 2019        (r344817)
> @@ -1276,15 +1276,8 @@ em_if_init(if_ctx_t ctx)
>          */
>         if (adapter->hw.mac.max_frame_size <= 2048)
>                 adapter->rx_mbuf_sz = MCLBYTES;
> -#ifndef CONTIGMALLOC_WORKS
>         else
>                 adapter->rx_mbuf_sz = MJUMPAGESIZE;
> -#else
> -       else if (adapter->hw.mac.max_frame_size <= 4096)
> -               adapter->rx_mbuf_sz = MJUMPAGESIZE;
> -       else
> -               adapter->rx_mbuf_sz = MJUM9BYTES;
> -#endif
>         em_initialize_receive_unit(ctx);
>
>         /* Use real VLAN Filter support? */
>
> Modified: head/sys/net/iflib.c
> ==============================================================================
> --- head/sys/net/iflib.c        Tue Mar  5 19:08:37 2019        (r344816)
> +++ head/sys/net/iflib.c        Tue Mar  5 19:12:51 2019        (r344817)
> @@ -2187,17 +2187,8 @@ iflib_fl_setup(iflib_fl_t fl)
>          */
>         if (sctx->isc_max_frame_size <= 2048)
>                 fl->ifl_buf_size = MCLBYTES;
> -#ifndef CONTIGMALLOC_WORKS
>         else
>                 fl->ifl_buf_size = MJUMPAGESIZE;
> -#else
> -       else if (sctx->isc_max_frame_size <= 4096)
> -               fl->ifl_buf_size = MJUMPAGESIZE;
> -       else if (sctx->isc_max_frame_size <= 9216)
> -               fl->ifl_buf_size = MJUM9BYTES;
> -       else
> -               fl->ifl_buf_size = MJUM16BYTES;
> -#endif
>         if (fl->ifl_buf_size > ctx->ifc_max_fl_buf_size)
>                 ctx->ifc_max_fl_buf_size = fl->ifl_buf_size;
>         fl->ifl_cltype = m_gettype(fl->ifl_buf_size);
>

From owner-svn-src-all@freebsd.org  Tue Mar  5 21:12:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3DBE41513810;
 Tue,  5 Mar 2019 21:12:34 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id BBF5F88F39;
 Tue,  5 Mar 2019 21:12:33 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x25LCTDN082647;
 Tue, 5 Mar 2019 13:12:29 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x25LCToe082646;
 Tue, 5 Mar 2019 13:12:29 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903052112.x25LCToe082646@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344817 - in head/sys: dev/e1000 net
In-Reply-To: <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
To: Matthew Macy <mat.macy@gmail.com>
Date: Tue, 5 Mar 2019 13:12:29 -0800 (PST)
CC: Eric Joyner <erj@freebsd.org>, src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>,
 svn-src-head <svn-src-head@freebsd.org>
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: BBF5F88F39
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00]; TAGGED_RCPT(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.99)[-0.988,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 21:12:34 -0000

> This represents a misunderstanding of how defines are used. This left
> the option open to the user to enable the use of larger than page size
> buffers as it does enable better performance. Over the course of a
> long uptime memory can get too fragmented. However, this left it open
> to the end consumer.
> 
> I'd like to see this reverted with perhaps a better name for the
> define and the addition of an explanatory comment.
> Thanks.
Yes please.

Also, Matt, does it/would it work to stop the memory fragmentation issue
if we push the allocation up to the next page size and just waste the
3k bytes?  Some people might be willing to make that trade off to get
long up times and full 9k jumbo's.


Thanks,
Rod

> -M
> 
> On Tue, Mar 5, 2019 at 11:13 AM Eric Joyner <erj@freebsd.org> wrote:
> >
> > Author: erj
> > Date: Tue Mar  5 19:12:51 2019
> > New Revision: 344817
> > URL: https://svnweb.freebsd.org/changeset/base/344817
> >
> > Log:
> >   Remove references to CONTIGMALLOC_WORKS in iflib and em
> >
> >   From Jake:
> >   "The iflib_fl_setup() function tries to pick various buffer sizes based
> >   on the max_frame_size value defined by the parent driver. However, this
> >   code was wrapped under CONTIGMALLOC_WORKS, which was never actually
> >   defined anywhere.
> >
> >   This same code pattern was used in if_em.c, likely trying to match
> >   what iflib uses.
> >
> >   Since CONTIGMALLOC_WORKS is not defined, remove this dead code from
> >   iflib_fl_setup and if_em.c
> >
> >   Given that various iflib drivers appear to be using a similar
> >   calculation, it might be worth making this buffer size a value that the
> >   driver can peek at in the future."
> >
> >   Submitted by: Jacob Keller <jacob.e.keller@intel.com>
> >   Reviewed by:  shurd@
> >   MFC after:    1 week
> >   Sponsored by: Intel Corporation
> >   Differential Revision:        https://reviews.freebsd.org/D19199
> >
> > Modified:
> >   head/sys/dev/e1000/if_em.c
> >   head/sys/net/iflib.c
> >
> > Modified: head/sys/dev/e1000/if_em.c
> > ==============================================================================
> > --- head/sys/dev/e1000/if_em.c  Tue Mar  5 19:08:37 2019        (r344816)
> > +++ head/sys/dev/e1000/if_em.c  Tue Mar  5 19:12:51 2019        (r344817)
> > @@ -1276,15 +1276,8 @@ em_if_init(if_ctx_t ctx)
> >          */
> >         if (adapter->hw.mac.max_frame_size <= 2048)
> >                 adapter->rx_mbuf_sz = MCLBYTES;
> > -#ifndef CONTIGMALLOC_WORKS
> >         else
> >                 adapter->rx_mbuf_sz = MJUMPAGESIZE;
> > -#else
> > -       else if (adapter->hw.mac.max_frame_size <= 4096)
> > -               adapter->rx_mbuf_sz = MJUMPAGESIZE;
> > -       else
> > -               adapter->rx_mbuf_sz = MJUM9BYTES;
> > -#endif
> >         em_initialize_receive_unit(ctx);
> >
> >         /* Use real VLAN Filter support? */
> >
> > Modified: head/sys/net/iflib.c
> > ==============================================================================
> > --- head/sys/net/iflib.c        Tue Mar  5 19:08:37 2019        (r344816)
> > +++ head/sys/net/iflib.c        Tue Mar  5 19:12:51 2019        (r344817)
> > @@ -2187,17 +2187,8 @@ iflib_fl_setup(iflib_fl_t fl)
> >          */
> >         if (sctx->isc_max_frame_size <= 2048)
> >                 fl->ifl_buf_size = MCLBYTES;
> > -#ifndef CONTIGMALLOC_WORKS
> >         else
> >                 fl->ifl_buf_size = MJUMPAGESIZE;
> > -#else
> > -       else if (sctx->isc_max_frame_size <= 4096)
> > -               fl->ifl_buf_size = MJUMPAGESIZE;
> > -       else if (sctx->isc_max_frame_size <= 9216)
> > -               fl->ifl_buf_size = MJUM9BYTES;
> > -       else
> > -               fl->ifl_buf_size = MJUM16BYTES;
> > -#endif
> >         if (fl->ifl_buf_size > ctx->ifc_max_fl_buf_size)
> >                 ctx->ifc_max_fl_buf_size = fl->ifl_buf_size;
> >         fl->ifl_cltype = m_gettype(fl->ifl_buf_size);
> >
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Tue Mar  5 22:04:24 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6855B1518100;
 Tue,  5 Mar 2019 22:04:24 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0DD458AFAC;
 Tue,  5 Mar 2019 22:04:24 +0000 (UTC) (envelope-from dim@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 F330E223C5;
 Tue,  5 Mar 2019 22:04:23 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x25M4NWx060968;
 Tue, 5 Mar 2019 22:04:23 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25M4NP2060967;
 Tue, 5 Mar 2019 22:04:23 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903052204.x25M4NP2060967@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Tue, 5 Mar 2019 22:04:23 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344825 - head/lib/clang/libllvm
X-SVN-Group: head
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: head/lib/clang/libllvm
X-SVN-Commit-Revision: 344825
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0DD458AFAC
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.974,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 22:04:24 -0000

Author: dim
Date: Tue Mar  5 22:04:23 2019
New Revision: 344825
URL: https://svnweb.freebsd.org/changeset/base/344825

Log:
  Add a few missed files to the MK_LLVM_TARGET_BPF=yes case, otherwise
  clang and various other executables will fail to link with undefined
  symbols.
  
  Reported by:	O. Hartmann <ohartmann@walstatt.org>
  MFC after:	1 month
  X-MFC-With:	r344779

Modified:
  head/lib/clang/libllvm/Makefile

Modified: head/lib/clang/libllvm/Makefile
==============================================================================
--- head/lib/clang/libllvm/Makefile	Tue Mar  5 21:40:08 2019	(r344824)
+++ head/lib/clang/libllvm/Makefile	Tue Mar  5 22:04:23 2019	(r344825)
@@ -1011,11 +1011,13 @@ SRCS_MIN+=	Target/BPF/BPFISelDAGToDAG.cpp
 SRCS_MIN+=	Target/BPF/BPFISelLowering.cpp
 SRCS_MIN+=	Target/BPF/BPFInstrInfo.cpp
 SRCS_MIN+=	Target/BPF/BPFMCInstLower.cpp
+SRCS_MIN+=	Target/BPF/BPFMIChecking.cpp
 SRCS_MIN+=	Target/BPF/BPFMIPeephole.cpp
 SRCS_MIN+=	Target/BPF/BPFRegisterInfo.cpp
 SRCS_MIN+=	Target/BPF/BPFSelectionDAGInfo.cpp
 SRCS_MIN+=	Target/BPF/BPFSubtarget.cpp
 SRCS_MIN+=	Target/BPF/BPFTargetMachine.cpp
+SRCS_MIN+=	Target/BPF/BTFDebug.cpp
 SRCS_MIN+=	Target/BPF/Disassembler/BPFDisassembler.cpp
 SRCS_MIN+=	Target/BPF/InstPrinter/BPFInstPrinter.cpp
 SRCS_MIN+=	Target/BPF/MCTargetDesc/BPFAsmBackend.cpp

From owner-svn-src-all@freebsd.org  Tue Mar  5 22:06:04 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 22D8715181C3
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Tue,  5 Mar 2019 22:06:04 +0000 (UTC)
 (envelope-from ricera10@gmail.com)
Received: from mail-ed1-f50.google.com (mail-ed1-f50.google.com
 [209.85.208.50])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 24E098B124
 for <svn-src-all@freebsd.org>; Tue,  5 Mar 2019 22:06:03 +0000 (UTC)
 (envelope-from ricera10@gmail.com)
Received: by mail-ed1-f50.google.com with SMTP id a16so8597344edn.1
 for <svn-src-all@freebsd.org>; Tue, 05 Mar 2019 14:06:03 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=isPgUCUBgVDZw3lZCArQ73KKXEu1eDT1pQ/WeXH8Hm0=;
 b=JWV11mfLp5uguYEA40e3F7EOrFF3QyEY+uaFDL4sce23yNfp0uXP1wCONsZXVOa02p
 XfQES3+dYLUIcOiD8Jk9CV9hg4X6O1mkEMfptoU7xgjTY3IkZGj6FhzvWDZ0VTukJLjX
 TctdVIAzbz0xDGceGDM53cxcwBFDddaRKlhyfs0XO2y0Y/gKYFphkC9MF4yJwEdnaPxH
 BABPFb8QNQWKcrCt/AUGOPRIBQHdrbzZGCYfK5NzFagUGmAlRlLBvsRn2kGSdQmPrt47
 RgdXrujBrFhZR6y/+7GgYiXZqPWK6jmYxFKe7fw+Ul8jW+b0JqjG9bBgxSUd990dDxAt
 32hg==
X-Gm-Message-State: APjAAAUJpx6xJRX2XJUWSHJvr8Kh8083hy8YIA85UXgKz1NnBlzDWp0P
 aDxeZ5yyCmRmd9j4w5FoAaQIXqwP
X-Google-Smtp-Source: APXvYqy6UfVaz/yS65FmeaofFUivlbGtJkVldwfRDHvGBDrcRIHuHKtOXYaasjtD+1HIfBS06QRjZg==
X-Received: by 2002:aa7:da0f:: with SMTP id r15mr21188878eds.34.1551823561392; 
 Tue, 05 Mar 2019 14:06:01 -0800 (PST)
Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com.
 [209.85.221.50])
 by smtp.gmail.com with ESMTPSA id d16sm1997840eja.67.2019.03.05.14.06.00
 for <svn-src-all@freebsd.org>
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Tue, 05 Mar 2019 14:06:00 -0800 (PST)
Received: by mail-wr1-f50.google.com with SMTP id l5so11158860wrw.6
 for <svn-src-all@freebsd.org>; Tue, 05 Mar 2019 14:06:00 -0800 (PST)
X-Received: by 2002:a05:6000:1252:: with SMTP id
 j18mr647409wrx.11.1551823559948; 
 Tue, 05 Mar 2019 14:05:59 -0800 (PST)
MIME-Version: 1.0
References: <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
 <5c7ee64f.1c69fb81.1168f.5802SMTPIN_ADDED_BROKEN@mx.google.com>
In-Reply-To: <5c7ee64f.1c69fb81.1168f.5802SMTPIN_ADDED_BROKEN@mx.google.com>
From: Eric Joyner <erj@freebsd.org>
Date: Tue, 5 Mar 2019 14:05:48 -0800
X-Gmail-Original-Message-ID: <CAKdFRZjes=VXo35kc2bHU=G_k72FREv3TC1V1QChTRKr2wuiDA@mail.gmail.com>
Message-ID: <CAKdFRZjes=VXo35kc2bHU=G_k72FREv3TC1V1QChTRKr2wuiDA@mail.gmail.com>
Subject: Re: svn commit: r344817 - in head/sys: dev/e1000 net
To: rgrimes@freebsd.org, Matthew Macy <mat.macy@gmail.com>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>,
 Jacob Keller <jacob.e.keller@intel.com>
X-Rspamd-Queue-Id: 24E098B124
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 spf=pass (mx1.freebsd.org: domain of ricera10@gmail.com designates
 209.85.208.50 as permitted sender) smtp.mailfrom=ricera10@gmail.com
X-Spamd-Result: default: False [-5.41 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17];
 RCPT_COUNT_FIVE(0.00)[6]; RCVD_COUNT_THREE(0.00)[4];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 NEURAL_HAM_SHORT(-0.99)[-0.993,0];
 FORGED_SENDER(0.30)[erj@freebsd.org,ricera10@gmail.com];
 MIME_TRACE(0.00)[0:+,1:+]; R_DKIM_NA(0.00)[];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US];
 FROM_NEQ_ENVFROM(0.00)[erj@freebsd.org,ricera10@gmail.com];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0];
 TAGGED_RCPT(0.00)[];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[freebsd.org];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 IP_SCORE(-2.41)[ip: (-6.13), ipnet: 209.85.128.0/17(-3.83), asn: 15169(-2.02),
 country: US(-0.07)]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_IN_DNSWL_NONE(0.00)[50.208.85.209.list.dnswl.org : 127.0.5.0];
 RCVD_TLS_LAST(0.00)[];
 RWL_MAILSPIKE_POSSIBLE(0.00)[50.208.85.209.rep.mailspike.net : 127.0.0.17]
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 22:06:04 -0000

I'm cc'ing Jake so that he can provide a response.

- Eric

On Tue, Mar 5, 2019 at 1:12 PM Rodney W. Grimes <freebsd@gndrsh.dnsmgr.net>
wrote:

> > This represents a misunderstanding of how defines are used. This left
> > the option open to the user to enable the use of larger than page size
> > buffers as it does enable better performance. Over the course of a
> > long uptime memory can get too fragmented. However, this left it open
> > to the end consumer.
> >
> > I'd like to see this reverted with perhaps a better name for the
> > define and the addition of an explanatory comment.
> > Thanks.
> Yes please.
>
> Also, Matt, does it/would it work to stop the memory fragmentation issue
> if we push the allocation up to the next page size and just waste the
> 3k bytes?  Some people might be willing to make that trade off to get
> long up times and full 9k jumbo's.
>
>
> Thanks,
> Rod
>
> > -M
> >
> > On Tue, Mar 5, 2019 at 11:13 AM Eric Joyner <erj@freebsd.org> wrote:
> > >
> > > Author: erj
> > > Date: Tue Mar  5 19:12:51 2019
> > > New Revision: 344817
> > > URL: https://svnweb.freebsd.org/changeset/base/344817
> > >
> > > Log:
> > >   Remove references to CONTIGMALLOC_WORKS in iflib and em
> > >
> > >   From Jake:
> > >   "The iflib_fl_setup() function tries to pick various buffer sizes
> based
> > >   on the max_frame_size value defined by the parent driver. However,
> this
> > >   code was wrapped under CONTIGMALLOC_WORKS, which was never actually
> > >   defined anywhere.
> > >
> > >   This same code pattern was used in if_em.c, likely trying to match
> > >   what iflib uses.
> > >
> > >   Since CONTIGMALLOC_WORKS is not defined, remove this dead code from
> > >   iflib_fl_setup and if_em.c
> > >
> > >   Given that various iflib drivers appear to be using a similar
> > >   calculation, it might be worth making this buffer size a value that
> the
> > >   driver can peek at in the future."
> > >
> > >   Submitted by: Jacob Keller <jacob.e.keller@intel.com>
> > >   Reviewed by:  shurd@
> > >   MFC after:    1 week
> > >   Sponsored by: Intel Corporation
> > >   Differential Revision:        https://reviews.freebsd.org/D19199
> > >
> > > Modified:
> > >   head/sys/dev/e1000/if_em.c
> > >   head/sys/net/iflib.c
> > >
> > > Modified: head/sys/dev/e1000/if_em.c
> > >
> ==============================================================================
> > > --- head/sys/dev/e1000/if_em.c  Tue Mar  5 19:08:37 2019
> (r344816)
> > > +++ head/sys/dev/e1000/if_em.c  Tue Mar  5 19:12:51 2019
> (r344817)
> > > @@ -1276,15 +1276,8 @@ em_if_init(if_ctx_t ctx)
> > >          */
> > >         if (adapter->hw.mac.max_frame_size <= 2048)
> > >                 adapter->rx_mbuf_sz = MCLBYTES;
> > > -#ifndef CONTIGMALLOC_WORKS
> > >         else
> > >                 adapter->rx_mbuf_sz = MJUMPAGESIZE;
> > > -#else
> > > -       else if (adapter->hw.mac.max_frame_size <= 4096)
> > > -               adapter->rx_mbuf_sz = MJUMPAGESIZE;
> > > -       else
> > > -               adapter->rx_mbuf_sz = MJUM9BYTES;
> > > -#endif
> > >         em_initialize_receive_unit(ctx);
> > >
> > >         /* Use real VLAN Filter support? */
> > >
> > > Modified: head/sys/net/iflib.c
> > >
> ==============================================================================
> > > --- head/sys/net/iflib.c        Tue Mar  5 19:08:37 2019
> (r344816)
> > > +++ head/sys/net/iflib.c        Tue Mar  5 19:12:51 2019
> (r344817)
> > > @@ -2187,17 +2187,8 @@ iflib_fl_setup(iflib_fl_t fl)
> > >          */
> > >         if (sctx->isc_max_frame_size <= 2048)
> > >                 fl->ifl_buf_size = MCLBYTES;
> > > -#ifndef CONTIGMALLOC_WORKS
> > >         else
> > >                 fl->ifl_buf_size = MJUMPAGESIZE;
> > > -#else
> > > -       else if (sctx->isc_max_frame_size <= 4096)
> > > -               fl->ifl_buf_size = MJUMPAGESIZE;
> > > -       else if (sctx->isc_max_frame_size <= 9216)
> > > -               fl->ifl_buf_size = MJUM9BYTES;
> > > -       else
> > > -               fl->ifl_buf_size = MJUM16BYTES;
> > > -#endif
> > >         if (fl->ifl_buf_size > ctx->ifc_max_fl_buf_size)
> > >                 ctx->ifc_max_fl_buf_size = fl->ifl_buf_size;
> > >         fl->ifl_cltype = m_gettype(fl->ifl_buf_size);
> > >
> >
> >
>
> --
> Rod Grimes
> rgrimes@freebsd.org
>
>

From owner-svn-src-all@freebsd.org  Tue Mar  5 22:55:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BDBD5151A0AE;
 Tue,  5 Mar 2019 22:55:36 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6DA708CCF9;
 Tue,  5 Mar 2019 22:55:36 +0000 (UTC)
 (envelope-from marcel@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 63BAB22C2C;
 Tue,  5 Mar 2019 22:55:36 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x25Mtavl087257;
 Tue, 5 Mar 2019 22:55:36 GMT (envelope-from marcel@FreeBSD.org)
Received: (from marcel@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25MtXwe087243;
 Tue, 5 Mar 2019 22:55:33 GMT (envelope-from marcel@FreeBSD.org)
Message-Id: <201903052255.x25MtXwe087243@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: marcel set sender to
 marcel@FreeBSD.org using -f
From: Marcel Moolenaar <marcel@FreeBSD.org>
Date: Tue, 5 Mar 2019 22:55:33 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344826 - in head/usr.bin/mkimg: . tests
X-SVN-Group: head
X-SVN-Commit-Author: marcel
X-SVN-Commit-Paths: in head/usr.bin/mkimg: . tests
X-SVN-Commit-Revision: 344826
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6DA708CCF9
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.99 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.99)[-0.987,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 22:55:37 -0000

Author: marcel
Date: Tue Mar  5 22:55:33 2019
New Revision: 344826
URL: https://svnweb.freebsd.org/changeset/base/344826

Log:
  Round # partitions up to fill the last GPT table sector
  
  Set the number of partitions entries in the GPT header to a
  multiple of the number of entries that fit in a sector.
  
  PR:		236238
  Reviewed by:	imp
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D19465

Modified:
  head/usr.bin/mkimg/gpt.c
  head/usr.bin/mkimg/tests/Makefile
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vmdk.gz.uu

Modified: head/usr.bin/mkimg/gpt.c
==============================================================================
--- head/usr.bin/mkimg/gpt.c	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/gpt.c	Tue Mar  5 22:55:33 2019	(r344826)
@@ -259,9 +259,9 @@ gpt_write(lba_t imgsz, void *bootcode)
 	le64enc(&hdr->hdr_lba_end, imgsz - tblsz - 2);
 	mkimg_uuid(&uuid);
 	mkimg_uuid_enc(&hdr->hdr_uuid, &uuid);
-	le32enc(&hdr->hdr_entries, nparts);
+	le32enc(&hdr->hdr_entries, tblsz * secsz / sizeof(struct gpt_ent));
 	le32enc(&hdr->hdr_entsz, sizeof(struct gpt_ent));
-	crc = crc32(tbl, nparts * sizeof(struct gpt_ent));
+	crc = crc32(tbl, tblsz * secsz);
 	le32enc(&hdr->hdr_crc_table, crc);
 	error = gpt_write_hdr(hdr, 1, imgsz - 1, 2);
 	if (!error)

Modified: head/usr.bin/mkimg/tests/Makefile
==============================================================================
--- head/usr.bin/mkimg/tests/Makefile	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/Makefile	Tue Mar  5 22:55:33 2019	(r344826)
@@ -18,6 +18,6 @@ $f: $f.gz.uu
 CLEANFILES+=	${${PACKAGE}FILES}}
 
 rebase: .PHONY
-	(cd ${.CURDIR}; atf-sh ${_REBASE_SCRIPT}.sh rebase)
+	(cd ${.CURDIR}; /usr/libexec/atf-sh ${_REBASE_SCRIPT}.sh rebase)
 
 .include <bsd.test.mk>

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,132 +1,132 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.qcow.gz
-M'XL(",]Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N<6-O=RYO=70`K9W+CAS7L47G
-M^HKDFVR2S8J(S*Q,OFW`!CR3C7MG]P+.Y]`HS_GQ[NH^C^ZHO1D6V!(A4"!R
-MH^IP]2I*6CH\'.[^:)I.FK9OVK'9Y^;F[],W:>[]S<-OS8^___5OU_?_^/';
-MW9@<?O*4^_M6&TUS#[;^W)0Y/3^U-(?QOYB[^29H[MZKLS_PZNZ]V<NYJ]_N
-MWBQ^3MF@/1ALTMPAO3XAI]?^=Z_ONWN[<G=ZC_=VE;S=C@WV#P9_3W/_3*]/
-MR=L]LKGAP=S)O5TE;W=D<]-/85$"R\SFEF"NA4^M;&X+YCKXU([GY"<_MW=S
-M/7Q*V!S\NKUNRMP1/F5LKGTP=[C.0.>Y`3Y%N).0NQ$^1;B3D+L)/D6XDY"[
-M&3Y%N).0NP4^1;B3D+L5/D6XTY"[#3Y%N".?%_>XV^%3A#N-N!/\%.%.(^X$
-M^4X9=QIQ)\AWRKC3B#M!OE/&G4;<"?*=,NXTXDZ0[Y1Q9Q%W@GQGC#N+N!/D
-M.V/<6<@=\ITQ[BSD#OG.&'<6<H=\9XP["[E#OC/&G87<(=\9X\Y"[I#OC''7
-MAMPAW[6,NS;D#OFN9=RU$7>*GR+<M1%WBGS7,N[:B#M%OFL9=VW$G2+?M8R[
-M-N).D>]:QET;<:?(=RWCKHNX4^2[CG'71=PI\EW'N.M"[I#O.L9=%W*'?-<Q
-M[KJ0.^2[CG'7A=PAWW6,NR[D#OFN8]QU(7?(=QWCK@^Y0[[K&7=]R!WR7<^X
-MZR/N##]%N.LC[@SYKF?<]1%WAGS7,^[ZB#M#ONL9=WW$G2'?]8R[/N+.D.]Z
-MQMTQXLZ0[XZ,NV/$G2'?'1EWQY`[Y+LCX^X8<H=\=V3<'4/ND.^.C+MCR!WR
-MW9%Q=PRY0[X[,NZ.(7?(=T?&W1!RAWPW,.Z&D#ODNX%Q-T3<M?@IPMT0<=<B
-MWPV,NR'BKD6^&QAW0\1=BWPW,.Z&B+L6^6Y@W`T1=RWRW<"XR__ZF\\AWXV,
-MNS'BKD6^&QEW8\@=\MW(N!M#[I#O1L;=&'*'?#<R[L:0.^2[D7$WAMPAWXV,
-MNS'D#OEN9-Q-(7?(=Q/C;@JY0[Z;&'=3Q%V'GR+<31%W'?+=Q+B;(NXZY+N)
-M<3=%W'7(=Q/C;HJXZY#O)L;=%''7(=]-C+O\GR'Y'/+=S+B;(^XZY+N9<3>'
-MW"'?S8R[.>0.^6YFW,TA=\AW,^-N#KE#OIL9=W/('?+=S+B;0^Z0[V;&W1)R
-MAWRW,.Z6D#ODNX5QMT3<]?@IPMT2<=<CWRV,NR7BKD>^6QAW2\1=CWRW,.Z6
-MB+L>^6YAW"T1=SWRW<*X6R/N>N2[E7&W1MSUR'<KXVX-N4.^6QEW:\@=\MW*
-MN%M#[I#O5L;=&G*'?+<R[M:0.^2[E7&WAMPAWZV,NRWD#OEN8]QM(7?(=QOC
-M;HNX.^*G"'=;Q-T1^6YCW&T1=T?DNXUQMT7<'9'O-L;=%G%W1+[;&'=;Q-T1
-M^6YCW.T1=T?DNYUQMT?<'9'O=L;='G*'?+<S[O:0.^2[G7&WA]PAW^V,NSWD
-M#OEN9]SM(7?(=SOC;@^Y0[[;"7>2O\/G@._D0+B30\@=\)T<"'=RB+@;\%.8
-M.PG[NP'X3EA_)V%_-P#?">OO).SO!N`[8?V=A/W=`'PGK+^3L+\;@.^$]7<2
-M]G<#\)VP_D["_FX`OA/6WTG8WPW`=\+Z.PG[NP'X3EA_)V%_-P#?">OO).SO
-M!N`[8?V=A/W=`'PGK+^3L+\;@.^$]7<2]G<#\AWK[R3L[P;D.];?2=C?C?@I
-MPEW8WXW(=ZR_D["_&Y'O6'\G87\W(M^Q_D["_FY$OF/]G83]W8A\Q_H["?N[
-M$?F.]7<2]G<C\AWK[R3L[T;D.];?2=C?C<AWK+^3L+\;D>]8?R=A?S<BW['^
-M3L+^;D2^8_V=A/W=B'S'^CL)^[L1^8[U=Q+V=R/R'>OO).SO)OP4X2[L[R;D
-M.];?2=C?3<AWK+^3L+^;D.]8?R=A?S<AW['^3L+^;D*^8_V=A/W=A'S'^CL)
-M^[L)^8[U=Q+V=Q/R'>OO).SO)N0[UM])V-]-R'>LOY.POYN0[UA_)V%_-R'?
-ML?Y.POYN0KYC_9V$_=V$?,?Z.PG[NPGYCO5W$O9W,WZ*<!?V=S/R'>OO).SO
-M9N0[UM])V-_-R'>LOY.POYN1[UA_)V%_-R/?L?Y.POYN1KYC_9V$_=V,?,?Z
-M.PG[NQGYCO5W$O9W,_(=Z^\D[.]FY#O6WTG8W\W(=ZR_D["_FY'O6'\G87\W
-M(]^Q_D["_FY&OF/]G83]W8Q\Q_H["?N[!3]%N`O[NP7YCO5W$O9W"_(=Z^\D
-M[.\6Y#O6WTG8WRW(=ZR_D["_6Y#O6'\G87^W(-^Q_D["_FY!OF/]G83]W8)\
-MQ_H["?N[!?F.]7<2]G<+\AWK[R3L[Q;D.];?2=C?+<AWK+^3L+];D.]8?R=A
-M?[<@W['^3L+^;D&^8_V=A/W=BI\BW(7]W8I\Q_H["?N[%?F.]7<2]G<K\AWK
-M[R3L[U;D.];?2=C?K<AWK+^3L+];D>]8?R=A?[<BW['^3L+^;D6^8_V=A/W=
-MBGS'^CL)^[L5^8[U=Q+V=ROR'>OO).SO5N0[UM])V-^MR'>LOY.POUN1[UA_
-M)V%_MR+?L?Y.POYNPT\1[L+^;D.^8_V=A/W=AGS'^CL)^[L-^8[U=Q+V=QOR
-M'>OO).SO-N0[UM])V-]MR'>LOY.PO]N0[UA_)V%_MR'?L?Y.POYN0[YC_9V$
-M_=V&?,?Z.PG[NPWYCO5W$O9W&_(=Z^\D[.\VY#O6WTG8WVW(=ZR_D["_VY#O
-M6'\G87^WXZ<(=V%_MR/?L?Y.POYN1[YC_9V$_=V.?,?Z.PG[NQWYCO5W$O9W
-M._(=Z^\D[.]VY#O6WTG8W^W(=ZR_D["_VY'O6'\G87^W(]^Q_D["_FY'OF/]
-MG83]W8Y\Q_H["?N['?F.]7<2]G<[\AWK[S1_Q\TU=0[X[N8IS)VZ_B[?I]=4
-M[H#OE/5WZOJ[)G'79.[L@)_"W*GK[YK$7?//,@=\IZR_4]??-2=W=H;NOU/6
-MWZGK[\K9U3G@.V7]G;K^#LP!WRGK[]3U=V`.^$Y9?Z>NO\MS3^H<\)VR_DY=
-M?_<DSS5E#OA.67^GKK][DKA[4KD#OE/6WZGK[YXD[IY4[H#OE/5WZOJ[)Z>+
-MLP.^4];?J>OORMG5.>`[9?V=NOX.S`'?*>OOU/5W8`[X3EE_IZZ_RW-/ZQSR
-M'>OOU/5W3_-<Y0[YCO5WZOJ[IXF[IX4[=/^=LOY.77_W-''WM'"'[K]3UM^I
-MZ^^>GOS9H?OOE/5WZOJ[<G9U#OF.]7?J^CLPAWS'^CMU_1V80[YC_9VZ_B[/
-M/:MSR'>LOU/7WSW+<X4[=/^=LOY.77_W+''WK'*'?,?Z.W7]W;/$W;/*'?(=
-MZ^_4]7?/3A=GAWS'^CMU_5TYNSJ'?,?Z.W7]'9A#OF/]G;K^#LPAW['^3EU_
-ME^>>USGD.];?J>OOGN>YRAWR'>OOU/5WSQ-WSPMWZ/X[9?V=NO[N>>+N>>$.
-MW7^GK+]3U]\]/_FS0_??*>OOU/5WY>SJ'/(=Z^_4]7=@#OF.]7?J^CLPAWS'
-M^CMU_5V>>U'GD.]8?Z>NOWN1YPIWZ/X[9?V=NO[N1>+N1>4.^8[U=^KZNQ>)
-MNQ>5.^0[UM^IZ^]>G"[.#OF.]7?J^KMR=G4.^8[U=^KZ.S"'?,?Z.W7]'9A#
-MOF/]G;K^+L^]K'/(=ZR_4]??O<QSE3OD.];?J>OO7B;N7A;NT/UWROH[=?W=
-MR\3=R\(=NO].67^GKK][>?)GA^Z_4];?J>OORMG5.>0[UM^IZ^_`'/(=Z^_4
-M]7=@#OF.]7?J^KL\]ZK.(=^Q_DY=?_<JSQ7NT/UWROH[=?W=J\3=J\H=\AWK
-M[]3U=Z\2=Z\J=\AWK+]3U]^].EV<'?(=Z^_4]7?E[.H<\AWK[]3U=V`.^8[U
-M=^KZ.S"'?,?Z.W7]79Y[7>>0[UA_IZZ_>YWG*G?(=ZR_4]??O4[<O2[<H?OO
-ME/5WZOJ[UXF[UX4[=/^=LOY.77_W^N3/#MU_IZR_4]??E;.K<\AWK+]3U]^!
-M.>0[UM^IZ^_`'/(=Z^_4]7=Y[DV=0[YC_9VZ_NY-GBO<H?OOE/5WZOJ[-XF[
-M-Y4[Y#O6WZGK[]XD[MY4[I#O6'^GKK][<[HX.^0[UM^IZ^_*V=4YY#O6WZGK
-M[\`<\AWK[]3U=V`.^8[U=^KZNSQW5>>0[UA_IZZ_N\ISE3OD.];?J>OOKA)W
-M5X4[=/^=LOY.77]WE;B[*MRA^^^4]7?J^KNKDS\[=/^=LOY.77]7SJ[.(=^Q
-M_DY=?P?FD.]8?Z>NOP-SR'>LOU/7W^6YMW4.^8[U=^KZN[=YKG"'[K]3UM^I
-MZ^_>)N[>5NZ0[UA_IZZ_>YNX>UNY0[YC_9VZ_N[MZ>+LD.]8?Z>NORMG5^>0
-M[UA_IZZ_`W/(=ZR_4]??@3GD.];?J>OO\MR[.H=\Q_H[=?W=NSQ7N4.^8_V=
-MNO[N7>+N7>$.W7^GK+]3U]^]2]R]*]RA^^^4]7?J^KMW)W]VZ/X[9?V=NOZN
-MG%V=0[YC_9VZ_@[,(=^Q_DY=?P?FD.]8?Z>NO\MS[^L<\AWK[]3U=^_S7.$.
-MW7^GK+]3U]^]3]R]K]PAW['^3EU_]SYQ][YRAWS'^CMU_=W[T\79(=^Q_DY=
-M?U?.KLXAW['^3EU_!^:0[UA_IZZ_`W/(=ZR_4]??Y;GK.H=\Q_H[C?H[0_??
-M*>OO-.KO#-U_IZR_TZB_,W3_G;+^3J/^SM#]=\KZ.XWZ.T/WWRGK[S3J[PS=
-M?Z>LO].HOS-T_YVR_DY)?_>ASB'?L?Y.77_W(<\5[M#]=\KZ.W7]W8?$W8?*
-M'?(=Z^_4]7<?$G<?*G?(=ZR_4]???3A=G!WR'>OOU/5WY>SJ'/(=Z^_4]7=@
-M#OF.]7?J^CLPAWS'^CO+WW%SASH'?&>LO[OY@0?<93\=*G?`=\;Z.W/]W2'M
-M'0IWZ/X[8_V=N?[ND+@[%.[0_7?&^CMS_=WAY,\.W7]GK+\SU]^5LZMSP'?&
-M^CMS_1V8`[XSUM^9Z^_`'/"=L?[.7'^7YZ3.`=\9Z^_,]7>2YPIWZ/X[8_V=
-MN?Y.TLN3RAWPG;'^SEQ_)XD[J=P!WQGK[\SU=W*Z.#O@.V/]G;G^KIQ=G0.^
-M,];?F>OOP!SPG;'^SEQ_!^:`[XSU=^;ZNSRG=0[YCO5WYOH[S7.5.^0[UM^9
-MZ^\T<:>%.W3_G;'^SEQ_IXD[+=RA^^^,]7?F^CL]^;-#]]\9Z^_,]7?E[.H<
-M\AWK[\SU=V`.^8[U=^;Z.S"'?,?Z.W/]79ZS.H=\Q_H[<_V=Y;G"';K_SEA_
-M9ZZ_L\2=5>Z0[UA_9ZZ_L\2=5>Z0[UA_9ZZ_L]/%V2'?L?[.7']7SJ[.(=^Q
-M_LY<?P?FD.]8?V>NOP-SR'>LOS/7W^6YMLXAW['^SEQ_U^:YRAWR'>OOS/5W
-M;>*N+=RA^^^,]7?F^KLV<=<6[M#]=\;Z.W/]77OR9X?NOS/6WYGK[\K9U3GD
-M.];?F>OOP!SR'>OOS/5W8`[YCO5WYOJ[/-?5.>0[UM^9Z^^Z/%>X0_??&>OO
-MS/5W7>*NJ]PAW['^SEQ_UR7NNLH=\AWK[\SU=]WIXNR0[UA_9ZZ_*V=7YY#O
-M6']GKK\#<\AWK+\SU]^!.>0[UM^9Z^_R7%_GD.]8?V>NO^OS7.4.^8[U=^;Z
-MNSYQUQ?NT/UWQOH[<_U=G[CK"W?H_CMC_9VY_JX_^;-#]]\9Z^_,]7?E[.H<
-M\AWK[\SU=V`.^8[U=^;Z.S"'?,?Z.W/]79X[UCGD.];?F>OOCGFN<(?NOS/6
-MWYGK[XZ)NV/E#OF.]7?F^KMCXNY8N4.^8_V=N?[N>+HX.^0[UM^9Z^_*V=4Y
-MY#O6WYGK[\`<\AWK[\SU=V`.^8[U=^;ZNSPWU#GD.];?F>OOACQ7N4.^8_V=
-MN?YN2-P-A3MT_YVQ_LY<?S<D[H;"';K_SEA_9ZZ_&T[^[-#]=\;Z.W/]73F[
-M.H=\Q_H[<_T=F$.^8_V=N?X.S"'?L?[.7'^7Y\8ZAWS'^CMS_=V8YPIWZ/X[
-M8_V=N?YN3-R-E3OD.];?F>OOQL3=6+E#OF/]G;G^;CQ=G!WR'>OOS/5WY>SJ
-M'/(=Z^_,]7=@#OF.]7?F^CLPAWS'^CMS_5V>^UCGD.]8?V>NO_N8YRIWR'>L
-MOS/7WWU,W'TLW*'[[XSU=^;ZNX^)NX^%.W3_G;'^SEQ_]_'DSP[=?V>LOS/7
-MWY6SJW/(=ZR_,]??@3GD.];?F>OOP!SR'>OOS/5W>>Y3G4.^8_V=N?[N4YXK
-MW*'[[XSU=^;ZNT^)NT^5.^0[UM^9Z^\^)>X^5>Z0[UA_9ZZ_^W2Z.#OD.];?
-MF>OORMG5.>0[UM^9Z^_`'/(=Z^_,]7=@#OF.]7?F^KL\][G.(=^Q_LY<?_<Y
-MSU7ND.]8?V>NO_N<N/M<N$/WWQGK[\SU=Y\3=Y\+=^C^.V/]G;G^[O/)GQVZ
-M_\Y8?V>NORMG5^>0[UA_9ZZ_`W/(=ZR_,]??@3GD.];?F>OO\MR7.H=\Q_H[
-M<_W=ESQ7N$/WWQGK[\SU=U\2=U\J=\AWK+\SU]]]2=Q]J=PAW['^SEQ_]^5T
-M<7;(=ZR_,]??E;.K<\AWK+\SU]^!.>0[UM^9Z^_`'/(=Z^_,]7=Y[FN=0[YC
-M_9VY_NYKGJO<(=^Q_LY<?_<U<?>U<(?NOS/6WYGK[[XF[KX6[M#]=\;Z.W/]
-MW=>3/SMT_YVQ_LY<?U?.KLXAW['^SEQ_!^:0[UA_9ZZ_`W/(=ZR_,]??Y;EO
-M=0[YCO5WYOJ[;WFN<(?NOS/6WYGK[[XE[KY5[I#O6']GKK_[EKC[5KE#OF/]
-MG;G^[MOIXNR0[UA_9ZZ_*V=7YY#O6']GKK\#<\AWK+\SU]^!.>0[UM^U^3MN
-M[GN=`[YK67_7NO[N>YZKW`'?W3R%N6M=?_<]<?<]<]<>\%/D]SUV;_9[[HVO
-MRQSZ_;;+4\'<O3]^_'9U-XCNJZ*#K?_]<?/IY:^+%MU7]2NOK[L]OU:;PP3^
-MRG_@QY^O'_Y9!F_O#OH#@_D5/IS+/R'=W=U!M]'4=N/./7T[R/TWO-?K],`;
-M?G)];P[]WLR_<G[HNI^?#79=,TT7@_^;7]_M=3]MU[1]TX[I(L=6FDZ;KBUS
-MM^^U6^Z_OK_\]6_-[W_ZQ_^<Q_ZOOMW;ZW[FF^=O?@EGS>8.Z2#T[?Z_?[MW
-M<[<?WQ>GG>>,SCW!<[<?W^M/YM`W/M?^[*F#TE=W\7-[-]<='CXUW'_J_,L,
-M:_:IF58R]]7-H=\^_E?(N[TY8.Z;X\T_M-[\`D^:93]_9^W/O_EN,]Q\F=S]
-MIQF]_7^9QN8HY__+[F;PQ[_^?OVON['WU_]^FU[?W<T!@K_Q'V"G=W=SP,#>
-M;O[/B_SM-@_GP*_T?NWTSK]>F;M'.[TQP8*^\1^@IS?=G1X^I//IP2^9'_>O
-M$;T_!WZ]\BNGU]]^:IP_8R?P5_X#/WZ_?OCGW6";!A_M%=X,+H_XU7&>>\2O
-MCO/<(WYUG.<>]:OC//B(7QWGN4?\ZCC//>)7QWGN4;\Z;@9O_YWC(WV(G^?D
-M[F-R7YM!F\W<ZV,?Q_7U/7R[=__.D7WT_^1#'/]D;(_X(7Z>^_F'^/9'W^PC
-8?HB?YQ[U0[P]'&^\]]M_`$CJT>#UK```
+M'XL("-N7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N<6-O=RYO=70`K9W);ES9L47G
+M]16IOJ<R(FZKW@9LP+.RX3=[`]\6#V]@I.?Z>#/)TY"1>S-LB"JAH()\MS./
+M%A=55:L.C\?;;X=#*X>F.S3C89\/UW^=OLOASE_<_W[X^=<__^7J[K>?O]V.
+MR?&!I]Q?-WK0-'=OZX^',J?GIY;#<?P/YJZ_"YJ[\^KLOWAU=][LY=S;WV[?
+M+'Y.V:#=&SRDN6-Z?4).K_G/7M\/]W;E]O0>[^TJ>;LM&^SN#?Z>YOZ17I^2
+MM]NSN>'>W,F]725O=V1STX.P*(%E9G-+,-?`IU8VMP5S+7QJQW/RP*_M[5P'
+MGQ(V!S]NKPYEKH=/&9MK[LT=KS+0>6Z`3Q'N).1NA$\1[B3D;H)/$>XDY&Z&
+M3Q'N).1N@4\1[B3D;H5/$>XTY&Z#3Q'NR.>+.]SM\"G"G4;<"7Z*<*<1=X)\
+MIXP[C;@3Y#MEW&G$G2#?*>-.(^X$^4X9=QIQ)\AWRKBSB#M!OC/&G47<"?*=
+M,>XLY`[YSAAW%G*'?&>,.PNY0[XSQIV%W"'?&>/.0NZ0[XQQ9R%WR'?&N&M"
+M[I#O&L9=$W*'?-<P[IJ(.\5/$>Z:B#M%OFL8=TW$G2+?-8R[)N).D>\:QET3
+M<:?(=PWCKHFX4^2[AG'71MPI\EW+N&LC[A3YKF7<M2%WR'<MXZX-N4.^:QEW
+M;<@=\EW+N&M#[I#O6L9=&W*'?-<R[MJ0.^2[EG'7A=PAWW6,NR[D#OFN8]QU
+M$7>&GR+<=1%WAGS7,>ZZB#M#ONL8=UW$G2'?=8R[+N+.D.\ZQET7<6?(=QWC
+MKH^X,^2[GG'71]P9\EW/N.M#[I#O>L9='W*'?-<S[OJ0.^2[GG'7A]PAW_6,
+MNS[D#OFN9]SU(7?(=SWC;@BY0[X;&'=#R!WRW<"X&R+N&OP4X6Z(N&N0[P;&
+MW1!QUR#?#8R[(>*N0;X;&'=#Q%V#?#<P[H:(NP;Y;F#<Y7_\S>>0[T;&W1AQ
+MUR#?C8R[,>0.^6YDW(TA=\AW(^-N#+E#OAL9=V/('?+=R+@;0^Z0[T;&W1AR
+MAWPW,NZFD#ODNXEQ-X7<(=]-C+LIXJ[%3Q'NIHB[%OEN8MQ-$7<M\MW$N)LB
+M[EKDNXEQ-T7<M<AW$^-NBKAKD>\FQEW^UY!\#OEN9MS-$7<M\MW,N)M#[I#O
+M9L;=''*'?#<S[N:0.^2[F7$WA]PAW\V,NSGD#OEN9MS-(7?(=S/C;@FY0[Y;
+M&'=+R!WRW<*X6R+N.OP4X6Z)N.N0[Q;&W1)QUR'?+8R[)>*N0[Y;&'=+Q%V'
+M?+<P[I:(NP[Y;F'<K1%W'?+=RKA;(^XZY+N5<;>&W"'?K8R[->0.^6YEW*TA
+M=\AW*^-N#;E#OEL9=VO('?+=RKA;0^Z0[U;&W19RAWRW,>ZVD#ODNXUQMT7<
+M]?@IPMT6<=<CWVV,NRWBKD>^VQAW6\1=CWRW,>ZVB+L>^6YCW&T1=SWRW<:X
+MVR/N>N2[G7&W1]SUR'<[XVX/N4.^VQEW>\@=\MW.N-M#[I#O=L;='G*'?+<S
+M[O:0.^2[G7&WA]PAW^V$.\D_X'/`=W(DW,DQY`[X3HZ$.SE&W`WX*<R=A/W=
+M`'PGK+^3L+\;@.^$]7<2]G<#\)VP_D["_FX`OA/6WTG8WPW`=\+Z.PG[NP'X
+M3EA_)V%_-P#?">OO).SO!N`[8?V=A/W=`'PGK+^3L+\;@.^$]7<2]G<#\)VP
+M_D["_FX`OA/6WTG8WPW`=\+Z.PG[NP'YCO5W$O9W`_(=Z^\D[.]&_!3A+NSO
+M1N0[UM])V-^-R'>LOY.POQN1[UA_)V%_-R+?L?Y.POYN1+YC_9V$_=V(?,?Z
+M.PG[NQ'YCO5W$O9W(_(=Z^\D[.]&Y#O6WTG8WXW(=ZR_D["_&Y'O6'\G87\W
+M(M^Q_D["_FY$OF/]G83]W8A\Q_H["?N[$?F.]7<2]G<3?HIP%_9W$_(=Z^\D
+M[.\FY#O6WTG8WTW(=ZR_D["_FY#O6'\G87\W(=^Q_D["_FY"OF/]G83]W81\
+MQ_H["?N["?F.]7<2]G<3\AWK[R3L[R;D.];?2=C?3<AWK+^3L+^;D.]8?R=A
+M?S<AW['^3L+^;D*^8_V=A/W=A'S'^CL)^[L9/T6X"_N[&?F.]7<2]G<S\AWK
+M[R3L[V;D.];?2=C?S<AWK+^3L+^;D>]8?R=A?S<CW['^3L+^;D:^8_V=A/W=
+MC'S'^CL)^[L9^8[U=Q+V=S/R'>OO).SO9N0[UM])V-_-R'>LOY.POYN1[UA_
+M)V%_-R/?L?Y.POYN1KYC_9V$_=V"GR+<A?W=@GS'^CL)^[L%^8[U=Q+V=POR
+M'>OO).SO%N0[UM])V-\MR'>LOY.POUN0[UA_)V%_MR#?L?Y.POYN0;YC_9V$
+M_=V"?,?Z.PG[NP7YCO5W$O9W"_(=Z^\D[.\6Y#O6WTG8WRW(=ZR_D["_6Y#O
+M6'\G87^W(-^Q_D["_F[%3Q'NPOYN1;YC_9V$_=V*?,?Z.PG[NQ7YCO5W$O9W
+M*_(=Z^\D[.]6Y#O6WTG8WZW(=ZR_D["_6Y'O6'\G87^W(M^Q_D["_FY%OF/]
+MG83]W8I\Q_H["?N[%?F.]7<2]G<K\AWK[R3L[U;D.];?2=C?K<AWK+^3L+];
+MD>]8?R=A?[?AIPAW87^W(=^Q_D["_FY#OF/]G83]W89\Q_H["?N[#?F.]7<2
+M]G<;\AWK[R3L[S;D.];?2=C?;<AWK+^3L+_;D.]8?R=A?[<AW['^3L+^;D.^
+M8_V=A/W=AGS'^CL)^[L-^8[U=Q+V=QOR'>OO).SO-N0[UM])V-]MR'>LOY.P
+MO]OQ4X2[L+_;D>]8?R=A?[<CW['^3L+^;D>^8_V=A/W=CGS'^CL)^[L=^8[U
+M=Q+V=SOR'>OO).SO=N0[UM])V-_MR'>LOY.PO]N1[UA_)V%_MR/?L?Y.POYN
+M1[YC_9V$_=V.?,?Z.PG[NQWYCO5WFG_@Y@YU#OCN^BG,G;K^+M^G=ZC<`=\I
+MZ^_4]7>'Q-TA<V='_!3F3EU_=TC<'?Y1YH#OE/5WZOJ[P\F=G:'[[Y3U=^KZ
+MNW)V=0[X3EE_IZZ_`W/`=\KZ.W7]'9@#OE/6WZGK[_+<DSH'?*>LOU/7WSW)
+M<X<R!WRGK+]3U]\]2=P]J=P!WRGK[]3U=T\2=T\J=\!WROH[=?W=D]/%V0'?
+M*>OOU/5WY>SJ'/"=LOY.77\'YH#OE/5WZOH[,`=\IZR_4]??Y;FG=0[YCO5W
+MZOJ[IWFN<H=\Q_H[=?W=T\3=T\(=NO].67^GKK][FKA[6KA#]]\IZ^_4]7=/
+M3_[LT/UWROH[=?U=.;LZAWS'^CMU_1V80[YC_9VZ_@[,(=^Q_DY=?Y?GGM4Y
+MY#O6WZGK[Y[EN<(=NO].67^GKK][EKA[5KE#OF/]G;K^[EGB[EGE#OF.]7?J
+M^KMGIXNS0[YC_9VZ_JZ<79U#OF/]G;K^#LPAW['^3EU_!^:0[UA_IZZ_RW//
+MZQSR'>OOU/5WS_-<Y0[YCO5WZOJ[YXF[YX4[=/^=LOY.77_W/''WO'"'[K]3
+MUM^IZ^^>G_S9H?OOE/5WZOJ[<G9U#OF.]7?J^CLPAWS'^CMU_1V80[YC_9VZ
+M_B[/O:ASR'>LOU/7W[W(<X4[=/^=LOY.77_W(G'WHG*'?,?Z.W7]W8O$W8O*
+M'?(=Z^_4]7<O3A=GAWS'^CMU_5TYNSJ'?,?Z.W7]'9A#OF/]G;K^#LPAW['^
+M3EU_E^=>UCGD.];?J>OO7N:YRAWR'>OOU/5W+Q-W+PMWZ/X[9?V=NO[N9>+N
+M9>$.W7^GK+]3U]^]//FS0_??*>OOU/5WY>SJ'/(=Z^_4]7=@#OF.]7?J^CLP
+MAWS'^CMU_5V>>U7GD.]8?Z>NOWN5YPIWZ/X[9?V=NO[N5>+N5>4.^8[U=^KZ
+MNU>)NU>5.^0[UM^IZ^]>G2[.#OF.]7?J^KMR=G4.^8[U=^KZ.S"'?,?Z.W7]
+M'9A#OF/]G;K^+L^]KG/(=ZR_4]??O<YSE3OD.];?J>OO7B?N7A?NT/UWROH[
+M=?W=Z\3=Z\(=NO].67^GKK][??)GA^Z_4];?J>OORMG5.>0[UM^IZ^_`'/(=
+MZ^_4]7=@#OF.]7?J^KL\]Z;.(=^Q_DY=?_<FSQ7NT/UWROH[=?W=F\3=F\H=
+M\AWK[]3U=V\2=V\J=\AWK+]3U]^].5V<'?(=Z^_4]7?E[.H<\AWK[]3U=V`.
+M^8[U=^KZ.S"'?,?Z.W7]79Y[6^>0[UA_IZZ_>YOG*G?(=ZR_4]??O4W<O2W<
+MH?OOE/5WZOJ[MXF[MX4[=/^=LOY.77_W]N3/#MU_IZR_4]??E;.K<\AWK+]3
+MU]^!.>0[UM^IZ^_`'/(=Z^_4]7=Y[EV=0[YC_9VZ_NY=GBO<H?OOE/5WZOJ[
+M=XF[=Y4[Y#O6WZGK[]XE[MY5[I#O6'^GKK][=[HX.^0[UM^IZ^_*V=4YY#O6
+MWZGK[\`<\AWK[]3U=V`.^8[U=^KZNSSWOLXAW['^3EU_]S[/5>Z0[UA_IZZ_
+M>Y^X>U^X0_??*>OOU/5W[Q-W[PMWZ/X[9?V=NO[N_<F?';K_3EE_IZZ_*V=7
+MYY#O6'^GKK\#<\AWK+]3U]^!.>0[UM^IZ^_RW(<ZAWS'^CMU_=V'/%>X0_??
+M*>OOU/5W'Q)W'RIWR'>LOU/7WWU(W'VHW"'?L?Y.77_WX71Q=LAWK+]3U]^5
+MLZMSR'>LOU/7WX$YY#O6WZGK[\`<\AWK[]3U=WGNJLXAW['^3J/^SM#]=\KZ
+M.XWZ.T/WWRGK[S3J[PS=?Z>LO].HOS-T_YVR_DZC_L[0_7?*^CN-^CM#]]\I
+MZ^\TZN\,W7^GK+]3TM]]K'/(=ZR_4]???<QSA3MT_YVR_DY=?_<Q<?>Q<H=\
+MQ_H[=?W=Q\3=Q\H=\AWK[]3U=Q]/%V>'?,?Z.W7]73F[.H=\Q_H[=?T=F$.^
+M8_V=NOX.S"'?L?[.\@_<W+'.`=\9Z^^N?^(>=]E/Q\H=\)VQ_LY<?W=,>\?"
+M';K_SEA_9ZZ_.R;NCH4[=/^=L?[.7']W//FS0_??&>OOS/5WY>SJ'/"=L?[.
+M7'\'YH#OC/5WYOH[,`=\9ZR_,]??Y3FI<\!WQOH[<_V=Y+G"';K_SEA_9ZZ_
+MD_3RI'('?&>LOS/7WTGB3BIWP'?&^CMS_9V<+LX.^,Y8?V>NORMG5^>`[XSU
+M=^;Z.S`'?&>LOS/7WX$YX#MC_9VY_B[/:9U#OF/]G;G^3O-<Y0[YCO5WYOH[
+M3=QIX0[=?V>LOS/7WVGB3@MWZ/X[8_V=N?Y.3_[LT/UWQOH[<_U=.;LZAWS'
+M^CMS_1V80[YC_9VY_@[,(=^Q_LY<?Y?GK,XAW['^SEQ_9WFN<(?NOS/6WYGK
+M[RQQ9Y4[Y#O6WYGK[RQQ9Y4[Y#O6WYGK[^QT<7;(=ZR_,]??E;.K<\AWK+\S
+MU]^!.>0[UM^9Z^_`'/(=Z^_,]7=YKJESR'>LOS/7WS5YKG*'?,?Z.W/]79.X
+M:PIWZ/X[8_V=N?ZN2=PUA3MT_YVQ_LY<?]><_-FA^^^,]7?F^KMR=G4.^8[U
+M=^;Z.S"'?,?Z.W/]'9A#OF/]G;G^+L^U=0[YCO5WYOJ[-L\5[M#]=\;Z.W/]
+M79NX:RMWR'>LOS/7W[6)N[9RAWS'^CMS_5U[NC@[Y#O6WYGK[\K9U3GD.];?
+MF>OOP!SR'>OOS/5W8`[YCO5WYOJ[/-?5.>0[UM^9Z^^Z/%>Y0[YC_9VY_JY+
+MW'6%.W3_G;'^SEQ_UR7NNL(=NO_.6']GKK_K3O[LT/UWQOH[<_U=.;LZAWS'
+M^CMS_1V80[YC_9VY_@[,(=^Q_LY<?Y?G^CJ'?,?Z.W/]79_G"G?H_CMC_9VY
+M_JY/W/65.^0[UM^9Z^_ZQ%U?N4.^8_V=N?ZN/UV<'?(=Z^_,]7?E[.H<\AWK
+M[\SU=V`.^8[U=^;Z.S"'?,?Z.W/]79X;ZASR'>OOS/5W0YZKW"'?L?[.7'\W
+M).Z&PAVZ_\Y8?V>NOQL2=T/A#MU_9ZR_,]??#2=_=NC^.V/]G;G^KIQ=G4.^
+M8_V=N?X.S"'?L?[.7'\'YI#O6']GKK_+<V.=0[YC_9VY_F[,<X4[=/^=L?[.
+M7'\W)N[&RAWR'>OOS/5W8^)NK-PAW['^SEQ_-YXNS@[YCO5WYOJ[<G9U#OF.
+M]7?F^CLPAWS'^CMS_1V80[YC_9VY_B[/?:ISR'>LOS/7WWW*<Y4[Y#O6WYGK
+M[SXE[CX5[M#]=\;Z.W/]W:?$W:?"';K_SEA_9ZZ_^W3R9X?NOS/6WYGK[\K9
+MU3GD.];?F>OOP!SR'>OOS/5W8`[YCO5WYOJ[//>YSB'?L?[.7'_W.<\5[M#]
+M=\;Z.W/]W>?$W>?*'?(=Z^_,]7>?$W>?*W?(=ZR_,]???3Y=G!WR'>OOS/5W
+MY>SJ'/(=Z^_,]7=@#OF.]7?F^CLPAWS'^CMS_5V>^U+GD.]8?V>NO_N2YRIW
+MR'>LOS/7WWU)W'TIW*'[[XSU=^;ZNR^)NR^%.W3_G;'^SEQ_]^7DSP[=?V>L
+MOS/7WY6SJW/(=ZR_,]??@3GD.];?F>OOP!SR'>OOS/5W>>YKG4.^8_V=N?[N
+M:YXKW*'[[XSU=^;ZNZ^)NZ^5.^0[UM^9Z^^^)NZ^5NZ0[UA_9ZZ_^WJZ.#OD
+M.];?F>OORMG5.>0[UM^9Z^_`'/(=Z^_,]7=@#OF.]7?F^KL\]ZW.(=^Q_LY<
+M?_<MSU7ND.]8?V>NO_N6N/M6N$/WWQGK[\SU=]\2=]\*=^C^.V/]G;G^[MO)
+MGQVZ_\Y8?V>NORMG5^>0[UA_9ZZ_`W/(=ZR_,]??@3GD.];?F>OO\MSW.H=\
+MQ_H[<_W=]SQ7N$/WWQGK[\SU=]\3=]\K=\AWK+\SU]]]3]Q]K]PAW['^SEQ_
+M]_UT<7;(=ZR_,]??E;.K<\AWK+\SU]^!.>0[UM^9Z^_`'/(=Z^^:_`,W]Z/.
+M`=\UK+]K7'_W(\]5[H#OKI_"W#6NO_N1N/N1N6N.^"GR=8_=F_V1>^.K,H>^
+MWG9Y*IB[\^WG;V]O!]%]572P\5\?-Y]>_KAHT'U5O_+ZVIOS:_1PG,"?^4_\
+M_./5_3_*X,W=0?_%8'Z%]^?R+TA[>W?0332U7;MS3]^/<O<-[_4Z/?"&GUS=
+MF4-?F_E7S@]=]_/08-L>INEB\'_RZ[NY[J=I#TUW:,9TD6,CAU8/;5/F;MYK
+MN]Q]?7_Z\U\.O__A;W\_C_UO?;LWU_V<_\[S^O^U/72#>W7"WN[UW^7]W_VW
+M>SMW\^G[XK3SG+&Y<LN<F[OY]+T^,(>^\[GFH:>.2E_=Q:_M[=S-I^^F_B^'
+MNT_--\W;^6LF-&SN]_MSZ,O'_PIY-S<'S-VAO_Z;UNO?X,EAV<\_6+OS%]\]
+M#-<?)K>_W'KSWS*-AU[._Y7=]>#/?_[UZI^W8Q^N_O4NO;[;FP,$?^<_P4[O
+M]N:`@;W=_*\7^=L]W)\#O]/[M=,[_W[E^L/BL4YO3)I"W_E/T-.;;D\/']+Y
+M]."'S,^[UXC>G0._7_F5T^MN/FN</\=.X,_\)W[^?G7_C]O!)@T^VBN\'EP>
+M\:/C//>('QWGN4?\Z#C//>I'QWGP$3\ZSG./^-%QGGO$CX[SW*-^=%P/WOPS
+MQT?Z)'Z>.[,W]#=?EK0Y=)-[?>S3\?GU_3]XN[?_S)%]ZG_@DSC^Q=@>\9/X
+E>>[A3^+;`V\6_=INC_A)_#SWJ)_$FV-_[;W?_@U4+HE0]:P`````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,26 +1,26 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.qcow2.gz
-M'XL(",]Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N<6-O=S(N;W5T`*V92V_<(!"`
-M[_D5I.\FS=8,8'O[2)JD62FWI&IOO?AYC-1KY?:WUQALUGC&)%MVD945FD^`
-MOQFPDR3FPYCB3*9,;EE;LOZW;<#V?LP;Z^YWMYO]3W=D8#PAHI`.*2;<C'7M
-M<$#A$K[LX#AN;W0"P<$8M02%<)(<W5H'@CLY&I9NN!FY%R$.`1H<>3,.&A^8
-M\?D1\L#Q0>SQ"7S]U!CG=Z3KXQ-F?'Y41N'R(`Z0J"V%*X(X@425%*X*XB02
-M55.X)HA32%1+X'A`E1Z7(E&<PD$0ER%1@L+)("Y'HBCO>-B[+1)%><?#WA5(
-M%.4=#WM7(E&4=SSL785$4=[QL'<U$D5Y!X1WS.$:)(KR#CSOCBWNF<.U2!3E
-M'7C>/;>X%Q..8U&4=^!Y]]+B7CD<4N^`\@X\[UY;W!N'0^H=4-Z!Y]U;BSMQ
-M.*3>`>4=>-Z=6MP[AT/J'5#>@>?=V<([CM0[H+P3GG?O+2MQ.*3>"<H[X7G'
-M+0X<#JEW@O).>-X)BY,.A]0[07DG/.^4Q:4.A]0[07DG/.\RB\L=#JEW@O).
-M>-YM+>Z#PR'U3E#>"<^[CQ;WR>&0>B<H[X3GW6>+.W<XI-X)RCOI>7=A<5\<
-M#JEWDO).>MY=6MR5PR'U3E+>2<^[:XO[.N$`BYJ\2Q*\6=S-(F<!J7<R?21N
-MM\31#RN''&>E.VYSY$IWK`#SIP/)O5::<TJ\"2LS86U5@5SICNYJ,_].P"%W
-MGP`<1SC'V0DKD[OF@;%I6-O:9E;*!F>M.R`@$S[>[.'JR.LWI-L3@$JQHE@`
-M?XSC&]*MSR_S;J"W6PW%0`%3<L(-<U75_OAN=K?L[O+;=PW[Z:8[I%M6L(JS
-M(F>%/SI.3?<W9I\RZ;9<[1$G*-QT+/-P^GB1U2LXK+'N#X&3:U'32X='W%N#
-M4\D\:K]LZ6VB%*PM6%$3N',/ET8V3^KN,F59Q=)&OT^J6OU'G>JG-);W:6*V
-M;1C.6%N6<7UVZX'=P_WFP<#.-K].[?@DMT9@C>Z@5D\.E3FGIINY!P%BNFR.
-MPUXC_=?JZ;I<JFBKM[6R8(WN(%>O,*N'+Y)>/31ENG'5QH0;<67<U>/F%6:B
-MZ_?R2G=T=YOYUP"E!48;H4S;*F)V:%S$[-"XB-FA<5&S0P,C9H?&1<P.C8N8
-M'1H7-3MZ8)/$V\0U3KM79*P&_9PX^W_!VG;<#8^/R^DVL+;UKVSB^,UH(F[B
-B&K>ZB6<-/5GS^>M--N(FKG%1-W&9Z>/WT3]QQ=U%%1H`````
+M'XL("-N7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N<6-O=S(N;W5T`*V82V^<,!"`
+M[_D53M])FBT>V\"FSR3-2KDE57OKA67A&*D]T_[V8CS@Q<Q`LO6NM4IDS2?;
+M?#.V21+W$<)(H5.AUZ+>BO9_;"#V_ADWT=QO;E?[G^;(P63"1!$=6@VX$>O:
+MXX##)7+:(6G<WN@4@8,^:@I:PFEV=',=!.[TJ%NZ[F'D080Z!.AP[,,X:'S@
+MQA=&Z`/'![''I^CU,WU<V)'.CT^Y\851&8?+%W%`1*TY7+&(4T34EL.5BSA-
+M1.TX7+6(,T14S>#D@BHM+B6B)(>#15Q&1"D.IQ=Q.1'%>2>7O5L349QW<MF[
+M@HCBO)/+WFV)*,X[N>Q=241QWLEE[W9$%.<=,-X)CZN(*,X["+P[1MPSCZN)
+M*,X["+Q[CK@7`TY249QW$'CW$G&O/(ZH=\!Y!X%WKQ'WQN.(>@><=Q!X=X*X
+M4X\CZAUPWD'@W1GBWGH<4>^`\PX"[\XGWDFBW@'GG0J\>X>LQ..(>J<X[U3@
+MG40<>!Q1[Q3GG0J\4XC3'D?4.\5YIP+O#.)2CR/JG>*\4X%W&>)RCR/JG>*\
+M4X%W:\1=>!Q1[Q3GG0J\>X^X#QY'U#O%>:<"[SXB[I/'$?5.<=[IP+O/B/OB
+M<42]TYQW.O#N$G%7'D?4.\UYIP/OKA'W=<`!%35XER1T0]S-)&>!J'<Z?21N
+M,\7QEY5#CK/:'[<E\<MWS`#SIP/9O5:[<TJ\"1LW86M50?SR'<W5:OP=@%WN
+M/@'8CW",PPD;E[ONPEA5HJZQN97"X*SV!P1BPL>K/=PN\OIUZ?8$H#&B*";`
+M'_WXNG1K\\N]&VCM-ETQ,"",'G#=7$VY/[Z;S:VXN_SVW<)^^NEVZ59W9X"B
+M\B>!?G22G>[)<!KP]AF7;M/5[G&*Q1V/I]OC[/$BV\W@J"::/PQ.ST4-+QT>
+M\6P=SAXOAJMVV_;+EMB"?33MT;W4'.YNC$LCFZ>[8:0B*T5:V?=)96W_V*7V
+MEB;R-DW<M@W=&6LM,FG/;BVP>;A?/3C8^>K7&8Y/2S2":GP'MWJZJ\PY-]W,
+M7P28Z8HQCGJ-]%^K9^ORUD1;O366*:KQ'>SJ%6[UZ$6RJT>F3-.O6I]P/6X;
+M=_6D>X69V/H]_>4[FKO5^.N`&H'11JC3NHR8'187,3LL+F)V6%S4[+#`B-EA
+M<1&SP^(B9H?%1<V.%E@E\39QB[/NM>O<WIO::V<VWL?X[;@YOX#?Q'0KF-OZ
+K9S9Q^F%4$3=QBYO=Q+.*?;;X^1M,-N(F;G%1-W&=V>/WT3^)='8^%1H`````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,15 +1,16 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.raw.gz
-M'XL("-!Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N<F%W+F]U=`"MEDU/A#`0AN_[
-M*UZO&INVM"Q[,=%$$V^KT9L>^"C'3;SSX^U0D*^6N,E`0TB&>7;FI2^S4H8#
-M,!JRC%S3@>Y)+,_N<'OH::JZ#NA_GTI8`84'!ESM@U+3,\ZA;8<E59\5DF4+
-MK<;[`2>FXT;,<,V4M5GIP!PG`FYLM[T.:"W*<@/\'.O3_>NP,#G,"=H_+V$4
-MK(8U?[B^5UO/ZWM^><7Y\?V#8%]3NUKY8.7S&Y09W$HDJ9+M?J_;#3A-61NU
-M1UR6Q-W$<1EE-3NXV$KCS%Y6V$/_>[<!9^4RJYAG90Y5AK9$V21P#RM<SKSS
-M#(6K',<:N8-5J%NZ:7(H!13>)D4/T="^Q!.."KHB8'=Y$Y<`NQ<_=T-]1@T[
-M(K;2@91ZIM\J1:K=(^WMW7:QQ&7<ZA6DGF53[S1LEMA*!Y+JE4&]N$BD7M0R
-MW:C:Z)`15_&JI_JIX?WAO]_;:SK0G<7R#$`S`-DJ--J/#3YW$([1'81C=`?A
-M6-U!0$9W$([1'81C=`?A6-WA@4[R#7'"J3`FVP:%ALM6]:7&\53?LEVG]T;_
-ESA"/OPS'.,0)MS_$W;7-,@YQPK$.<>/_3TEY^`7C-"Q#B`L`````
+M'XL("-N7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N<F%W+F]U=`"MEDU/A#`0AN_[
+M*]Z]:FS:T@(;3YIHXFTU>O/"9XR'3;SSX^U0D*^6N,E`0TB&>9AY.\,@I3\`
+MHR&+P#5NZ![%\NP.-X>>ILKK@.[]%,(**!S0XRIGE)J>:1JT[;"DZKV\LVRA
+MU7@_X,1T',4,5T]>FQ4WS''"X\9TV^N`UJ(H-L"/,3[=;X>%26%.T.YY":-@
+M-:SYP_6YVFH>W]/S"\X/;^\$^YS2U<H9DQ*E>ZM%FJ^B4[%T[X7X6J;K<9J\
+M-FJ/N"2JWG&MGL<EY%7OX$(KCC-[7KZ&_K>W'F<)9Z8G\[E7J6EK5('*Q'#G
+M)2YEKCS3AY$BJY`VL`I52S=U"J6`W+6)WVX-74.>D"GHDH#=Y55</.Q._-P.
+M\1DU5$1HQ0TQ]4Q?*GDLW8QJ>S==+'$)MWHYJ6?9U#L-GZG0BANBZA5>O;!(
+MI%ZP9;I1M;%#1ES)JY[JIX:K?_?]WE[CANXLEJ<'F@'(%J'1;FSP=0?A&+N#
+M<(S=03C6[B`@8W<0CK$[",?8'81C[0X';"3?$"<<U5Z>05GD!FFQBB\VCBF^
+M[T"ZC=X;_3M#/+P9#>,0)]S^$&]VD@WM;<,XQ`G'.L2-^Y^2\O`+__!T\X@+
+"````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,22 +1,22 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.vhd.gz
-M'XL("-!Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N=FAD+F]U=`"MF$MOVS`,@._]
-M%2QVZS!#;R>7`2O0`KMUPX9==K$=IPN&98_VT(/WWT?*4FS9EK&T=%0CB<+/
-M)$61K(3H+P"GP>W!M>`LO2\-N"V4&P"<#$/YNPP?H6M^'MOF\?!4A*N[Z&%2
-MC*52<9)7&@P^I`15T4/<CMY#%S'%JYO[J\./^XA3`:<"R)8DI16X>O8<@]]N
-M>NV(].6@OGOD];>3=GJNW2"%?^4.A`$I1[_043O$%']38PU*[?=^.-BU)'L:
-MR8=D8C!VXCLK)E(C-9><*@9CEW!N3>H<W-5%6(L^5#`P2KP+<!)*1>\Q;*(?
-M9@-#Y>GA5_7GH9WHIS*AXD[ZR=F<SINK0JBH^..@@:%P7C,7/.5QBEL(E1=Y
-MSZ5R<771"<+&">7-3[TWH&"LGY-BQ>?YQ<CJ5Y%^N!E$M7#/3W371?HZ`>OZ
-M/&#T8(H[&5PWY#^?!]IVL*@/DB"L-2B971!].?)?O6->WWI_'M!:J*H9\'/4
-MK_'+8<$X,%L*#$P.1H)58(=P]K;:9JS?S>U[N'OW\1/!O@[F-A0NC8*FA*T"
-MN9UH-]]IZ[FEH<TV]W;$Z1RN7X(YCC:;EBNXI0&=S.#,FM2IEORWL5:D4INQ
-ME&ZAUK"OH-IE<&\G..Z\W-)T[:!LJ(1;"8VOY3M'A0PVN$U\?4,+%*J(A1T=
-M71.P.WXHCCWL3?'[=="OE2$BED9^(N>]UN?E3<[<<DC8&7,AQ7'GY79#WK-L
-MWMN&8%D:^8FL]ZK>>\M.(N\M;IE8U8KB,L75O-Z3OFK@_L#\/;_G)[J[(GWU
-M0!7*$%M=4R&1LFEH`I!-0Q/V+Z.&LEU=S'-7V:A2,688PC%F&,(Q9AC"L688
-M`C)F&,(Q9AC",688PK%F&`0:P=<($<XW0EC#T?N:H(D:V9:&]+LEE$[--6JM
-M?<HW0IG%,(R-$.%6&R'\+SIOK+_4Q%C&1HAPK(V0"XF4Z2S#Q49HKL-SSC)<
-I;(3$X,`7G&6XY4;HN6<9A&,\RR`<XUD&X9A#16+O<O$/A6BFVP`3````
+M'XL("-R7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N=FAD+F]U=`"MF$MOG#`0@._Y
+M%1/UEJH4CQ^PQT9*U?:TK5KET@NP;+JJNGTDAQSH?Z_'V(`7C+K)L`YBU\S'
+MO#R>D.?]`6`DF#V8%HRFZT*!V4!1`MA)/]"=A?\*7?/SV#8/A\?,']U%#Q/Y
+M5"H6)WF4H.Q#"L"*'F)V=`U=P&0O;NZN#C_N`@X]#CU(%R0E$4P]>XZROY:]
+M=D2Z/>!WA[S^-F@GY]J-4O:OV$&N0(C)'3)H9S'9W]A89:7V>S<,[%J2'4;T
+M)9H8C3WQG<Y/I"9J+CDU'XU=PIDUJ7-P5Q<^%GVJV,0H[#D'(Z!`NK9I$_PP
+M&S95'N]_57_NVQ/],)$J9M!/S.9DVESTJ8+A9J^!HG1>,Q<<Y>$4MY`JS_*>
+MB>5"=*T3<ATFT)D?>V]$P50_(_(5GZ>#D=2O(OWL8LBKA7-ZHKO.XL\`K.OS
+M@,&#,6XPN&[(?ZX.M.UH49\D7EA*0)$,B+R<^*_>,<>WWI\'U!JJ:@;\$O1K
+M7#@T*`-J0XEABX,2H!'TF,[.5MU,];MY^QZV;SY])MC7T=R&TD65@'O8*-B<
+M:C=?:1[W[O7B8FMHL<V]'7`RA>M#,,?18I-B!;<TH!,)G%J3&O:2_XAMCPMU
+M.=Q93J5JI-"("AJ5PFUC''==;IT:!HJ&MG`MH'%[^<[01@:E729N?[-VH]W>
+M[,9N'5T3L#M^S(X][%7V^Z77KQ4^(Y9&>B+EO=;5Y3)E;C$6[(2Y$..XZW);
+MDO<TF_<VODPMC?1$TGM5[[UE)Y'W%I=,V-6R[#+&U;S>$V[7L/EOZ_?\G)[H
+MMEG\Z8'HMR&V?0U](6734'D@FX;*KU]&#46[&LQSHZRP0,8*0SC&"D,XQ@I#
+M.-8*0T#&"D,XQ@I#.,8*0SC6"F.!*N=KA`CG&J&*`B`T12)2(]G2=!]\(&1L
+MKL*U]BG=""6"H1@;(<*M-D+VO^A4;/V!)\8R-D*$8VV$C"^D3.\R3&B$YCH\
+MY5V&"8W0\/AGO<LPRXW04]]E$([Q70;A&-]E$(XY583M72[^`:BG?.D`$P``
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,19 +1,19 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.vhdf.gz
-M'XL("-!Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N=FAD9BYO=70`K9=/J]P@$,#O
-M^RFFO,/"*Q4U:K*7!RV\EMZVCY9>>LD??2RE6PJE])`/7T?-1G<U\(I&@LMD
-M?IF9S#@NI7X`"`ZTS]S+@OD=2:]Y=[]S-#:\#&C?CR9<`8D%>MQHA93C,UJ#
-M,6%2YK2\LOW-V[!><&0=>Q+AIHO6[2P+8ASQN,5=\S*@E-#W-\`OBWW<?0X)
-M0H$X`+?/4Q`,)`<I+CCGNQQC^Q[??X3CVZ?/"/NVNLN9%8X-,`ZB14IJ'2N[
-M^^$I==?CK$&9:"^XIHC;7T?/XQK$31NXW"SCQ)86Y65G\SA)4ZTNUFHT#`V8
-M'OJI@'NXPJG*F2=0/"AH1U`:)(/1X&)2P!A`9\ND<Q`.W)IX@)8!'Q`XGS^1
-MLX>](;]>!_L$"QF1FV5!*7H"4X5V)7=;S.U-=R'%-;6CUV'T9+7H'4*RY&99
-M4(Q>[Z.7#Q)&+U>Z%A>B1EZEN*%N])CK&K8^[/Y]>R\+YB-)+P\4`5C-0F',
-M6+$Z$%>Q.A!7L3H05[4Z$%BQ.A!7L3H05[$Z$%>U.BQ0TWI-''&8>YI"J\"T
-M>(!(S"BVXYG\L><*'/O$7<VW6O]&$\]_#%VQB2-NLXD;771V&5?.5FSBB*O:
-MQ&4X?JL&E*LO)7'="E"VI+H8R-><<<#QYUF/OT]_X^A)MS/#>DB^FJC/&TQ,
-M94NDQY>H"=>1?7>/S_>G'\\+C@>OE@#*%K4:#FJX<5>F[GX]\>\.>5RMRVQ3
-M,H[>00$5N,7$C@?KCFFJ2'<"6IS5!CJ!NI>9_$@$V41&G$N5^.'__;8>5SM5
--[%^#W3\[9-S+LPT`````
+M'XL("-R7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N=FAD9BYO=70`K9=-B]LP$(;O
+M^153>@ALJ9!D2;:/6]C"WM+2TDLO_M*279I2Z*$'__AJ]!%;CF2Z1;8P"K(>
+MS[R:T2B4N@M`<*!=XID?F#^0^)X/=P=+8_WK@.;[:,(&2`S0X08S2#F^,TV@
+MM6^4V5ENLOG-:]\/.+)<1[+"C==9MRT_L,81APONZM<!I82NNP%^#?9QNQP2
+MA`+1`C?O4Q`,)`<IKCCKNQS6]CU\?(33_><O"/N^N,L9XEK0'5+&?F,=R[G[
+M2.XW[CJ<,2BA=L!56?6.6_4<KD+<N(-+M3Q.[,UR,?1O:^MP$G%B>;-9S^HY
+M+@WK8!`YW"G&J<*1)ZP9"NH!U`22P:"Q,RI@#*`Q:=)8"`<^`FVA9L![!,Z7
+M3^3B8._)KW?>/L%\1*1:?B"GGL!0H4W.W1IC>]==B'%5:?4:5$\64Z_UVU2J
+MY0>RZG5.O;1(J%XJ=0W.JT;>Q+B^K'K,5@T3_V;_OGWF!^83B6\'%!Y8S$*A
+M]5`P.Q!7,#L05S`[$%<T.Q!8,#L05S`[$%<P.Q!7-#L,<*+EBCCB,/94!ZTY
+M_Y@B/L1F9,OQ_!P,.T;N3GRO].\4\?1B3`6+..)VB[B><LY>.1MG"Q9QQ!4M
+MXM(?OU4%RN:7DMBO!2B34LT:R)>8L<#AYV4:?I__K-63=F>&Y9"\:3B?5QB8
+MRJ1(AQ]1(_97]KU]>+H[_W@*..Z]"F<G6>.LBH/J;]R5L;O?SOPE*!APB6U*
+MKM5K%:X58Y'CWKI3'"K2GH""LY.&1MAU#BWZ$0TD`QEQ(52N[7_7UN%*AXKY
+,:W#X"S$T<4>S#0``
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,63 +1,63 @@
 # $FreeBSD$
 begin 644 img-1x1-4096-gpt.vmdk.gz
-M'XL("-%Q+ED``VEM9RTQ>#$M-#`Y-BUG<'0N=FUD:RYO=70`K5Q=C]S&$7SW
-MKYC(#PX29,%:DLOE@X+8.3LP@@"*["0O>0@_XT/LDW(Z&!&P/SX<<FJN>'=S
-MI'Q]VM-NB]VUTSW+YJJZP"Q;?IPK6E<4KNA=>7(9W/1/R\-E^;TQ/8YG'KC\
-M^>HO?S_PY]>'P^6S!0P^2D*0*9P8J_>Y'![\$.[X7-3JP/0X;L+E/JI]%!C@
-MCHD#2;AB.GA\*H2K:^;#O7\A<"X"N15<^41.R62?6]UO/@O%\^O+_1JF[3W5
-MKLK=J0VF.Y6SG;OJ.!_+7#4YC1/@Y^[J^L-_W-7PH;N]?G_W+JSOZ/=V<BY.
-MWO_4>80IL>KD7_@#'J[V$*?!Y;W+X0^[R^TWUS\.AY^'VP_7[VY>@^D>_=X6
-MN2MJOQSOG]T_5H9_D\R=X-_#7?[X[=7K\,G-#N^;6\+YJ&DATWM/>2CNZ>3\
-M[^/'O+KAYLXCCN$GKL[O;2A..;]WX5^4A:MJ-R^G]-C'Z7`?4IYKU]T.S=WP
-M_<?WP^M7/[V[B;7S>^M+5L]`Y[E0N2MS#Q52\^4K/:+_V,R[YBX_7M_]<-U]
-M-Z7Y87AU^-P1[N1K-VW@.:QKR7H*.25W=EKVY>O_W4WYNC[L[#7AYD7,24SO
-M71Y=67FL:0/GK3BZO/"OIG^:%CQE4L`[N<N[F\/;?TRGN"_6=V^^?$NX\Q0U
-M>4X+G$*FA%8YE4O^Y<./I;M\][5[Y9/\_H=A_@02KEY.,^^\[`-F\^A?A*HM
-M\+Z)%?[`O+/NJKEKW%?-A^'P^=755W%G&Y]L,3^FI0T>Y;1`^\_W7,ZI<,M.
-M+QL];T7?MX>F;][?#;=^>^-6M+Y$?<C4;VMQOXWK]ZGFG1K])\9=7KM7U_VT
-MIQ[VW\.[GPC7+1_C:1W^(U'/@;E_,7UZ9O@AO,/RB?';Y.&&N]N/A^[CC]<W
-M_72BN=>$ZY?:3<M9=O-^,Z<-G%;XY`*GVKV:=S4NCW"#7UW_:('S?H9"QD7%
-MMW67G^;E_3`T_;2T"9MPHU_=\>EUA$H]>*L)W5WNJS;C?@AP>19:0!Y:V:I$
-M<3G+&TH#';J[=[?+PEY)/\X?7LM>VH^+1Y?4ZA<"+G#6ZSME#ZYGN<858I0K
-M0'\5RZ;?/TR_;^[7=_+K.XEGI5%G,>H5W+\FB/>/TSWYL[`1SU:C.C'Z/=4[
-M^=8VB.?XL'K\J@%YG8;C=P%ZYAI5B%&NX%*U*T/MZ%EIU%F,>@67JMTIU(Z>
-MK49U8O2[DJU"[>@Y:I1_XE<I9#N^EIW.H7;TS#6J$*-<P:5J5X?:T;/2J+,8
-M]0HN5;LFU(Z>K49U8O2[DFU#[>@Y:I1_8H.`O$[#=:%V],PUJA"C7,&E:M>'
-MVM&STJBS&/4*+E6[(=2.GJU&=6+TNY(=0^WH.6J4?RJD=L467)6%VM$SUZA"
-MC'(%EZA=Q7Y'STJCSF+4*[A$[2KV.WJV&M6)T>]*EOV.GJ-&^:=2:E=NPK'?
-MT3/7J$*,<@67JAW['3TKC3J+4:_@4K5COZ-GJU&=&/VN9-GOZ#EJE'\Z2>U.
-MFW#L=_3,-:H0HUS!I6K'?D?/2J/.8M0KN%3MV._HV6I4)T:_*UGV.WJ.&N6?
-M^"4(\CH-QWY'SURC"C'*%5RJ=NQW]*PTZBQ&O8)+U8[]CIZM1G5B]+N29;^C
-MYZA1_HF$#.1U$NZ<A=K1,]>H0HQR!9>HW9G]CIZ51IW%J%=PB=J=V>_HV6I4
-M)T:_*UGV.WJ.&N6?:JE=O0G'?D?/7*,*,<H57*IV['?TK#3J+$:]@DO5COV.
-MGJU&=6+TNY)EOZ/GJ%'^B?]_@KQ.P['?T3/7J$*,<@67JAW['3TKC3J+4:_@
-M4K5COZ-GJU&=&/VN9-GOZ#EJE'\B_PAYG89COZ-GKE&%&.4*+E4[]CMZ5AIU
-M%J->P:5JQWY'SU:C.C'Z7<FRW]%SU"C_U$GMNBVX.@NUHV>N4848Y0HN4;N:
-M_8Z>E4:=Q:A7<(G:U>QW]&PUJA.CWY4L^QT]1XWR3[W4KM^$8[^C9ZY1A1CE
-M"BY5._8[>E8:=1:C7L&E:L=^1\]6HSHQ^EW)LM_1<]0H_S1([89-./8[>N8:
-M58A1KN!2M6._HV>E46<QZA5<JG;L=_1L-:H3H]^5+/L=/4>-\D^CU&[<A&._
-MHV>N4848Y0HN53OV.WI6&G46HU[!I6K'?D?/5J,Z,?I=R;+?T7/4J$RF9Y#7
-M2;@F6VH7/7.-*L0H5W")VC6AWT7/2J/.8M0KN$3MFM#OHF>K49T8_:YD0[^+
-MGJ-&^9()?X=-2JL)_0["WT'Y.PA_ATW^K@G]#L+?0?D["'^'3?ZN"?T.PM]!
-M^3L(?[<CV=#O(/P=E+^#\'?8I+2:T.\@_!V4OX/P=]CD[YK0[R#\'92_@_!W
-MV.3OFM#O(/P=E+^#\'<[D@W]#L+?0?D["'^'34JK"?T.PM]!^3L(?X=-_JX)
-M_0["WT'Y.PA_ATW^K@G]#L+?0?D["'^W(]G0[R#\'92_@_!WV*2TVBS43O@[
-M*'\'X>^PR=^U['?"WT'Y.PA_ATW^KF6_$_X.RM]!^+L=R;+?"7\'Y>\@_!TV
-M*:V6_4[X.RA_!^'OL,G?M>QWPM]!^3L(?X=-_JYEOQ/^#LK?0?B['<FRWPE_
-M!^7O(/P=-BFMEOU.^#LH?P?A[[#)W[7L=\+?0?D["'^'3?ZN9;\3_@[*WT'X
-MNQW)LM\)?P?E[R#\'38IK9;]3O@[*'\'X>^PR=^U['?"WT'Y.PA_ATW^KF6_
-M$_X.RM]!^+L=R;+?"7\'Y>\@_!TV*:TN"[43_@[*WT'X.VSR=QW[G?!W4/X.
-MPM]AD[_KV.^$OX/R=Q#^;D>R['?"WT'Y.PA_ATU*JV._$_X.RM]!^#ML\G<=
-M^YWP=U#^#L+?89._Z]COA+^#\G<0_FY'LNQWPM]!^3L(?X=-2JMCOQ/^#LK?
-M0?@[;/)W'?N=\'=0_@["WV&3O^O8[X2_@_)W$/YN1[+L=\+?0?D["'^'34JK
-M8[\3_@[*WT'X.VSR=QW[G?!W4/X.PM]AD[_KV.^$OX/R=Q#^;D>R['?"WT'Y
-M.PA_ATU*J\]"[82_@_)W$/X.F_Q=SWXG_!V4OX/P=]CD[WKV.^'OH/P=A+_;
-MD2S[G?!W4/X.PM]AD]+JV>^$OX/R=Q#^#IO\7<]^)_P=E+^#\'?8Y.]Z]COA
-M[Z#\'82_VY$L^YWP=U#^#L+?89/2ZMGOA+^#\G<0_@Z;_%W/?B?\'92_@_!W
-MV.3O>O8[X>^@_!V$O]N1+/N=\'=0_@["WV&3TNK9[X2_@_)W$/X.F_Q=SWXG
-M_!V4OX/P=]CD[WKV.^'OH/P=A+_;D2S[G?!W4/XNBND@KP7.+;\!;LB6VCTI
-M*7_BGV+MW).K&ZSU@>.X%S!_.EV_QS%=9,\NX]/7AUF_&&<>2]5_&>`"9UP_
-MQ/F[E.D^[E/UE8CS=SY>I*]$G+_S\2)])>+\G8\7Z2L1Y^\F^DK$^;N)OA)Q
+M'XL("-R7?5P``VEM9RTQ>#$M-#`Y-BUG<'0N=FUD:RYO=70`K5Q=C]S&$7SW
+MKYC(#PX29,%:DLOE@X#8.1LP@@"*[20O>0@_XTML23D=@@C8'Q\..357O-LY
+M4KX^\;3;VN[:Z9YE<U5=8)8M/\X5K2L*5_2N/+D,;OJGY7!9_F!,Q_',%RY_
+MO/G37P_\^?7A</EL`8./DA!D"B?&ZGTNAT<_A#L^%[5Z83J.FW"YCVJ?!`:X
+M8^*%)%PQO7B\%L+5-?/+O7\B<"X"N15<>26G9++/K>XWGX7B^?7E?@W3]IYJ
+M5^7NU`;3G<K9SEUUG%_+7#4YC1/@Y^[F]L._W<WPH;N[?7__+JSOZ/=V<BY.
+MWO_4>80IL>KDG_@7/%SM(4Z#RWN7P[_L+G??W/XT'/X[W'VX???V-9CNT>]M
+MD;NB]LOQ_MG#L3+\FV3N!/\>[O*';V]>AT]N=GC?W!'.1TT+F=Y[RD-Q3R?G
+M?Y\>\^J&M_<><0P_<75^;T-QROF]"_^D+%Q5NWDYI<<^3B_W(>6Y=MW=T-P/
+M/WQ\/[Q^]?.[M[%V?F]]R>H9Z#P7*G=E[J%":KY\I4?T'YMYU]SEI]O['V^[
+M[Z<T/PRO#I\[PIU\[:8-/(=U+5E/(:?DSD[+OGS]O_LI7]>'G;TEW+R(.8GI
+MO<NC*RN/-6W@O!5'EQ?^V?1/TX*G3`IX)W=Y]_;PW=^F4]P7Z_LW7WY'N/,4
+M-7E."YQ"IH16.95+_N7CCZ6[?/^U>^63_.''8?X$$JY>3C/OO.P#9O/HGX2J
+M+?"^B17^A7EGW4USW[BOF@_#X?.;FZ_BSC8^V6(^IJ4-'N6T0/O/]US.J7#+
+M3B\;/6]%W[>'IF_>WP]W?GOC5K2^1'W(U&]K\;"-Z_>IYIT:_2?&75Z[5[?]
+MM*<>]I_#NY\)URT?XVD=_B-1SX&Y?S)]>F;X(;S#\HGQV^3AAON[CX?NXT^W
+M;_OI1'.O"=<OM9N6L^SFPV9.&SBM\.H"I]J]FG<U+H]P@U]=_V2!\WZ&0L9%
+MQ;=UEY_GY?TX-/VTM`F;<*-?W?'Z.D*E'KW5A.XN#U6;<3\$N#P++2`/K6Q5
+MHKB<Y0VE@0[=_;N[96&OI!_GCZ]E+^W'Q9-+:O4+`1<XZ_6=LD?7LUSC"C'*
+M%:"_BF73[^^GWS</ZSOY]9W$L]*HLQCU"NX?$\3[I^F>_%G8B&>K49T8_9[J
+MG7QK&\1S?%P]?M6`/$_#\;L`/7.-*L0H5W"IVI6A=O2L-.HL1KV"2]7N%&I'
+MSU:C.C'Z7<E6H7;T'#7*/_"K%+(=7\M.YU`[>N8:58A1KN!2M:M#[>A9:=19
+MC'H%EZI=$VI'SU:C.C'Z7<FVH7;T'#7*/[!!0)ZGX;I0.WKF&E6(4:[@4K7K
+M0^WH66G468QZ!9>JW1!J1\]6HSHQ^EW)CJ%V]!PURC\44KMB"Z[*0NWHF6M4
+M(4:Y@DO4KF*_HV>E46<QZA5<HG85^QT]6XWJQ.AW)<M^1\]1H_Q#*;4K-^'8
+M[^B9:U0A1KF"2]6._8Z>E4:=Q:A7<*G:L=_1L]6H3HQ^5[+L=_0<-<H_G*1V
+MITTX]CMZYAI5B%&NX%*U8[^C9Z519S'J%5RJ=NQW]&PUJA.CWY4L^QT]1XWR
+M#_P2!'F>AF._HV>N4848Y0HN53OV.WI6&G46HU[!I6K'?D?/5J,Z,?I=R;+?
+MT7/4*/]`0@;R/`EWSD+MZ)EK5"%&N8)+U.[,?D?/2J/.8M0KN$3MSNQW]&PU
+MJA.CWY4L^QT]1XWR#[74KMZ$8[^C9ZY1A1CE"BY5._8[>E8:=1:C7L&E:L=^
+M1\]6HSHQ^EW)LM_1<]0H_\#_/T&>I^'8[^B9:U0A1KF"2]6._8Z>E4:=Q:A7
+M<*G:L=_1L]6H3HQ^5[+L=_0<-<H_D'^$/$_#L=_1,]>H0HQR!9>J'?L=/2N-
+M.HM1K^!2M6._HV>K49T8_:YDV>_H.6J4?^BD=MT67)V%VM$SUZA"C'(%EZA=
+MS7Y'STJCSF+4*[A$[6KV.WJV&M6)T>]*EOV.GJ-&^8=>:M=OPK'?T3/7J$*,
+M<@67JAW['3TKC3J+4:_@4K5COZ-GJU&=&/VN9-GOZ#EJE'\8I';#)AS['3US
+MC2K$*%=PJ=JQW]&STJBS&/4*+E4[]CMZMAK5B='O2I;]CIZC1OF'46HW;L*Q
+MW]$SUZA"C'(%EZH=^QT]*XTZBU&OX%*U8[^C9ZM1G1C]KF39[^@Y:E0FTS/(
+M\R1<DRVUBYZY1A5BE"NX1.V:T.^B9Z519S'J%5RB=DWH=]&SU:A.C'Y7LJ'?
+M1<]1HWS)A+_#)J75A'X'X>^@_!V$O\,F?]>$?@?A[Z#\'82_PR9_UX1^!^'O
+MH/P=A+_;D6SH=Q#^#LK?0?@[;%):3>AW$/X.RM]!^#ML\G=-Z'<0_@[*WT'X
+M.VSR=TWH=Q#^#LK?0?B['<F&?@?A[Z#\'82_PR:EU81^!^'OH/P=A+_#)G_7
+MA'X'X>^@_!V$O\,F?]>$?@?A[Z#\'82_VY%LZ'<0_@[*WT'X.VQ26FT6:B?\
+M'92_@_!WV.3O6O8[X>^@_!V$O\,F?]>RWPE_!^7O(/S=CF39[X2_@_)W$/X.
+MFY16RWXG_!V4OX/P=]CD[UKV.^'OH/P=A+_#)G_7LM\)?P?E[R#\W8YDV>^$
+MOX/R=Q#^#IN45LM^)_P=E+^#\'?8Y.]:]COA[Z#\'82_PR9_U[+?"7\'Y>\@
+M_-V.9-GOA+^#\G<0_@Z;E%;+?B?\'92_@_!WV.3O6O8[X>^@_!V$O\,F?]>R
+MWPE_!^7O(/S=CF39[X2_@_)W$/X.FY16EX7:"7\'Y>\@_!TV^;N._4[X.RA_
+M!^'OL,G?=>QWPM]!^3L(?[<C6?8[X>^@_!V$O\,FI=6QWPE_!^7O(/P=-OF[
+MCOU.^#LH?P?A[[#)WW7L=\+?0?D["'^W(UGV.^'OH/P=A+_#)J75L=\)?P?E
+M[R#\'3;YNX[]3O@[*'\'X>^PR=]U['?"WT'Y.PA_MR-9]COA[Z#\'82_PR:E
+MU;'?"7\'Y>\@_!TV^;N._4[X.RA_!^'OL,G?=>QWPM]!^3L(?[<C6?8[X>^@
+M_!V$O\,FI=5GH7;"WT'Y.PA_ATW^KF>_$_X.RM]!^#ML\G<]^YWP=U#^#L+?
+M[4B6_4[X.RA_!^'OL$EI]>QWPM]!^3L(?X=-_JYGOQ/^#LK?0?@[;/)W/?N=
+M\'=0_@["W^U(EOU.^#LH?P?A[[!):?7L=\+?0?D["'^'3?ZN9[\3_@[*WT'X
+M.VSR=SW[G?!W4/X.PM_M2);]3O@[*'\'X>^P26GU['?"WT'Y.PA_ATW^KF>_
+M$_X.RM]!^#ML\G<]^YWP=U#^#L+?[4B6_4[X.RA_%\5TD.<"YY;?`#=D2^VN
+M2LJO_%.LG;NZNL%:'SB.>P'SZ^GZ/8[I(GMV&9^^/LSZQ3CS6*K^RP`7../Z
+M(<[?I4P/<9^JKT2<O_-XD;X2<?[.XT7Z2L3Y.X\7Z2L1Y^\F^DK$^;N)OA)Q
 M_FZBKT2<OYOH*Q'G[R;Z2L3YNXF^$G'^;J*O1)R_F^@K$>?O)OI*Q/F[B;X2
 M<?YNHJ]$G+^;Z"L1Y^\F^DK$^;N)OA)Q_FZBKT2<OYOH*Q'G[R;Z2L3YNXF^
 M$G'^;J*O1)R_F^@K$>?O)OI*Q/F[B;X2<?YNHJ]$G+^;Z"L1Y^\F^DK$^;N)
@@ -72,16 +72,16 @@ M^DK$^;N)OA)Q_FZBKT2<OYOH*Q'G[R;Z2L3YNXF^$G'^;J*O1)R_F
 M)OI*Q/F[B;X2<?YNHJ]$G+^;Z"O!^;N-OA*#J;X2@ZF^$H.IOA*#J;X2@ZF^
 M$H.IOA*#J;X2@ZF^$H.IOA*#J;X2@ZF^$H.IOA*#J;X2@ZF^$H.IOA)CEAGJ
 M*S&:ZBLQFNHK,9KJ*S&:ZBLQFNHK,9KJ*S&:ZBLQFNHK,9KJ*S&:ZBLQFNHK
-M,9KJ*S&:ZBLQFNHK,9KJ*X]9EAGJ*X^/[G6\$^YQLHL^\`A3?>7Q^.PR/GU]
-MQ5R_Y>ZJC_].'[A\=5C_B8!H/PV0*US#,>$"_MQ8M%[#X,8Q/!;E'#]!HSM6
-MZ82_.`A<;UR__?N[/,K2-<TCP+]Q??/^%J6_'W-1SS?GY9UYRR+"S;F7G:[O
-MZV^^=6^^?/N]!_OG?;KS[9V[W)-M1>51UJM#.MT_O7U\=A3S[9T?5YMP>1+N
-MBZ=.MF*^O?/8/P/WU",-5SP7]:EW`B_FVSMKE*IO73ZX-G=CXYH^`??[!W`G
-MXT_>?.?9]N2JSM\_N(3KYIL]]R=/2[OS=)HL__,[NF/OE0@5W-'?D?EPN?GK
-MX68!^]WAO[\-ZUON/(NG'^D#J>H5\UW>SZETJT3#7K=Y@<NMJ^>_K[2E6?7J
-M\&%YZI$^D*Q>LU0O<56;JO?4J3O!\:KVJS5<:UN]<KYJ+,*3QW^G#US>'-9_
-M%L`B`)JML/"W%+0[.SR<X=GAX0S/#@]G>G9X0,.SP\,9GAT>SO#L\'"F9T?A
-M;QAI=Q'W<%B^,5<G-U;^"\1J&<G+\>7P\_2]PO]\L4IWYAR3E_YG+N)/;\9@
-E>!'W<,]>Q,<AF2Q_'B1K>!'W<*87\<+?O3/[[/^_O`I!M&4`````
+M,9KJ*S&:ZBLQFNHK,9KJ*X]9EAGJ*X]/[G6\$^YILHL^\`A3?>7Q^.PR/GU]
+MQ5R_Y>ZJ3_].OW#YZK#^$P'1?AH@5[B&8\(%_+FQ:+V&P8UC.!;E'#]!HSM6
+MZ82_.`A<;UR__?N['&7IFN8)X%^XOGE_B]+?C[FHYYOS\LZ\91'AYMS+3M?W
+M]3??NC=??O>#!_O[0[KS[9TGH+'Q*'W[:'5(I?OMX<LK9T<QW][Y:;4)EZ?@
+MEBUX"N<OWV/_#-RU(PU7/!?UJ7<"+^;;.T>UUW2H^M:UQ_#%O2M2<&_6<"?C
+M3]Y\Y]GVY*K.WS^XA.OFFSWW)T]+N_-TFBS_\SNZ8^^5"!7<T=^1^7!Y^^?#
+MVP7L=X?__#:L;[GS+*X?Z1=2U2OFN[R?4^E6B8:];O,"EUM7SW]?:4NSZM6A
+M35T[TB\DJ]<LU4M<U:;J73MU)SA>U7ZUAFMMJU?.5XU%>/+T[_0+ES>']9\%
+ML`B`9BLL_"T%[<X.#V=X=G@XP[/#PYF>'1[0\.SP<(9GAX<S/#L\G.G94?@;
+M1MI=Q#W<_'_PQM73]Y_I(MZMEY&\'%_^Q85]L4IWYAR3E_YG+N+7-V,PO(A[
+CN&<OXN.02C;B/$K6\"+NX4POXH6_>V?VV?\!KL<'>[1E````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,132 +1,132 @@
 # $FreeBSD$
 begin 644 img-1x1-512-gpt.qcow.gz
-M'XL(",5Q+ED``VEM9RTQ>#$M-3$R+6=P="YQ8V]W+F]U=`"MG<MN7-F11>?U
-M%5=OB9*HC(C[U-MNM`'/RH9[UH.ZKQQU&]ES?7PSR?,@(_=6V!!51$$%X6YD
-M'BTNJE2KC@Z'NV]-TTG3]DT[-<>EN?GG]"'-O7]X^-'\^-M?_GI]_]N/W^[&
-MY/"3I]P_M]I(FGNP]><ZI^>GUN8P_0MS-Q]P[MZKLW_CU=U[LY=S5[_=O5G\
-MG+)!>S#8I+E#>GU"3J_]UU[?=_=VY>[T'N_M*GF['1OL'PS^GN;^2*]/R=L=
-MV-SX8.[DWJZ2MSNQN?FGL"B!96%S:S#7PJ<V-K<'<QU\ZHCGY"<_MW=S/7Q*
-MV)S"N:;,#?`I8W/M@[G#=08ZSXWP*<*=A-Q-\"G"G83<S?`IPIV$W"WP*<*=
-MA-RM\"G"G83<;?`IPIV&W.WP*<*=AMP=X5.$.XVX$_P4X4XC[@3Y3AEW&G$G
-MR'?*N-.(.T&^4\:=1MP)\ITR[C3B3I#OE'%G$7>"?&>,.XNX$^0[8]Q9R!WR
-MG3'N+.0.^<X8=Q9RAWQGC#L+N4.^,\:=A=PAWQGCSD+ND.^,<=>&W"'?M8R[
-M-N0.^:YEW+41=XJ?(MRU$7>*?-<R[MJ(.T6^:QEW;<2=(M^UC+LVXDZ1[UK&
-M71MQI\AW+>.NB[A3Y+N.<==%W"GR7<>XZT+ND.\ZQET7<H=\US'NNI`[Y+N.
-M<=>%W"'?=8R[+N0.^:YCW'4A=\AW'>.N#[E#ONL9=WW('?)=S[CK(^X,/T6X
-MZR/N#/FN9]SU$7>&?-<S[OJ(.T.^ZQEW?<2=(=_UC+L^XLZ0[WK&W1!Q9\AW
-M`^-NB+@SY+N!<3>$W"'?#8R[(>0.^6Y@W`TA=\AW`^-N"+E#OAL8=T/('?+=
-MP+@;0NZ0[P;&W1ARAWPW,N[&D#ODNY%Q-T;<M?@IPMT8<=<BWXV,NS'BKD6^
-M&QEW8\1=BWPW,N[&B+L6^6YDW(T1=RWRW<BXR[_]S>>0[R;&W11QUR+?38R[
-M*>0.^6YBW$TA=\AW$^-N"KE#OIL8=U/('?+=Q+B;0NZ0[R;&W11RAWPW,>[F
-MD#ODNYEQ-X?<(=_-C+LYXJ[#3Q'NYHB[#OEN9MS-$7<=\MW,N)LC[CKDNYEQ
-M-T?<=<AW,^-NCKCKD.]FQEW^SY!\#OEN8=PM$7<=\MW"N%M"[I#O%L;=$G*'
-M?+<P[I:0.^2[A7&WA-PAWRV,NR7D#OEN8=PM(7?(=POC;@VY0[Y;&7=KR!WR
-MW<JX6R/N>OP4X6Z-N.N1[U;&W1IQUR/?K8R[->*N1[Y;&7=KQ%V/?+<R[M:(
-MNQ[Y;F7<;1%W/?+=QKC;(NYZY+N-<;>%W"'?;8R[+>0.^6YCW&TA=\AW&^-N
-M"[E#OML8=UO('?+=QKC;0NZ0[S;&W1YRAWRW,^[VD#ODNYUQMT?<#?@IPMT>
-M<3<@W^V,NSWB;D"^VQEW>\3=@'RW,^[VB+L!^6YGW.T1=P/RW<ZX.T;<#<AW
-M1\;=,>)N0+X[,NZ.(7?(=T?&W3'D#OGNR+@[AMPAWQT9=\>0.^2[(^/N&'*'
-M?'=DW!U#[I#OCH0[R=_A<\!W<B#<R2'D#OA.#H0[.43<C?@IS)V$_=T(?">L
-MOY.POQN![X3U=Q+V=R/PG;#^3L+^;@2^$];?2=C?C<!WPOH["?N[$?A.6'\G
-M87\W`M\)Z^\D[.]&X#MA_9V$_=T(?">LOY.POQN![X3U=Q+V=R/PG;#^3L+^
-M;@2^$];?2=C?C<!WPOH["?N[$?F.]7<2]G<C\AWK[R3L[R;\%.$N[.\FY#O6
-MWTG8WTW(=ZR_D["_FY#O6'\G87\W(=^Q_D["_FY"OF/]G83]W81\Q_H["?N[
-M"?F.]7<2]G<3\AWK[R3L[R;D.];?2=C?3<AWK+^3L+^;D.]8?R=A?S<AW['^
-M3L+^;D*^8_V=A/W=A'S'^CL)^[L)^8[U=Q+V=S-^BG`7]G<S\AWK[R3L[V;D
-M.];?2=C?S<AWK+^3L+^;D>]8?R=A?S<CW['^3L+^;D:^8_V=A/W=C'S'^CL)
-M^[L9^8[U=Q+V=S/R'>OO).SO9N0[UM])V-_-R'>LOY.POYN1[UA_)V%_-R/?
-ML?Y.POYN1KYC_9V$_=V,?,?Z.PG[NP4_1;@+^[L%^8[U=Q+V=POR'>OO).SO
-M%N0[UM])V-\MR'>LOY.POUN0[UA_)V%_MR#?L?Y.POYN0;YC_9V$_=V"?,?Z
-M.PG[NP7YCO5W$O9W"_(=Z^\D[.\6Y#O6WTG8WRW(=ZR_D["_6Y#O6'\G87^W
-M(-^Q_D["_FY!OF/]G83]W8J?(MR%_=V*?,?Z.PG[NQ7YCO5W$O9W*_(=Z^\D
-M[.]6Y#O6WTG8WZW(=ZR_D["_6Y'O6'\G87^W(M^Q_D["_FY%OF/]G83]W8I\
-MQ_H["?N[%?F.]7<2]G<K\AWK[R3L[U;D.];?2=C?K<AWK+^3L+];D>]8?R=A
-M?[<BW['^3L+^;L-/$>["_FY#OF/]G83]W89\Q_H["?N[#?F.]7<2]G<;\AWK
-M[R3L[S;D.];?2=C?;<AWK+^3L+_;D.]8?R=A?[<AW['^3L+^;D.^8_V=A/W=
-MAGS'^CL)^[L-^8[U=Q+V=QOR'>OO).SO-N0[UM])V-]MR'>LOY.PO]N0[UA_
-M)V%_M^.G"'=A?[<CW['^3L+^;D>^8_V=A/W=CGS'^CL)^[L=^8[U=Q+V=SOR
-M'>OO).SO=N0[UM])V-_MR'>LOY.PO]N1[UA_)V%_MR/?L?Y.POYN1[YC_9V$
-M_=V.?,?Z.PG[NQWYCO5W$O9W._(=Z^\D[.]VY#O6WTG8W^W(=ZR_D["_.^*G
-M"'=A?W=$OF/]G83]W1'YCO5W$O9W1^0[UM])V-\=D>]8?R=A?W=$OF/]G83]
-MW1'YCO5W$O9W1^0[UM])V-\=D>]8?R=A?W=$OF/]G83]W1'YCO5W$O9W1^0[
-MUM])V-\=D>]8?R=A?W=$OF/]G>;ON+FFS@'?W3R%N5/7W^7[])K*'?"=LOY.
-M77_7).Z:S)T=\%.8.W7]79.X:_XH<\!WROH[=?U=<W)G9^C^.V7]G;K^KIQ=
-MG0.^4];?J>OOP!SPG;+^3EU_!^:`[Y3U=^KZNSSWI,X!WRGK[]3U=T_R7%/F
-M@.^4]7?J^KLGB;LGE3O@.V7]G;K^[DGB[DGE#OA.67^GKK][<KHX.^`[9?V=
-MNOZNG%V=`[Y3UM^IZ^_`'/"=LOY.77\'YH#OE/5WZOJ[//>TSB'?L?Y.77_W
-M-,]5[I#O6'^GKK][FKA[6KA#]]\IZ^_4]7=/$W=/"W?H_CME_9VZ_N[IR9\=
-MNO].67^GKK\K9U?GD.]8?Z>NOP-SR'>LOU/7WX$YY#O6WZGK[_+<LSJ'?,?Z
-M.W7]W;,\5[A#]]\IZ^_4]7?/$G?/*G?(=ZR_4]??/4O</:O<(=^Q_DY=?_?L
-M='%VR'>LOU/7WY6SJW/(=ZR_4]??@3GD.];?J>OOP!SR'>OOU/5W>>YYG4.^
-M8_V=NO[N>9ZKW"'?L?Y.77_W/''WO'"'[K]3UM^IZ^^>)^Z>%^[0_7?*^CMU
-M_=WSDS\[=/^=LOY.77]7SJ[.(=^Q_DY=?P?FD.]8?Z>NOP-SR'>LOU/7W^6Y
-M%W4.^8[U=^KZNQ=YKG"'[K]3UM^IZ^]>).Y>5.Z0[UA_IZZ_>Y&X>U&Y0[YC
-M_9VZ_N[%Z>+LD.]8?Z>NORMG5^>0[UA_IZZ_`W/(=ZR_4]??@3GD.];?J>OO
-M\MS+.H=\Q_H[=?W=RSQ7N4.^8_V=NO[N9>+N9>$.W7^GK+]3U]^]3-R]+-RA
-M^^^4]7?J^KN7)W]VZ/X[9?V=NOZNG%V=0[YC_9VZ_@[,(=^Q_DY=?P?FD.]8
-M?Z>NO\MSK^H<\AWK[]3U=Z_R7.$.W7^GK+]3U]^]2MR]JMPAW['^3EU_]RIQ
-M]ZIRAWS'^CMU_=VKT\79(=^Q_DY=?U?.KLXAW['^3EU_!^:0[UA_IZZ_`W/(
-M=ZR_4]??Y;G7=0[YCO5WZOJ[UWFN<H=\Q_H[=?W=Z\3=Z\(=NO].67^GKK][
-MG;A[7;A#]]\IZ^_4]7>O3_[LT/UWROH[=?U=.;LZAWS'^CMU_1V80[YC_9VZ
-M_@[,(=^Q_DY=?Y?GWM0YY#O6WZGK[][DN<(=NO].67^GKK][D[A[4[E#OF/]
-MG;K^[DWB[DWE#OF.]7?J^KLWIXNS0[YC_9VZ_JZ<79U#OF/]G;K^#LPAW['^
-M3EU_!^:0[UA_IZZ_RW-7=0[YCO5WZOJ[JSQ7N4.^8_V=NO[N*G%W5;A#]]\I
-MZ^_4]7=7B;NKPAVZ_TY9?Z>NO[LZ^;-#]]\IZ^_4]7?E[.H<\AWK[]3U=V`.
-M^8[U=^KZ.S"'?,?Z.W7]79Y[6^>0[UA_IZZ_>YOG"G?H_CME_9VZ_NYMXNYM
-MY0[YCO5WZOJ[MXF[MY4[Y#O6WZGK[]Z>+LX.^8[U=^KZNW)V=0[YCO5WZOH[
-M,(=\Q_H[=?T=F$.^8_V=NOXNS[VK<\AWK+]3U]^]RW.5.^0[UM^IZ^_>)>[>
-M%>[0_7?*^CMU_=V[Q-V[PAVZ_TY9?Z>NOWMW\F>'[K]3UM^IZ^_*V=4YY#O6
-MWZGK[\`<\AWK[]3U=V`.^8[U=^KZNSSWOLXAW['^3EU_]S[/%>[0_7?*^CMU
-M_=W[Q-W[RAWR'>OOU/5W[Q-W[RMWR'>LOU/7W[T_79P=\AWK[]3U=^7LZASR
-M'>OOU/5W8`[YCO5WZOH[,(=\Q_H[=?U=GKNN<\AWK+_3J+\S=/^=LOY.H_[.
-MT/UWROH[C?H[0_??*>OO-.KO#-U_IZR_TZB_,W3_G;+^3J/^SM#]=\KZ.XWZ
-M.T/WWRGK[Y3T=Q_J'/(=Z^_4]7<?\ESA#MU_IZR_4]???4C<?:C<(=^Q_DY=
-M?_<A<?>A<H=\Q_H[=?W=A]/%V2'?L?Y.77]7SJ[.(=^Q_DY=?P?FD.]8?Z>N
-MOP-SR'>LO[/\'3=WJ'/`=\;ZNYL?>,!=]M.A<@=\9ZR_,]??'=+>H7"'[K\S
-MUM^9Z^\.B;M#X0[=?V>LOS/7WQU._NS0_7?&^CMS_5TYNSH'?&>LOS/7WX$Y
-MX#MC_9VY_@[,`=\9Z^_,]7=Y3NH<\)VQ_LY<?R=YKG"'[K\SUM^9Z^\DO3RI
-MW`'?&>OOS/5WDKB3RAWPG;'^SEQ_)Z>+LP.^,];?F>OORMG5.>`[8_V=N?X.
-MS`'?&>OOS/5W8`[XSEA_9ZZ_RW-:YY#O6']GKK_3/%>Y0[YC_9VY_DX3=UJX
-M0_??&>OOS/5WFKC3PAVZ_\Y8?V>NO].3/SMT_YVQ_LY<?U?.KLXAW['^SEQ_
-M!^:0[UA_9ZZ_`W/(=ZR_,]??Y3FK<\AWK+\SU]]9GBO<H?OOC/5WYOH[2]Q9
-MY0[YCO5WYOH[2]Q9Y0[YCO5WYOH[.UV<'?(=Z^_,]7?E[.H<\AWK[\SU=V`.
-M^8[U=^;Z.S"'?,?Z.W/]79YKZQSR'>OOS/5W;9ZKW"'?L?[.7'_7)N[:PAVZ
-M_\Y8?V>NOVL3=VWA#MU_9ZR_,]??M2=_=NC^.V/]G;G^KIQ=G4.^8_V=N?X.
-MS"'?L?[.7'\'YI#O6']GKK_+<UV=0[YC_9VY_J[+<X4[=/^=L?[.7'_7)>ZZ
-MRAWR'>OOS/5W7>*NJ]PAW['^SEQ_UYTNS@[YCO5WYOJ[<G9U#OF.]7?F^CLP
-MAWS'^CMS_1V80[YC_9VY_B[/]74.^8[U=^;ZNS[/5>Z0[UA_9ZZ_ZQ-W?>$.
-MW7]GK+\SU]_UB;N^<(?NOS/6WYGK[_J3/SMT_YVQ_LY<?U?.KLXAW['^SEQ_
-M!^:0[UA_9ZZ_`W/(=ZR_,]??Y;FASB'?L?[.7'\WY+G"';K_SEA_9ZZ_&Q)W
-M0^4.^8[U=^;ZNR%Q-U3ND.]8?V>NOQM.%V>'?,?Z.W/]73F[.H=\Q_H[<_T=
-MF$.^8_V=N?X.S"'?L?[.7'^7Y\8ZAWS'^CMS_=V8YRIWR'>LOS/7WXV)N[%P
-MA^Z_,];?F>OOQL3=6+A#]]\9Z^_,]7?CR9\=NO_.6']GKK\K9U?GD.]8?V>N
-MOP-SR'>LOS/7WX$YY#O6WYGK[_+<5.>0[UA_9ZZ_F_)<X0[=?V>LOS/7WTV)
-MNZERAWS'^CMS_=V4N)LJ=\AWK+\SU]]-IXNS0[YC_9VY_JZ<79U#OF/]G;G^
-M#LPAW['^SEQ_!^:0[UA_9ZZ_RW,?ZQSR'>OOS/5W'_-<Y0[YCO5WYOJ[CXF[
-MCX4[=/^=L?[.7'_W,7'WL7"'[K\SUM^9Z^\^GOS9H?OOC/5WYOJ[<G9U#OF.
-M]7?F^CLPAWS'^CMS_1V80[YC_9VY_B[/?:ISR'>LOS/7WWW*<X4[=/^=L?[.
-M7'_W*7'WJ7*'?,?Z.W/]W:?$W:?*'?(=Z^_,]7>?3A=GAWS'^CMS_5TYNSJ'
-M?,?Z.W/]'9A#OF/]G;G^#LPAW['^SEQ_E^<^USGD.];?F>OO/N>YRAWR'>OO
-MS/5WGQ-WGPMWZ/X[8_V=N?[N<^+N<^$.W7]GK+\SU]]]/OFS0_??&>OOS/5W
-MY>SJ'/(=Z^_,]7=@#OF.]7?F^CLPAWS'^CMS_5V>^U+GD.]8?V>NO_N2YPIW
-MZ/X[8_V=N?[N2^+N2^4.^8[U=^;ZNR^)NR^5.^0[UM^9Z^^^G"[.#OF.]7?F
-M^KMR=G4.^8[U=^;Z.S"'?,?Z.W/]'9A#OF/]G;G^+L]]K7/(=ZR_,]???<US
-ME3OD.];?F>OOOB;NOA;NT/UWQOH[<_W=U\3=U\(=NO_.6']GKK_[>O)GA^Z_
-M,];?F>OORMG5.>0[UM^9Z^_`'/(=Z^_,]7=@#OF.]7?F^KL\]ZW.(=^Q_LY<
-M?_<MSQ7NT/UWQOH[<_W=M\3=M\H=\AWK[\SU=]\2=]\J=\AWK+\SU]]].UV<
-M'?(=Z^_,]7?E[.H<\AWK[\SU=V`.^8[U=^;Z.S"'?,?ZNS9_Q\U]KW/`=RWK
-M[UK7WWW/<Y4[X+N;IS!WK>OOOB?NOF?NV@-^BORYQ^[-?L^]\7690W_>=GDJ
-MF+OW[<=O5W>#Z+ZJMF2`T>O[P[\^=%_5K[R^[O;\6FT.,_@[_X$??[Y^^%<9
-MO+T[Z-\8S*_PX5Q^P]W=W4&WT=1^X\YC^CC(_3<\U.OTP!M^<GUO#OW9S+]R
-M?NBZGY\-=ETSSQ>#_Y5?W^UU/VW7M'W33NDBQU::3INN+7.W[[5;[[^^__S+
-M7YO?__3W?YS'_KN^W=OK?G9MAO7V#Q_8W*L3^G9_^+=[-W?[Y?OBM/.<T;DG
-M>.[VRW?WDSGTP>?:GSUU4/KJ+GYN[^:ZP\.GQOM/C5TS:M/?_-O03.?^Y\$<
-M^N/C?X6\VYL#EO[\<]O?_`)/FO5X_L[6G__PW6:\^32Y^T\S>OO_,DW-(.?_
-MR^[\<_O/OUW_\V[L_?7_O4VO[^[F`,$?_`?8Z=W=',"(..1LD;_=YN$<^)7>
-MKYW>^=<K2_=HIS<E6-`'_P%Z>O/=Z>%#.K\H^"GSX_XUHO?GP*]7?NGT;O^O
-MQO/7V!G\G?_`C]^O'_YU-]BFP4=[A>VA7Q_QL^,\]XB?'>>Y1_SL.,\]ZF?'
-M>?`1/SO.<X_XV7&>>\3/CO/<HWYVW`S>_I[C(WT1/\^=V6NMF==F'9K>?Q%G
-M7XY__,?U]?^"MWOW>X[L2_]/OHCCGXS]$;^(G^=^_D6\IS^W^9M[LX_X1?P\
-4]ZA?Q-O#<"/3W_X?EY=\._6L````
+M'XL("-27?5P``VEM9RTQ>#$M-3$R+6=P="YQ8V]W+F]U=`"MG<MN'-F51>?U
+M%:&W1$E4GG/BJ;<-E-&>E8WN60\J(C)B:&3/]?'-).^#/+FWC@U11114D&,C
+M\VIQ45:MNCH<[KXU32=-VS?MU.Q+<_//Z4.:>__P\*/Y\8^__?WZ_K<?O]V-
+MR>$G3[E_;K61-/=@ZZ]U3L]/K<UA^C?F;C[@W+U79__!J[OW9B_GKGZ[>[/X
+M.66#]F"P27.']/J$G%[[[[V^[^[MRMWI/=[;5?)V.S;8/QC\(\W]F5Z?DK<[
+ML+GQP=S)O5TE;W=B<_-/85$"R\+FUF"NA4\=V=P6S'7PJ1W/R4]^;N_F>OB4
+ML#F%<TV9&^!3QN;:!W.'ZPQTGAOA4X0[";F;X%.$.PFYF^%3A#L)N5O@4X0[
+M";E;X5.$.PFY.\*G"'<:<K?!IPAW&G*WPZ<(=QIQ)_@IPIU&W`GRG3+N-.).
+MD.^4<:<1=X)\IXP[C;@3Y#MEW&G$G2#?*>/.(NX$^<X8=Q9Q)\AWQKBSD#OD
+M.V/<6<@=\ITQ[BSD#OG.&'<6<H=\9XP["[E#OC/&G87<(=\9XZX-N4.^:QEW
+M;<@=\EW+N&LC[A0_1;AK(^X4^:YEW+41=XI\US+NVH@[1;YK&7=MQ)TBW[6,
+MNS;B3I'O6L9=%W&GR'<=XZZ+N%/DNXYQUX7<(=]UC+LNY`[YKF/<=2%WR'<=
+MXZX+N4.^ZQAW7<@=\EW'N.M"[I#O.L9='W*'?-<S[OJ0.^2[GG'71]P9?HIP
+MUT?<&?)=S[CK(^X,^:YGW/41=X9\US/N^H@[0[[K&7=]Q)TAW_6,NR'BSI#O
+M!L;=$'%GR'<#XVX(N4.^&QAW0\@=\MW`N!M"[I#O!L;=$'*'?#<P[H:0.^2[
+M@7$WA-PAWPV,NS'D#OEN9-R-(7?(=R/C;HRX:_%3A+LQXJY%OAL9=V/$78M\
+M-S+NQHB[%OEN9-R-$7<M\MW(N!LC[EKDNY%QEW_[F\\AWTV,NRGBKD6^FQAW
+M4\@=\MW$N)M"[I#O)L;=%'*'?#<Q[J:0.^2[B7$WA=PAWTV,NRGD#OEN8MS-
+M(7?(=S/C;@ZY0[Z;&7=SQ%V'GR+<S1%W'?+=S+B;(^XZY+N9<3='W'7(=S/C
+M;HZXZY#O9L;='''7(=_-C+O\KR'Y'/+=PKA;(NXZY+N%<;>$W"'?+8R[)>0.
+M^6YAW"TA=\AW"^-N";E#OEL8=TO('?+=PKA;0NZ0[Q;&W1IRAWRW,N[6D#OD
+MNY5QMT;<]?@IPMT:<=<CWZV,NS7BKD>^6QEW:\1=CWRW,N[6B+L>^6YEW*T1
+M=SWRW<JX.T;<]<AW1\;=,>*N1[X[,NZ.(7?(=T?&W3'D#OGNR+@[AMPAWQT9
+M=\>0.^2[(^/N&'*'?'=DW!U#[I#OCHR[+>0.^6YCW&TA=\AW&^-NB[@;\%.$
+MNRWB;D"^VQAW6\3=@'RW,>ZVB+L!^6YCW&T1=P/RW<:XVR+N!N2[C7&W1]P-
+MR'<[XVZ/N!N0[W;&W1YRAWRW,^[VD#ODNYUQMX?<(=_MC+L]Y`[Y;F?<[2%W
+MR'<[XVX/N4.^VPEWDK_#YX#OY$"XDT/('?"='`AW<HBX&_%3F#L)^[L1^$Y8
+M?R=A?S<"WPGK[R3L[T;@.V']G83]W0A\)ZR_D["_&X'OA/5W$O9W(_"=L/Y.
+MPOYN!+X3UM])V-^-P'?"^CL)^[L1^$Y8?R=A?S<"WPGK[R3L[T;@.V']G83]
+MW0A\)ZR_D["_&X'OA/5W$O9W(_(=Z^\D[.]&Y#O6WTG8WTWX*<)=V-]-R'>L
+MOY.POYN0[UA_)V%_-R'?L?Y.POYN0KYC_9V$_=V$?,?Z.PG[NPGYCO5W$O9W
+M$_(=Z^\D[.\FY#O6WTG8WTW(=ZR_D["_FY#O6'\G87\W(=^Q_D["_FY"OF/]
+MG83]W81\Q_H["?N["?F.]7<2]G<3\AWK[R3L[V;\%.$N[.]FY#O6WTG8W\W(
+M=ZR_D["_FY'O6'\G87\W(]^Q_D["_FY&OF/]G83]W8Q\Q_H["?N[&?F.]7<2
+M]G<S\AWK[R3L[V;D.];?2=C?S<AWK+^3L+^;D>]8?R=A?S<CW['^3L+^;D:^
+M8_V=A/W=C'S'^CL)^[L9^8[U=Q+V=PM^BG`7]G<+\AWK[R3L[Q;D.];?2=C?
+M+<AWK+^3L+];D.]8?R=A?[<@W['^3L+^;D&^8_V=A/W=@GS'^CL)^[L%^8[U
+M=Q+V=POR'>OO).SO%N0[UM])V-\MR'>LOY.POUN0[UA_)V%_MR#?L?Y.POYN
+M0;YC_9V$_=V"?,?Z.PG[NQ4_1;@+^[L5^8[U=Q+V=ROR'>OO).SO5N0[UM])
+MV-^MR'>LOY.POUN1[UA_)V%_MR+?L?Y.POYN1;YC_9V$_=V*?,?Z.PG[NQ7Y
+MCO5W$O9W*_(=Z^\D[.]6Y#O6WTG8WZW(=ZR_D["_6Y'O6'\G87^W(M^Q_D["
+M_FY%OF/]G83]W1$_1;@+^[LC\AWK[R3L[X[(=ZR_D["_.R+?L?Y.PO[NB'S'
+M^CL)^[LC\AWK[R3L[X[(=ZR_D["_.R+?L?Y.PO[NB'S'^CL)^[LC\AWK[R3L
+M[X[(=ZR_D["_.R+?L?Y.PO[NB'S'^CL)^[LC\AWK[R3L[X[(=ZR_D["_.R+?
+ML?Y.POYNPT\1[L+^;D.^8_V=A/W=AGS'^CL)^[L-^8[U=Q+V=QOR'>OO).SO
+M-N0[UM])V-]MR'>LOY.PO]N0[UA_)V%_MR'?L?Y.POYN0[YC_9V$_=V&?,?Z
+M.PG[NPWYCO5W$O9W&_(=Z^\D[.\VY#O6WTG8WVW(=ZR_D["_VY#O6'\G87^W
+MXZ<(=V%_MR/?L?Y.POYN1[YC_9V$_=V.?,?Z.PG[NQWYCO5W$O9W._(=Z^\D
+M[.]VY#O6WTG8W^W(=ZR_D["_VY'O6'\G87^W(]^Q_D["_FY'OF/]G83]W8Y\
+MQ_H["?N['?F.]7<2]G<[\AWK[S1_Q\TU=0[X[N8IS)VZ_B[?I]=4[H#OE/5W
+MZOJ[)G'79.[L@)_"W*GK[YK$7?-GF0.^4];?J>OOFI,[.T/WWRGK[]3U=^7L
+MZASPG;+^3EU_!^:`[Y3U=^KZ.S`'?*>LOU/7W^6Y)W4.^$Y9?Z>NOWN2YYHR
+M!WRGK+]3U]\]2=P]J=P!WRGK[]3U=T\2=T\J=\!WROH[=?W=D]/%V0'?*>OO
+MU/5WY>SJ'/"=LOY.77\'YH#OE/5WZOH[,`=\IZR_4]??Y;FG=0[YCO5WZOJ[
+MIWFN<H=\Q_H[=?W=T\3=T\(=NO].67^GKK][FKA[6KA#]]\IZ^_4]7=/3_[L
+MT/UWROH[=?U=.;LZAWS'^CMU_1V80[YC_9VZ_@[,(=^Q_DY=?Y?GGM4YY#O6
+MWZGK[Y[EN<(=NO].67^GKK][EKA[5KE#OF/]G;K^[EGB[EGE#OF.]7?J^KMG
+MIXNS0[YC_9VZ_JZ<79U#OF/]G;K^#LPAW['^3EU_!^:0[UA_IZZ_RW//ZQSR
+M'>OOU/5WS_-<Y0[YCO5WZOJ[YXF[YX4[=/^=LOY.77_W/''WO'"'[K]3UM^I
+MZ^^>G_S9H?OOE/5WZOJ[<G9U#OF.]7?J^CLPAWS'^CMU_1V80[YC_9VZ_B[/
+MO:ASR'>LOU/7W[W(<X4[=/^=LOY.77_W(G'WHG*'?,?Z.W7]W8O$W8O*'?(=
+MZ^_4]7<O3A=GAWS'^CMU_5TYNSJ'?,?Z.W7]'9A#OF/]G;K^#LPAW['^3EU_
+ME^=>UCGD.];?J>OO7N:YRAWR'>OOU/5W+Q-W+PMWZ/X[9?V=NO[N9>+N9>$.
+MW7^GK+]3U]^]//FS0_??*>OOU/5WY>SJ'/(=Z^_4]7=@#OF.]7?J^CLPAWS'
+M^CMU_5V>>U7GD.]8?Z>NOWN5YPIWZ/X[9?V=NO[N5>+N5>4.^8[U=^KZNU>)
+MNU>5.^0[UM^IZ^]>G2[.#OF.]7?J^KMR=G4.^8[U=^KZ.S"'?,?Z.W7]'9A#
+MOF/]G;K^+L^]KG/(=ZR_4]??O<YSE3OD.];?J>OO7B?N7A?NT/UWROH[=?W=
+MZ\3=Z\(=NO].67^GKK][??)GA^Z_4];?J>OORMG5.>0[UM^IZ^_`'/(=Z^_4
+M]7=@#OF.]7?J^KL\]Z;.(=^Q_DY=?_<FSQ7NT/UWROH[=?W=F\3=F\H=\AWK
+M[]3U=V\2=V\J=\AWK+]3U]^].5V<'?(=Z^_4]7?E[.H<\AWK[]3U=V`.^8[U
+M=^KZ.S"'?,?Z.W7]79Z[JG/(=ZR_4]??7>6YRAWR'>OOU/5W5XF[J\(=NO].
+M67^GKK^[2MQ=%>[0_7?*^CMU_=W5R9\=NO].67^GKK\K9U?GD.]8?Z>NOP-S
+MR'>LOU/7WX$YY#O6WZGK[_+<VSJ'?,?Z.W7]W=L\5[A#]]\IZ^_4]7=O$W=O
+M*W?(=ZR_4]??O4W<O:W<(=^Q_DY=?_?V='%VR'>LOU/7WY6SJW/(=ZR_4]??
+M@3GD.];?J>OOP!SR'>OOU/5W>>Y=G4.^8_V=NO[N79ZKW"'?L?Y.77_W+G'W
+MKG"'[K]3UM^IZ^_>)>[>%>[0_7?*^CMU_=V[DS\[=/^=LOY.77]7SJ[.(=^Q
+M_DY=?P?FD.]8?Z>NOP-SR'>LOU/7W^6Y]W4.^8[U=^KZN_=YKG"'[K]3UM^I
+MZ^_>)^[>5^Z0[UA_IZZ_>Y^X>U^Y0[YC_9VZ_N[]Z>+LD.]8?Z>NORMG5^>0
+M[UA_IZZ_`W/(=ZR_4]??@3GD.];?J>OO\MQUG4.^8_V=1OV=H?OOE/5W&O5W
+MANZ_4];?:=3?&;K_3EE_IU%_9^C^.V7]G4;]G:'[[Y3U=QKU=X;NOU/6WVG4
+MWQFZ_TY9?Z>DO_M0YY#O6'^GKK_[D.<*=^C^.V7]G;K^[D/B[D/E#OF.]7?J
+M^KL/B;L/E3OD.];?J>OO/IPNS@[YCO5WZOJ[<G9U#OF.]7?J^CLPAWS'^CMU
+M_1V80[YC_9WE[[BY0YT#OC/6W]W\P`/NLI\.E3O@.V/]G;G^[I#V#H4[=/^=
+ML?[.7']W2-P="G?H_CMC_9VY_NYP\F>'[K\SUM^9Z^_*V=4YX#MC_9VY_@[,
+M`=\9Z^_,]7=@#OC.6']GKK_+<U+G@.^,]7?F^CO)<X4[=/^=L?[.7'\GZ>5)
+MY0[XSEA_9ZZ_D\2=5.Z`[XSU=^;Z.SE=G!WPG;'^SEQ_5\ZNS@'?&>OOS/5W
+M8`[XSEA_9ZZ_`W/`=\;Z.W/]79[3.H=\Q_H[<_V=YKG*'?(=Z^_,]7>:N-/"
+M';K_SEA_9ZZ_T\2=%N[0_7?&^CMS_9V>_-FA^^^,]7?F^KMR=G4.^8[U=^;Z
+M.S"'?,?Z.W/]'9A#OF/]G;G^+L]9G4.^8_V=N?[.\ESA#MU_9ZR_,]??6>+.
+M*G?(=ZR_,]??6>+.*G?(=ZR_,]??V>GB[)#O6']GKK\K9U?GD.]8?V>NOP-S
+MR'>LOS/7WX$YY#O6WYGK[_)<6^>0[UA_9ZZ_:_-<Y0[YCO5WYOJ[-G'7%N[0
+M_7?&^CMS_5V;N&L+=^C^.V/]G;G^KCWYLT/WWQGK[\SU=^7LZASR'>OOS/5W
+M8`[YCO5WYOH[,(=\Q_H[<_U=GNOJ'/(=Z^_,]7==GBO<H?OOC/5WYOJ[+G'7
+M5>Z0[UA_9ZZ_ZQ)W7>4.^8[U=^;ZN^YT<7;(=ZR_,]??E;.K<\AWK+\SU]^!
+M.>0[UM^9Z^_`'/(=Z^_,]7=YKJ]SR'>LOS/7W_5YKG*'?,?Z.W/]79^XZPMW
+MZ/X[8_V=N?ZN3]SUA3MT_YVQ_LY<?]>?_-FA^^^,]7?F^KMR=G4.^8[U=^;Z
+M.S"'?,?Z.W/]'9A#OF/]G;G^+L\-=0[YCO5WYOJ[(<\5[M#]=\;Z.W/]W9"X
+M&RIWR'>LOS/7WPV)NZ%RAWS'^CMS_=UPNC@[Y#O6WYGK[\K9U3GD.];?F>OO
+MP!SR'>OOS/5W8`[YCO5WYOJ[/#?6.>0[UM^9Z^_&/%>Y0[YC_9VY_FY,W(V%
+M.W3_G;'^SEQ_-R;NQL(=NO_.6']GKK\;3_[LT/UWQOH[<_U=.;LZAWS'^CMS
+M_1V80[YC_9VY_@[,(=^Q_LY<?Y?GICJ'?,?Z.W/]W93G"G?H_CMC_9VY_FY*
+MW$V5.^0[UM^9Z^^FQ-U4N4.^8_V=N?YN.EV<'?(=Z^_,]7?E[.H<\AWK[\SU
+M=V`.^8[U=^;Z.S"'?,?Z.W/]79[[6.>0[UA_9ZZ_^YCG*G?(=ZR_,]???4S<
+M?2S<H?OOC/5WYOJ[CXF[CX4[=/^=L?[.7'_W\>3/#MU_9ZR_,]??E;.K<\AW
+MK+\SU]^!.>0[UM^9Z^_`'/(=Z^_,]7=Y[E.=0[YC_9VY_NY3GBO<H?OOC/5W
+MYOJ[3XF[3Y4[Y#O6WYGK[SXE[CY5[I#O6']GKK_[=+HX.^0[UM^9Z^_*V=4Y
+MY#O6WYGK[\`<\AWK[\SU=V`.^8[U=^;ZNSSWN<XAW['^SEQ_]SG/5>Z0[UA_
+M9ZZ_^YRX^URX0_??&>OOS/5WGQ-WGPMWZ/X[8_V=N?[N\\F?';K_SEA_9ZZ_
+M*V=7YY#O6']GKK\#<\AWK+\SU]^!.>0[UM^9Z^_RW)<ZAWS'^CMS_=V7/%>X
+M0_??&>OOS/5W7Q)W7RIWR'>LOS/7WWU)W'VIW"'?L?[.7'_WY71Q=LAWK+\S
+MU]^5LZMSR'>LOS/7WX$YY#O6WYGK[\`<\AWK[\SU=WGN:YU#OF/]G;G^[FN>
+MJ]PAW['^SEQ_]S5Q][5PA^Z_,];?F>OOOB;NOA;NT/UWQOH[<_W=UY,_.W3_
+MG;'^SEQ_5\ZNSB'?L?[.7'\'YI#O6']GKK\#<\AWK+\SU]_EN6]U#OF.]7?F
+M^KMO>:YPA^Z_,];?F>OOOB7NOE7ND.]8?V>NO_N6N/M6N4.^8_V=N?[NV^GB
+M[)#O6']GKK\K9U?GD.]8?V>NOP-SR'>LOS/7WX$YY#O6W[7Y.V[N>YT#OFM9
+M?]>Z_NY[GJO<`=_=/(6Y:UU_]SUQ]SUSUQ[P4^3//79O]GONC:_+'/KSMLM3
+MP=R];S]^N[H;1/=5M24#C%[?G_[UH?NJ?N7U=;?GUVISF,'?^0_\^.OUP[_*
+MX.W=0?_!8'Z%#^?R&^[N[@ZZC::V&W?NZ>,@]]_P4*_3`V_XR?6].?1G,__*
+M^:'K?GXVV'7-/%\,_D]^?;?7_;1=T_9-.Z6+'%MI.FVZMLS=OM=NO?_Z?O_;
+MWYL__O+/_SZ/_6]]N[?7_=P\/(VWOUOB#ND@[.W^L_S^PGWZNKOK?BY..\\9
+MFRNWS+FYVR_?W4_FT`>?:W_VU$'IJ[OXN;V;N_WRW=;_Y7C_J?//4==L<[,O
+M9.[WWQ_.H3\^_E?(N[TY8.F;X>;_M-[\`D^:=3]_Y]B?__#=9KSY-+G[5S-Z
+M^]\R3<T@Y__*[F;PQ[_^<?VON['WU__W-KV^NYL#!'_P'V"G=W=S`"/BD+-%
+M_G:;AW/@5WJ_=GKG7Z\LW:.=WI0TA3[X#]#3F^].#Q_2^47!3YD?]Z\1O3\'
+M?KWR2Z=W^U\UGK_&SN#O_`=^_'']\*^[P38-/MHK;`_]^HB?'>>Y1_SL.,\]
+MXF?'>>Y1/SO.@X_XV7&>>\3/CO/<(WYVG.<>];/C9O#V]QP?Z8OX>>[,WFY-
+M.S;;<!YZ^/K8E^,?U_]U_1?P=N]^SY%]Z?_)%W'\D[$]XA?Q\]S/OXCW],WF
+<;^[-/N(7\?/<HWX1;P_#C4Q_^W_2A&2=]:P`````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,26 +1,26 @@
 # $FreeBSD$
 begin 644 img-1x1-512-gpt.qcow2.gz
-M'XL(",9Q+ED``VEM9RTQ>#$M-3$R+6=P="YQ8V]W,BYO=70`K9A+;YPP$(#O
-M^15.WTT:BL<VC[Z3-"OE4B55>VL/[`*G*E+OM+^]&!N\F!F<;+V+5HFL^30V
-MWXP-:6H^C"G.9,9DR=HMZ_^W%["]?^87ZVXWU\G^ISLR,)X24<B`%!-NQKIT
-M.*!P*5\.<!RWEYU`<#!&+4$AG"2S6QM`<"='P](--Z/P(L0A0(,C;\9!^8')
-MSX^0!^8'L?,3^/JI,<X?R-;S$R8_/RJG<$40!TA42>&J($X@45L*MPOB)!)5
-M4[@FB%-(5$O@>$"5'I<A49S"01"7(U&"PLD@KD"B*.]XV+L2B:*\XV'O*B2*
-M\HZ'O=LB491W/.S=#HFBO.-A[VHDBO(.".^8PS5(%.4=>-X=6]PCAVN1*,H[
-M\+Q[;'%/)AS'HBCOP//NJ<4]<SBDWP'E'7C>/;>X%PZ']#N@O`//NY<6=^)P
-M2+\#RCOPO#NUN%<.A_0[H+P#S[NSA7<<Z7=`>2<\[UY;5NIP2+\3E'?"\XY;
-M'#@<TN\$Y9WPO!,6)QT.Z7>"\DYXWBF+RQP.Z7>"\DYXWN465S@<TN\$Y9WP
-MO"LM[HW#(?U.4-X)S[NW%O?.X9!^)RCOA.?=>XO[X'!(OQ.4=]+S[J/%?7(X
-MI-])RCOI>7=N<1<.A_0[27DG/>\N+>[SA`,L:O(N3?'+XJX6-0M(OY/9/7&;
-M)8Y^6#GD."O=<9LCO_3`"K!X.)#<:Z4YI\2;L#(3UE95R"\]T%TD\^\$'&KW
-M`<`QPSG.3EB9VC4/C$W#VM9>9J5L<-ZZ`P(RX>-D#U='7K^AW!X`5(I5U0+X
-M?<QO*+>^OLR[@=YN-30#!4S)"3?,5>WV\[O:7+.;\Z_?-.R'F^Y0;AK7Z(>E
-M*O.RX]1TK[X@]BE3;LO5'G&"PDW',@^GCQ=YO8+#+M;](7!R+6IZZ7"/>VMP
-M*IU'[;<M5BA6`,MVK*Y(W*\9+HMLGM3#VXSE.Y8U^GW2KM5_U)E^2F-%7R9F
-MVX;AC%6RG.NS6P_L[FZ3.P,[2WZ?VOPDMT9@%SU`K9Z$-2-T4H'ILCD.>XWT
-M7ZNG^_)615N]TLJ"7?0`N7J563U\D712:,ETXZJ-!3?BMI%7+]/#?7WT_7OY
-M2P]T-\G\:X#2`J-E*+-V%[$Z-"YB=6A<Q.K0N*C5H8$1JT/C(E:'QD6L#HV+
-M6AT]L$GC;>(:I]TK"Z9J5DK6UO,TR.VX2WZBTVU@;>M?V<3QF]%$W,0U;G43
->SQMRLO;SUYMLQ$U<XZ)NXC+7Q^^C?SXHP2(5&@``
+M'XL("-27?5P``VEM9RTQ>#$M-3$R+6=P="YQ8V]W,BYO=70`K9A+<YLP$(#O
+M^15*GVG24+22`/>=I/9,;DFGO?4"-APSTSOM;R]"`H'818DKF_'$H]DO*_'M
+M2B9-S8LQQ9G,F-RPIF+==WL!FWR97ZR]W]TFTU=[8F`\):*0`2E&W(QUXW!`
+MX5*^'.`X;I*=0'`P1"U!(9PDLUL;0'#G)_W2]3>C\"+$,4"#(V_&4?F!R<^/
+MD$?F!['S$_CZJ2'.'\C6\Q,F/S\JIW!%$`=(U(;"E4&<0*(J"K</XB02=:!P
+M=1"GD*B&P/&`*ATN0Z(XA8,@+D>B!(6305R!1%'>\;!W&R2*\HZ'O2N1*,H[
+M'O:N0J(H[WC8NST217G'P]X=D"C*.R"\8PY7(U&4=^!Y=VIQSQRN0:(H[\#S
+M[KG%O1AQ'(NBO`//NY<6]\KAD'X'E'?@>??:XLX<#NEW0'D'GG=O+.[<X9!^
+M!Y1WX'EW87%O'0[I=T!Y!YYWEPOO.-+O@/).>-Z]LZS4X9!^)RCOA.<=MSAP
+M.*3?"<H[X7DG+$XZ'-+O!.6=\+Q3%I<Y'-+O!.6=\+S++:YP.*3?"<H[X7FW
+ML;CW#H?T.T%Y)SSO/EC<1X=#^IV@O!.>=Y\L[K/#(?U.4-Y)S[LO%O?5X9!^
+M)RGOI.?=E<5=.QS2[R3EG?2\N[&X;R,.L*C1NS3%+XO;+FH6D'XGLT?B=DL<
+M_6/EF..L=,=MCGS2`RO`XNE`<J^5YIP2;\+*3%A;52*?]$![G<S?(["OW2<`
+MAPSG.#MA96K7_&"L:]8T]C(K98/SQAT0D`F?)A/<(?+Z]>7V!*!2K"P7P)]#
+M?GVY=?5EG@UT=JN^&2A@2HZX?JYJ/\UON[ME=U???VC8+S?=OMR:_E]VAX>B
+M]++C]'3/EO8I4V[+U1YP@L2=)BA.'R_RPPH.NUC[A\#)M:CQH<,C[JW!Z>/%
+M^%.[NZ9MJ[]'BM7E_/G-%+?=SG%99/.D'JXREN]95NOG2?M&_W'(]*\T5G1E
+M8K9MZ,]8&Y9S?7;K@.W#??)@8)?)[PN;G^36".RB!ZC5D[!FA$XJ,%TVQV&/
+MD?YK]71?KE2TU=O8-H5=]`"Y>J59/7R1=%)HR;3#J@T%-^"JR*N7Z>&N/KK^
+MO?RD!]J[9/XV0&F!T3*46;./6!T:%[$Z-"YB=6A<U.K0P(C5H7$1JT/C(E:'
+MQD6MC@Y8I_$V<8W3[G7;=[5AE60'[Z1#;L?MN(7/IUO#VM:_LHGC-Z..N(EK
+BW.HFGM?DO;6OO]YD(V[B&A=U$Y>Y/GZ?_`/D@(G0%1H`````
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,15 +1,15 @@
 # $FreeBSD$
 begin 644 img-1x1-512-gpt.raw.gz
-M'XL(",9Q+ED``VEM9RTQ>#$M-3$R+6=P="YR87<N;W5T`*V52T_#,`S'[_L4
-MWA5$E*1)EIUX2"!Q&PAN7/I83V@2]_+=B9N&]1$7)CF-JDJN?[4=_VLIXP(P
-M&F29N=.&[D%,KVYSM>EIJKH,&+Z/(<R`(@`CK@Y&J?&=XQ':=MA2]5[161K0
-M*CT/.'%>6S'"-6>OQ:8-8YR(N)1N>QG06BC+!?`]Q:?[X[!@')@]Z/"^!*/`
-M:K#F%]?G:NMQ?(]/SW"X?WU#V,<Y7:V"4=5@)-0[:-I9=(I,]VZ>;L1I]%I4
-M.^$*$K?-XXIXMC0NMVF<6?.*/?2_LXTX*Z=>?NSE+7@-KH:F)'&?$YQC[CR#
-MYLK!K@9W!*N@;O&A<:!4B"_(Q/>04-\&Y!YV"G2%P.[T(DX1=B.^KH?XC!HZ
-M(K=I`U4]H]<Z`H/Z(UV8X@KNZGFLGF6KWGYHEMRF#63UREB]?)%(R72I:DDA
-M"5<Q5\^A.>@C_+^7=]K0'<3TBD`S`-DB#,WG&-6!.$9U((Y1'8AC50<"&=6!
-M.$9U((Y1'8AC54<`>LDWQ!'7#W$#NP::`HKY$*?&<2>^Q6TF7:_71O_*$,\?
-CAF<<XHA;'^(%F6Q:LV09ASCB6(=X`)92;GX`")Q24X@+````
+M'XL("-27?5P``VEM9RTQ>#$M-3$R+6=P="YR87<N;W5T`*V5/6^$,`R&]_L5
+M[ZVM&B4AX6!LI:O4[5JU6Y?P-9[4G1_?F,`!!Z%%,D0(R?&#[?C%4H8+,!K2
+MK3SCAO9%S._V\'#H:*K8!_3?IQ#N@,(#`Z[T1JEI3UVC:?HE5><5G*6!5L-[
+MCQ/C=1037#5Z+5;<,,6)@!O2;?8!K85S"^#7$)_NCL/"I#`YM-\O812LAC4W
+M7)>K+:?QG5_?<'G^^"38]YBN5M[H2CB#^H0FN8M._3_=@-/DM:CV@$NBN.,Z
+M+@EG&\>MK3C.;'F%'MJ3K`W)WG9F4R\Z(XO:H2DBN/-YCDN9.\^0N4AQ*I'6
+ML`IE0R]5"J6`S,LDZR"^OA5DCI."+@C87M_%-<">Q,]C'Y]1?4>LK;@A5CVC
+MMSJ"@OHC7<QQ"7?U,JJ>9:M>WO^FUE;<$*V>"]5;+U)4,NU0M4$A`ZY@KEY*
+M9J\/__]>/N.&]B+F=P":'L@6H6^^E%$=A&-4!^$8U4$X5G40D%$=A&-4!^$8
+MU4$X5G5X8";YACCANB%ND.<TP=7]$(^-XS&^>;J9WAK]&T-\_3`RQB%.N.TA
+8GNQ-EG&($XYUB'N@D_+P"ZG]1LB("P``
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,22 +1,22 @@
 # $FreeBSD$
 begin 644 img-1x1-512-gpt.vhd.gz
-M'XL(",9Q+ED``VEM9RTQ>#$M-3$R+6=P="YV:&0N;W5T`*V82W/3,!"`[_D5
-MV^%6!H_>=F[0F3)P*PP,%RY^I62`\&@//9C_CE:6;,NV#&G743U)E/V\+ZVV
-M8JR_`(P$<P#3@M'X/E=@]I`7`';2#^'NW'^$KOYQ:NO[XT/FKV[7PSB;2L7B
-M*"\D*/N0'$2)#S$-OH<N8+)GU[>7Q^^W`2<\3GB0SE%*"C#5XCG*?EOTVB'I
-MTU%\=<BK+X-V<JG=*&7_\@:8`LXGOY!!.XO)_L3&*BMU.+AAH&E1=AC1AVAB
-M-';F.\UF4A,UUYS*1F/7<&9+ZAS<Y<['HD\5FQBYO3,P''*![VW:!#\LADV5
-MA[N?Y>^[=J:?2*2*&?3CBSF9-E?X5!'AQUX#A>F\92XXROT<MY(J3_*>B>5"
-M=*T3F`X3PID?>V]$P50_P]F&S]/!2.I7HGYV,;!RY9Z>Z*ZR^#4`J^H\8/!@
-MC!L,KFKTGZL#;3M:U">)%Y82!$\&1%Y,_%<UQ/&M#N<!M8:R7``_!OUJ%PX-
-MRH#:8V+8XJ`X:`%Z3&=GJZZG^EV_?@LWK]Y_0-CGT=S:I4L#JL#BR0\S[98K
-M+9C[1JPMMAH7V]+;`2=3N#X$2QPN-LDW<&L#.I[`J2VI82_YC]CV.,UBJ6(J
-M56@H[!920U,F<=\B''5=;G&Z,I#7N(5K#K7;RQN#&QD4=IFX_<U:(.SV9C=V
-MZ^@*@=WI77;J82^R7\^]?BWW&;$VTA,I[[5B*R-0J7^8"S&.NBZW!7I/DWEO
-M[Y-E;:0GDMXK>^^M.PF56ETR85?+LHL85]%ZC[OVT:X/6[^7]_1$=Y/%KQXH
-M_#9$MJ\)7TC)-%0>2*:A\NN74$.N-H-Y;I25R`5AA4$<885!'&&%01QIA4$@
-M885!'&&%01QAA4$<:86Q0)?,1(T0XGS?;/U<V7]%9VHD6QK4[R6B9&RN$EOM
-M4[H12@1#$39"B-MLA&0ZMOX2,V,)&R'$D39"QA=2HK,,$QJAI0Z/.<LPH1%B
-FHP.?<)9AUANAQYYE(([P+`-QA&<9B"-.%>Q;=G\!II']:``3````
+M'XL("-27?5P``VEM9RTQ>#$M-3$R+6=P="YV:&0N;W5T`*V82V_4,!"`[_LK
+MINJMB"A^9O=(I47B@"@(Q(5+'DZ[`I9'>^@A_'<\CIW$FSBP[63=*+O.?)F7
+MQ]/D>7\`:`&Z!6U`*[PN).@=%%L`.^D'=V?FOT)7_SB:^N'PF/FCV_0PED^E
+M8G&4YP*D?4@!O,2'Z`:OH0N8[')_>W7X?AMPW..X!ZD"I00'7<V>(^VOVUX[
+M)'T^\*\.>7TW:"?FVHU2]J]H()?`V.0.$;2SF.Q/;*RT4FWKAH;&H.PPHB_1
+MQ&CLB>]4?B(U47/)J?EH[!).KTF=@[O:^%CTJ6(3H[#G'#2#@N.U39O@A]FP
+MJ?)X_[/\?6].]..)5-&#?FPV)]+F<I\J/-SL-9"8SFOF@J,\G.(64N59WM.Q
+M7(BN=4*NP@1WYL?>&U$PU4^S?,7GZ6`D]2M1/[L8\G+AG)[HKK/X,P"KZCQ@
+M\&",&PRN:O2?JP/&C!;U2>*%A0#.D@$1%Q/_50UQ?*OV/*!24)8SX*>@7^W"
+MH4!JD#M,#%L<)`/%08WI[&Q5]52__>LW<//JPT>$?1G-K3%=9`-E#8RCGV+M
+MYBO-X]Y:MRTLMAH7V]S;`2=2N#X$<QPN-L%6<$L#.I;`R36I82_YC]CVN%"7
+MPYW;J13&2($IH:T2N/T^QE'798/3E8:BQBU<,:C=7MYHW,A@:Y>)V]^LW=QN
+M;W9CMXZN$-@=WV?''O8R^_7"ZV>8SXBED9Y(><_PM8Q`I?YA+L0XZKILMN@]
+M1>:]G2]32R,]D?1>V7MOV4FHU.*2";M:EEW$N(K6>\RUCW9]V/H]/Z<GNILL
+M_O1`[K<ALGV-^T)*IJ'T0#(-I5^_A!HRN1K,<Z,L><$)*PSB""L,X@@K#.)(
+M*PP""2L,X@@K#.((*PSB2"N,!;ID)FJ$$.<:H19,`SO[CTL=JY%L:;IW6?8-
+M42(V5_*U]BG=""6"(0D;(<2M-D(B'5M_\!-C"1LAQ)$V0MH74J)W&3HT0G,=
+MGO(N0X=&:'C\L]YEZ.5&Z*GO,A!'^"X#<83O,A!'G"K8MVS^`DBJ@3\`$P``
 `
 end

Modified: head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.gz.uu
==============================================================================
--- head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.gz.uu	Tue Mar  5 22:04:23 2019	(r344825)
+++ head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.gz.uu	Tue Mar  5 22:55:33 2019	(r344826)
@@ -1,19 +1,19 @@
 # $FreeBSD$
 begin 644 img-1x1-512-gpt.vhdf.gz
-M'XL(",9Q+ED``VEM9RTQ>#$M-3$R+6=P="YV:&1F+F]U=`"METV/TS`0AN_]
-M%8,X5%I$9#NVDQQ!6B1N!1;MA4L^G%4%%"%QX-`?SXSMM'9C!Q8YL:)4DWDR
-M\V8FDS+F-@`I@/6)8]YP?EO%^WEWM[,T/CP/B/>G$&Z`%0(=;D0C$W2-,3#/
-M?C%NO9PS_A:-/U]PU77;5P%NNGBM5]X0XBJ'6]*=GP=4"OI^!?R\Q"?LXU`@
-M-<@.!%[/0')0`I2\X&SN:@SCNW_W'@YO/CX0[,LU7<'1.(_036`:0L31\8UT
-M'^)T'4X0;J7V@JNSN/VM>@Y7$V[:P*56'B>WO%P-_=NS=3C%8J\V]&H5M`+T
-M"%.?Q7V+<+IPY4DR#QJ:$;0!Q6&<Z632P#G&AVW26H@`,0'KH.$@!@*>3Q^J
-MDX.]KGZ^\O%)[BLBM?*&G'I2;%4$!?67="'&U:75:TD]54R]SA=+:N4-6?5Z
-MIUY:)`HJU;J(\ZI5+V+<4%@]36;L#WQ_KX]YP_E0Q;L#2@\L%J&<Y[%@=Q"N

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Tue Mar  5 23:20:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 36DFC151AAE3;
 Tue,  5 Mar 2019 23:20:45 +0000 (UTC)
 (envelope-from jacob.e.keller@intel.com)
Received: from mga18.intel.com (mga18.intel.com [134.134.136.126])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "orsmga106.jf.intel.com",
 Issuer "COMODO RSA Organization Validation Secure Server CA" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 308258D81F;
 Tue,  5 Mar 2019 23:20:43 +0000 (UTC)
 (envelope-from jacob.e.keller@intel.com)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 05 Mar 2019 15:19:32 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.58,445,1544515200"; 
 d="scan'208,217";a="325727859"
Received: from orsmsx103.amr.corp.intel.com ([10.22.225.130])
 by fmsmga005.fm.intel.com with ESMTP; 05 Mar 2019 15:19:31 -0800
Received: from orsmsx159.amr.corp.intel.com (10.22.240.24) by
 ORSMSX103.amr.corp.intel.com (10.22.225.130) with Microsoft SMTP Server (TLS)
 id 14.3.408.0; Tue, 5 Mar 2019 15:19:31 -0800
Received: from orsmsx121.amr.corp.intel.com ([169.254.10.201]) by
 ORSMSX159.amr.corp.intel.com ([169.254.11.151]) with mapi id 14.03.0415.000;
 Tue, 5 Mar 2019 15:19:31 -0800
From: "Keller, Jacob E" <jacob.e.keller@intel.com>
To: Eric Joyner <erj@freebsd.org>, "rgrimes@freebsd.org"
 <rgrimes@freebsd.org>, Matthew Macy <mat.macy@gmail.com>
CC: src-committers <src-committers@freebsd.org>, svn-src-all
 <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>
Subject: RE: svn commit: r344817 - in head/sys: dev/e1000 net
Thread-Topic: svn commit: r344817 - in head/sys: dev/e1000 net
Thread-Index: AQHU05+W+EO+3hIYEE2DGeJKsI7ho6X9orCw
Date: Tue, 5 Mar 2019 23:19:30 +0000
Message-ID: <02874ECE860811409154E81DA85FBB5892315C41@ORSMSX121.amr.corp.intel.com>
References: <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
 <5c7ee64f.1c69fb81.1168f.5802SMTPIN_ADDED_BROKEN@mx.google.com>
 <CAKdFRZjes=VXo35kc2bHU=G_k72FREv3TC1V1QChTRKr2wuiDA@mail.gmail.com>
In-Reply-To: <CAKdFRZjes=VXo35kc2bHU=G_k72FREv3TC1V1QChTRKr2wuiDA@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMmI3ZjlhMjQtZjc1ZS00YWU3LWJhODAtMjIyZDAzZWZhYmM2IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZ29JRXlQa0R0N0oxTWp0RjExTzZnYmFSdXpUMFVFeWJlYmdidkFkYmJFUXFNbll5ZGlvKzhvRWI4TmdwTnAyQiJ9
x-ctpclassification: CTP_NT
dlp-product: dlpe-windows
dlp-version: 11.0.400.15
dlp-reaction: no-action
x-originating-ip: [10.22.254.140]
MIME-Version: 1.0
X-Rspamd-Queue-Id: 308258D81F
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.98 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.983,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; TAGGED_RCPT(0.00)[];
 REPLY(-4.00)[]
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 23:20:45 -0000

SGksDQoNClNvIG9uZSBvZiB0aGUgcHJvYmxlbXMgaXMgdGhhdCBpZmxpYiBzZXRzIHVwIHRoZSBi
dWZmZXJzLCBidXQgZHJpdmVycyBhbHNvIGhhdmUgdG8gYWN0dWFsbHkgZW5zdXJlIHRoYXQgdGhl
eSBjb25maWd1cmUgaGFyZHdhcmUgdG8gdXNlIHRoZSBleHRyYSBzcGFjZS4gVGhpcyBjdXJyZW50
bHkgbWVhbnMgY29weWluZyB0aGF0IGNoZWNrIHRvIGV2ZXJ5IGRyaXZlci4gSXTigJlzIG5vdCBj
b3BpZWQgdG8gYW55d2hlcmUgZXhjZXB0IHRoZSBlbSBkcml2ZXIsIHdoaWNoIG1lYW5zIG1vc3Qg
b2YgdGhlIGlmbGliIGRyaXZlcnMgdG9kYXkgd291bGQgZ2V0IHplcm8gYmVuZWZpdCBvdXQgb2Yg
ZW5hYmxpbmcgQ09OVElHX01BTExPQ1dPUktTLg0KDQpGdXJ0aGVyLCB0aGUgZGVmaW5lIGlzICpu
b3QqIGRvY3VtZW50ZWQgYW55d2hlcmUgaW4gdGhlIGtlcm5lbCwgYW5kIHRoZSBuYW1lIGlzIGNv
bmZ1c2luZyBzbyBpdOKAmXMgdW5jbGVhciB3aGF0IGl04oCZcyBwdXJwb3NlIHdhcyBmb3IuDQoN
ClBlcnNvbmFsbHksIEnigJlkIGxpa2UgdG8gc2VlDQoNCg0KYSkgICAgICBhIGJldHRlciBuYW1l
ICh0aG91Z2ggc3RpY2tpbmcgd2l0aCBDT05USUdfTUFMTE9DV09SS1MgaXMgb2ssIHNpbmNlIGl0
IHdhcyBhbHJlYWR5IGluIHVzZSkNCg0KYikgICAgICBkb2N1bWVudGVkIHNvbWVob3csIHBvc3Np
Ymx5IGxpa2UgYW4gb3B0Xyogb3B0aW9uIGxpa2UgUlNTIGlzLCBhbmQgd2l0aCBzb21ldGhpbmcg
d2hpY2ggZXhwbGFpbnMgd2h5IGFuZCBob3cgdG8gZW5hYmxlIGl0DQoNCmMpICAgICAgIGV4dGVu
ZCBpZmxpYiB0byBwcm92aWRlIGFjY2VzcyB0byB0aGUgYWN0dWFsbHkgc2VsZWN0ZWQgYnVmZmVy
IHNpemUsIHNvIHRoYXQgaWZsaWIgZHJpdmVycyBkb27igJl0IG5lZWQgdG8gZHVwbGljYXRlIHRo
aXMgY2FsY3VsYXRpb24gd2hlbiBzZXR0aW5nIHVwIHRoZSByZWNlaXZlIGJ1ZmZlcnMgaW4gaGFy
ZHdhcmUNCg0KZCkgICAgICBleHRlbmQgaWZsaWIgdG8gcHJldmVudCB1c2luZyBhIGxhcmdlciBh
bGxvY2F0aW9uIHNpemUgdGhhbiB0aGUgbWF4aW11bSBSWCBzZWdtZW50IHNpemUuIChpLmUuIG5v
dCBhbGwgaGFyZHdhcmUgc3VwcG9ydHMgOWsgb3IgMTZrIGp1bWJvIGZyYW1lcywgc28gaXTigJlz
IGEgYml0IHdlaXJkIGZvciBpZmxpYiB0byBhbGxvY2F0ZSBidWZmZXJzIHRoaXMgbGFyZ2Ugd2hl
biB0aGV5IHdvbuKAmXQgYmUgdXNlZCkuDQoNClRoYW5rcywNCkpha2UNCg0KRnJvbTogRXJpYyBK
b3luZXIgW21haWx0bzplcmpAZnJlZWJzZC5vcmddDQpTZW50OiBUdWVzZGF5LCBNYXJjaCAwNSwg
MjAxOSAyOjA2IFBNDQpUbzogcmdyaW1lc0BmcmVlYnNkLm9yZzsgTWF0dGhldyBNYWN5IDxtYXQu
bWFjeUBnbWFpbC5jb20+DQpDYzogc3JjLWNvbW1pdHRlcnMgPHNyYy1jb21taXR0ZXJzQGZyZWVi
c2Qub3JnPjsgc3ZuLXNyYy1hbGwgPHN2bi1zcmMtYWxsQGZyZWVic2Qub3JnPjsgc3ZuLXNyYy1o
ZWFkIDxzdm4tc3JjLWhlYWRAZnJlZWJzZC5vcmc+OyBLZWxsZXIsIEphY29iIEUgPGphY29iLmUu
a2VsbGVyQGludGVsLmNvbT4NClN1YmplY3Q6IFJlOiBzdm4gY29tbWl0OiByMzQ0ODE3IC0gaW4g
aGVhZC9zeXM6IGRldi9lMTAwMCBuZXQNCg0KSSdtIGNjJ2luZyBKYWtlIHNvIHRoYXQgaGUgY2Fu
IHByb3ZpZGUgYSByZXNwb25zZS4NCg0KLSBFcmljDQoNCk9uIFR1ZSwgTWFyIDUsIDIwMTkgYXQg
MToxMiBQTSBSb2RuZXkgVy4gR3JpbWVzIDxmcmVlYnNkQGduZHJzaC5kbnNtZ3IubmV0PG1haWx0
bzpmcmVlYnNkQGduZHJzaC5kbnNtZ3IubmV0Pj4gd3JvdGU6DQo+IFRoaXMgcmVwcmVzZW50cyBh
IG1pc3VuZGVyc3RhbmRpbmcgb2YgaG93IGRlZmluZXMgYXJlIHVzZWQuIFRoaXMgbGVmdA0KPiB0
aGUgb3B0aW9uIG9wZW4gdG8gdGhlIHVzZXIgdG8gZW5hYmxlIHRoZSB1c2Ugb2YgbGFyZ2VyIHRo
YW4gcGFnZSBzaXplDQo+IGJ1ZmZlcnMgYXMgaXQgZG9lcyBlbmFibGUgYmV0dGVyIHBlcmZvcm1h
bmNlLiBPdmVyIHRoZSBjb3Vyc2Ugb2YgYQ0KPiBsb25nIHVwdGltZSBtZW1vcnkgY2FuIGdldCB0
b28gZnJhZ21lbnRlZC4gSG93ZXZlciwgdGhpcyBsZWZ0IGl0IG9wZW4NCj4gdG8gdGhlIGVuZCBj
b25zdW1lci4NCj4NCj4gSSdkIGxpa2UgdG8gc2VlIHRoaXMgcmV2ZXJ0ZWQgd2l0aCBwZXJoYXBz
IGEgYmV0dGVyIG5hbWUgZm9yIHRoZQ0KPiBkZWZpbmUgYW5kIHRoZSBhZGRpdGlvbiBvZiBhbiBl
eHBsYW5hdG9yeSBjb21tZW50Lg0KPiBUaGFua3MuDQpZZXMgcGxlYXNlLg0KDQpBbHNvLCBNYXR0
LCBkb2VzIGl0L3dvdWxkIGl0IHdvcmsgdG8gc3RvcCB0aGUgbWVtb3J5IGZyYWdtZW50YXRpb24g
aXNzdWUNCmlmIHdlIHB1c2ggdGhlIGFsbG9jYXRpb24gdXAgdG8gdGhlIG5leHQgcGFnZSBzaXpl
IGFuZCBqdXN0IHdhc3RlIHRoZQ0KM2sgYnl0ZXM/ICBTb21lIHBlb3BsZSBtaWdodCBiZSB3aWxs
aW5nIHRvIG1ha2UgdGhhdCB0cmFkZSBvZmYgdG8gZ2V0DQpsb25nIHVwIHRpbWVzIGFuZCBmdWxs
IDlrIGp1bWJvJ3MuDQoNCg0KVGhhbmtzLA0KUm9kDQoNCj4gLU0NCj4NCj4gT24gVHVlLCBNYXIg
NSwgMjAxOSBhdCAxMToxMyBBTSBFcmljIEpveW5lciA8ZXJqQGZyZWVic2Qub3JnPG1haWx0bzpl
cmpAZnJlZWJzZC5vcmc+PiB3cm90ZToNCj4gPg0KPiA+IEF1dGhvcjogZXJqDQo+ID4gRGF0ZTog
VHVlIE1hciAgNSAxOToxMjo1MSAyMDE5DQo+ID4gTmV3IFJldmlzaW9uOiAzNDQ4MTcNCj4gPiBV
Ukw6IGh0dHBzOi8vc3Zud2ViLmZyZWVic2Qub3JnL2NoYW5nZXNldC9iYXNlLzM0NDgxNw0KPiA+
DQo+ID4gTG9nOg0KPiA+ICAgUmVtb3ZlIHJlZmVyZW5jZXMgdG8gQ09OVElHTUFMTE9DX1dPUktT
IGluIGlmbGliIGFuZCBlbQ0KPiA+DQo+ID4gICBGcm9tIEpha2U6DQo+ID4gICAiVGhlIGlmbGli
X2ZsX3NldHVwKCkgZnVuY3Rpb24gdHJpZXMgdG8gcGljayB2YXJpb3VzIGJ1ZmZlciBzaXplcyBi
YXNlZA0KPiA+ICAgb24gdGhlIG1heF9mcmFtZV9zaXplIHZhbHVlIGRlZmluZWQgYnkgdGhlIHBh
cmVudCBkcml2ZXIuIEhvd2V2ZXIsIHRoaXMNCj4gPiAgIGNvZGUgd2FzIHdyYXBwZWQgdW5kZXIg
Q09OVElHTUFMTE9DX1dPUktTLCB3aGljaCB3YXMgbmV2ZXIgYWN0dWFsbHkNCj4gPiAgIGRlZmlu
ZWQgYW55d2hlcmUuDQo+ID4NCj4gPiAgIFRoaXMgc2FtZSBjb2RlIHBhdHRlcm4gd2FzIHVzZWQg
aW4gaWZfZW0uYywgbGlrZWx5IHRyeWluZyB0byBtYXRjaA0KPiA+ICAgd2hhdCBpZmxpYiB1c2Vz
Lg0KPiA+DQo+ID4gICBTaW5jZSBDT05USUdNQUxMT0NfV09SS1MgaXMgbm90IGRlZmluZWQsIHJl
bW92ZSB0aGlzIGRlYWQgY29kZSBmcm9tDQo+ID4gICBpZmxpYl9mbF9zZXR1cCBhbmQgaWZfZW0u
Yw0KPiA+DQo+ID4gICBHaXZlbiB0aGF0IHZhcmlvdXMgaWZsaWIgZHJpdmVycyBhcHBlYXIgdG8g
YmUgdXNpbmcgYSBzaW1pbGFyDQo+ID4gICBjYWxjdWxhdGlvbiwgaXQgbWlnaHQgYmUgd29ydGgg
bWFraW5nIHRoaXMgYnVmZmVyIHNpemUgYSB2YWx1ZSB0aGF0IHRoZQ0KPiA+ICAgZHJpdmVyIGNh
biBwZWVrIGF0IGluIHRoZSBmdXR1cmUuIg0KPiA+DQo+ID4gICBTdWJtaXR0ZWQgYnk6IEphY29i
IEtlbGxlciA8amFjb2IuZS5rZWxsZXJAaW50ZWwuY29tPG1haWx0bzpqYWNvYi5lLmtlbGxlckBp
bnRlbC5jb20+Pg0KPiA+ICAgUmV2aWV3ZWQgYnk6ICBzaHVyZEANCj4gPiAgIE1GQyBhZnRlcjog
ICAgMSB3ZWVrDQo+ID4gICBTcG9uc29yZWQgYnk6IEludGVsIENvcnBvcmF0aW9uDQo+ID4gICBE
aWZmZXJlbnRpYWwgUmV2aXNpb246ICAgICAgICBodHRwczovL3Jldmlld3MuZnJlZWJzZC5vcmcv
RDE5MTk5DQo+ID4NCj4gPiBNb2RpZmllZDoNCj4gPiAgIGhlYWQvc3lzL2Rldi9lMTAwMC9pZl9l
bS5jDQo+ID4gICBoZWFkL3N5cy9uZXQvaWZsaWIuYw0KPiA+DQo+ID4gTW9kaWZpZWQ6IGhlYWQv
c3lzL2Rldi9lMTAwMC9pZl9lbS5jDQo+ID4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQo+ID4gLS0t
IGhlYWQvc3lzL2Rldi9lMTAwMC9pZl9lbS5jICBUdWUgTWFyICA1IDE5OjA4OjM3IDIwMTkgICAg
ICAgIChyMzQ0ODE2KQ0KPiA+ICsrKyBoZWFkL3N5cy9kZXYvZTEwMDAvaWZfZW0uYyAgVHVlIE1h
ciAgNSAxOToxMjo1MSAyMDE5ICAgICAgICAocjM0NDgxNykNCj4gPiBAQCAtMTI3NiwxNSArMTI3
Niw4IEBAIGVtX2lmX2luaXQoaWZfY3R4X3QgY3R4KQ0KPiA+ICAgICAgICAgICovDQo+ID4gICAg
ICAgICBpZiAoYWRhcHRlci0+aHcubWFjLm1heF9mcmFtZV9zaXplIDw9IDIwNDgpDQo+ID4gICAg
ICAgICAgICAgICAgIGFkYXB0ZXItPnJ4X21idWZfc3ogPSBNQ0xCWVRFUzsNCj4gPiAtI2lmbmRl
ZiBDT05USUdNQUxMT0NfV09SS1MNCj4gPiAgICAgICAgIGVsc2UNCj4gPiAgICAgICAgICAgICAg
ICAgYWRhcHRlci0+cnhfbWJ1Zl9zeiA9IE1KVU1QQUdFU0laRTsNCj4gPiAtI2Vsc2UNCj4gPiAt
ICAgICAgIGVsc2UgaWYgKGFkYXB0ZXItPmh3Lm1hYy5tYXhfZnJhbWVfc2l6ZSA8PSA0MDk2KQ0K
PiA+IC0gICAgICAgICAgICAgICBhZGFwdGVyLT5yeF9tYnVmX3N6ID0gTUpVTVBBR0VTSVpFOw0K
PiA+IC0gICAgICAgZWxzZQ0KPiA+IC0gICAgICAgICAgICAgICBhZGFwdGVyLT5yeF9tYnVmX3N6
ID0gTUpVTTlCWVRFUzsNCj4gPiAtI2VuZGlmDQo+ID4gICAgICAgICBlbV9pbml0aWFsaXplX3Jl
Y2VpdmVfdW5pdChjdHgpOw0KPiA+DQo+ID4gICAgICAgICAvKiBVc2UgcmVhbCBWTEFOIEZpbHRl
ciBzdXBwb3J0PyAqLw0KPiA+DQo+ID4gTW9kaWZpZWQ6IGhlYWQvc3lzL25ldC9pZmxpYi5jDQo+
ID4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09DQo+ID4gLS0tIGhlYWQvc3lzL25ldC9pZmxpYi5jICAg
ICAgICBUdWUgTWFyICA1IDE5OjA4OjM3IDIwMTkgICAgICAgIChyMzQ0ODE2KQ0KPiA+ICsrKyBo
ZWFkL3N5cy9uZXQvaWZsaWIuYyAgICAgICAgVHVlIE1hciAgNSAxOToxMjo1MSAyMDE5ICAgICAg
ICAocjM0NDgxNykNCj4gPiBAQCAtMjE4NywxNyArMjE4Nyw4IEBAIGlmbGliX2ZsX3NldHVwKGlm
bGliX2ZsX3QgZmwpDQo+ID4gICAgICAgICAgKi8NCj4gPiAgICAgICAgIGlmIChzY3R4LT5pc2Nf
bWF4X2ZyYW1lX3NpemUgPD0gMjA0OCkNCj4gPiAgICAgICAgICAgICAgICAgZmwtPmlmbF9idWZf
c2l6ZSA9IE1DTEJZVEVTOw0KPiA+IC0jaWZuZGVmIENPTlRJR01BTExPQ19XT1JLUw0KPiA+ICAg
ICAgICAgZWxzZQ0KPiA+ICAgICAgICAgICAgICAgICBmbC0+aWZsX2J1Zl9zaXplID0gTUpVTVBB
R0VTSVpFOw0KPiA+IC0jZWxzZQ0KPiA+IC0gICAgICAgZWxzZSBpZiAoc2N0eC0+aXNjX21heF9m
cmFtZV9zaXplIDw9IDQwOTYpDQo+ID4gLSAgICAgICAgICAgICAgIGZsLT5pZmxfYnVmX3NpemUg
PSBNSlVNUEFHRVNJWkU7DQo+ID4gLSAgICAgICBlbHNlIGlmIChzY3R4LT5pc2NfbWF4X2ZyYW1l
X3NpemUgPD0gOTIxNikNCj4gPiAtICAgICAgICAgICAgICAgZmwtPmlmbF9idWZfc2l6ZSA9IE1K
VU05QllURVM7DQo+ID4gLSAgICAgICBlbHNlDQo+ID4gLSAgICAgICAgICAgICAgIGZsLT5pZmxf
YnVmX3NpemUgPSBNSlVNMTZCWVRFUzsNCj4gPiAtI2VuZGlmDQo+ID4gICAgICAgICBpZiAoZmwt
PmlmbF9idWZfc2l6ZSA+IGN0eC0+aWZjX21heF9mbF9idWZfc2l6ZSkNCj4gPiAgICAgICAgICAg
ICAgICAgY3R4LT5pZmNfbWF4X2ZsX2J1Zl9zaXplID0gZmwtPmlmbF9idWZfc2l6ZTsNCj4gPiAg
ICAgICAgIGZsLT5pZmxfY2x0eXBlID0gbV9nZXR0eXBlKGZsLT5pZmxfYnVmX3NpemUpOw0KPiA+
DQo+DQo+DQoNCi0tDQpSb2QgR3JpbWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJncmltZXNAZnJlZWJzZC5vcmc8bWFpbHRvOnJncmltZXNAZnJlZWJz
ZC5vcmc+DQo=

From owner-svn-src-all@freebsd.org  Tue Mar  5 23:56:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B9910151C0EC;
 Tue,  5 Mar 2019 23:56:41 +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)
 server-signature RSA-PSS (4096 bits)
 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 5E4CD8EF29;
 Tue,  5 Mar 2019 23:56:41 +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 4DB952368C;
 Tue,  5 Mar 2019 23:56:41 +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 x25NufjL019511;
 Tue, 5 Mar 2019 23:56:41 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25Nuf9H019510;
 Tue, 5 Mar 2019 23:56:41 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903052356.x25Nuf9H019510@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 23:56:41 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344827 - head/sys/riscv/riscv
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: head/sys/riscv/riscv
X-SVN-Commit-Revision: 344827
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5E4CD8EF29
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 23:56:41 -0000

Author: markj
Date: Tue Mar  5 23:56:40 2019
New Revision: 344827
URL: https://svnweb.freebsd.org/changeset/base/344827

Log:
  Add pmap_get_tables() for riscv.
  
  This mirrors the arm64 implementation and is for use in the minidump
  code.
  
  Submitted by:	Mitchell Horne <mhorne063@gmail.com>
  Differential Revision:	https://reviews.freebsd.org/D18321

Modified:
  head/sys/riscv/riscv/pmap.c

Modified: head/sys/riscv/riscv/pmap.c
==============================================================================
--- head/sys/riscv/riscv/pmap.c	Tue Mar  5 22:55:33 2019	(r344826)
+++ head/sys/riscv/riscv/pmap.c	Tue Mar  5 23:56:40 2019	(r344827)
@@ -4438,3 +4438,40 @@ pmap_is_valid_memattr(pmap_t pmap __unused, vm_memattr
 
 	return (mode >= VM_MEMATTR_DEVICE && mode <= VM_MEMATTR_WRITE_BACK);
 }
+
+bool
+pmap_get_tables(pmap_t pmap, vm_offset_t va, pd_entry_t **l1, pd_entry_t **l2,
+    pt_entry_t **l3)
+{
+	pd_entry_t *l1p, *l2p;
+
+	/* Get l1 directory entry. */
+	l1p = pmap_l1(pmap, va);
+	*l1 = l1p;
+
+	if (l1p == NULL || (pmap_load(l1p) & PTE_V) == 0)
+		return (false);
+
+	if ((pmap_load(l1p) & PTE_RX) != 0) {
+		*l2 = NULL;
+		*l3 = NULL;
+		return (true);
+	}
+
+	/* Get l2 directory entry. */
+	l2p = pmap_l1_to_l2(l1p, va);
+	*l2 = l2p;
+
+	if (l2p == NULL || (pmap_load(l2p) & PTE_V) == 0)
+		return (false);
+
+	if ((pmap_load(l2p) & PTE_RX) != 0) {
+		*l3 = NULL;
+		return (true);
+	}
+
+	/* Get l3 page table entry. */
+	*l3 = pmap_l2_to_l3(l2p, va);
+
+	return (true);
+}

From owner-svn-src-all@freebsd.org  Tue Mar  5 23:58:17 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A2F4151C3D2;
 Tue,  5 Mar 2019 23:58:17 +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)
 server-signature RSA-PSS (4096 bits)
 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 0D2F28F0BA;
 Tue,  5 Mar 2019 23:58:17 +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 0301723693;
 Tue,  5 Mar 2019 23:58:17 +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 x25NwGsb019635;
 Tue, 5 Mar 2019 23:58:16 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25NwGmO019634;
 Tue, 5 Mar 2019 23:58:16 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903052358.x25NwGmO019634@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 23:58:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344828 - head/sys/riscv/riscv
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: head/sys/riscv/riscv
X-SVN-Commit-Revision: 344828
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0D2F28F0BA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 23:58:17 -0000

Author: markj
Date: Tue Mar  5 23:58:16 2019
New Revision: 344828
URL: https://svnweb.freebsd.org/changeset/base/344828

Log:
  Initialize dump_avail[] on riscv.
  
  Submitted by:	Mitchell Horne <mhorne063@gmail.com>
  Differential Revision:	https://reviews.freebsd.org/D19170

Modified:
  head/sys/riscv/riscv/pmap.c

Modified: head/sys/riscv/riscv/pmap.c
==============================================================================
--- head/sys/riscv/riscv/pmap.c	Tue Mar  5 23:56:40 2019	(r344827)
+++ head/sys/riscv/riscv/pmap.c	Tue Mar  5 23:58:16 2019	(r344828)
@@ -628,7 +628,7 @@ pmap_bootstrap(vm_offset_t l1pt, vm_paddr_t kernstart,
 	
 	pa = pmap_early_vtophys(l1pt, freemempos);
 
-	/* Initialize phys_avail. */
+	/* Initialize phys_avail and dump_avail. */
 	for (avail_slot = map_slot = physmem = 0; map_slot < physmap_idx * 2;
 	    map_slot += 2) {
 		start = physmap[map_slot];
@@ -636,6 +636,9 @@ pmap_bootstrap(vm_offset_t l1pt, vm_paddr_t kernstart,
 
 		if (start == end)
 			continue;
+		dump_avail[map_slot] = start;
+		dump_avail[map_slot + 1] = end;
+
 		if (start >= kernstart && end <= pa)
 			continue;
 

From owner-svn-src-all@freebsd.org  Tue Mar  5 23:59:56 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6E58A151C4AF;
 Tue,  5 Mar 2019 23:59:56 +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)
 server-signature RSA-PSS (4096 bits)
 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 111CE8F263;
 Tue,  5 Mar 2019 23:59:56 +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 E157823698;
 Tue,  5 Mar 2019 23:59:55 +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 x25NxtW8019760;
 Tue, 5 Mar 2019 23:59:55 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x25Nxtm3019756;
 Tue, 5 Mar 2019 23:59:55 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903052359.x25Nxtm3019756@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Tue, 5 Mar 2019 23:59:55 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344829 - head/lib/libkvm
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: head/lib/libkvm
X-SVN-Commit-Revision: 344829
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 111CE8F263
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.957,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Mar 2019 23:59:56 -0000

Author: markj
Date: Tue Mar  5 23:59:55 2019
New Revision: 344829
URL: https://svnweb.freebsd.org/changeset/base/344829

Log:
  Add riscv minidump support to libkvm.
  
  Submitted by:	Mitchell Horne <mhorne063@gmail.com>
  Differential Revision:	https://reviews.freebsd.org/D19171

Added:
  head/lib/libkvm/kvm_minidump_riscv.c   (contents, props changed)
  head/lib/libkvm/kvm_riscv.h   (contents, props changed)
Modified:
  head/lib/libkvm/Makefile

Modified: head/lib/libkvm/Makefile
==============================================================================
--- head/lib/libkvm/Makefile	Tue Mar  5 23:58:16 2019	(r344828)
+++ head/lib/libkvm/Makefile	Tue Mar  5 23:59:55 2019	(r344829)
@@ -18,6 +18,7 @@ SRCS=	kvm.c kvm_cptime.c kvm_getloadavg.c \
 	kvm_i386.c kvm_minidump_i386.c \
 	kvm_minidump_mips.c \
 	kvm_powerpc.c kvm_powerpc64.c \
+	kvm_minidump_riscv.c \
 	kvm_sparc64.c
 INCS=	kvm.h
 

Added: head/lib/libkvm/kvm_minidump_riscv.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libkvm/kvm_minidump_riscv.c	Tue Mar  5 23:59:55 2019	(r344829)
@@ -0,0 +1,288 @@
+/*-
+ * Copyright (c) 2006 Peter Wemm
+ * Copyright (c) 2019 Mitchell Horne
+ *
+ * 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.
+ *
+ * From: FreeBSD: src/lib/libkvm/kvm_minidump_amd64.c r261799
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+/*
+ * RISC-V machine dependent routines for kvm and minidumps.
+ */
+
+#include <sys/param.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <vm/vm.h>
+#include <kvm.h>
+
+#include "../../sys/riscv/include/minidump.h"
+
+#include <limits.h>
+
+#include "kvm_private.h"
+#include "kvm_riscv.h"
+
+#define	riscv_round_page(x)	roundup2((kvaddr_t)(x), RISCV_PAGE_SIZE)
+
+struct vmstate {
+	struct minidumphdr hdr;
+};
+
+static riscv_pt_entry_t
+_riscv_pte_get(kvm_t *kd, u_long pteindex)
+{
+	riscv_pt_entry_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte));
+
+	return le64toh(*pte);
+}
+
+static int
+_riscv_minidump_probe(kvm_t *kd)
+{
+
+	return (_kvm_probe_elf_kernel(kd, ELFCLASS64, EM_RISCV) &&
+	    _kvm_is_minidump(kd));
+}
+
+static void
+_riscv_minidump_freevtop(kvm_t *kd)
+{
+	struct vmstate *vm = kd->vmst;
+
+	free(vm);
+	kd->vmst = NULL;
+}
+
+static int
+_riscv_minidump_initvtop(kvm_t *kd)
+{
+	struct vmstate *vmst;
+	off_t off, sparse_off;
+
+	vmst = _kvm_malloc(kd, sizeof(*vmst));
+	if (vmst == NULL) {
+		_kvm_err(kd, kd->program, "cannot allocate vm");
+		return (-1);
+	}
+	kd->vmst = vmst;
+	if (pread(kd->pmfd, &vmst->hdr, sizeof(vmst->hdr), 0) !=
+	    sizeof(vmst->hdr)) {
+		_kvm_err(kd, kd->program, "cannot read dump header");
+		return (-1);
+	}
+	if (strncmp(MINIDUMP_MAGIC, vmst->hdr.magic,
+	    sizeof(vmst->hdr.magic)) != 0) {
+		_kvm_err(kd, kd->program, "not a minidump for this platform");
+		return (-1);
+	}
+
+	vmst->hdr.version = le32toh(vmst->hdr.version);
+	if (vmst->hdr.version != MINIDUMP_VERSION) {
+		_kvm_err(kd, kd->program, "wrong minidump version. "
+		    "Expected %d got %d", MINIDUMP_VERSION, vmst->hdr.version);
+		return (-1);
+	}
+	vmst->hdr.msgbufsize = le32toh(vmst->hdr.msgbufsize);
+	vmst->hdr.bitmapsize = le32toh(vmst->hdr.bitmapsize);
+	vmst->hdr.pmapsize = le32toh(vmst->hdr.pmapsize);
+	vmst->hdr.kernbase = le64toh(vmst->hdr.kernbase);
+	vmst->hdr.dmapphys = le64toh(vmst->hdr.dmapphys);
+	vmst->hdr.dmapbase = le64toh(vmst->hdr.dmapbase);
+	vmst->hdr.dmapend = le64toh(vmst->hdr.dmapend);
+
+	/* Skip header and msgbuf */
+	off = RISCV_PAGE_SIZE + riscv_round_page(vmst->hdr.msgbufsize);
+
+	/* build physical address lookup table for sparse pages */
+	sparse_off = off + riscv_round_page(vmst->hdr.bitmapsize) +
+	    riscv_round_page(vmst->hdr.pmapsize);
+	if (_kvm_pt_init(kd, vmst->hdr.bitmapsize, off, sparse_off,
+	    RISCV_PAGE_SIZE, sizeof(uint64_t)) == -1) {
+		return (-1);
+	}
+	off += riscv_round_page(vmst->hdr.bitmapsize);
+
+	if (_kvm_pmap_init(kd, vmst->hdr.pmapsize, off) == -1) {
+		return (-1);
+	}
+	off += riscv_round_page(vmst->hdr.pmapsize);
+
+	return (0);
+}
+
+static int
+_riscv_minidump_vatop(kvm_t *kd, kvaddr_t va, off_t *pa)
+{
+	struct vmstate *vm;
+	riscv_physaddr_t offset;
+	riscv_pt_entry_t l3;
+	kvaddr_t l3_index;
+	riscv_physaddr_t a;
+	off_t ofs;
+
+	vm = kd->vmst;
+	offset = va & RISCV_PAGE_MASK;
+
+	if (va >= vm->hdr.dmapbase && va < vm->hdr.dmapend) {
+		a = (va - vm->hdr.dmapbase + vm->hdr.dmapphys) &
+		    ~RISCV_PAGE_MASK;
+		ofs = _kvm_pt_find(kd, a, RISCV_PAGE_SIZE);
+		if (ofs == -1) {
+			_kvm_err(kd, kd->program, "_riscv_minidump_vatop: "
+			    "direct map address 0x%jx not in minidump",
+			    (uintmax_t)va);
+			goto invalid;
+		}
+		*pa = ofs + offset;
+		return (RISCV_PAGE_SIZE - offset);
+	} else if (va >= vm->hdr.kernbase) {
+		l3_index = (va - vm->hdr.kernbase) >> RISCV_L3_SHIFT;
+		if (l3_index >= vm->hdr.pmapsize / sizeof(l3))
+			goto invalid;
+		l3 = _riscv_pte_get(kd, l3_index);
+		if ((l3 & RISCV_PTE_V) == 0 || (l3 & RISCV_PTE_RWX) == 0) {
+			_kvm_err(kd, kd->program,
+			    "_riscv_minidump_vatop: pte not valid");
+			goto invalid;
+		}
+		a = (l3 >> RISCV_PTE_PPN0_S) << RISCV_L3_SHIFT;
+		ofs = _kvm_pt_find(kd, a, RISCV_PAGE_SIZE);
+		if (ofs == -1) {
+			_kvm_err(kd, kd->program, "_riscv_minidump_vatop: "
+			    "physical address 0x%jx not in minidump",
+			    (uintmax_t)a);
+			goto invalid;
+		}
+		*pa = ofs + offset;
+		return (RISCV_PAGE_SIZE - offset);
+	} else {
+		_kvm_err(kd, kd->program,
+	    "_riscv_minidump_vatop: virtual address 0x%jx not minidumped",
+		    (uintmax_t)va);
+		goto invalid;
+	}
+
+invalid:
+	_kvm_err(kd, 0, "invalid address (0x%jx)", (uintmax_t)va);
+	return (0);
+}
+
+static int
+_riscv_minidump_kvatop(kvm_t *kd, kvaddr_t va, off_t *pa)
+{
+
+	if (ISALIVE(kd)) {
+		_kvm_err(kd, 0,
+		    "_riscv_minidump_kvatop called in live kernel!");
+		return (0);
+	}
+	return (_riscv_minidump_vatop(kd, va, pa));
+}
+
+static int
+_riscv_native(kvm_t *kd __unused)
+{
+
+#ifdef __riscv
+	return (1);
+#else
+	return (0);
+#endif
+}
+
+static vm_prot_t
+_riscv_entry_to_prot(riscv_pt_entry_t pte)
+{
+	vm_prot_t prot = VM_PROT_READ;
+
+	if ((pte & RISCV_PTE_W) != 0)
+		prot |= VM_PROT_WRITE;
+	if ((pte & RISCV_PTE_X) != 0)
+		prot |= VM_PROT_EXECUTE;
+	return prot;
+}
+
+static int
+_riscv_minidump_walk_pages(kvm_t *kd, kvm_walk_pages_cb_t *cb, void *arg)
+{
+	struct vmstate *vm = kd->vmst;
+	u_long nptes = vm->hdr.pmapsize / sizeof(riscv_pt_entry_t);
+	u_long bmindex, dva, pa, pteindex, va;
+	struct kvm_bitmap bm;
+	vm_prot_t prot;
+	int ret = 0;
+
+	if (!_kvm_bitmap_init(&bm, vm->hdr.bitmapsize, &bmindex))
+		return (0);
+
+	for (pteindex = 0; pteindex < nptes; pteindex++) {
+		riscv_pt_entry_t pte = _riscv_pte_get(kd, pteindex);
+
+		if (((pte & RISCV_PTE_V) == 0) ||
+		    ((pte & RISCV_PTE_RWX) == 0))
+			continue;
+
+		va = vm->hdr.kernbase + (pteindex << RISCV_L3_SHIFT);
+		pa = (pte >> RISCV_PTE_PPN0_S) << RISCV_L3_SHIFT;
+		dva = vm->hdr.dmapbase + pa;
+		if (!_kvm_visit_cb(kd, cb, arg, pa, va, dva,
+		    _riscv_entry_to_prot(pte), RISCV_PAGE_SIZE, 0)) {
+			goto out;
+		}
+	}
+
+	while (_kvm_bitmap_next(&bm, &bmindex)) {
+		pa = bmindex * RISCV_PAGE_SIZE;
+		dva = vm->hdr.dmapbase + pa;
+		if (vm->hdr.dmapend < (dva + RISCV_PAGE_SIZE))
+			break;
+		va = 0;
+		prot = VM_PROT_READ | VM_PROT_WRITE;
+		if (!_kvm_visit_cb(kd, cb, arg, pa, va, dva,
+		    prot, RISCV_PAGE_SIZE, 0)) {
+			goto out;
+		}
+	}
+	ret = 1;
+
+out:
+	_kvm_bitmap_deinit(&bm);
+	return (ret);
+}
+
+static struct kvm_arch kvm_riscv_minidump = {
+	.ka_probe = _riscv_minidump_probe,
+	.ka_initvtop = _riscv_minidump_initvtop,
+	.ka_freevtop = _riscv_minidump_freevtop,
+	.ka_kvatop = _riscv_minidump_kvatop,
+	.ka_native = _riscv_native,
+	.ka_walk_pages = _riscv_minidump_walk_pages,
+};
+
+KVM_ARCH(kvm_riscv_minidump);

Added: head/lib/libkvm/kvm_riscv.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libkvm/kvm_riscv.h	Tue Mar  5 23:59:55 2019	(r344829)
@@ -0,0 +1,90 @@
+/*-
+ * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
+ * Copyright (c) 2019 Mitchell Horne
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE 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.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef __KVM_RISCV_H__
+#define	__KVM_RISCV_H__
+
+#ifdef __riscv
+#include <machine/pte.h>
+#endif
+
+typedef uint64_t	riscv_physaddr_t;
+typedef uint64_t	riscv_pt_entry_t;
+
+#define	RISCV_PAGE_SHIFT	12
+#define	RISCV_PAGE_SIZE		(1 << RISCV_PAGE_SHIFT)
+#define	RISCV_PAGE_MASK		(RISCV_PAGE_SIZE - 1)
+
+/* Source: sys/riscv/include/pte.h */
+#define	RISCV_L3_SHIFT		12
+#define	RISCV_L3_SIZE		(1 << L3_SHIFT)
+#define	RISCV_L3_OFFSET 	(L3_SIZE - 1)
+
+#define	RISCV_PTE_SW_MANAGED	(1 << 9)
+#define	RISCV_PTE_SW_WIRED	(1 << 8)
+#define	RISCV_PTE_D		(1 << 7) /* Dirty */
+#define	RISCV_PTE_A		(1 << 6) /* Accessed */
+#define	RISCV_PTE_G		(1 << 5) /* Global */
+#define	RISCV_PTE_U		(1 << 4) /* User */
+#define	RISCV_PTE_X		(1 << 3) /* Execute */
+#define	RISCV_PTE_W		(1 << 2) /* Write */
+#define	RISCV_PTE_R		(1 << 1) /* Read */
+#define	RISCV_PTE_V		(1 << 0) /* Valid */
+#define	RISCV_PTE_RWX		(RISCV_PTE_R | RISCV_PTE_W | RISCV_PTE_X)
+
+#define	RISCV_PTE_PPN0_S	10
+
+#ifdef __riscv
+_Static_assert(sizeof(pt_entry_t) == sizeof(riscv_pt_entry_t),
+    "pt_entry_t size mismatch");
+
+_Static_assert(PAGE_SHIFT == RISCV_PAGE_SHIFT, "PAGE_SHIFT mismatch");
+_Static_assert(PAGE_SIZE == RISCV_PAGE_SIZE, "PAGE_SIZE mismatch");
+_Static_assert(PAGE_MASK == RISCV_PAGE_MASK, "PAGE_MASK mismatch");
+
+_Static_assert(L3_SHIFT == RISCV_L3_SHIFT, "L3_SHIFT mismatch");
+_Static_assert(L3_SIZE == RISCV_L3_SIZE, "L3_SIZE mismatch");
+_Static_assert(L3_OFFSET == RISCV_L3_OFFSET, "L3_OFFSET mismatch");
+_Static_assert(PTE_PPN0_S == RISCV_PTE_PPN0_S, "PTE_PPN0_S mismatch");
+
+_Static_assert(PTE_SW_MANAGED == RISCV_PTE_SW_MANAGED,
+    "PTE_SW_MANAGED mismatch");
+_Static_assert(PTE_SW_WIRED == RISCV_PTE_SW_WIRED, "PTE_SW_WIRED mismatch");
+_Static_assert(PTE_D == RISCV_PTE_D, "PTE_D mismatch");
+_Static_assert(PTE_A == RISCV_PTE_A, "PTE_A mismatch");
+_Static_assert(PTE_G == RISCV_PTE_G, "PTE_G mismatch");
+_Static_assert(PTE_U == RISCV_PTE_U, "PTE_U mismatch");
+_Static_assert(PTE_X == RISCV_PTE_X, "PTE_X mismatch");
+_Static_assert(PTE_W == RISCV_PTE_W, "PTE_W mismatch");
+_Static_assert(PTE_R == RISCV_PTE_R, "PTE_R mismatch");
+_Static_assert(PTE_V == RISCV_PTE_V, "PTE_V mismatch");
+_Static_assert(PTE_RWX == RISCV_PTE_RWX, "PTE_RWX mismatch");
+#endif
+
+#endif /* !__KVM_RISCV_H__ */

From owner-svn-src-all@freebsd.org  Wed Mar  6 00:01:07 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89340151C593;
 Wed,  6 Mar 2019 00:01:07 +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)
 server-signature RSA-PSS (4096 bits)
 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 27FDE8F573;
 Wed,  6 Mar 2019 00:01:07 +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 1E981236D2;
 Wed,  6 Mar 2019 00:01: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 x26017a3020852;
 Wed, 6 Mar 2019 00:01:07 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26016FM020846;
 Wed, 6 Mar 2019 00:01:06 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903060001.x26016FM020846@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Wed, 6 Mar 2019 00:01:06 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344830 - in head/sys: riscv/riscv vm
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: in head/sys: riscv/riscv vm
X-SVN-Commit-Revision: 344830
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 27FDE8F573
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.957,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 00:01:07 -0000

Author: markj
Date: Wed Mar  6 00:01:06 2019
New Revision: 344830
URL: https://svnweb.freebsd.org/changeset/base/344830

Log:
  Implement minidump support for RISC-V.
  
  Submitted by:	Mitchell Horne <mhorne063@gmail.com>
  Differential Revision:	https://reviews.freebsd.org/D18320

Modified:
  head/sys/riscv/riscv/minidump_machdep.c
  head/sys/riscv/riscv/pmap.c
  head/sys/riscv/riscv/uma_machdep.c
  head/sys/vm/vm_page.c

Modified: head/sys/riscv/riscv/minidump_machdep.c
==============================================================================
--- head/sys/riscv/riscv/minidump_machdep.c	Tue Mar  5 23:59:55 2019	(r344829)
+++ head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 00:01:06 2019	(r344830)
@@ -1,5 +1,7 @@
 /*-
  * Copyright (c) 2006 Peter Wemm
+ * Copyright (c) 2015 The FreeBSD Foundation
+ * Copyright (c) 2019 Mitchell Horne
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -53,9 +55,381 @@ __FBSDID("$FreeBSD$");
 CTASSERT(sizeof(struct kerneldumpheader) == 512);
 CTASSERT(sizeof(*vm_page_dump) == 8);
 
+uint64_t *vm_page_dump;
+int vm_page_dump_size;
+
+static struct kerneldumpheader kdh;
+
+/* Handle chunked writes. */
+static size_t fragsz;
+static void *dump_va;
+static size_t counter, progress, dumpsize;
+
+static uint64_t tmpbuffer[PAGE_SIZE / sizeof(uint64_t)];
+
+static struct {
+	int min_per;
+	int max_per;
+	int visited;
+} progress_track[10] = {
+	{  0,  10, 0},
+	{ 10,  20, 0},
+	{ 20,  30, 0},
+	{ 30,  40, 0},
+	{ 40,  50, 0},
+	{ 50,  60, 0},
+	{ 60,  70, 0},
+	{ 70,  80, 0},
+	{ 80,  90, 0},
+	{ 90, 100, 0}
+};
+
+static void
+report_progress(size_t progress, size_t dumpsize)
+{
+	int sofar, i;
+
+	sofar = 100 - ((progress * 100) / dumpsize);
+	for (i = 0; i < nitems(progress_track); i++) {
+		if (sofar < progress_track[i].min_per ||
+		    sofar > progress_track[i].max_per)
+			continue;
+		if (progress_track[i].visited)
+			return;
+		progress_track[i].visited = 1;
+		printf("..%d%%", sofar);
+		return;
+	}
+}
+
+static bool
+is_dumpable(vm_paddr_t pa)
+{
+	vm_page_t m;
+	int i;
+
+	if ((m = vm_phys_paddr_to_vm_page(pa)) != NULL)
+		return ((m->flags & PG_NODUMP) == 0);
+
+	for (i = 0; dump_avail[i] != 0 || dump_avail[i + 1] != 0; i += 2) {
+		if (pa >= dump_avail[i] && pa < dump_avail[i + 1])
+			return (true);
+	}
+	return (false);
+}
+
+static int
+blk_flush(struct dumperinfo *di)
+{
+	int error;
+
+	if (fragsz == 0)
+		return (0);
+
+	error = dump_append(di, dump_va, 0, fragsz);
+	fragsz = 0;
+	return (error);
+}
+
+/*
+ * Write a block of data to the dump file.
+ *
+ * Caller can provide data through a pointer or by specifying its
+ * physical address.
+ *
+ * XXX writes using pa should be no larger than PAGE_SIZE.
+ */
+static int
+blk_write(struct dumperinfo *di, char *ptr, vm_paddr_t pa, size_t sz)
+{
+	size_t len;
+	int error, c;
+	u_int maxdumpsz;
+
+	maxdumpsz = min(di->maxiosize, MAXDUMPPGS * PAGE_SIZE);
+	if (maxdumpsz == 0)	/* seatbelt */
+		maxdumpsz = PAGE_SIZE;
+	error = 0;
+	if ((sz % PAGE_SIZE) != 0) {
+		printf("size not page aligned\n");
+		return (EINVAL);
+	}
+	if (ptr != NULL && pa != 0) {
+		printf("cant have both va and pa!\n");
+		return (EINVAL);
+	}
+	if ((((uintptr_t)pa) % PAGE_SIZE) != 0) {
+		printf("address not page aligned %#lx\n", (uintptr_t)pa);
+		return (EINVAL);
+	}
+	if (ptr != NULL) {
+		/*
+		 * If we're doing a virtual dump, flush any
+		 * pre-existing pa pages.
+		 */
+		error = blk_flush(di);
+		if (error != 0)
+			return (error);
+	}
+	while (sz) {
+		len = maxdumpsz - fragsz;
+		if (len > sz)
+			len = sz;
+		counter += len;
+		progress -= len;
+		if (counter >> 22) {
+			report_progress(progress, dumpsize);
+			counter &= (1 << 22) - 1;
+		}
+
+		wdog_kern_pat(WD_LASTVAL);
+
+		if (ptr) {
+			error = dump_append(di, ptr, 0, len);
+			if (error != 0)
+				return (error);
+			ptr += len;
+			sz -= len;
+		} else {
+			dump_va = (void *)PHYS_TO_DMAP(pa);
+			fragsz += len;
+			pa += len;
+			sz -= len;
+			error = blk_flush(di);
+			if (error != 0)
+				return (error);
+		}
+
+		/* Check for user abort */
+		c = cncheckc();
+		if (c == 0x03)
+			return (ECANCELED);
+		if (c != -1)
+			printf(" (CTRL-C to abort) ");
+	}
+
+	return (0);
+}
+
 int
 minidumpsys(struct dumperinfo *di)
 {
+	pd_entry_t *l1, *l2;
+	pt_entry_t *l3;
+	struct minidumphdr mdhdr;
+	uint32_t pmapsize;
+	vm_offset_t va;
+	vm_paddr_t pa;
+	int error;
+	uint64_t bits;
+	int i, bit;
+	int retry_count;
 
-	panic("minidumpsys");
+	retry_count = 0;
+retry:
+	retry_count++;
+	error = 0;
+	pmapsize = 0;
+
+	/* Build set of dumpable pages from kernel pmap */
+	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += L2_SIZE) {
+		pmapsize += PAGE_SIZE;
+		if (!pmap_get_tables(pmap_kernel(), va, &l1, &l2, &l3))
+			continue;
+
+		/* We should always be using the l2 table for kvm */
+		if (l2 == NULL)
+			continue;
+
+		/* l2 may be a superpage */
+		if ((*l2 & PTE_RWX) != 0) {
+			pa = (*l2 >> PTE_PPN1_S) << L2_SHIFT;
+			for (i = 0; i < Ln_ENTRIES; i++, pa += PAGE_SIZE) {
+				if (is_dumpable(pa))
+					dump_add_page(pa);
+			}
+		} else {
+			for (i = 0; i < Ln_ENTRIES; i++) {
+				if ((l3[i] & PTE_V) == 0)
+					continue;
+				pa = (l3[i] >> PTE_PPN0_S) * PAGE_SIZE;
+				if (is_dumpable(pa))
+					dump_add_page(pa);
+			}
+		}
+	}
+
+	/* Calculate dump size */
+	dumpsize = pmapsize;
+	dumpsize += round_page(msgbufp->msg_size);
+	dumpsize += round_page(vm_page_dump_size);
+	for (i = 0; i < vm_page_dump_size / sizeof(*vm_page_dump); i++) {
+		bits = vm_page_dump[i];
+		while (bits) {
+			bit = ffsl(bits) - 1;
+			pa = (((uint64_t)i * sizeof(*vm_page_dump) * NBBY) +
+			    bit) * PAGE_SIZE;
+			/* Clear out undumpable pages now if needed */
+			if (is_dumpable(pa))
+				dumpsize += PAGE_SIZE;
+			else
+				dump_drop_page(pa);
+			bits &= ~(1ul << bit);
+		}
+	}
+	dumpsize += PAGE_SIZE;
+
+	progress = dumpsize;
+
+	/* Initialize mdhdr */
+	bzero(&mdhdr, sizeof(mdhdr));
+	strcpy(mdhdr.magic, MINIDUMP_MAGIC);
+	mdhdr.version = MINIDUMP_VERSION;
+	mdhdr.msgbufsize = msgbufp->msg_size;
+	mdhdr.bitmapsize = vm_page_dump_size;
+	mdhdr.pmapsize = pmapsize;
+	mdhdr.kernbase = KERNBASE;
+	mdhdr.dmapphys = DMAP_MIN_PHYSADDR;
+	mdhdr.dmapbase = DMAP_MIN_ADDRESS;
+	mdhdr.dmapend = DMAP_MAX_ADDRESS;
+
+	dump_init_header(di, &kdh, KERNELDUMPMAGIC, KERNELDUMP_RISCV_VERSION,
+	    dumpsize);
+
+	error = dump_start(di, &kdh);
+	if (error != 0)
+		goto fail;
+
+	printf("Dumping %llu out of %ju MB:", (long long)dumpsize >> 20,
+	    ptoa((uintmax_t)physmem) / 1048576);
+
+	/* Dump minidump header */
+	bzero(&tmpbuffer, sizeof(tmpbuffer));
+	bcopy(&mdhdr, &tmpbuffer, sizeof(mdhdr));
+	error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
+	if (error)
+		goto fail;
+
+	/* Dump msgbuf up front */
+	error = blk_write(di, (char *)msgbufp->msg_ptr, 0,
+	    round_page(msgbufp->msg_size));
+	if (error)
+		goto fail;
+
+	/* Dump bitmap */
+	error = blk_write(di, (char *)vm_page_dump, 0,
+	    round_page(vm_page_dump_size));
+	if (error)
+		goto fail;
+
+	/* Dump kernel page directory pages */
+	bzero(&tmpbuffer, sizeof(tmpbuffer));
+	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += L2_SIZE) {
+		if (!pmap_get_tables(pmap_kernel(), va, &l1, &l2, &l3)) {
+			/* We always write a page, even if it is zero */
+			error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
+			if (error)
+				goto fail;
+			/* Flush, in case we reuse tmpbuffer in the same block */
+			error = blk_flush(di);
+			if (error)
+				goto fail;
+		} else if ((*l2 & PTE_RWX) != 0) {
+			/* Generate fake l3 entries based on the l2 superpage */
+			for (i = 0; i < Ln_ENTRIES; i++) {
+				tmpbuffer[i] = (*l2 | (i << PTE_PPN0_S));
+			}
+			/* We always write a page, even if it is zero */
+			error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
+			if (error)
+				goto fail;
+			/* Flush, in case we reuse tmpbuffer in the same block */
+			error = blk_flush(di);
+			if (error)
+				goto fail;
+			bzero(&tmpbuffer, sizeof(tmpbuffer));
+		} else {
+			pa = (*l2 >> PTE_PPN0_S) * PAGE_SIZE;
+
+			/* We always write a page, even if it is zero */
+			error = blk_write(di, NULL, pa, PAGE_SIZE);
+			if (error)
+				goto fail;
+		}
+	}
+
+	/* Dump memory chunks */
+	/* XXX cluster it up and use blk_dump() */
+	for (i = 0; i < vm_page_dump_size / sizeof(*vm_page_dump); i++) {
+		bits = vm_page_dump[i];
+		while (bits) {
+			bit = ffsl(bits) - 1;
+			pa = (((uint64_t)i * sizeof(*vm_page_dump) * NBBY) +
+			    bit) * PAGE_SIZE;
+			error = blk_write(di, 0, pa, PAGE_SIZE);
+			if (error)
+				goto fail;
+			bits &= ~(1ul << bit);
+		}
+	}
+
+	error = blk_flush(di);
+	if (error)
+		goto fail;
+
+	error = dump_finish(di, &kdh);
+	if (error != 0)
+		goto fail;
+
+	printf("\nDump complete\n");
+	return (0);
+
+fail:
+	if (error < 0)
+		error = -error;
+
+	printf("\n");
+	if (error == ENOSPC) {
+		printf("Dump map grown while dumping. ");
+		if (retry_count < 5) {
+			printf("Retrying...\n");
+			goto retry;
+		}
+		printf("Dump failed.\n");
+	}
+	else if (error == ECANCELED)
+		printf("Dump aborted\n");
+	else if (error == E2BIG)
+		printf("Dump failed. Partition too small.\n");
+	else
+		printf("** DUMP FAILED (ERROR %d) **\n", error);
+	return (error);
+}
+
+/*
+ * Add a page to the minidump bitmap.
+ */
+void
+dump_add_page(vm_paddr_t pa)
+{
+	int idx, bit;
+
+	pa >>= PAGE_SHIFT;
+	idx = pa >> 6;		/* 2^6 = 64 */
+	bit = pa & 63;
+	atomic_set_long(&vm_page_dump[idx], 1ul << bit);
+}
+
+/*
+ * Remove page from the minidump bitmap.
+ */
+void
+dump_drop_page(vm_paddr_t pa)
+{
+	int idx, bit;
+
+	pa >>= PAGE_SHIFT;
+	idx = pa >> 6;		/* 2^6 = 64 */
+	bit = pa & 63;
+	atomic_clear_long(&vm_page_dump[idx], 1ul << bit);
 }

Modified: head/sys/riscv/riscv/pmap.c
==============================================================================
--- head/sys/riscv/riscv/pmap.c	Tue Mar  5 23:59:55 2019	(r344829)
+++ head/sys/riscv/riscv/pmap.c	Wed Mar  6 00:01:06 2019	(r344830)
@@ -1645,9 +1645,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	PV_STAT(atomic_add_int(&pc_chunk_frees, 1));
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc));
-#if 0 /* TODO: For minidump */
 	dump_drop_page(m->phys_addr);
-#endif
 	vm_page_unwire(m, PQ_NONE);
 	vm_page_free(m);
 }
@@ -1709,9 +1707,7 @@ retry:
 	}
 	PV_STAT(atomic_add_int(&pc_chunk_count, 1));
 	PV_STAT(atomic_add_int(&pc_chunk_allocs, 1));
-#if 0 /* TODO: This is for minidump */
 	dump_add_page(m->phys_addr);
-#endif
 	pc = (void *)PHYS_TO_DMAP(m->phys_addr);
 	pc->pc_pmap = pmap;
 	pc->pc_map[0] = PC_FREE0 & ~1ul;	/* preallocated bit 0 */

Modified: head/sys/riscv/riscv/uma_machdep.c
==============================================================================
--- head/sys/riscv/riscv/uma_machdep.c	Tue Mar  5 23:59:55 2019	(r344829)
+++ head/sys/riscv/riscv/uma_machdep.c	Wed Mar  6 00:01:06 2019	(r344830)
@@ -55,11 +55,8 @@ uma_small_alloc(uma_zone_t zone, vm_size_t bytes, int 
 	if (m == NULL)
 		return (NULL);
 	pa = m->phys_addr;
-#if 0
-	/* RISCVTODO: minidump */
 	if ((wait & M_NODUMP) == 0)
 		dump_add_page(pa);
-#endif
 	va = (void *)PHYS_TO_DMAP(pa);
 	if ((wait & M_ZERO) && (m->flags & PG_ZERO) == 0)
 		bzero(va, PAGE_SIZE);
@@ -73,10 +70,7 @@ uma_small_free(void *mem, vm_size_t size, u_int8_t fla
 	vm_paddr_t pa;
 
 	pa = DMAP_TO_PHYS((vm_offset_t)mem);
-#if 0
-	/* RISCVTODO: minidump */
 	dump_drop_page(pa);
-#endif
 	m = PHYS_TO_VM_PAGE(pa);
 	vm_page_unwire_noq(m);
 	vm_page_free(m);

Modified: head/sys/vm/vm_page.c
==============================================================================
--- head/sys/vm/vm_page.c	Tue Mar  5 23:59:55 2019	(r344829)
+++ head/sys/vm/vm_page.c	Wed Mar  6 00:01:06 2019	(r344830)
@@ -633,7 +633,7 @@ vm_page_startup(vm_offset_t vaddr)
 #endif
 
 #if defined(__aarch64__) || defined(__amd64__) || defined(__arm__) || \
-    defined(__i386__) || defined(__mips__)
+    defined(__i386__) || defined(__mips__) || defined(__riscv)
 	/*
 	 * Allocate a bitmap to indicate that a random physical page
 	 * needs to be included in a minidump.
@@ -658,7 +658,8 @@ vm_page_startup(vm_offset_t vaddr)
 #else
 	(void)last_pa;
 #endif
-#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__)
+#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__) || \
+    defined(__riscv)
 	/*
 	 * Include the UMA bootstrap pages, witness pages and vm_page_dump
 	 * in a crash dump.  When pmap_map() uses the direct map, they are
@@ -773,7 +774,8 @@ vm_page_startup(vm_offset_t vaddr)
 		high_avail = new_end;
 	new_end = vm_reserv_startup(&vaddr, new_end, high_avail);
 #endif
-#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__)
+#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__) || \
+    defined(__riscv)
 	/*
 	 * Include vm_page_array and vm_reserv_array in a crash dump.
 	 */

From owner-svn-src-all@freebsd.org  Wed Mar  6 00:45:43 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10C3D151D919;
 Wed,  6 Mar 2019 00:45:43 +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)
 server-signature RSA-PSS (4096 bits)
 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 A912169ECA;
 Wed,  6 Mar 2019 00:45: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 9D98023EFF;
 Wed,  6 Mar 2019 00:45:42 +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 x260jgrl045727;
 Wed, 6 Mar 2019 00:45:42 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x260jgIY045726;
 Wed, 6 Mar 2019 00:45:42 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903060045.x260jgIY045726@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Wed, 6 Mar 2019 00:45:42 +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: r344832 - stable/12/lib/libc/sys
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/lib/libc/sys
X-SVN-Commit-Revision: 344832
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A912169ECA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 00:45:43 -0000

Author: emaste
Date: Wed Mar  6 00:45:42 2019
New Revision: 344832
URL: https://svnweb.freebsd.org/changeset/base/344832

Log:
  MFC r344628: poll.2: POLLNVAL is returned also for insufficient rights
  
  Reported by:	Bora Özarslan <borako.ozarslan@gmail.com>
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/lib/libc/sys/poll.2
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/lib/libc/sys/poll.2
==============================================================================
--- stable/12/lib/libc/sys/poll.2	Wed Mar  6 00:38:10 2019	(r344831)
+++ stable/12/lib/libc/sys/poll.2	Wed Mar  6 00:45:42 2019	(r344832)
@@ -28,7 +28,7 @@
 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd November 13, 2014
+.Dd February 27, 2019
 .Dt POLL 2
 .Os
 .Sh NAME
@@ -127,7 +127,8 @@ should never be present in the
 .Fa revents
 bitmask at the same time.
 .It POLLNVAL
-The file descriptor is not open.
+The file descriptor is not open,
+or in capability mode the file descriptor has insufficient rights.
 This flag is always checked, even
 if not present in the
 .Fa events

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:31:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 334F21521CBC;
 Wed,  6 Mar 2019 02:31:14 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 879446D466;
 Wed,  6 Mar 2019 02:31:13 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x262VA5Q083585;
 Tue, 5 Mar 2019 18:31:10 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x262V9Zn083584;
 Tue, 5 Mar 2019 18:31:09 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903060231.x262V9Zn083584@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344829 - head/lib/libkvm
In-Reply-To: <201903052359.x25Nxtm3019756@repo.freebsd.org>
To: Mark Johnston <markj@freebsd.org>
Date: Tue, 5 Mar 2019 18:31:09 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 879446D466
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.97 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.968,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:31:14 -0000

[ Charset UTF-8 unsupported, converting... ]
> Author: markj
> Date: Tue Mar  5 23:59:55 2019
> New Revision: 344829
> URL: https://svnweb.freebsd.org/changeset/base/344829
> 
> Log:
>   Add riscv minidump support to libkvm.
>   
>   Submitted by:	Mitchell Horne <mhorne063@gmail.com>
>   Differential Revision:	https://reviews.freebsd.org/D19171
> 
> Added:
>   head/lib/libkvm/kvm_minidump_riscv.c   (contents, props changed)
>   head/lib/libkvm/kvm_riscv.h   (contents, props changed)
> Modified:
>   head/lib/libkvm/Makefile
> 
> Modified: head/lib/libkvm/Makefile
> ==============================================================================
> --- head/lib/libkvm/Makefile	Tue Mar  5 23:58:16 2019	(r344828)
> +++ head/lib/libkvm/Makefile	Tue Mar  5 23:59:55 2019	(r344829)
> @@ -18,6 +18,7 @@ SRCS=	kvm.c kvm_cptime.c kvm_getloadavg.c \
>  	kvm_i386.c kvm_minidump_i386.c \
>  	kvm_minidump_mips.c \
>  	kvm_powerpc.c kvm_powerpc64.c \
> +	kvm_minidump_riscv.c \
>  	kvm_sparc64.c
>  INCS=	kvm.h
>  
> 
> Added: head/lib/libkvm/kvm_minidump_riscv.c
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/lib/libkvm/kvm_minidump_riscv.c	Tue Mar  5 23:59:55 2019	(r344829)
> @@ -0,0 +1,288 @@
> +/*-
> + * Copyright (c) 2006 Peter Wemm
> + * Copyright (c) 2019 Mitchell Horne
> + *
> + * 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.
> + *
> + * From: FreeBSD: src/lib/libkvm/kvm_minidump_amd64.c r261799
> + */
> +
> +#include <sys/cdefs.h>
> +__FBSDID("$FreeBSD$");
> +
> +/*
> + * RISC-V machine dependent routines for kvm and minidumps.
> + */
> +
> +#include <sys/param.h>
> +#include <stdint.h>
> +#include <stdlib.h>
> +#include <string.h>
> +#include <unistd.h>
> +#include <vm/vm.h>
> +#include <kvm.h>
> +
> +#include "../../sys/riscv/include/minidump.h"
> +
> +#include <limits.h>
> +
> +#include "kvm_private.h"
> +#include "kvm_riscv.h"
> +
> +#define	riscv_round_page(x)	roundup2((kvaddr_t)(x), RISCV_PAGE_SIZE)
> +
> +struct vmstate {
> +	struct minidumphdr hdr;
> +};
> +
> +static riscv_pt_entry_t
> +_riscv_pte_get(kvm_t *kd, u_long pteindex)
> +{
> +	riscv_pt_entry_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte));
> +
> +	return le64toh(*pte);
> +}
> +
> +static int
> +_riscv_minidump_probe(kvm_t *kd)
> +{
> +
> +	return (_kvm_probe_elf_kernel(kd, ELFCLASS64, EM_RISCV) &&
> +	    _kvm_is_minidump(kd));
> +}
> +
> +static void
> +_riscv_minidump_freevtop(kvm_t *kd)
> +{
> +	struct vmstate *vm = kd->vmst;
> +
> +	free(vm);
> +	kd->vmst = NULL;
> +}
> +
> +static int
> +_riscv_minidump_initvtop(kvm_t *kd)
> +{
> +	struct vmstate *vmst;
> +	off_t off, sparse_off;
> +
> +	vmst = _kvm_malloc(kd, sizeof(*vmst));
> +	if (vmst == NULL) {
> +		_kvm_err(kd, kd->program, "cannot allocate vm");
> +		return (-1);
> +	}
> +	kd->vmst = vmst;
> +	if (pread(kd->pmfd, &vmst->hdr, sizeof(vmst->hdr), 0) !=
> +	    sizeof(vmst->hdr)) {
> +		_kvm_err(kd, kd->program, "cannot read dump header");
> +		return (-1);
> +	}
> +	if (strncmp(MINIDUMP_MAGIC, vmst->hdr.magic,
> +	    sizeof(vmst->hdr.magic)) != 0) {
> +		_kvm_err(kd, kd->program, "not a minidump for this platform");
> +		return (-1);
> +	}
> +
> +	vmst->hdr.version = le32toh(vmst->hdr.version);
> +	if (vmst->hdr.version != MINIDUMP_VERSION) {
> +		_kvm_err(kd, kd->program, "wrong minidump version. "
> +		    "Expected %d got %d", MINIDUMP_VERSION, vmst->hdr.version);
> +		return (-1);
> +	}
> +	vmst->hdr.msgbufsize = le32toh(vmst->hdr.msgbufsize);
> +	vmst->hdr.bitmapsize = le32toh(vmst->hdr.bitmapsize);
> +	vmst->hdr.pmapsize = le32toh(vmst->hdr.pmapsize);
> +	vmst->hdr.kernbase = le64toh(vmst->hdr.kernbase);
> +	vmst->hdr.dmapphys = le64toh(vmst->hdr.dmapphys);
> +	vmst->hdr.dmapbase = le64toh(vmst->hdr.dmapbase);
> +	vmst->hdr.dmapend = le64toh(vmst->hdr.dmapend);
> +
> +	/* Skip header and msgbuf */
> +	off = RISCV_PAGE_SIZE + riscv_round_page(vmst->hdr.msgbufsize);
> +
> +	/* build physical address lookup table for sparse pages */
> +	sparse_off = off + riscv_round_page(vmst->hdr.bitmapsize) +
> +	    riscv_round_page(vmst->hdr.pmapsize);
> +	if (_kvm_pt_init(kd, vmst->hdr.bitmapsize, off, sparse_off,
> +	    RISCV_PAGE_SIZE, sizeof(uint64_t)) == -1) {
> +		return (-1);
> +	}
> +	off += riscv_round_page(vmst->hdr.bitmapsize);
> +
> +	if (_kvm_pmap_init(kd, vmst->hdr.pmapsize, off) == -1) {
> +		return (-1);
> +	}
> +	off += riscv_round_page(vmst->hdr.pmapsize);
> +
> +	return (0);
> +}
> +
> +static int
> +_riscv_minidump_vatop(kvm_t *kd, kvaddr_t va, off_t *pa)
> +{
> +	struct vmstate *vm;
> +	riscv_physaddr_t offset;
> +	riscv_pt_entry_t l3;
> +	kvaddr_t l3_index;
> +	riscv_physaddr_t a;
> +	off_t ofs;
> +
> +	vm = kd->vmst;
> +	offset = va & RISCV_PAGE_MASK;
> +
> +	if (va >= vm->hdr.dmapbase && va < vm->hdr.dmapend) {
> +		a = (va - vm->hdr.dmapbase + vm->hdr.dmapphys) &
> +		    ~RISCV_PAGE_MASK;
> +		ofs = _kvm_pt_find(kd, a, RISCV_PAGE_SIZE);
> +		if (ofs == -1) {
> +			_kvm_err(kd, kd->program, "_riscv_minidump_vatop: "
> +			    "direct map address 0x%jx not in minidump",
> +			    (uintmax_t)va);
> +			goto invalid;
> +		}
> +		*pa = ofs + offset;
> +		return (RISCV_PAGE_SIZE - offset);
> +	} else if (va >= vm->hdr.kernbase) {
> +		l3_index = (va - vm->hdr.kernbase) >> RISCV_L3_SHIFT;
> +		if (l3_index >= vm->hdr.pmapsize / sizeof(l3))
> +			goto invalid;
> +		l3 = _riscv_pte_get(kd, l3_index);
> +		if ((l3 & RISCV_PTE_V) == 0 || (l3 & RISCV_PTE_RWX) == 0) {
> +			_kvm_err(kd, kd->program,
> +			    "_riscv_minidump_vatop: pte not valid");
> +			goto invalid;
> +		}
> +		a = (l3 >> RISCV_PTE_PPN0_S) << RISCV_L3_SHIFT;
> +		ofs = _kvm_pt_find(kd, a, RISCV_PAGE_SIZE);
> +		if (ofs == -1) {
> +			_kvm_err(kd, kd->program, "_riscv_minidump_vatop: "
> +			    "physical address 0x%jx not in minidump",
> +			    (uintmax_t)a);
> +			goto invalid;
> +		}
> +		*pa = ofs + offset;
> +		return (RISCV_PAGE_SIZE - offset);
> +	} else {
> +		_kvm_err(kd, kd->program,
> +	    "_riscv_minidump_vatop: virtual address 0x%jx not minidumped",
> +		    (uintmax_t)va);
> +		goto invalid;
> +	}
> +
> +invalid:
> +	_kvm_err(kd, 0, "invalid address (0x%jx)", (uintmax_t)va);
> +	return (0);
> +}
> +
> +static int
> +_riscv_minidump_kvatop(kvm_t *kd, kvaddr_t va, off_t *pa)
> +{
> +
> +	if (ISALIVE(kd)) {
> +		_kvm_err(kd, 0,
> +		    "_riscv_minidump_kvatop called in live kernel!");
> +		return (0);
> +	}
> +	return (_riscv_minidump_vatop(kd, va, pa));
> +}
> +
> +static int
> +_riscv_native(kvm_t *kd __unused)
> +{
> +
> +#ifdef __riscv
> +	return (1);
> +#else
> +	return (0);
> +#endif
> +}
> +
> +static vm_prot_t
> +_riscv_entry_to_prot(riscv_pt_entry_t pte)
> +{
> +	vm_prot_t prot = VM_PROT_READ;
> +
> +	if ((pte & RISCV_PTE_W) != 0)
> +		prot |= VM_PROT_WRITE;
> +	if ((pte & RISCV_PTE_X) != 0)
> +		prot |= VM_PROT_EXECUTE;
> +	return prot;
> +}
> +
> +static int
> +_riscv_minidump_walk_pages(kvm_t *kd, kvm_walk_pages_cb_t *cb, void *arg)
> +{
> +	struct vmstate *vm = kd->vmst;
> +	u_long nptes = vm->hdr.pmapsize / sizeof(riscv_pt_entry_t);
> +	u_long bmindex, dva, pa, pteindex, va;
> +	struct kvm_bitmap bm;
> +	vm_prot_t prot;
> +	int ret = 0;
> +
> +	if (!_kvm_bitmap_init(&bm, vm->hdr.bitmapsize, &bmindex))
> +		return (0);
> +
> +	for (pteindex = 0; pteindex < nptes; pteindex++) {
> +		riscv_pt_entry_t pte = _riscv_pte_get(kd, pteindex);
> +
> +		if (((pte & RISCV_PTE_V) == 0) ||
> +		    ((pte & RISCV_PTE_RWX) == 0))
> +			continue;
> +
> +		va = vm->hdr.kernbase + (pteindex << RISCV_L3_SHIFT);
> +		pa = (pte >> RISCV_PTE_PPN0_S) << RISCV_L3_SHIFT;
> +		dva = vm->hdr.dmapbase + pa;
> +		if (!_kvm_visit_cb(kd, cb, arg, pa, va, dva,
> +		    _riscv_entry_to_prot(pte), RISCV_PAGE_SIZE, 0)) {
> +			goto out;
> +		}
> +	}
> +
> +	while (_kvm_bitmap_next(&bm, &bmindex)) {
> +		pa = bmindex * RISCV_PAGE_SIZE;
> +		dva = vm->hdr.dmapbase + pa;
> +		if (vm->hdr.dmapend < (dva + RISCV_PAGE_SIZE))
> +			break;
> +		va = 0;
> +		prot = VM_PROT_READ | VM_PROT_WRITE;
> +		if (!_kvm_visit_cb(kd, cb, arg, pa, va, dva,
> +		    prot, RISCV_PAGE_SIZE, 0)) {
> +			goto out;
> +		}
> +	}
> +	ret = 1;
> +
> +out:
> +	_kvm_bitmap_deinit(&bm);
> +	return (ret);
> +}
> +
> +static struct kvm_arch kvm_riscv_minidump = {
> +	.ka_probe = _riscv_minidump_probe,
> +	.ka_initvtop = _riscv_minidump_initvtop,
> +	.ka_freevtop = _riscv_minidump_freevtop,
> +	.ka_kvatop = _riscv_minidump_kvatop,
> +	.ka_native = _riscv_native,
> +	.ka_walk_pages = _riscv_minidump_walk_pages,
> +};
> +
> +KVM_ARCH(kvm_riscv_minidump);
> 
> Added: head/lib/libkvm/kvm_riscv.h
> ==============================================================================
> --- /dev/null	00:00:00 1970	(empty, because file is newly added)
> +++ head/lib/libkvm/kvm_riscv.h	Tue Mar  5 23:59:55 2019	(r344829)
> @@ -0,0 +1,90 @@
> +/*-
> + * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
> + * Copyright (c) 2019 Mitchell Horne
> + * All rights reserved.

It appears as if Mitchell Horne has removed John Baldwin's
All rights reserved by the way he has inserted his copyright
into the middle of Johns.

> + * 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.
> + *
Where did this file come from that it has Jhb copyright?  Shouldnt
a cp, then patch been done rather than a new file?

> + * $FreeBSD$
> + */
> +
> +#ifndef __KVM_RISCV_H__
> +#define	__KVM_RISCV_H__
> +
> +#ifdef __riscv
> +#include <machine/pte.h>
> +#endif
> +
> +typedef uint64_t	riscv_physaddr_t;
> +typedef uint64_t	riscv_pt_entry_t;
> +
> +#define	RISCV_PAGE_SHIFT	12
> +#define	RISCV_PAGE_SIZE		(1 << RISCV_PAGE_SHIFT)
> +#define	RISCV_PAGE_MASK		(RISCV_PAGE_SIZE - 1)
> +
> +/* Source: sys/riscv/include/pte.h */
> +#define	RISCV_L3_SHIFT		12
> +#define	RISCV_L3_SIZE		(1 << L3_SHIFT)
> +#define	RISCV_L3_OFFSET 	(L3_SIZE - 1)
> +
> +#define	RISCV_PTE_SW_MANAGED	(1 << 9)
> +#define	RISCV_PTE_SW_WIRED	(1 << 8)
> +#define	RISCV_PTE_D		(1 << 7) /* Dirty */
> +#define	RISCV_PTE_A		(1 << 6) /* Accessed */
> +#define	RISCV_PTE_G		(1 << 5) /* Global */
> +#define	RISCV_PTE_U		(1 << 4) /* User */
> +#define	RISCV_PTE_X		(1 << 3) /* Execute */
> +#define	RISCV_PTE_W		(1 << 2) /* Write */
> +#define	RISCV_PTE_R		(1 << 1) /* Read */
> +#define	RISCV_PTE_V		(1 << 0) /* Valid */
> +#define	RISCV_PTE_RWX		(RISCV_PTE_R | RISCV_PTE_W | RISCV_PTE_X)
> +
> +#define	RISCV_PTE_PPN0_S	10
> +
> +#ifdef __riscv
> +_Static_assert(sizeof(pt_entry_t) == sizeof(riscv_pt_entry_t),
> +    "pt_entry_t size mismatch");
> +
> +_Static_assert(PAGE_SHIFT == RISCV_PAGE_SHIFT, "PAGE_SHIFT mismatch");
> +_Static_assert(PAGE_SIZE == RISCV_PAGE_SIZE, "PAGE_SIZE mismatch");
> +_Static_assert(PAGE_MASK == RISCV_PAGE_MASK, "PAGE_MASK mismatch");
> +
> +_Static_assert(L3_SHIFT == RISCV_L3_SHIFT, "L3_SHIFT mismatch");
> +_Static_assert(L3_SIZE == RISCV_L3_SIZE, "L3_SIZE mismatch");
> +_Static_assert(L3_OFFSET == RISCV_L3_OFFSET, "L3_OFFSET mismatch");
> +_Static_assert(PTE_PPN0_S == RISCV_PTE_PPN0_S, "PTE_PPN0_S mismatch");
> +
> +_Static_assert(PTE_SW_MANAGED == RISCV_PTE_SW_MANAGED,
> +    "PTE_SW_MANAGED mismatch");
> +_Static_assert(PTE_SW_WIRED == RISCV_PTE_SW_WIRED, "PTE_SW_WIRED mismatch");
> +_Static_assert(PTE_D == RISCV_PTE_D, "PTE_D mismatch");
> +_Static_assert(PTE_A == RISCV_PTE_A, "PTE_A mismatch");
> +_Static_assert(PTE_G == RISCV_PTE_G, "PTE_G mismatch");
> +_Static_assert(PTE_U == RISCV_PTE_U, "PTE_U mismatch");
> +_Static_assert(PTE_X == RISCV_PTE_X, "PTE_X mismatch");
> +_Static_assert(PTE_W == RISCV_PTE_W, "PTE_W mismatch");
> +_Static_assert(PTE_R == RISCV_PTE_R, "PTE_R mismatch");
> +_Static_assert(PTE_V == RISCV_PTE_V, "PTE_V mismatch");
> +_Static_assert(PTE_RWX == RISCV_PTE_RWX, "PTE_RWX mismatch");
> +#endif
> +
> +#endif /* !__KVM_RISCV_H__ */
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:34:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8DDD31521F60;
 Wed,  6 Mar 2019 02:34:26 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id BD57A6D816;
 Wed,  6 Mar 2019 02:34:25 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x262YNG9083612;
 Tue, 5 Mar 2019 18:34:23 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x262YNGH083611;
 Tue, 5 Mar 2019 18:34:23 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903060234.x262YNGH083611@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344830 - in head/sys: riscv/riscv vm
In-Reply-To: <201903060001.x26016FM020846@repo.freebsd.org>
To: Mark Johnston <markj@freebsd.org>
Date: Tue, 5 Mar 2019 18:34:23 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: BD57A6D816
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.93 / 15.00]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.93)[-0.933,0];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:34:27 -0000

> Author: markj
> Date: Wed Mar  6 00:01:06 2019
> New Revision: 344830
> URL: https://svnweb.freebsd.org/changeset/base/344830
> 
> Log:
>   Implement minidump support for RISC-V.
>   
>   Submitted by:	Mitchell Horne <mhorne063@gmail.com>
>   Differential Revision:	https://reviews.freebsd.org/D18320
> 
> Modified:
>   head/sys/riscv/riscv/minidump_machdep.c
>   head/sys/riscv/riscv/pmap.c
>   head/sys/riscv/riscv/uma_machdep.c
>   head/sys/vm/vm_page.c
> 
> Modified: head/sys/riscv/riscv/minidump_machdep.c
> ==============================================================================
> --- head/sys/riscv/riscv/minidump_machdep.c	Tue Mar  5 23:59:55 2019	(r344829)
> +++ head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 00:01:06 2019	(r344830)
> @@ -1,5 +1,7 @@
>  /*-
>   * Copyright (c) 2006 Peter Wemm
> + * Copyright (c) 2015 The FreeBSD Foundation
> + * Copyright (c) 2019 Mitchell Horne

We must please stop this practice of inserting a new
copyright line between an existing one and the all rights
reserved clause.  Also see other email that the foundation
does not want ot assert this any longer.

Correction would be to move these 2 lines after the All rights reserved line.
We can probably get Peter Wemm to later deassert his reservation.

As it is commited only Mitchell Horne is asserting all rights.

>   * All rights reserved.
>   *
>   * Redistribution and use in source and binary forms, with or without
> @@ -53,9 +55,381 @@ __FBSDID("$FreeBSD$");
>  CTASSERT(sizeof(struct kerneldumpheader) == 512);
>  CTASSERT(sizeof(*vm_page_dump) == 8);
>  
> +uint64_t *vm_page_dump;
> +int vm_page_dump_size;
> +
> +static struct kerneldumpheader kdh;
> +
> +/* Handle chunked writes. */
> +static size_t fragsz;
> +static void *dump_va;
> +static size_t counter, progress, dumpsize;
> +
> +static uint64_t tmpbuffer[PAGE_SIZE / sizeof(uint64_t)];
> +
> +static struct {
> +	int min_per;
> +	int max_per;
> +	int visited;
> +} progress_track[10] = {
> +	{  0,  10, 0},
> +	{ 10,  20, 0},
> +	{ 20,  30, 0},
> +	{ 30,  40, 0},
> +	{ 40,  50, 0},
> +	{ 50,  60, 0},
> +	{ 60,  70, 0},
> +	{ 70,  80, 0},
> +	{ 80,  90, 0},
> +	{ 90, 100, 0}
> +};
> +
> +static void
> +report_progress(size_t progress, size_t dumpsize)
> +{
> +	int sofar, i;
> +
> +	sofar = 100 - ((progress * 100) / dumpsize);
> +	for (i = 0; i < nitems(progress_track); i++) {
> +		if (sofar < progress_track[i].min_per ||
> +		    sofar > progress_track[i].max_per)
> +			continue;
> +		if (progress_track[i].visited)
> +			return;
> +		progress_track[i].visited = 1;
> +		printf("..%d%%", sofar);
> +		return;
> +	}
> +}
> +
> +static bool
> +is_dumpable(vm_paddr_t pa)
> +{
> +	vm_page_t m;
> +	int i;
> +
> +	if ((m = vm_phys_paddr_to_vm_page(pa)) != NULL)
> +		return ((m->flags & PG_NODUMP) == 0);
> +
> +	for (i = 0; dump_avail[i] != 0 || dump_avail[i + 1] != 0; i += 2) {
> +		if (pa >= dump_avail[i] && pa < dump_avail[i + 1])
> +			return (true);
> +	}
> +	return (false);
> +}
> +
> +static int
> +blk_flush(struct dumperinfo *di)
> +{
> +	int error;
> +
> +	if (fragsz == 0)
> +		return (0);
> +
> +	error = dump_append(di, dump_va, 0, fragsz);
> +	fragsz = 0;
> +	return (error);
> +}
> +
> +/*
> + * Write a block of data to the dump file.
> + *
> + * Caller can provide data through a pointer or by specifying its
> + * physical address.
> + *
> + * XXX writes using pa should be no larger than PAGE_SIZE.
> + */
> +static int
> +blk_write(struct dumperinfo *di, char *ptr, vm_paddr_t pa, size_t sz)
> +{
> +	size_t len;
> +	int error, c;
> +	u_int maxdumpsz;
> +
> +	maxdumpsz = min(di->maxiosize, MAXDUMPPGS * PAGE_SIZE);
> +	if (maxdumpsz == 0)	/* seatbelt */
> +		maxdumpsz = PAGE_SIZE;
> +	error = 0;
> +	if ((sz % PAGE_SIZE) != 0) {
> +		printf("size not page aligned\n");
> +		return (EINVAL);
> +	}
> +	if (ptr != NULL && pa != 0) {
> +		printf("cant have both va and pa!\n");
> +		return (EINVAL);
> +	}
> +	if ((((uintptr_t)pa) % PAGE_SIZE) != 0) {
> +		printf("address not page aligned %#lx\n", (uintptr_t)pa);
> +		return (EINVAL);
> +	}
> +	if (ptr != NULL) {
> +		/*
> +		 * If we're doing a virtual dump, flush any
> +		 * pre-existing pa pages.
> +		 */
> +		error = blk_flush(di);
> +		if (error != 0)
> +			return (error);
> +	}
> +	while (sz) {
> +		len = maxdumpsz - fragsz;
> +		if (len > sz)
> +			len = sz;
> +		counter += len;
> +		progress -= len;
> +		if (counter >> 22) {
> +			report_progress(progress, dumpsize);
> +			counter &= (1 << 22) - 1;
> +		}
> +
> +		wdog_kern_pat(WD_LASTVAL);
> +
> +		if (ptr) {
> +			error = dump_append(di, ptr, 0, len);
> +			if (error != 0)
> +				return (error);
> +			ptr += len;
> +			sz -= len;
> +		} else {
> +			dump_va = (void *)PHYS_TO_DMAP(pa);
> +			fragsz += len;
> +			pa += len;
> +			sz -= len;
> +			error = blk_flush(di);
> +			if (error != 0)
> +				return (error);
> +		}
> +
> +		/* Check for user abort */
> +		c = cncheckc();
> +		if (c == 0x03)
> +			return (ECANCELED);
> +		if (c != -1)
> +			printf(" (CTRL-C to abort) ");
> +	}
> +
> +	return (0);
> +}
> +
>  int
>  minidumpsys(struct dumperinfo *di)
>  {
> +	pd_entry_t *l1, *l2;
> +	pt_entry_t *l3;
> +	struct minidumphdr mdhdr;
> +	uint32_t pmapsize;
> +	vm_offset_t va;
> +	vm_paddr_t pa;
> +	int error;
> +	uint64_t bits;
> +	int i, bit;
> +	int retry_count;
>  
> -	panic("minidumpsys");
> +	retry_count = 0;
> +retry:
> +	retry_count++;
> +	error = 0;
> +	pmapsize = 0;
> +
> +	/* Build set of dumpable pages from kernel pmap */
> +	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += L2_SIZE) {
> +		pmapsize += PAGE_SIZE;
> +		if (!pmap_get_tables(pmap_kernel(), va, &l1, &l2, &l3))
> +			continue;
> +
> +		/* We should always be using the l2 table for kvm */
> +		if (l2 == NULL)
> +			continue;
> +
> +		/* l2 may be a superpage */
> +		if ((*l2 & PTE_RWX) != 0) {
> +			pa = (*l2 >> PTE_PPN1_S) << L2_SHIFT;
> +			for (i = 0; i < Ln_ENTRIES; i++, pa += PAGE_SIZE) {
> +				if (is_dumpable(pa))
> +					dump_add_page(pa);
> +			}
> +		} else {
> +			for (i = 0; i < Ln_ENTRIES; i++) {
> +				if ((l3[i] & PTE_V) == 0)
> +					continue;
> +				pa = (l3[i] >> PTE_PPN0_S) * PAGE_SIZE;
> +				if (is_dumpable(pa))
> +					dump_add_page(pa);
> +			}
> +		}
> +	}
> +
> +	/* Calculate dump size */
> +	dumpsize = pmapsize;
> +	dumpsize += round_page(msgbufp->msg_size);
> +	dumpsize += round_page(vm_page_dump_size);
> +	for (i = 0; i < vm_page_dump_size / sizeof(*vm_page_dump); i++) {
> +		bits = vm_page_dump[i];
> +		while (bits) {
> +			bit = ffsl(bits) - 1;
> +			pa = (((uint64_t)i * sizeof(*vm_page_dump) * NBBY) +
> +			    bit) * PAGE_SIZE;
> +			/* Clear out undumpable pages now if needed */
> +			if (is_dumpable(pa))
> +				dumpsize += PAGE_SIZE;
> +			else
> +				dump_drop_page(pa);
> +			bits &= ~(1ul << bit);
> +		}
> +	}
> +	dumpsize += PAGE_SIZE;
> +
> +	progress = dumpsize;
> +
> +	/* Initialize mdhdr */
> +	bzero(&mdhdr, sizeof(mdhdr));
> +	strcpy(mdhdr.magic, MINIDUMP_MAGIC);
> +	mdhdr.version = MINIDUMP_VERSION;
> +	mdhdr.msgbufsize = msgbufp->msg_size;
> +	mdhdr.bitmapsize = vm_page_dump_size;
> +	mdhdr.pmapsize = pmapsize;
> +	mdhdr.kernbase = KERNBASE;
> +	mdhdr.dmapphys = DMAP_MIN_PHYSADDR;
> +	mdhdr.dmapbase = DMAP_MIN_ADDRESS;
> +	mdhdr.dmapend = DMAP_MAX_ADDRESS;
> +
> +	dump_init_header(di, &kdh, KERNELDUMPMAGIC, KERNELDUMP_RISCV_VERSION,
> +	    dumpsize);
> +
> +	error = dump_start(di, &kdh);
> +	if (error != 0)
> +		goto fail;
> +
> +	printf("Dumping %llu out of %ju MB:", (long long)dumpsize >> 20,
> +	    ptoa((uintmax_t)physmem) / 1048576);
> +
> +	/* Dump minidump header */
> +	bzero(&tmpbuffer, sizeof(tmpbuffer));
> +	bcopy(&mdhdr, &tmpbuffer, sizeof(mdhdr));
> +	error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
> +	if (error)
> +		goto fail;
> +
> +	/* Dump msgbuf up front */
> +	error = blk_write(di, (char *)msgbufp->msg_ptr, 0,
> +	    round_page(msgbufp->msg_size));
> +	if (error)
> +		goto fail;
> +
> +	/* Dump bitmap */
> +	error = blk_write(di, (char *)vm_page_dump, 0,
> +	    round_page(vm_page_dump_size));
> +	if (error)
> +		goto fail;
> +
> +	/* Dump kernel page directory pages */
> +	bzero(&tmpbuffer, sizeof(tmpbuffer));
> +	for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += L2_SIZE) {
> +		if (!pmap_get_tables(pmap_kernel(), va, &l1, &l2, &l3)) {
> +			/* We always write a page, even if it is zero */
> +			error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
> +			if (error)
> +				goto fail;
> +			/* Flush, in case we reuse tmpbuffer in the same block */
> +			error = blk_flush(di);
> +			if (error)
> +				goto fail;
> +		} else if ((*l2 & PTE_RWX) != 0) {
> +			/* Generate fake l3 entries based on the l2 superpage */
> +			for (i = 0; i < Ln_ENTRIES; i++) {
> +				tmpbuffer[i] = (*l2 | (i << PTE_PPN0_S));
> +			}
> +			/* We always write a page, even if it is zero */
> +			error = blk_write(di, (char *)&tmpbuffer, 0, PAGE_SIZE);
> +			if (error)
> +				goto fail;
> +			/* Flush, in case we reuse tmpbuffer in the same block */
> +			error = blk_flush(di);
> +			if (error)
> +				goto fail;
> +			bzero(&tmpbuffer, sizeof(tmpbuffer));
> +		} else {
> +			pa = (*l2 >> PTE_PPN0_S) * PAGE_SIZE;
> +
> +			/* We always write a page, even if it is zero */
> +			error = blk_write(di, NULL, pa, PAGE_SIZE);
> +			if (error)
> +				goto fail;
> +		}
> +	}
> +
> +	/* Dump memory chunks */
> +	/* XXX cluster it up and use blk_dump() */
> +	for (i = 0; i < vm_page_dump_size / sizeof(*vm_page_dump); i++) {
> +		bits = vm_page_dump[i];
> +		while (bits) {
> +			bit = ffsl(bits) - 1;
> +			pa = (((uint64_t)i * sizeof(*vm_page_dump) * NBBY) +
> +			    bit) * PAGE_SIZE;
> +			error = blk_write(di, 0, pa, PAGE_SIZE);
> +			if (error)
> +				goto fail;
> +			bits &= ~(1ul << bit);
> +		}
> +	}
> +
> +	error = blk_flush(di);
> +	if (error)
> +		goto fail;
> +
> +	error = dump_finish(di, &kdh);
> +	if (error != 0)
> +		goto fail;
> +
> +	printf("\nDump complete\n");
> +	return (0);
> +
> +fail:
> +	if (error < 0)
> +		error = -error;
> +
> +	printf("\n");
> +	if (error == ENOSPC) {
> +		printf("Dump map grown while dumping. ");
> +		if (retry_count < 5) {
> +			printf("Retrying...\n");
> +			goto retry;
> +		}
> +		printf("Dump failed.\n");
> +	}
> +	else if (error == ECANCELED)
> +		printf("Dump aborted\n");
> +	else if (error == E2BIG)
> +		printf("Dump failed. Partition too small.\n");
> +	else
> +		printf("** DUMP FAILED (ERROR %d) **\n", error);
> +	return (error);
> +}
> +
> +/*
> + * Add a page to the minidump bitmap.
> + */
> +void
> +dump_add_page(vm_paddr_t pa)
> +{
> +	int idx, bit;
> +
> +	pa >>= PAGE_SHIFT;
> +	idx = pa >> 6;		/* 2^6 = 64 */
> +	bit = pa & 63;
> +	atomic_set_long(&vm_page_dump[idx], 1ul << bit);
> +}
> +
> +/*
> + * Remove page from the minidump bitmap.
> + */
> +void
> +dump_drop_page(vm_paddr_t pa)
> +{
> +	int idx, bit;
> +
> +	pa >>= PAGE_SHIFT;
> +	idx = pa >> 6;		/* 2^6 = 64 */
> +	bit = pa & 63;
> +	atomic_clear_long(&vm_page_dump[idx], 1ul << bit);
>  }
> 
> Modified: head/sys/riscv/riscv/pmap.c
> ==============================================================================
> --- head/sys/riscv/riscv/pmap.c	Tue Mar  5 23:59:55 2019	(r344829)
> +++ head/sys/riscv/riscv/pmap.c	Wed Mar  6 00:01:06 2019	(r344830)
> @@ -1645,9 +1645,7 @@ free_pv_chunk(struct pv_chunk *pc)
>  	PV_STAT(atomic_add_int(&pc_chunk_frees, 1));
>  	/* entire chunk is free, return it */
>  	m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc));
> -#if 0 /* TODO: For minidump */
>  	dump_drop_page(m->phys_addr);
> -#endif
>  	vm_page_unwire(m, PQ_NONE);
>  	vm_page_free(m);
>  }
> @@ -1709,9 +1707,7 @@ retry:
>  	}
>  	PV_STAT(atomic_add_int(&pc_chunk_count, 1));
>  	PV_STAT(atomic_add_int(&pc_chunk_allocs, 1));
> -#if 0 /* TODO: This is for minidump */
>  	dump_add_page(m->phys_addr);
> -#endif
>  	pc = (void *)PHYS_TO_DMAP(m->phys_addr);
>  	pc->pc_pmap = pmap;
>  	pc->pc_map[0] = PC_FREE0 & ~1ul;	/* preallocated bit 0 */
> 
> Modified: head/sys/riscv/riscv/uma_machdep.c
> ==============================================================================
> --- head/sys/riscv/riscv/uma_machdep.c	Tue Mar  5 23:59:55 2019	(r344829)
> +++ head/sys/riscv/riscv/uma_machdep.c	Wed Mar  6 00:01:06 2019	(r344830)
> @@ -55,11 +55,8 @@ uma_small_alloc(uma_zone_t zone, vm_size_t bytes, int 
>  	if (m == NULL)
>  		return (NULL);
>  	pa = m->phys_addr;
> -#if 0
> -	/* RISCVTODO: minidump */
>  	if ((wait & M_NODUMP) == 0)
>  		dump_add_page(pa);
> -#endif
>  	va = (void *)PHYS_TO_DMAP(pa);
>  	if ((wait & M_ZERO) && (m->flags & PG_ZERO) == 0)
>  		bzero(va, PAGE_SIZE);
> @@ -73,10 +70,7 @@ uma_small_free(void *mem, vm_size_t size, u_int8_t fla
>  	vm_paddr_t pa;
>  
>  	pa = DMAP_TO_PHYS((vm_offset_t)mem);
> -#if 0
> -	/* RISCVTODO: minidump */
>  	dump_drop_page(pa);
> -#endif
>  	m = PHYS_TO_VM_PAGE(pa);
>  	vm_page_unwire_noq(m);
>  	vm_page_free(m);
> 
> Modified: head/sys/vm/vm_page.c
> ==============================================================================
> --- head/sys/vm/vm_page.c	Tue Mar  5 23:59:55 2019	(r344829)
> +++ head/sys/vm/vm_page.c	Wed Mar  6 00:01:06 2019	(r344830)
> @@ -633,7 +633,7 @@ vm_page_startup(vm_offset_t vaddr)
>  #endif
>  
>  #if defined(__aarch64__) || defined(__amd64__) || defined(__arm__) || \
> -    defined(__i386__) || defined(__mips__)
> +    defined(__i386__) || defined(__mips__) || defined(__riscv)
>  	/*
>  	 * Allocate a bitmap to indicate that a random physical page
>  	 * needs to be included in a minidump.
> @@ -658,7 +658,8 @@ vm_page_startup(vm_offset_t vaddr)
>  #else
>  	(void)last_pa;
>  #endif
> -#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__)
> +#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__) || \
> +    defined(__riscv)
>  	/*
>  	 * Include the UMA bootstrap pages, witness pages and vm_page_dump
>  	 * in a crash dump.  When pmap_map() uses the direct map, they are
> @@ -773,7 +774,8 @@ vm_page_startup(vm_offset_t vaddr)
>  		high_avail = new_end;
>  	new_end = vm_reserv_startup(&vaddr, new_end, high_avail);
>  #endif
> -#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__)
> +#if defined(__aarch64__) || defined(__amd64__) || defined(__mips__) || \
> +    defined(__riscv)
>  	/*
>  	 * Include vm_page_array and vm_reserv_array in a crash dump.
>  	 */
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:37:31 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D7C7D15220AC;
 Wed,  6 Mar 2019 02:37:30 +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)
 server-signature RSA-PSS (4096 bits)
 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 808BF6DA49;
 Wed,  6 Mar 2019 02:37:30 +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 6D17D2517F;
 Wed,  6 Mar 2019 02:37:30 +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 x262bUhT003740;
 Wed, 6 Mar 2019 02:37:30 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262bQTp003716;
 Wed, 6 Mar 2019 02:37:26 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060237.x262bQTp003716@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:37:26 +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: r344833 - in stable: 11/contrib/ipfilter
 11/contrib/ipfilter/ipsend 11/contrib/ipfilter/ipsend/.OLD
 11/contrib/ipfilter/lib 11/contrib/ipfilter/tools
 11/sys/contrib/ipfilter/netinet 12/...
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter 11/contrib/ipfilter/ipsend
 11/contrib/ipfilter/ipsend/.OLD 11/contrib/ipfilter/lib
 11/contrib/ipfilter/tools 11/sys/contrib/ipfilter/netinet 12/contrib/ipfilter
 12/contr...
X-SVN-Commit-Revision: 344833
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 808BF6DA49
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:37:31 -0000

Author: cy
Date: Wed Mar  6 02:37:25 2019
New Revision: 344833
URL: https://svnweb.freebsd.org/changeset/base/344833

Log:
  MFC r343701 & r343732:
  
  ipfilter #ifdef cleanup.
  
  Remove #ifdefs for ancient and irrelevant operating systems from
  ipfilter.
  
  When ipfilter was written the UNIX and UNIX-like systems in use
  were diverse and plentiful. IRIX, Tru64 (OSF/1) don't exist any
  more. OpenBSD removed ipfilter shortly after the first time the
  ipfilter license terms changed in the early 2000's. ipfilter on AIX,
  HP/UX, and Linux never really caught on. Removal of code for operating
  systems that ipfilter will never run on again will simplify the code
  making it easier to fix bugs, complete partially implemented features,
  and extend ipfilter.
  
  Unsupported previous version FreeBSD code and some older NetBSD code
  has also been removed.
  
  What remains is supported FreeBSD, NetBSD, and illumos. FreeBSD and
  NetBSD have collaborated exchanging patches, while illumos has expressed
  willingness to have their ipfilter updated to 5.1.2, provided their
  zone-specific updates to their ipfilter are merged (which are of interest
  to FreeBSD to allow control of ipfilters in jails from the global zone).
  
  Reviewed by:	glebius@
  Differential Revision:	https://reviews.freebsd.org/D19006

Modified:
  stable/11/contrib/ipfilter/arc4random.c
  stable/11/contrib/ipfilter/ip_dstlist.c
  stable/11/contrib/ipfilter/ip_fil.c
  stable/11/contrib/ipfilter/ip_fil_compat.c
  stable/11/contrib/ipfilter/ipf.h
  stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h
  stable/11/contrib/ipfilter/ipsend/44arp.c
  stable/11/contrib/ipfilter/ipsend/arp.c
  stable/11/contrib/ipfilter/ipsend/dlcommon.c
  stable/11/contrib/ipfilter/ipsend/ip.c
  stable/11/contrib/ipfilter/ipsend/ipresend.c
  stable/11/contrib/ipfilter/ipsend/ipsend.c
  stable/11/contrib/ipfilter/ipsend/ipsend.h
  stable/11/contrib/ipfilter/ipsend/ipsopt.c
  stable/11/contrib/ipfilter/ipsend/iptest.c
  stable/11/contrib/ipfilter/ipsend/iptests.c
  stable/11/contrib/ipfilter/ipsend/resend.c
  stable/11/contrib/ipfilter/ipsend/sdlpi.c
  stable/11/contrib/ipfilter/ipsend/sock.c
  stable/11/contrib/ipfilter/lib/getifname.c
  stable/11/contrib/ipfilter/lib/getproto.c
  stable/11/contrib/ipfilter/lib/inet_addr.c
  stable/11/contrib/ipfilter/lib/kmem.c
  stable/11/contrib/ipfilter/lib/printproto.c
  stable/11/contrib/ipfilter/md5.c
  stable/11/contrib/ipfilter/tools/ipf.c
  stable/11/contrib/ipfilter/tools/ipfs.c
  stable/11/contrib/ipfilter/tools/ipfstat.c
  stable/11/contrib/ipfilter/tools/ipftest.c
  stable/11/contrib/ipfilter/tools/ipmon.c
  stable/11/contrib/ipfilter/tools/ipnat.c
  stable/11/contrib/ipfilter/tools/ipnat_y.y
  stable/11/contrib/ipfilter/tools/ippool.c
  stable/11/contrib/ipfilter/tools/ippool_y.y
  stable/11/sys/contrib/ipfilter/netinet/fil.c
  stable/11/sys/contrib/ipfilter/netinet/ip_auth.c
  stable/11/sys/contrib/ipfilter/netinet/ip_compat.h
  stable/11/sys/contrib/ipfilter/netinet/ip_dstlist.c
  stable/11/sys/contrib/ipfilter/netinet/ip_fil.h
  stable/11/sys/contrib/ipfilter/netinet/ip_frag.c
  stable/11/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_htable.c
  stable/11/sys/contrib/ipfilter/netinet/ip_irc_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_log.c
  stable/11/sys/contrib/ipfilter/netinet/ip_lookup.c
  stable/11/sys/contrib/ipfilter/netinet/ip_nat.c
  stable/11/sys/contrib/ipfilter/netinet/ip_nat.h
  stable/11/sys/contrib/ipfilter/netinet/ip_nat6.c
  stable/11/sys/contrib/ipfilter/netinet/ip_pool.c
  stable/11/sys/contrib/ipfilter/netinet/ip_proxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_scan.c
  stable/11/sys/contrib/ipfilter/netinet/ip_state.c
  stable/11/sys/contrib/ipfilter/netinet/ip_sync.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/contrib/ipfilter/arc4random.c
  stable/12/contrib/ipfilter/ip_dstlist.c
  stable/12/contrib/ipfilter/ip_fil.c
  stable/12/contrib/ipfilter/ip_fil_compat.c
  stable/12/contrib/ipfilter/ipf.h
  stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h
  stable/12/contrib/ipfilter/ipsend/44arp.c
  stable/12/contrib/ipfilter/ipsend/arp.c
  stable/12/contrib/ipfilter/ipsend/dlcommon.c
  stable/12/contrib/ipfilter/ipsend/ip.c
  stable/12/contrib/ipfilter/ipsend/ipresend.c
  stable/12/contrib/ipfilter/ipsend/ipsend.c
  stable/12/contrib/ipfilter/ipsend/ipsend.h
  stable/12/contrib/ipfilter/ipsend/ipsopt.c
  stable/12/contrib/ipfilter/ipsend/iptest.c
  stable/12/contrib/ipfilter/ipsend/iptests.c
  stable/12/contrib/ipfilter/ipsend/resend.c
  stable/12/contrib/ipfilter/ipsend/sdlpi.c
  stable/12/contrib/ipfilter/ipsend/sock.c
  stable/12/contrib/ipfilter/lib/getifname.c
  stable/12/contrib/ipfilter/lib/getproto.c
  stable/12/contrib/ipfilter/lib/inet_addr.c
  stable/12/contrib/ipfilter/lib/kmem.c
  stable/12/contrib/ipfilter/lib/printproto.c
  stable/12/contrib/ipfilter/md5.c
  stable/12/contrib/ipfilter/tools/ipf.c
  stable/12/contrib/ipfilter/tools/ipfs.c
  stable/12/contrib/ipfilter/tools/ipfstat.c
  stable/12/contrib/ipfilter/tools/ipftest.c
  stable/12/contrib/ipfilter/tools/ipmon.c
  stable/12/contrib/ipfilter/tools/ipnat.c
  stable/12/contrib/ipfilter/tools/ipnat_y.y
  stable/12/contrib/ipfilter/tools/ippool.c
  stable/12/contrib/ipfilter/tools/ippool_y.y
  stable/12/sys/contrib/ipfilter/netinet/fil.c
  stable/12/sys/contrib/ipfilter/netinet/ip_auth.c
  stable/12/sys/contrib/ipfilter/netinet/ip_compat.h
  stable/12/sys/contrib/ipfilter/netinet/ip_dstlist.c
  stable/12/sys/contrib/ipfilter/netinet/ip_fil.h
  stable/12/sys/contrib/ipfilter/netinet/ip_frag.c
  stable/12/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_htable.c
  stable/12/sys/contrib/ipfilter/netinet/ip_irc_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_log.c
  stable/12/sys/contrib/ipfilter/netinet/ip_lookup.c
  stable/12/sys/contrib/ipfilter/netinet/ip_nat.c
  stable/12/sys/contrib/ipfilter/netinet/ip_nat.h
  stable/12/sys/contrib/ipfilter/netinet/ip_nat6.c
  stable/12/sys/contrib/ipfilter/netinet/ip_pool.c
  stable/12/sys/contrib/ipfilter/netinet/ip_proxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_scan.c
  stable/12/sys/contrib/ipfilter/netinet/ip_state.c
  stable/12/sys/contrib/ipfilter/netinet/ip_sync.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/contrib/ipfilter/arc4random.c
==============================================================================
--- stable/11/contrib/ipfilter/arc4random.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/arc4random.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -7,7 +7,7 @@
  *
  * Dan Moschuk
  */
-#if !defined(SOLARIS2) && !defined(__osf__)
+#if !defined(SOLARIS2)
 # include <sys/cdefs.h>
 #endif
 
@@ -16,26 +16,16 @@
 #ifdef __FreeBSD__
 # include <sys/kernel.h>
 #endif
-#if !defined(__osf__)
 # include <sys/random.h>
-#endif
 #ifdef __FreeBSD__
 # include <sys/libkern.h>
 #endif
 #include <sys/lock.h>
-#ifndef __osf__
 # include <sys/mutex.h>
-#endif
 #include <sys/time.h>
 
-#if defined(SOLARIS2) && (SOLARIS2 < 9)
-# include <netinet/in_systm.h>
-#endif
 #include <sys/socket.h>
 #include <net/if.h>
-#ifdef __osf__
-# include <net/route.h>
-#endif
 #include <netinet/in.h>
 #include <netinet/ip.h>
 #include "netinet/ip_compat.h"

Modified: stable/11/contrib/ipfilter/ip_dstlist.c
==============================================================================
--- stable/11/contrib/ipfilter/ip_dstlist.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ip_dstlist.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -9,9 +9,6 @@
 # define        KERNEL	1
 # define        _KERNEL	1
 #endif
-#if defined(__osf__)
-# define _PROTO_NET_H_
-#endif
 #include <sys/errno.h>
 #include <sys/types.h>
 #include <sys/param.h>
@@ -21,9 +18,6 @@
 # include <stdlib.h>
 # include <string.h>
 # define _KERNEL
-# ifdef __OpenBSD__
-struct file;
-# endif
 # include <sys/uio.h>
 # undef _KERNEL
 #else
@@ -33,14 +27,12 @@ struct file;
 # endif
 #endif
 #include <sys/time.h>
-#if !defined(linux)
 # include <sys/protosw.h>
-#endif
 #include <sys/socket.h>
-#if defined(_KERNEL) && (!defined(__SVR4) && !defined(__svr4__))
+#if defined(_KERNEL) && !defined(__SVR4)
 # include <sys/mbuf.h>
 #endif
-#if defined(__SVR4) || defined(__svr4__)
+#if defined(__SVR4)
 # include <sys/filio.h>
 # include <sys/byteorder.h>
 # ifdef _KERNEL
@@ -49,7 +41,7 @@ struct file;
 # include <sys/stream.h>
 # include <sys/kmem.h>
 #endif
-#if defined(__FreeBSD_version) && (__FreeBSD_version >= 300000)
+#if defined(__FreeBSD_version)
 # include <sys/malloc.h>
 #endif
 

Modified: stable/11/contrib/ipfilter/ip_fil.c
==============================================================================
--- stable/11/contrib/ipfilter/ip_fil.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ip_fil.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,24 +25,10 @@ struct	rtentry;
 
 static	void	ipf_setifpaddr __P((struct ifnet *, char *));
 void	init_ifp __P((void));
-#if defined(__sgi) && (IRIX < 60500)
 static int 	no_output __P((struct ifnet *, struct mbuf *,
-			       struct sockaddr *));
-static int	write_output __P((struct ifnet *, struct mbuf *,
-				  struct sockaddr *));
-#else
-# if TRU64 >= 1885
-static int 	no_output __P((struct ifnet *, struct mbuf *,
-			       struct sockaddr *, struct rtentry *, char *));
-static int	write_output __P((struct ifnet *, struct mbuf *,
-				  struct sockaddr *, struct rtentry *, char *));
-# else
-static int 	no_output __P((struct ifnet *, struct mbuf *,
 			       struct sockaddr *, struct rtentry *));
 static int	write_output __P((struct ifnet *, struct mbuf *,
 				  struct sockaddr *, struct rtentry *));
-# endif
-#endif
 
 struct ifaddr {
 	struct sockaddr_storage ifa_addr;
@@ -123,17 +109,8 @@ ipf_forgetifp(softc, ifp)
 
 
 static int
-#if defined(__sgi) && (IRIX < 60500)
-no_output(ifp, m, s)
-#else
-# if TRU64 >= 1885
-no_output (ifp, m, s, rt, cp)
-	char *cp;
-# else
 no_output(ifp, m, s, rt)
-# endif
 	struct rtentry *rt;
-#endif
 	struct ifnet *ifp;
 	struct mbuf *m;
 	struct sockaddr *s;
@@ -143,17 +120,8 @@ no_output(ifp, m, s, rt)
 
 
 static int
-#if defined(__sgi) && (IRIX < 60500)
-write_output(ifp, m, s)
-#else
-# if TRU64 >= 1885
-write_output (ifp, m, s, rt, cp)
-	char *cp;
-# else
 write_output(ifp, m, s, rt)
-# endif
 	struct rtentry *rt;
-#endif
 	struct ifnet *ifp;
 	struct mbuf *m;
 	struct sockaddr *s;
@@ -167,8 +135,7 @@ write_output(ifp, m, s, rt)
 	ip = MTOD(mb, ip_t *);
 
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	sprintf(fname, "/tmp/%s", ifp->if_xname);
 #else
 	sprintf(fname, "/tmp/%s%d", ifp->if_name, ifp->if_unit);
@@ -189,42 +156,26 @@ ipf_setifpaddr(ifp, addr)
 	struct ifnet *ifp;
 	char *addr;
 {
-#ifdef __sgi
-	struct in_ifaddr *ifa;
-#else
 	struct ifaddr *ifa;
-#endif
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	if (ifp->if_addrlist.tqh_first != NULL)
 #else
-# ifdef __sgi
-	if (ifp->in_ifaddr != NULL)
-# else
 	if (ifp->if_addrlist != NULL)
-# endif
 #endif
 		return;
 
 	ifa = (struct ifaddr *)malloc(sizeof(*ifa));
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	ifp->if_addrlist.tqh_first = ifa;
 #else
-# ifdef __sgi
-	ifp->in_ifaddr = ifa;
-# else
 	ifp->if_addrlist = ifa;
-# endif
 #endif
 
 	if (ifa != NULL) {
 		struct sockaddr_in *sin;
 
-#ifdef __sgi
-		sin = (struct sockaddr_in *)&ifa->ia_addr;
-#else
 		sin = (struct sockaddr_in *)&ifa->ifa_addr;
-#endif
 #ifdef USE_INET6
 		if (index(addr, ':') != NULL) {
 			struct sockaddr_in6 *sin6;
@@ -263,8 +214,7 @@ get_unit(name, family)
 	struct ifnet *ifp, **ifpp, **old_ifneta;
 	char *addr;
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 
 	if (!*name)
 		return NULL;
@@ -333,12 +283,11 @@ get_unit(name, family)
 	}
 	ifp = ifneta[nifs - 1];
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	TAILQ_INIT(&ifp->if_addrlist);
 #endif
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	(void) strncpy(ifp->if_xname, name, sizeof(ifp->if_xname));
 #else
 	s = name + strlen(name) - 1;
@@ -375,8 +324,7 @@ get_ifname(ifp)
 {
 	static char ifname[LIFNAMSIZ];
 
-#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	sprintf(ifname, "%s", ifp->if_xname);
 #else
 	if (ifp->if_unit != -1)
@@ -397,8 +345,7 @@ init_ifp()
 	int fd;
 
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	for (ifpp = ifneta; ifpp && (ifp = *ifpp); ifpp++) {
 		ifp->if_output = (void *)write_output;
 		sprintf(fname, "/tmp/%s", ifp->if_xname);
@@ -717,20 +664,12 @@ ipf_ifpaddr(softc, v, atype, ifptr, inp, inpmask)
 	i6addr_t *inp, *inpmask;
 {
 	struct ifnet *ifp = ifptr;
-#ifdef __sgi
-	struct in_ifaddr *ifa;
-#else
 	struct ifaddr *ifa;
-#endif
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	ifa = ifp->if_addrlist.tqh_first;
 #else
-# ifdef __sgi
-	ifa = (struct in_ifaddr *)ifp->in_ifaddr;
-# else
 	ifa = ifp->if_addrlist;
-# endif
 #endif
 	if (ifa != NULL) {
 		if (v == 4) {
@@ -738,11 +677,7 @@ ipf_ifpaddr(softc, v, atype, ifptr, inp, inpmask)
 
 			mask.sin_addr.s_addr = 0xffffffff;
 
-#ifdef __sgi
-			sin = (struct sockaddr_in *)&ifa->ia_addr;
-#else
 			sin = (struct sockaddr_in *)&ifa->ifa_addr;
-#endif
 
 			return ipf_ifpfillv4addr(atype, sin, &mask,
 						 &inp->in4, &inpmask->in4);

Modified: stable/11/contrib/ipfilter/ip_fil_compat.c
==============================================================================
--- stable/11/contrib/ipfilter/ip_fil_compat.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ip_fil_compat.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -9,15 +9,12 @@
 # define        KERNEL	1
 # define        _KERNEL	1
 #endif
-#if defined(__osf__)
-# define _PROTO_NET_H_
-#endif
 #include <sys/param.h>
 #include <sys/errno.h>
 #include <sys/types.h>
 #include <sys/time.h>
 #include <sys/file.h>
-#if __FreeBSD_version >= 220000 && defined(_KERNEL)
+#if defined(__FreeBSD_version) && defined(_KERNEL)
 # include <sys/fcntl.h>
 # include <sys/filio.h>
 #else
@@ -26,17 +23,10 @@
 #if !defined(_KERNEL)
 # include <string.h>
 # define _KERNEL
-# ifdef __OpenBSD__
-struct file;
-# endif
 # include <sys/uio.h>
 # undef _KERNEL
 #endif
 #include <sys/socket.h>
-#if (defined(__osf__) || defined(AIX) || defined(__hpux) || defined(__sgi)) && defined(_KERNEL)
-# include "radix_ipf_local.h"
-# define _RADIX_H_
-#endif
 #include <net/if.h>
 #if defined(__FreeBSD__)
 #  include <sys/cdefs.h>
@@ -44,7 +34,7 @@ struct file;
 #endif
 #if defined(_KERNEL)
 # include <sys/systm.h>
-# if !defined(__SVR4) && !defined(__svr4__)
+# if !defined(__SVR4)
 #  include <sys/mbuf.h>
 # endif
 #endif
@@ -348,9 +338,6 @@ typedef	struct	fr_info_4_1_32 {
 	void	*fin_qpi;
 	char	fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef	__sgi
-	void	*fin_hbuf;
-#endif
 } fr_info_4_1_32_t;
 
 typedef struct  fr_info_4_1_24 {
@@ -389,9 +376,6 @@ typedef struct  fr_info_4_1_24 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_24_t;
 
 typedef struct  fr_info_4_1_23 {
@@ -429,9 +413,6 @@ typedef struct  fr_info_4_1_23 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_23_t;
 
 typedef struct  fr_info_4_1_11 {
@@ -468,9 +449,6 @@ typedef struct  fr_info_4_1_11 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_11_t;
 
 /* ------------------------------------------------------------------------ */
@@ -2678,9 +2656,6 @@ fr_info_4_1_32_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = old->fin_hbuf;
-#endif
 }
 
 
@@ -2719,9 +2694,6 @@ fr_info_4_1_24_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = old->fin_hbuf;
-#endif
 }
 
 
@@ -2759,9 +2731,6 @@ fr_info_4_1_23_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -2799,9 +2768,6 @@ fr_info_4_1_11_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4078,9 +4044,6 @@ fr_info_current_to_4_1_24(current, old)
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
 #endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4121,9 +4084,6 @@ fr_info_current_to_4_1_23(current, old)
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
 #endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4163,9 +4123,6 @@ fr_info_current_to_4_1_11(current, old)
 	old->fin_qfm = fin->fin_qfm;
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
-#endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
 #endif
 }
 

Modified: stable/11/contrib/ipfilter/ipf.h
==============================================================================
--- stable/11/contrib/ipfilter/ipf.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipf.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -12,11 +12,6 @@
 #ifndef	__IPF_H__
 #define	__IPF_H__
 
-#if defined(__osf__)
-# define radix_mask ipf_radix_mask
-# define radix_node ipf_radix_node
-# define radix_node_head ipf_radix_node_head
-#endif
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -31,9 +26,6 @@
 # define _KERNEL
 # define KERNEL
 #endif
-#ifdef __OpenBSD__
-struct file;
-#endif
 #include <sys/uio.h>
 #ifdef ADD_KERNEL
 # undef _KERNEL
@@ -188,9 +180,8 @@ typedef	struct	proxyrule {
 } proxyrule_t;
 
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || \
-        (_BSDI_VERSION >= 199701) || (__FreeBSD_version >= 300000) || \
-	SOLARIS || defined(__sgi) || defined(__osf__) || defined(linux)
+#if defined(__NetBSD__) || defined(__FreeBSD_version) || \
+	SOLARIS
 # include <stdarg.h>
 typedef	int	(* ioctlfunc_t) __P((int, ioctlcmd_t, ...));
 #else
@@ -199,13 +190,6 @@ typedef	int	(* ioctlfunc_t) __P((dev_t, ioctlcmd_t, vo
 typedef	int	(* addfunc_t) __P((int, ioctlfunc_t, void *));
 typedef	int	(* copyfunc_t) __P((void *, void *, size_t));
 
-
-/*
- * SunOS4
- */
-#if defined(sun) && !defined(__SVR4) && !defined(__svr4__)
-extern	int	ioctl __P((int, int, void *));
-#endif
 
 extern	char	thishost[];
 extern	char	flagset[];

Modified: stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -112,130 +112,12 @@
 # define	IPOPT_SECUR_TOPSECRET	((u_short)0x6bc5)
 #endif
 
-#ifdef linux
-# if LINUX < 0200
-#  define	icmp	icmphdr
-#  define	icmp_type	type
-#  define	icmp_code	code
-# endif
 
-/*
- * From /usr/include/netinet/ip_var.h
- * !%@#!$@# linux...
- */
-struct ipovly {
-	caddr_t	ih_next, ih_prev;	/* for protocol sequence q's */
-	u_char	ih_x1;			/* (unused) */
-	u_char	ih_pr;			/* protocol */
-	short	ih_len;			/* protocol length */
-	struct	in_addr ih_src;		/* source internet address */
-	struct	in_addr ih_dst;		/* destination internet address */
-};
-
-typedef	struct	{
-	__u16	th_sport;
-	__u16	th_dport;
-	__u32	th_seq;
-	__u32	th_ack;
-# if defined(__i386__) || defined(__MIPSEL__) || defined(__alpha__) ||\
-    defined(vax)
-	__u8	th_res:4;
-	__u8	th_off:4;
-#else
-	__u8	th_off:4;
-	__u8	th_res:4;
-#endif
-	__u8	th_flags;
-	__u16	th_win;
-	__u16	th_sum;
-	__u16	th_urp;
-} tcphdr_t;
-
-typedef	struct	{
-	__u16	uh_sport;
-	__u16	uh_dport;
-	__s16	uh_ulen;
-	__u16	uh_sum;
-} udphdr_t;
-
-typedef	struct	{
-# if defined(__i386__) || defined(__MIPSEL__) || defined(__alpha__) ||\
-    defined(vax)
-	__u8	ip_hl:4;
-	__u8	ip_v:4;
-# else
-	__u8	ip_hl:4;
-	__u8	ip_v:4;
-# endif
-	__u8	ip_tos;
-	__u16	ip_len;
-	__u16	ip_id;
-	__u16	ip_off;
-	__u8	ip_ttl;
-	__u8	ip_p;
-	__u16	ip_sum;
-	struct	in_addr	ip_src;
-	struct	in_addr	ip_dst;
-} ip_t;
-
-typedef	struct	{
-	__u8	ether_dhost[6];
-	__u8	ether_shost[6];
-	__u16	ether_type;
-} ether_header_t;
-
-typedef struct icmp {
-	u_char	icmp_type;		/* type of message, see below */
-	u_char	icmp_code;		/* type sub code */
-	u_short	icmp_cksum;		/* ones complement cksum of struct */
-	union {
-		u_char ih_pptr;			/* ICMP_PARAMPROB */
-		struct in_addr ih_gwaddr;	/* ICMP_REDIRECT */
-		struct ih_idseq {
-			n_short	icd_id;
-			n_short	icd_seq;
-		} ih_idseq;
-		int ih_void;
-	} icmp_hun;
-#define	icmp_pptr	icmp_hun.ih_pptr
-#define	icmp_gwaddr	icmp_hun.ih_gwaddr
-#define	icmp_id		icmp_hun.ih_idseq.icd_id
-#define	icmp_seq	icmp_hun.ih_idseq.icd_seq
-#define	icmp_void	icmp_hun.ih_void
-	union {
-		struct id_ts {
-			n_time its_otime;
-			n_time its_rtime;
-			n_time its_ttime;
-		} id_ts;
-		struct id_ip  {
-			ip_t idi_ip;
-			/* options and then 64 bits of data */
-		} id_ip;
-		u_long	id_mask;
-		char	id_data[1];
-	} icmp_dun;
-#define	icmp_otime	icmp_dun.id_ts.its_otime
-#define	icmp_rtime	icmp_dun.id_ts.its_rtime
-#define	icmp_ttime	icmp_dun.id_ts.its_ttime
-#define	icmp_ip		icmp_dun.id_ip.idi_ip
-#define	icmp_mask	icmp_dun.id_mask
-#define	icmp_data	icmp_dun.id_data
-} icmphdr_t;
-
-# define	bcopy(a,b,c)	memmove(b,a,c)
-# define	bcmp(a,b,c)	memcmp(a,b,c)
-
-# define	ifnet	device
-
-#else
-
 typedef	struct	udphdr	udphdr_t;
 typedef	struct	tcphdr	tcphdr_t;
 typedef	struct	ip	ip_t;
 typedef	struct	ether_header	ether_header_t;
 
-#endif
 
 #if defined(__SVR4) || defined(__svr4__)
 # define	bcopy(a,b,c)	memmove(b,a,c)

Modified: stable/11/contrib/ipfilter/ipsend/44arp.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/44arp.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/44arp.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -10,9 +10,7 @@
 #include <net/if.h>
 #include <net/if_dl.h>
 #include <net/if_types.h>
-#ifndef __osf__
 # include <net/route.h>
-#endif
 #include <netinet/in.h>
 #include <netinet/if_ether.h>
 #include <arpa/inet.h>

Modified: stable/11/contrib/ipfilter/ipsend/arp.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/arp.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/arp.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -88,7 +88,6 @@ int	arp(ip, ether)
 	sin = (struct sockaddr_in *)&ar.arp_pa;
 	sin->sin_family = AF_INET;
 	bcopy(ip, (char *)&sin->sin_addr.s_addr, 4);
-#ifndef	hpux
 	if ((hp = gethostbyaddr(ip, 4, AF_INET)))
 # if SOLARIS && (SOLARIS2 >= 10)
 		if (!(ether_hostton(hp->h_name, (struct ether_addr *)ether)))
@@ -96,7 +95,6 @@ int	arp(ip, ether)
 		if (!(ether_hostton(hp->h_name, ether)))
 # endif
 			goto savearp;
-#endif
 
 	if (sfd == -1)
 		if ((sfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)

Modified: stable/11/contrib/ipfilter/ipsend/dlcommon.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/dlcommon.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/dlcommon.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -20,11 +20,7 @@ typedef	unsigned long	ulong;
 #include	<sys/types.h>
 #include	<sys/stream.h>
 #include	<sys/stropts.h>
-#ifdef __osf__
-# include	<sys/dlpihdr.h>
-#else
 # include	<sys/dlpi.h>
-#endif
 #include	<sys/signal.h>
 #include	<stdio.h>
 #include	<string.h>

Modified: stable/11/contrib/ipfilter/ipsend/ip.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/ip.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/ip.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -17,11 +17,9 @@ static const char rcsid[] = "@(#)$Id$";
 #include <netinet/in.h>
 #include <netinet/ip.h>
 #include <sys/param.h>
-#ifndef	linux
 # include <net/route.h>
 # include <netinet/if_ether.h>
 # include <netinet/ip_var.h>
-#endif
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>

Modified: stable/11/contrib/ipfilter/ipsend/ipresend.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/ipresend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/ipresend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -18,9 +18,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
@@ -37,9 +35,6 @@ extern	struct	ipread	pcap, iphex, iptext;
 
 int	opts = 0;
 #ifndef	DEFAULT_DEVICE
-# ifdef	linux
-char	default_device[] = "eth0";
-# else
 #  ifdef	sun
 char	default_device[] = "le0";
 #  else
@@ -49,15 +44,10 @@ char	default_device[] = "ln0";
 #    ifdef	__bsdi__
 char	default_device[] = "ef0";
 #    else
-#     ifdef	__sgi
-char	default_device[] = "ec0";
-#     else
 char	default_device[] = "lan0";
-#     endif
 #    endif
 #   endif
 #  endif
-# endif
 #else
 char	default_device[] = DEFAULT_DEVICE;
 #endif

Modified: stable/11/contrib/ipfilter/ipsend/ipsend.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/ipsend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/ipsend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -21,14 +21,10 @@ static const char rcsid[] = "@(#)$Id$";
 #include <netdb.h>
 #include <string.h>
 #include <netinet/ip.h>
-#ifndef	linux
 # include <netinet/ip_var.h>
-#endif
 #include "ipsend.h"
 #include "ipf.h"
-#ifndef	linux
 # include <netinet/udp_var.h>
-#endif
 
 
 extern	char	*optarg;
@@ -37,27 +33,15 @@ extern	void	iplang __P((FILE *));
 
 char	options[68];
 int	opts;
-#ifdef linux
-char	default_device[] = "eth0";
-#else
 # ifdef ultrix
 char	default_device[] = "ln0";
 # else
 #  ifdef __bsdi__
 char	default_device[] = "ef0";
 #  else
-#   ifdef __sgi
-char	default_device[] = "ec0";
-#   else
-#    ifdef __hpux
-char	default_device[] = "lan0";
-#    else
 char	default_device[] = "le0";
-#    endif /* __hpux */
-#   endif /* __sgi */
 #  endif /* __bsdi__ */
 # endif /* ultrix */
-#endif /* linux */
 
 
 static	void	usage __P((char *));

Modified: stable/11/contrib/ipfilter/ipsend/ipsend.h
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/ipsend.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/ipsend.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -26,9 +26,6 @@
 #include <net/if.h>
 
 #include "ipf.h"
-#ifdef	linux
-#include <linux/sockios.h>
-#endif
 /* XXX:	The following is needed by tcpip.h */
 #include <netinet/ip_var.h>
 #include "netinet/tcpip.h"
@@ -49,11 +46,7 @@ extern	u_32_t	buildopts __P((char *, char *, int));
 extern	int	addipopt __P((char *, struct ipopt_names *, int, char *));
 extern	int	initdevice __P((char *, int));
 extern	int	sendip __P((int, char *, int));
-#ifdef	linux
-extern	struct	sock	*find_tcp __P((int, struct tcpiphdr *));
-#else
 extern	struct	tcpcb	*find_tcp __P((int, struct tcpiphdr *));
-#endif
 extern	int	ip_resend __P((char *, int, struct ipread *, struct in_addr, char *));
 
 extern	void	ip_test1 __P((char *, int, ip_t *, struct in_addr, int));

Modified: stable/11/contrib/ipfilter/ipsend/ipsopt.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/ipsopt.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/ipsopt.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -20,9 +20,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
 #include "ipsend.h"

Modified: stable/11/contrib/ipfilter/ipsend/iptest.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/iptest.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/iptest.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -18,12 +18,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
-#ifdef	linux
-#include <linux/sockios.h>
-#endif
 #include <stdio.h>
 #include <netdb.h>
 #include <unistd.h>
@@ -36,9 +31,6 @@ extern	char	*optarg;
 extern	int	optind;
 
 char	options[68];
-#ifdef	linux
-char	default_device[] = "eth0";
-#else
 # ifdef	sun
 char	default_device[] = "le0";
 # else
@@ -48,15 +40,10 @@ char	default_device[] = "ln0";
 #   ifdef	__bsdi__
 char	default_device[] = "ef0";
 #   else
-#    ifdef	__sgi
-char	default_device[] = "ec0";
-#    else
 char	default_device[] = "lan0";
-#    endif
 #   endif
 #  endif
 # endif
-#endif
 
 static	void	usage __P((char *));
 int	main __P((int, char **));

Modified: stable/11/contrib/ipfilter/ipsend/iptests.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/iptests.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/iptests.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -21,7 +21,6 @@ static const char rcsid[] = "@(#)$Id$";
 typedef	int	boolean_t;
 #endif
 #include <sys/time.h>
-#if !defined(__osf__)
 # ifdef __NetBSD__
 #  include <machine/lock.h>
 #  include <machine/mutex.h>
@@ -37,7 +36,6 @@ typedef	int	boolean_t;
 # endif
 # undef  _KERNEL
 # undef  KERNEL
-#endif
 #if !defined(solaris) && !defined(linux) && !defined(__sgi)
 # include <nlist.h>
 # include <sys/user.h>
@@ -66,24 +64,13 @@ typedef	int	boolean_t;
 #endif
 #include <netinet/in_systm.h>
 #include <sys/socket.h>
-#ifdef __hpux
-# define _NET_ROUTE_INCLUDED
-#endif
 #include <net/if.h>
-#if defined(linux) && (LINUX >= 0200)
-# include <asm/atomic.h>
-#endif
-#if !defined(linux)
 # if defined(__FreeBSD__)
 #  include "radix_ipf.h"
 # endif
 # if !defined(solaris)
 #  include <net/route.h>
 # endif
-#else
-# define __KERNEL__	/* because there's a macro not wrapped by this */
-# include <net/route.h>	/* in this file :-/ */
-#endif
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #include <netinet/ip.h>
@@ -94,20 +81,13 @@ typedef	int	boolean_t;
 #include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
-#ifdef __hpux
-# undef _NET_ROUTE_INCLUDED
-#endif
-#if !defined(linux)
 # include <netinet/ip_var.h>
 # if !defined(__hpux) && !defined(solaris)
 #  include <netinet/in_pcb.h>
 # endif
-#endif
 #include "ipsend.h"
-#if !defined(linux) && !defined(__hpux)
 # include <netinet/tcp_timer.h>
 # include <netinet/tcp_var.h>
-#endif
 #if defined(__NetBSD_Version__) && (__NetBSD_Version__ >= 106000000)
 # define USE_NANOSLEEP
 #endif
@@ -951,9 +931,7 @@ void	ip_test5(dev, mtu, ip, gwip, ptest)
 	int	nfd, i;
 
 	t = (tcphdr_t *)((char *)ip + (IP_HL(ip) << 2));
-#if !defined(linux) && !defined(__osf__)
 	t->th_x2 = 0;
-#endif
 	TCP_OFF_A(t, 0);
 	t->th_sport = htons(1);
 	t->th_dport = htons(1);

Modified: stable/11/contrib/ipfilter/ipsend/resend.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/resend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/resend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -19,10 +19,8 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 # include <netinet/ip_var.h>
 # include <netinet/if_ether.h>
-#endif
 #include <stdio.h>
 #include <netdb.h>
 #include <string.h>

Modified: stable/11/contrib/ipfilter/ipsend/sdlpi.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/sdlpi.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/sdlpi.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,14 +25,7 @@
 # include <sys/pfmod.h>
 # include <sys/bufmod.h>
 #endif
-#ifdef __osf__
-# include <sys/dlpihdr.h>
-#else
 # include <sys/dlpi.h>
-#endif
-#ifdef __hpux
-# include <sys/dlpi_ext.h>
-#endif
 
 #include <net/if.h>
 #include <netinet/in.h>

Modified: stable/11/contrib/ipfilter/ipsend/sock.c
==============================================================================
--- stable/11/contrib/ipfilter/ipsend/sock.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/ipsend/sock.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -29,7 +29,6 @@ typedef int     boolean_t;
 #else
 # include <sys/dir.h>
 #endif
-#if !defined(__osf__)
 # ifdef __NetBSD__
 #  include <machine/lock.h>
 # endif
@@ -50,7 +49,6 @@ typedef int     boolean_t;
 #  undef  _KERNEL
 #  undef  KERNEL
 # endif
-#endif
 #include <nlist.h>
 #include <sys/user.h>
 #include <sys/socket.h>
@@ -74,9 +72,7 @@ typedef int     boolean_t;
 #include <netinet/ip.h>
 #include <netinet/tcp.h>
 #include <net/if.h>
-#ifndef __osf__
 # include <net/route.h>
-#endif
 #include <netinet/ip_var.h>
 #include <netinet/in_pcb.h>
 #include <netinet/tcp_timer.h>

Modified: stable/11/contrib/ipfilter/lib/getifname.c
==============================================================================
--- stable/11/contrib/ipfilter/lib/getifname.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/lib/getifname.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,9 +25,6 @@ char *getifname(ptr)
 #  include <sys/mutex.h>
 #  include <sys/condvar.h>
 # endif
-# ifdef __hpux
-#  include "compat.h"
-# endif
 # include "../pfil/qif.h"
 	char *ifname;
 	qif_t qif;

Modified: stable/11/contrib/ipfilter/lib/getproto.c
==============================================================================
--- stable/11/contrib/ipfilter/lib/getproto.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/11/contrib/ipfilter/lib/getproto.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -23,14 +23,6 @@ int getproto(name)
 	if (*s == '\0')
 		return atoi(name);
 
-#ifdef _AIX51
-	/*
-	 * For some bogus reason, "ip" is 252 in /etc/protocols on AIX 5
-	 * The IANA has doubled up on the definition of 0 - it is now also
-	 * used for IPv6 hop-opts, so we can no longer rely on /etc/protocols
-	 * providing the correct name->number mapping
-	 */
-#endif
 	if (!strcasecmp(name, "ip"))
 		return 0;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:37:36 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9908B15220F4;
 Wed,  6 Mar 2019 02:37:35 +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)
 server-signature RSA-PSS (4096 bits)
 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 33F536DA72;
 Wed,  6 Mar 2019 02:37:35 +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 B95FA25180;
 Wed,  6 Mar 2019 02:37:34 +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 x262bYrO003769;
 Wed, 6 Mar 2019 02:37:34 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262bUAm003746;
 Wed, 6 Mar 2019 02:37:30 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060237.x262bUAm003746@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:37: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: r344833 - in stable: 11/contrib/ipfilter
 11/contrib/ipfilter/ipsend 11/contrib/ipfilter/ipsend/.OLD
 11/contrib/ipfilter/lib 11/contrib/ipfilter/tools
 11/sys/contrib/ipfilter/netinet 12/...
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter 11/contrib/ipfilter/ipsend
 11/contrib/ipfilter/ipsend/.OLD 11/contrib/ipfilter/lib
 11/contrib/ipfilter/tools 11/sys/contrib/ipfilter/netinet 12/contrib/ipfilter
 12/contr...
X-SVN-Commit-Revision: 344833
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 33F536DA72
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:37:36 -0000

Author: cy
Date: Wed Mar  6 02:37:25 2019
New Revision: 344833
URL: https://svnweb.freebsd.org/changeset/base/344833

Log:
  MFC r343701 & r343732:
  
  ipfilter #ifdef cleanup.
  
  Remove #ifdefs for ancient and irrelevant operating systems from
  ipfilter.
  
  When ipfilter was written the UNIX and UNIX-like systems in use
  were diverse and plentiful. IRIX, Tru64 (OSF/1) don't exist any
  more. OpenBSD removed ipfilter shortly after the first time the
  ipfilter license terms changed in the early 2000's. ipfilter on AIX,
  HP/UX, and Linux never really caught on. Removal of code for operating
  systems that ipfilter will never run on again will simplify the code
  making it easier to fix bugs, complete partially implemented features,
  and extend ipfilter.
  
  Unsupported previous version FreeBSD code and some older NetBSD code
  has also been removed.
  
  What remains is supported FreeBSD, NetBSD, and illumos. FreeBSD and
  NetBSD have collaborated exchanging patches, while illumos has expressed
  willingness to have their ipfilter updated to 5.1.2, provided their
  zone-specific updates to their ipfilter are merged (which are of interest
  to FreeBSD to allow control of ipfilters in jails from the global zone).
  
  Reviewed by:	glebius@
  Differential Revision:	https://reviews.freebsd.org/D19006

Modified:
  stable/12/contrib/ipfilter/arc4random.c
  stable/12/contrib/ipfilter/ip_dstlist.c
  stable/12/contrib/ipfilter/ip_fil.c
  stable/12/contrib/ipfilter/ip_fil_compat.c
  stable/12/contrib/ipfilter/ipf.h
  stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h
  stable/12/contrib/ipfilter/ipsend/44arp.c
  stable/12/contrib/ipfilter/ipsend/arp.c
  stable/12/contrib/ipfilter/ipsend/dlcommon.c
  stable/12/contrib/ipfilter/ipsend/ip.c
  stable/12/contrib/ipfilter/ipsend/ipresend.c
  stable/12/contrib/ipfilter/ipsend/ipsend.c
  stable/12/contrib/ipfilter/ipsend/ipsend.h
  stable/12/contrib/ipfilter/ipsend/ipsopt.c
  stable/12/contrib/ipfilter/ipsend/iptest.c
  stable/12/contrib/ipfilter/ipsend/iptests.c
  stable/12/contrib/ipfilter/ipsend/resend.c
  stable/12/contrib/ipfilter/ipsend/sdlpi.c
  stable/12/contrib/ipfilter/ipsend/sock.c
  stable/12/contrib/ipfilter/lib/getifname.c
  stable/12/contrib/ipfilter/lib/getproto.c
  stable/12/contrib/ipfilter/lib/inet_addr.c
  stable/12/contrib/ipfilter/lib/kmem.c
  stable/12/contrib/ipfilter/lib/printproto.c
  stable/12/contrib/ipfilter/md5.c
  stable/12/contrib/ipfilter/tools/ipf.c
  stable/12/contrib/ipfilter/tools/ipfs.c
  stable/12/contrib/ipfilter/tools/ipfstat.c
  stable/12/contrib/ipfilter/tools/ipftest.c
  stable/12/contrib/ipfilter/tools/ipmon.c
  stable/12/contrib/ipfilter/tools/ipnat.c
  stable/12/contrib/ipfilter/tools/ipnat_y.y
  stable/12/contrib/ipfilter/tools/ippool.c
  stable/12/contrib/ipfilter/tools/ippool_y.y
  stable/12/sys/contrib/ipfilter/netinet/fil.c
  stable/12/sys/contrib/ipfilter/netinet/ip_auth.c
  stable/12/sys/contrib/ipfilter/netinet/ip_compat.h
  stable/12/sys/contrib/ipfilter/netinet/ip_dstlist.c
  stable/12/sys/contrib/ipfilter/netinet/ip_fil.h
  stable/12/sys/contrib/ipfilter/netinet/ip_frag.c
  stable/12/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_htable.c
  stable/12/sys/contrib/ipfilter/netinet/ip_irc_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_log.c
  stable/12/sys/contrib/ipfilter/netinet/ip_lookup.c
  stable/12/sys/contrib/ipfilter/netinet/ip_nat.c
  stable/12/sys/contrib/ipfilter/netinet/ip_nat.h
  stable/12/sys/contrib/ipfilter/netinet/ip_nat6.c
  stable/12/sys/contrib/ipfilter/netinet/ip_pool.c
  stable/12/sys/contrib/ipfilter/netinet/ip_proxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c
  stable/12/sys/contrib/ipfilter/netinet/ip_scan.c
  stable/12/sys/contrib/ipfilter/netinet/ip_state.c
  stable/12/sys/contrib/ipfilter/netinet/ip_sync.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/contrib/ipfilter/arc4random.c
  stable/11/contrib/ipfilter/ip_dstlist.c
  stable/11/contrib/ipfilter/ip_fil.c
  stable/11/contrib/ipfilter/ip_fil_compat.c
  stable/11/contrib/ipfilter/ipf.h
  stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h
  stable/11/contrib/ipfilter/ipsend/44arp.c
  stable/11/contrib/ipfilter/ipsend/arp.c
  stable/11/contrib/ipfilter/ipsend/dlcommon.c
  stable/11/contrib/ipfilter/ipsend/ip.c
  stable/11/contrib/ipfilter/ipsend/ipresend.c
  stable/11/contrib/ipfilter/ipsend/ipsend.c
  stable/11/contrib/ipfilter/ipsend/ipsend.h
  stable/11/contrib/ipfilter/ipsend/ipsopt.c
  stable/11/contrib/ipfilter/ipsend/iptest.c
  stable/11/contrib/ipfilter/ipsend/iptests.c
  stable/11/contrib/ipfilter/ipsend/resend.c
  stable/11/contrib/ipfilter/ipsend/sdlpi.c
  stable/11/contrib/ipfilter/ipsend/sock.c
  stable/11/contrib/ipfilter/lib/getifname.c
  stable/11/contrib/ipfilter/lib/getproto.c
  stable/11/contrib/ipfilter/lib/inet_addr.c
  stable/11/contrib/ipfilter/lib/kmem.c
  stable/11/contrib/ipfilter/lib/printproto.c
  stable/11/contrib/ipfilter/md5.c
  stable/11/contrib/ipfilter/tools/ipf.c
  stable/11/contrib/ipfilter/tools/ipfs.c
  stable/11/contrib/ipfilter/tools/ipfstat.c
  stable/11/contrib/ipfilter/tools/ipftest.c
  stable/11/contrib/ipfilter/tools/ipmon.c
  stable/11/contrib/ipfilter/tools/ipnat.c
  stable/11/contrib/ipfilter/tools/ipnat_y.y
  stable/11/contrib/ipfilter/tools/ippool.c
  stable/11/contrib/ipfilter/tools/ippool_y.y
  stable/11/sys/contrib/ipfilter/netinet/fil.c
  stable/11/sys/contrib/ipfilter/netinet/ip_auth.c
  stable/11/sys/contrib/ipfilter/netinet/ip_compat.h
  stable/11/sys/contrib/ipfilter/netinet/ip_dstlist.c
  stable/11/sys/contrib/ipfilter/netinet/ip_fil.h
  stable/11/sys/contrib/ipfilter/netinet/ip_frag.c
  stable/11/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_htable.c
  stable/11/sys/contrib/ipfilter/netinet/ip_irc_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_log.c
  stable/11/sys/contrib/ipfilter/netinet/ip_lookup.c
  stable/11/sys/contrib/ipfilter/netinet/ip_nat.c
  stable/11/sys/contrib/ipfilter/netinet/ip_nat.h
  stable/11/sys/contrib/ipfilter/netinet/ip_nat6.c
  stable/11/sys/contrib/ipfilter/netinet/ip_pool.c
  stable/11/sys/contrib/ipfilter/netinet/ip_proxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c
  stable/11/sys/contrib/ipfilter/netinet/ip_scan.c
  stable/11/sys/contrib/ipfilter/netinet/ip_state.c
  stable/11/sys/contrib/ipfilter/netinet/ip_sync.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/contrib/ipfilter/arc4random.c
==============================================================================
--- stable/12/contrib/ipfilter/arc4random.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/arc4random.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -7,7 +7,7 @@
  *
  * Dan Moschuk
  */
-#if !defined(SOLARIS2) && !defined(__osf__)
+#if !defined(SOLARIS2)
 # include <sys/cdefs.h>
 #endif
 
@@ -16,26 +16,16 @@
 #ifdef __FreeBSD__
 # include <sys/kernel.h>
 #endif
-#if !defined(__osf__)
 # include <sys/random.h>
-#endif
 #ifdef __FreeBSD__
 # include <sys/libkern.h>
 #endif
 #include <sys/lock.h>
-#ifndef __osf__
 # include <sys/mutex.h>
-#endif
 #include <sys/time.h>
 
-#if defined(SOLARIS2) && (SOLARIS2 < 9)
-# include <netinet/in_systm.h>
-#endif
 #include <sys/socket.h>
 #include <net/if.h>
-#ifdef __osf__
-# include <net/route.h>
-#endif
 #include <netinet/in.h>
 #include <netinet/ip.h>
 #include "netinet/ip_compat.h"

Modified: stable/12/contrib/ipfilter/ip_dstlist.c
==============================================================================
--- stable/12/contrib/ipfilter/ip_dstlist.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ip_dstlist.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -9,9 +9,6 @@
 # define        KERNEL	1
 # define        _KERNEL	1
 #endif
-#if defined(__osf__)
-# define _PROTO_NET_H_
-#endif
 #include <sys/errno.h>
 #include <sys/types.h>
 #include <sys/param.h>
@@ -21,9 +18,6 @@
 # include <stdlib.h>
 # include <string.h>
 # define _KERNEL
-# ifdef __OpenBSD__
-struct file;
-# endif
 # include <sys/uio.h>
 # undef _KERNEL
 #else
@@ -33,14 +27,12 @@ struct file;
 # endif
 #endif
 #include <sys/time.h>
-#if !defined(linux)
 # include <sys/protosw.h>
-#endif
 #include <sys/socket.h>
-#if defined(_KERNEL) && (!defined(__SVR4) && !defined(__svr4__))
+#if defined(_KERNEL) && !defined(__SVR4)
 # include <sys/mbuf.h>
 #endif
-#if defined(__SVR4) || defined(__svr4__)
+#if defined(__SVR4)
 # include <sys/filio.h>
 # include <sys/byteorder.h>
 # ifdef _KERNEL
@@ -49,7 +41,7 @@ struct file;
 # include <sys/stream.h>
 # include <sys/kmem.h>
 #endif
-#if defined(__FreeBSD_version) && (__FreeBSD_version >= 300000)
+#if defined(__FreeBSD_version)
 # include <sys/malloc.h>
 #endif
 

Modified: stable/12/contrib/ipfilter/ip_fil.c
==============================================================================
--- stable/12/contrib/ipfilter/ip_fil.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ip_fil.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,24 +25,10 @@ struct	rtentry;
 
 static	void	ipf_setifpaddr __P((struct ifnet *, char *));
 void	init_ifp __P((void));
-#if defined(__sgi) && (IRIX < 60500)
 static int 	no_output __P((struct ifnet *, struct mbuf *,
-			       struct sockaddr *));
-static int	write_output __P((struct ifnet *, struct mbuf *,
-				  struct sockaddr *));
-#else
-# if TRU64 >= 1885
-static int 	no_output __P((struct ifnet *, struct mbuf *,
-			       struct sockaddr *, struct rtentry *, char *));
-static int	write_output __P((struct ifnet *, struct mbuf *,
-				  struct sockaddr *, struct rtentry *, char *));
-# else
-static int 	no_output __P((struct ifnet *, struct mbuf *,
 			       struct sockaddr *, struct rtentry *));
 static int	write_output __P((struct ifnet *, struct mbuf *,
 				  struct sockaddr *, struct rtentry *));
-# endif
-#endif
 
 struct ifaddr {
 	struct sockaddr_storage ifa_addr;
@@ -123,17 +109,8 @@ ipf_forgetifp(softc, ifp)
 
 
 static int
-#if defined(__sgi) && (IRIX < 60500)
-no_output(ifp, m, s)
-#else
-# if TRU64 >= 1885
-no_output (ifp, m, s, rt, cp)
-	char *cp;
-# else
 no_output(ifp, m, s, rt)
-# endif
 	struct rtentry *rt;
-#endif
 	struct ifnet *ifp;
 	struct mbuf *m;
 	struct sockaddr *s;
@@ -143,17 +120,8 @@ no_output(ifp, m, s, rt)
 
 
 static int
-#if defined(__sgi) && (IRIX < 60500)
-write_output(ifp, m, s)
-#else
-# if TRU64 >= 1885
-write_output (ifp, m, s, rt, cp)
-	char *cp;
-# else
 write_output(ifp, m, s, rt)
-# endif
 	struct rtentry *rt;
-#endif
 	struct ifnet *ifp;
 	struct mbuf *m;
 	struct sockaddr *s;
@@ -167,8 +135,7 @@ write_output(ifp, m, s, rt)
 	ip = MTOD(mb, ip_t *);
 
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	sprintf(fname, "/tmp/%s", ifp->if_xname);
 #else
 	sprintf(fname, "/tmp/%s%d", ifp->if_name, ifp->if_unit);
@@ -189,42 +156,26 @@ ipf_setifpaddr(ifp, addr)
 	struct ifnet *ifp;
 	char *addr;
 {
-#ifdef __sgi
-	struct in_ifaddr *ifa;
-#else
 	struct ifaddr *ifa;
-#endif
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	if (ifp->if_addrlist.tqh_first != NULL)
 #else
-# ifdef __sgi
-	if (ifp->in_ifaddr != NULL)
-# else
 	if (ifp->if_addrlist != NULL)
-# endif
 #endif
 		return;
 
 	ifa = (struct ifaddr *)malloc(sizeof(*ifa));
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	ifp->if_addrlist.tqh_first = ifa;
 #else
-# ifdef __sgi
-	ifp->in_ifaddr = ifa;
-# else
 	ifp->if_addrlist = ifa;
-# endif
 #endif
 
 	if (ifa != NULL) {
 		struct sockaddr_in *sin;
 
-#ifdef __sgi
-		sin = (struct sockaddr_in *)&ifa->ia_addr;
-#else
 		sin = (struct sockaddr_in *)&ifa->ifa_addr;
-#endif
 #ifdef USE_INET6
 		if (index(addr, ':') != NULL) {
 			struct sockaddr_in6 *sin6;
@@ -263,8 +214,7 @@ get_unit(name, family)
 	struct ifnet *ifp, **ifpp, **old_ifneta;
 	char *addr;
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 
 	if (!*name)
 		return NULL;
@@ -333,12 +283,11 @@ get_unit(name, family)
 	}
 	ifp = ifneta[nifs - 1];
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	TAILQ_INIT(&ifp->if_addrlist);
 #endif
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	(void) strncpy(ifp->if_xname, name, sizeof(ifp->if_xname));
 #else
 	s = name + strlen(name) - 1;
@@ -375,8 +324,7 @@ get_ifname(ifp)
 {
 	static char ifname[LIFNAMSIZ];
 
-#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	sprintf(ifname, "%s", ifp->if_xname);
 #else
 	if (ifp->if_unit != -1)
@@ -397,8 +345,7 @@ init_ifp()
 	int fd;
 
 #if (defined(NetBSD) && (NetBSD <= 1991011) && (NetBSD >= 199606)) || \
-    (defined(OpenBSD) && (OpenBSD >= 199603)) || defined(linux) || \
-    (defined(__FreeBSD__) && (__FreeBSD_version >= 501113))
+    defined(__FreeBSD__)
 	for (ifpp = ifneta; ifpp && (ifp = *ifpp); ifpp++) {
 		ifp->if_output = (void *)write_output;
 		sprintf(fname, "/tmp/%s", ifp->if_xname);
@@ -717,20 +664,12 @@ ipf_ifpaddr(softc, v, atype, ifptr, inp, inpmask)
 	i6addr_t *inp, *inpmask;
 {
 	struct ifnet *ifp = ifptr;
-#ifdef __sgi
-	struct in_ifaddr *ifa;
-#else
 	struct ifaddr *ifa;
-#endif
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__)
+#if defined(__NetBSD__) || defined(__FreeBSD__)
 	ifa = ifp->if_addrlist.tqh_first;
 #else
-# ifdef __sgi
-	ifa = (struct in_ifaddr *)ifp->in_ifaddr;
-# else
 	ifa = ifp->if_addrlist;
-# endif
 #endif
 	if (ifa != NULL) {
 		if (v == 4) {
@@ -738,11 +677,7 @@ ipf_ifpaddr(softc, v, atype, ifptr, inp, inpmask)
 
 			mask.sin_addr.s_addr = 0xffffffff;
 
-#ifdef __sgi
-			sin = (struct sockaddr_in *)&ifa->ia_addr;
-#else
 			sin = (struct sockaddr_in *)&ifa->ifa_addr;
-#endif
 
 			return ipf_ifpfillv4addr(atype, sin, &mask,
 						 &inp->in4, &inpmask->in4);

Modified: stable/12/contrib/ipfilter/ip_fil_compat.c
==============================================================================
--- stable/12/contrib/ipfilter/ip_fil_compat.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ip_fil_compat.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -9,15 +9,12 @@
 # define        KERNEL	1
 # define        _KERNEL	1
 #endif
-#if defined(__osf__)
-# define _PROTO_NET_H_
-#endif
 #include <sys/param.h>
 #include <sys/errno.h>
 #include <sys/types.h>
 #include <sys/time.h>
 #include <sys/file.h>
-#if __FreeBSD_version >= 220000 && defined(_KERNEL)
+#if defined(__FreeBSD_version) && defined(_KERNEL)
 # include <sys/fcntl.h>
 # include <sys/filio.h>
 #else
@@ -26,17 +23,10 @@
 #if !defined(_KERNEL)
 # include <string.h>
 # define _KERNEL
-# ifdef __OpenBSD__
-struct file;
-# endif
 # include <sys/uio.h>
 # undef _KERNEL
 #endif
 #include <sys/socket.h>
-#if (defined(__osf__) || defined(AIX) || defined(__hpux) || defined(__sgi)) && defined(_KERNEL)
-# include "radix_ipf_local.h"
-# define _RADIX_H_
-#endif
 #include <net/if.h>
 #if defined(__FreeBSD__)
 #  include <sys/cdefs.h>
@@ -44,7 +34,7 @@ struct file;
 #endif
 #if defined(_KERNEL)
 # include <sys/systm.h>
-# if !defined(__SVR4) && !defined(__svr4__)
+# if !defined(__SVR4)
 #  include <sys/mbuf.h>
 # endif
 #endif
@@ -348,9 +338,6 @@ typedef	struct	fr_info_4_1_32 {
 	void	*fin_qpi;
 	char	fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef	__sgi
-	void	*fin_hbuf;
-#endif
 } fr_info_4_1_32_t;
 
 typedef struct  fr_info_4_1_24 {
@@ -389,9 +376,6 @@ typedef struct  fr_info_4_1_24 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_24_t;
 
 typedef struct  fr_info_4_1_23 {
@@ -429,9 +413,6 @@ typedef struct  fr_info_4_1_23 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_23_t;
 
 typedef struct  fr_info_4_1_11 {
@@ -468,9 +449,6 @@ typedef struct  fr_info_4_1_11 {
 	void    *fin_qpi;
 	char    fin_ifname[LIFNAMSIZ];
 #endif
-#ifdef  __sgi
-	void    *fin_hbuf;
-#endif
 } fr_info_4_1_11_t;
 
 /* ------------------------------------------------------------------------ */
@@ -2678,9 +2656,6 @@ fr_info_4_1_32_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = old->fin_hbuf;
-#endif
 }
 
 
@@ -2719,9 +2694,6 @@ fr_info_4_1_24_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = old->fin_hbuf;
-#endif
 }
 
 
@@ -2759,9 +2731,6 @@ fr_info_4_1_23_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -2799,9 +2768,6 @@ fr_info_4_1_11_to_current(old, current)
 	fin->fin_qfm = old->fin_qfm;
 	fin->fin_qpi = old->fin_qpi;
 #endif
-#ifdef  __sgi
-	fin->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4078,9 +4044,6 @@ fr_info_current_to_4_1_24(current, old)
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
 #endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4121,9 +4084,6 @@ fr_info_current_to_4_1_23(current, old)
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
 #endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
-#endif
 }
 
 
@@ -4163,9 +4123,6 @@ fr_info_current_to_4_1_11(current, old)
 	old->fin_qfm = fin->fin_qfm;
 	old->fin_qpi = fin->fin_qpi;
 	old->fin_ifname[0] = '\0';
-#endif
-#ifdef  __sgi
-	old->fin_hbuf = fin->fin_hbuf;
 #endif
 }
 

Modified: stable/12/contrib/ipfilter/ipf.h
==============================================================================
--- stable/12/contrib/ipfilter/ipf.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipf.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -12,11 +12,6 @@
 #ifndef	__IPF_H__
 #define	__IPF_H__
 
-#if defined(__osf__)
-# define radix_mask ipf_radix_mask
-# define radix_node ipf_radix_node
-# define radix_node_head ipf_radix_node_head
-#endif
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -31,9 +26,6 @@
 # define _KERNEL
 # define KERNEL
 #endif
-#ifdef __OpenBSD__
-struct file;
-#endif
 #include <sys/uio.h>
 #ifdef ADD_KERNEL
 # undef _KERNEL
@@ -188,9 +180,8 @@ typedef	struct	proxyrule {
 } proxyrule_t;
 
 
-#if defined(__NetBSD__) || defined(__OpenBSD__) || \
-        (_BSDI_VERSION >= 199701) || (__FreeBSD_version >= 300000) || \
-	SOLARIS || defined(__sgi) || defined(__osf__) || defined(linux)
+#if defined(__NetBSD__) || defined(__FreeBSD_version) || \
+	SOLARIS
 # include <stdarg.h>
 typedef	int	(* ioctlfunc_t) __P((int, ioctlcmd_t, ...));
 #else
@@ -199,13 +190,6 @@ typedef	int	(* ioctlfunc_t) __P((dev_t, ioctlcmd_t, vo
 typedef	int	(* addfunc_t) __P((int, ioctlfunc_t, void *));
 typedef	int	(* copyfunc_t) __P((void *, void *, size_t));
 
-
-/*
- * SunOS4
- */
-#if defined(sun) && !defined(__SVR4) && !defined(__svr4__)
-extern	int	ioctl __P((int, int, void *));
-#endif
 
 extern	char	thishost[];
 extern	char	flagset[];

Modified: stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -112,130 +112,12 @@
 # define	IPOPT_SECUR_TOPSECRET	((u_short)0x6bc5)
 #endif
 
-#ifdef linux
-# if LINUX < 0200
-#  define	icmp	icmphdr
-#  define	icmp_type	type
-#  define	icmp_code	code
-# endif
 
-/*
- * From /usr/include/netinet/ip_var.h
- * !%@#!$@# linux...
- */
-struct ipovly {
-	caddr_t	ih_next, ih_prev;	/* for protocol sequence q's */
-	u_char	ih_x1;			/* (unused) */
-	u_char	ih_pr;			/* protocol */
-	short	ih_len;			/* protocol length */
-	struct	in_addr ih_src;		/* source internet address */
-	struct	in_addr ih_dst;		/* destination internet address */
-};
-
-typedef	struct	{
-	__u16	th_sport;
-	__u16	th_dport;
-	__u32	th_seq;
-	__u32	th_ack;
-# if defined(__i386__) || defined(__MIPSEL__) || defined(__alpha__) ||\
-    defined(vax)
-	__u8	th_res:4;
-	__u8	th_off:4;
-#else
-	__u8	th_off:4;
-	__u8	th_res:4;
-#endif
-	__u8	th_flags;
-	__u16	th_win;
-	__u16	th_sum;
-	__u16	th_urp;
-} tcphdr_t;
-
-typedef	struct	{
-	__u16	uh_sport;
-	__u16	uh_dport;
-	__s16	uh_ulen;
-	__u16	uh_sum;
-} udphdr_t;
-
-typedef	struct	{
-# if defined(__i386__) || defined(__MIPSEL__) || defined(__alpha__) ||\
-    defined(vax)
-	__u8	ip_hl:4;
-	__u8	ip_v:4;
-# else
-	__u8	ip_hl:4;
-	__u8	ip_v:4;
-# endif
-	__u8	ip_tos;
-	__u16	ip_len;
-	__u16	ip_id;
-	__u16	ip_off;
-	__u8	ip_ttl;
-	__u8	ip_p;
-	__u16	ip_sum;
-	struct	in_addr	ip_src;
-	struct	in_addr	ip_dst;
-} ip_t;
-
-typedef	struct	{
-	__u8	ether_dhost[6];
-	__u8	ether_shost[6];
-	__u16	ether_type;
-} ether_header_t;
-
-typedef struct icmp {
-	u_char	icmp_type;		/* type of message, see below */
-	u_char	icmp_code;		/* type sub code */
-	u_short	icmp_cksum;		/* ones complement cksum of struct */
-	union {
-		u_char ih_pptr;			/* ICMP_PARAMPROB */
-		struct in_addr ih_gwaddr;	/* ICMP_REDIRECT */
-		struct ih_idseq {
-			n_short	icd_id;
-			n_short	icd_seq;
-		} ih_idseq;
-		int ih_void;
-	} icmp_hun;
-#define	icmp_pptr	icmp_hun.ih_pptr
-#define	icmp_gwaddr	icmp_hun.ih_gwaddr
-#define	icmp_id		icmp_hun.ih_idseq.icd_id
-#define	icmp_seq	icmp_hun.ih_idseq.icd_seq
-#define	icmp_void	icmp_hun.ih_void
-	union {
-		struct id_ts {
-			n_time its_otime;
-			n_time its_rtime;
-			n_time its_ttime;
-		} id_ts;
-		struct id_ip  {
-			ip_t idi_ip;
-			/* options and then 64 bits of data */
-		} id_ip;
-		u_long	id_mask;
-		char	id_data[1];
-	} icmp_dun;
-#define	icmp_otime	icmp_dun.id_ts.its_otime
-#define	icmp_rtime	icmp_dun.id_ts.its_rtime
-#define	icmp_ttime	icmp_dun.id_ts.its_ttime
-#define	icmp_ip		icmp_dun.id_ip.idi_ip
-#define	icmp_mask	icmp_dun.id_mask
-#define	icmp_data	icmp_dun.id_data
-} icmphdr_t;
-
-# define	bcopy(a,b,c)	memmove(b,a,c)
-# define	bcmp(a,b,c)	memcmp(a,b,c)
-
-# define	ifnet	device
-
-#else
-
 typedef	struct	udphdr	udphdr_t;
 typedef	struct	tcphdr	tcphdr_t;
 typedef	struct	ip	ip_t;
 typedef	struct	ether_header	ether_header_t;
 
-#endif
 
 #if defined(__SVR4) || defined(__svr4__)
 # define	bcopy(a,b,c)	memmove(b,a,c)

Modified: stable/12/contrib/ipfilter/ipsend/44arp.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/44arp.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/44arp.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -10,9 +10,7 @@
 #include <net/if.h>
 #include <net/if_dl.h>
 #include <net/if_types.h>
-#ifndef __osf__
 # include <net/route.h>
-#endif
 #include <netinet/in.h>
 #include <netinet/if_ether.h>
 #include <arpa/inet.h>

Modified: stable/12/contrib/ipfilter/ipsend/arp.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/arp.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/arp.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -88,7 +88,6 @@ int	arp(ip, ether)
 	sin = (struct sockaddr_in *)&ar.arp_pa;
 	sin->sin_family = AF_INET;
 	bcopy(ip, (char *)&sin->sin_addr.s_addr, 4);
-#ifndef	hpux
 	if ((hp = gethostbyaddr(ip, 4, AF_INET)))
 # if SOLARIS && (SOLARIS2 >= 10)
 		if (!(ether_hostton(hp->h_name, (struct ether_addr *)ether)))
@@ -96,7 +95,6 @@ int	arp(ip, ether)
 		if (!(ether_hostton(hp->h_name, ether)))
 # endif
 			goto savearp;
-#endif
 
 	if (sfd == -1)
 		if ((sfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)

Modified: stable/12/contrib/ipfilter/ipsend/dlcommon.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/dlcommon.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/dlcommon.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -20,11 +20,7 @@ typedef	unsigned long	ulong;
 #include	<sys/types.h>
 #include	<sys/stream.h>
 #include	<sys/stropts.h>
-#ifdef __osf__
-# include	<sys/dlpihdr.h>
-#else
 # include	<sys/dlpi.h>
-#endif
 #include	<sys/signal.h>
 #include	<stdio.h>
 #include	<string.h>

Modified: stable/12/contrib/ipfilter/ipsend/ip.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/ip.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/ip.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -17,11 +17,9 @@ static const char rcsid[] = "@(#)$Id$";
 #include <netinet/in.h>
 #include <netinet/ip.h>
 #include <sys/param.h>
-#ifndef	linux
 # include <net/route.h>
 # include <netinet/if_ether.h>
 # include <netinet/ip_var.h>
-#endif
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>

Modified: stable/12/contrib/ipfilter/ipsend/ipresend.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/ipresend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/ipresend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -18,9 +18,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
@@ -37,9 +35,6 @@ extern	struct	ipread	pcap, iphex, iptext;
 
 int	opts = 0;
 #ifndef	DEFAULT_DEVICE
-# ifdef	linux
-char	default_device[] = "eth0";
-# else
 #  ifdef	sun
 char	default_device[] = "le0";
 #  else
@@ -49,15 +44,10 @@ char	default_device[] = "ln0";
 #    ifdef	__bsdi__
 char	default_device[] = "ef0";
 #    else
-#     ifdef	__sgi
-char	default_device[] = "ec0";
-#     else
 char	default_device[] = "lan0";
-#     endif
 #    endif
 #   endif
 #  endif
-# endif
 #else
 char	default_device[] = DEFAULT_DEVICE;
 #endif

Modified: stable/12/contrib/ipfilter/ipsend/ipsend.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/ipsend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/ipsend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -21,14 +21,10 @@ static const char rcsid[] = "@(#)$Id$";
 #include <netdb.h>
 #include <string.h>
 #include <netinet/ip.h>
-#ifndef	linux
 # include <netinet/ip_var.h>
-#endif
 #include "ipsend.h"
 #include "ipf.h"
-#ifndef	linux
 # include <netinet/udp_var.h>
-#endif
 
 
 extern	char	*optarg;
@@ -37,27 +33,15 @@ extern	void	iplang __P((FILE *));
 
 char	options[68];
 int	opts;
-#ifdef linux
-char	default_device[] = "eth0";
-#else
 # ifdef ultrix
 char	default_device[] = "ln0";
 # else
 #  ifdef __bsdi__
 char	default_device[] = "ef0";
 #  else
-#   ifdef __sgi
-char	default_device[] = "ec0";
-#   else
-#    ifdef __hpux
-char	default_device[] = "lan0";
-#    else
 char	default_device[] = "le0";
-#    endif /* __hpux */
-#   endif /* __sgi */
 #  endif /* __bsdi__ */
 # endif /* ultrix */
-#endif /* linux */
 
 
 static	void	usage __P((char *));

Modified: stable/12/contrib/ipfilter/ipsend/ipsend.h
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/ipsend.h	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/ipsend.h	Wed Mar  6 02:37:25 2019	(r344833)
@@ -26,9 +26,6 @@
 #include <net/if.h>
 
 #include "ipf.h"
-#ifdef	linux
-#include <linux/sockios.h>
-#endif
 /* XXX:	The following is needed by tcpip.h */
 #include <netinet/ip_var.h>
 #include "netinet/tcpip.h"
@@ -49,11 +46,7 @@ extern	u_32_t	buildopts __P((char *, char *, int));
 extern	int	addipopt __P((char *, struct ipopt_names *, int, char *));
 extern	int	initdevice __P((char *, int));
 extern	int	sendip __P((int, char *, int));
-#ifdef	linux
-extern	struct	sock	*find_tcp __P((int, struct tcpiphdr *));
-#else
 extern	struct	tcpcb	*find_tcp __P((int, struct tcpiphdr *));
-#endif
 extern	int	ip_resend __P((char *, int, struct ipread *, struct in_addr, char *));
 
 extern	void	ip_test1 __P((char *, int, ip_t *, struct in_addr, int));

Modified: stable/12/contrib/ipfilter/ipsend/ipsopt.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/ipsopt.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/ipsopt.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -20,9 +20,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
 #include "ipsend.h"

Modified: stable/12/contrib/ipfilter/ipsend/iptest.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/iptest.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/iptest.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -18,12 +18,7 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 #include <netinet/ip_var.h>
-#endif
-#ifdef	linux
-#include <linux/sockios.h>
-#endif
 #include <stdio.h>
 #include <netdb.h>
 #include <unistd.h>
@@ -36,9 +31,6 @@ extern	char	*optarg;
 extern	int	optind;
 
 char	options[68];
-#ifdef	linux
-char	default_device[] = "eth0";
-#else
 # ifdef	sun
 char	default_device[] = "le0";
 # else
@@ -48,15 +40,10 @@ char	default_device[] = "ln0";
 #   ifdef	__bsdi__
 char	default_device[] = "ef0";
 #   else
-#    ifdef	__sgi
-char	default_device[] = "ec0";
-#    else
 char	default_device[] = "lan0";
-#    endif
 #   endif
 #  endif
 # endif
-#endif
 
 static	void	usage __P((char *));
 int	main __P((int, char **));

Modified: stable/12/contrib/ipfilter/ipsend/iptests.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/iptests.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/iptests.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -21,7 +21,6 @@ static const char rcsid[] = "@(#)$Id$";
 typedef	int	boolean_t;
 #endif
 #include <sys/time.h>
-#if !defined(__osf__)
 # ifdef __NetBSD__
 #  include <machine/lock.h>
 #  include <machine/mutex.h>
@@ -37,7 +36,6 @@ typedef	int	boolean_t;
 # endif
 # undef  _KERNEL
 # undef  KERNEL
-#endif
 #if !defined(solaris) && !defined(linux) && !defined(__sgi)
 # include <nlist.h>
 # include <sys/user.h>
@@ -66,24 +64,13 @@ typedef	int	boolean_t;
 #endif
 #include <netinet/in_systm.h>
 #include <sys/socket.h>
-#ifdef __hpux
-# define _NET_ROUTE_INCLUDED
-#endif
 #include <net/if.h>
-#if defined(linux) && (LINUX >= 0200)
-# include <asm/atomic.h>
-#endif
-#if !defined(linux)
 # if defined(__FreeBSD__)
 #  include "radix_ipf.h"
 # endif
 # if !defined(solaris)
 #  include <net/route.h>
 # endif
-#else
-# define __KERNEL__	/* because there's a macro not wrapped by this */
-# include <net/route.h>	/* in this file :-/ */
-#endif
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #include <netinet/ip.h>
@@ -94,20 +81,13 @@ typedef	int	boolean_t;
 #include <unistd.h>
 #include <stdlib.h>
 #include <string.h>
-#ifdef __hpux
-# undef _NET_ROUTE_INCLUDED
-#endif
-#if !defined(linux)
 # include <netinet/ip_var.h>
 # if !defined(__hpux) && !defined(solaris)
 #  include <netinet/in_pcb.h>
 # endif
-#endif
 #include "ipsend.h"
-#if !defined(linux) && !defined(__hpux)
 # include <netinet/tcp_timer.h>
 # include <netinet/tcp_var.h>
-#endif
 #if defined(__NetBSD_Version__) && (__NetBSD_Version__ >= 106000000)
 # define USE_NANOSLEEP
 #endif
@@ -951,9 +931,7 @@ void	ip_test5(dev, mtu, ip, gwip, ptest)
 	int	nfd, i;
 
 	t = (tcphdr_t *)((char *)ip + (IP_HL(ip) << 2));
-#if !defined(linux) && !defined(__osf__)
 	t->th_x2 = 0;
-#endif
 	TCP_OFF_A(t, 0);
 	t->th_sport = htons(1);
 	t->th_dport = htons(1);

Modified: stable/12/contrib/ipfilter/ipsend/resend.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/resend.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/resend.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -19,10 +19,8 @@ static const char rcsid[] = "@(#)$Id$";
 #include <arpa/inet.h>
 #include <netinet/in_systm.h>
 #include <netinet/ip.h>
-#ifndef	linux
 # include <netinet/ip_var.h>
 # include <netinet/if_ether.h>
-#endif
 #include <stdio.h>
 #include <netdb.h>
 #include <string.h>

Modified: stable/12/contrib/ipfilter/ipsend/sdlpi.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/sdlpi.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/sdlpi.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,14 +25,7 @@
 # include <sys/pfmod.h>
 # include <sys/bufmod.h>
 #endif
-#ifdef __osf__
-# include <sys/dlpihdr.h>
-#else
 # include <sys/dlpi.h>
-#endif
-#ifdef __hpux
-# include <sys/dlpi_ext.h>
-#endif
 
 #include <net/if.h>
 #include <netinet/in.h>

Modified: stable/12/contrib/ipfilter/ipsend/sock.c
==============================================================================
--- stable/12/contrib/ipfilter/ipsend/sock.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/ipsend/sock.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -29,7 +29,6 @@ typedef int     boolean_t;
 #else
 # include <sys/dir.h>
 #endif
-#if !defined(__osf__)
 # ifdef __NetBSD__
 #  include <machine/lock.h>
 # endif
@@ -50,7 +49,6 @@ typedef int     boolean_t;
 #  undef  _KERNEL
 #  undef  KERNEL
 # endif
-#endif
 #include <nlist.h>
 #include <sys/user.h>
 #include <sys/socket.h>
@@ -74,9 +72,7 @@ typedef int     boolean_t;
 #include <netinet/ip.h>
 #include <netinet/tcp.h>
 #include <net/if.h>
-#ifndef __osf__
 # include <net/route.h>
-#endif
 #include <netinet/ip_var.h>
 #define	_WANT_INPCB
 #include <netinet/in_pcb.h>

Modified: stable/12/contrib/ipfilter/lib/getifname.c
==============================================================================
--- stable/12/contrib/ipfilter/lib/getifname.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/lib/getifname.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -25,9 +25,6 @@ char *getifname(ptr)
 #  include <sys/mutex.h>
 #  include <sys/condvar.h>
 # endif
-# ifdef __hpux
-#  include "compat.h"
-# endif
 # include "../pfil/qif.h"
 	char *ifname;
 	qif_t qif;

Modified: stable/12/contrib/ipfilter/lib/getproto.c
==============================================================================
--- stable/12/contrib/ipfilter/lib/getproto.c	Wed Mar  6 00:45:42 2019	(r344832)
+++ stable/12/contrib/ipfilter/lib/getproto.c	Wed Mar  6 02:37:25 2019	(r344833)
@@ -23,14 +23,6 @@ int getproto(name)
 	if (*s == '\0')
 		return atoi(name);
 
-#ifdef _AIX51
-	/*
-	 * For some bogus reason, "ip" is 252 in /etc/protocols on AIX 5
-	 * The IANA has doubled up on the definition of 0 - it is now also
-	 * used for IPv6 hop-opts, so we can no longer rely on /etc/protocols
-	 * providing the correct name->number mapping
-	 */
-#endif
 	if (!strcasecmp(name, "ip"))
 		return 0;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:40:02 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D44E015221F8;
 Wed,  6 Mar 2019 02:40:02 +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)
 server-signature RSA-PSS (4096 bits)
 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 7BD696DD0F;
 Wed,  6 Mar 2019 02:40:02 +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 6DB1625184;
 Wed,  6 Mar 2019 02:40:02 +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 x262e2nN003958;
 Wed, 6 Mar 2019 02:40:02 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262e2XP003957;
 Wed, 6 Mar 2019 02:40:02 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060240.x262e2XP003957@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:40:02 +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: r344834 - in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Commit-Revision: 344834
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7BD696DD0F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:40:03 -0000

Author: cy
Date: Wed Mar  6 02:40:01 2019
New Revision: 344834
URL: https://svnweb.freebsd.org/changeset/base/344834

Log:
  MFC r343702:
  
  Remove a redundant ip_compat.h, originally merged from upstream.

Deleted:
  stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h
Modified:
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h
Modified:
Directory Properties:
  stable/12/   (props changed)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:40:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C36215221FD;
 Wed,  6 Mar 2019 02:40:03 +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)
 server-signature RSA-PSS (4096 bits)
 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 C12366DD10;
 Wed,  6 Mar 2019 02:40:02 +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 B77A725185;
 Wed,  6 Mar 2019 02:40:02 +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 x262e2Pp003963;
 Wed, 6 Mar 2019 02:40:02 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262e2t2003962;
 Wed, 6 Mar 2019 02:40:02 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060240.x262e2t2003962@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:40: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: r344834 - in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Commit-Revision: 344834
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C12366DD10
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:40:03 -0000

Author: cy
Date: Wed Mar  6 02:40:01 2019
New Revision: 344834
URL: https://svnweb.freebsd.org/changeset/base/344834

Log:
  MFC r343702:
  
  Remove a redundant ip_compat.h, originally merged from upstream.

Deleted:
  stable/12/contrib/ipfilter/ipsend/.OLD/ip_compat.h
Modified:
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/11/contrib/ipfilter/ipsend/.OLD/ip_compat.h
Modified:
Directory Properties:
  stable/11/   (props changed)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:43:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BADC21522499;
 Wed,  6 Mar 2019 02:43:32 +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)
 server-signature RSA-PSS (4096 bits)
 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 5FE456E234;
 Wed,  6 Mar 2019 02:43:32 +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 5440025323;
 Wed,  6 Mar 2019 02:43:32 +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 x262hWKa008888;
 Wed, 6 Mar 2019 02:43:32 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262hWSl008887;
 Wed, 6 Mar 2019 02:43:32 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060243.x262hWSl008887@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:43: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: r344835 - in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Commit-Revision: 344835
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5FE456E234
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:43:32 -0000

Author: cy
Date: Wed Mar  6 02:43:31 2019
New Revision: 344835
URL: https://svnweb.freebsd.org/changeset/base/344835

Log:
  MFC r343703
  
  Remove a reference to HP-UX in a comment.

Modified:
  stable/11/sys/contrib/ipfilter/netinet/fil.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/contrib/ipfilter/netinet/fil.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/contrib/ipfilter/netinet/fil.c
==============================================================================
--- stable/11/sys/contrib/ipfilter/netinet/fil.c	Wed Mar  6 02:40:01 2019	(r344834)
+++ stable/11/sys/contrib/ipfilter/netinet/fil.c	Wed Mar  6 02:43:31 2019	(r344835)
@@ -2784,7 +2784,7 @@ ipf_firewall(fin, passp)
 /*             out(I)  - 0 == packet going in, 1 == packet going out        */
 /*             mp(IO)  - pointer to caller's buffer pointer that holds this */
 /*                       IP packet.                                         */
-/* Solaris & HP-UX ONLY :                                                   */
+/* Solaris:                                                                 */
 /*             qpi(I)  - pointer to STREAMS queue information for this      */
 /*                       interface & direction.                             */
 /*                                                                          */

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:43:33 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1829B152249D;
 Wed,  6 Mar 2019 02:43:33 +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)
 server-signature RSA-PSS (4096 bits)
 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 B188E6E235;
 Wed,  6 Mar 2019 02:43:32 +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 A743C25324;
 Wed,  6 Mar 2019 02:43:32 +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 x262hWKS008894;
 Wed, 6 Mar 2019 02:43:32 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262hWuY008893;
 Wed, 6 Mar 2019 02:43:32 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060243.x262hWuY008893@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:43: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: r344835 - in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Commit-Revision: 344835
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B188E6E235
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:43:33 -0000

Author: cy
Date: Wed Mar  6 02:43:31 2019
New Revision: 344835
URL: https://svnweb.freebsd.org/changeset/base/344835

Log:
  MFC r343703
  
  Remove a reference to HP-UX in a comment.

Modified:
  stable/12/sys/contrib/ipfilter/netinet/fil.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/contrib/ipfilter/netinet/fil.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/contrib/ipfilter/netinet/fil.c
==============================================================================
--- stable/12/sys/contrib/ipfilter/netinet/fil.c	Wed Mar  6 02:40:01 2019	(r344834)
+++ stable/12/sys/contrib/ipfilter/netinet/fil.c	Wed Mar  6 02:43:31 2019	(r344835)
@@ -2784,7 +2784,7 @@ ipf_firewall(fin, passp)
 /*             out(I)  - 0 == packet going in, 1 == packet going out        */
 /*             mp(IO)  - pointer to caller's buffer pointer that holds this */
 /*                       IP packet.                                         */
-/* Solaris & HP-UX ONLY :                                                   */
+/* Solaris:                                                                 */
 /*             qpi(I)  - pointer to STREAMS queue information for this      */
 /*                       interface & direction.                             */
 /*                                                                          */

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:46:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1043B15225E3;
 Wed,  6 Mar 2019 02:46:20 +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)
 server-signature RSA-PSS (4096 bits)
 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 A7D246E4DC;
 Wed,  6 Mar 2019 02:46:19 +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 9F1B525326;
 Wed,  6 Mar 2019 02:46:19 +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 x262kJud009105;
 Wed, 6 Mar 2019 02:46:19 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262kJPp009104;
 Wed, 6 Mar 2019 02:46:19 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060246.x262kJPp009104@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:46:19 +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: r344836 - in stable: 11/contrib/ipfilter
 12/contrib/ipfilter
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter 12/contrib/ipfilter
X-SVN-Commit-Revision: 344836
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A7D246E4DC
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:46:20 -0000

Author: cy
Date: Wed Mar  6 02:46:18 2019
New Revision: 344836
URL: https://svnweb.freebsd.org/changeset/base/344836

Log:
  MFC r343704:
  
  Kernel module shim sources have no business being in the userland
  build directory, especially those for other operating systems.
  The kernel module shims for other operating systems are hereby removed.
  The kernel module shim for FreeBSD, mlfk_ipl.c, is already in
  sys/contrib/ipfilter/netinet. The one here is never used and should
  not be in the userland build directory either.
  
  mlfk_rule.c isn't used either however we will keep it in case someone
  wishes to use this shim to load rules via a kernel module, handy for
  embedded. In that case it should be copied to
  sys/contrib/ipfilter/netinet and a Makefile created to employ it.
  (Probably a useful documentation project when time permits.)

Deleted:
  stable/12/contrib/ipfilter/ml_ipl.c
  stable/12/contrib/ipfilter/mlf_ipl.c
  stable/12/contrib/ipfilter/mlf_rule.c
  stable/12/contrib/ipfilter/mlfk_ipl.c
  stable/12/contrib/ipfilter/mlh_rule.c
  stable/12/contrib/ipfilter/mln_ipl.c
  stable/12/contrib/ipfilter/mln_rule.c
  stable/12/contrib/ipfilter/mlo_ipl.c
  stable/12/contrib/ipfilter/mlo_rule.c
  stable/12/contrib/ipfilter/mls_ipl.c
  stable/12/contrib/ipfilter/mls_rule.c
  stable/12/contrib/ipfilter/mlso_rule.c
Modified:
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/11/contrib/ipfilter/ml_ipl.c
  stable/11/contrib/ipfilter/mlf_ipl.c
  stable/11/contrib/ipfilter/mlf_rule.c
  stable/11/contrib/ipfilter/mlfk_ipl.c
  stable/11/contrib/ipfilter/mlh_rule.c
  stable/11/contrib/ipfilter/mln_ipl.c
  stable/11/contrib/ipfilter/mln_rule.c
  stable/11/contrib/ipfilter/mlo_ipl.c
  stable/11/contrib/ipfilter/mlo_rule.c
  stable/11/contrib/ipfilter/mls_ipl.c
  stable/11/contrib/ipfilter/mls_rule.c
  stable/11/contrib/ipfilter/mlso_rule.c
Modified:
Directory Properties:
  stable/11/   (props changed)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:46:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DAC0515225E1;
 Wed,  6 Mar 2019 02:46:19 +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)
 server-signature RSA-PSS (4096 bits)
 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 79F886E4DB;
 Wed,  6 Mar 2019 02:46:19 +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 5F90D25325;
 Wed,  6 Mar 2019 02:46:19 +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 x262kJ9s009100;
 Wed, 6 Mar 2019 02:46:19 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262kJ7p009099;
 Wed, 6 Mar 2019 02:46:19 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060246.x262kJ7p009099@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:46:19 +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: r344836 - in stable: 11/contrib/ipfilter
 12/contrib/ipfilter
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter 12/contrib/ipfilter
X-SVN-Commit-Revision: 344836
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 79F886E4DB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:46:20 -0000

Author: cy
Date: Wed Mar  6 02:46:18 2019
New Revision: 344836
URL: https://svnweb.freebsd.org/changeset/base/344836

Log:
  MFC r343704:
  
  Kernel module shim sources have no business being in the userland
  build directory, especially those for other operating systems.
  The kernel module shims for other operating systems are hereby removed.
  The kernel module shim for FreeBSD, mlfk_ipl.c, is already in
  sys/contrib/ipfilter/netinet. The one here is never used and should
  not be in the userland build directory either.
  
  mlfk_rule.c isn't used either however we will keep it in case someone
  wishes to use this shim to load rules via a kernel module, handy for
  embedded. In that case it should be copied to
  sys/contrib/ipfilter/netinet and a Makefile created to employ it.
  (Probably a useful documentation project when time permits.)

Deleted:
  stable/11/contrib/ipfilter/ml_ipl.c
  stable/11/contrib/ipfilter/mlf_ipl.c
  stable/11/contrib/ipfilter/mlf_rule.c
  stable/11/contrib/ipfilter/mlfk_ipl.c
  stable/11/contrib/ipfilter/mlh_rule.c
  stable/11/contrib/ipfilter/mln_ipl.c
  stable/11/contrib/ipfilter/mln_rule.c
  stable/11/contrib/ipfilter/mlo_ipl.c
  stable/11/contrib/ipfilter/mlo_rule.c
  stable/11/contrib/ipfilter/mls_ipl.c
  stable/11/contrib/ipfilter/mls_rule.c
  stable/11/contrib/ipfilter/mlso_rule.c
Modified:
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/12/contrib/ipfilter/ml_ipl.c
  stable/12/contrib/ipfilter/mlf_ipl.c
  stable/12/contrib/ipfilter/mlf_rule.c
  stable/12/contrib/ipfilter/mlfk_ipl.c
  stable/12/contrib/ipfilter/mlh_rule.c
  stable/12/contrib/ipfilter/mln_ipl.c
  stable/12/contrib/ipfilter/mln_rule.c
  stable/12/contrib/ipfilter/mlo_ipl.c
  stable/12/contrib/ipfilter/mlo_rule.c
  stable/12/contrib/ipfilter/mls_ipl.c
  stable/12/contrib/ipfilter/mls_rule.c
  stable/12/contrib/ipfilter/mlso_rule.c
Modified:
Directory Properties:
  stable/12/   (props changed)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:51:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7A45415228FA;
 Wed,  6 Mar 2019 02:51:34 +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)
 server-signature RSA-PSS (4096 bits)
 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 1E0406E9B7;
 Wed,  6 Mar 2019 02:51:34 +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 12FEF25493;
 Wed,  6 Mar 2019 02:51:34 +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 x262pXGT014143;
 Wed, 6 Mar 2019 02:51:33 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262pXx6014142;
 Wed, 6 Mar 2019 02:51:33 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060251.x262pXx6014142@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:51:33 +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: r344837 - in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Commit-Revision: 344837
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1E0406E9B7
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:51:34 -0000

Author: cy
Date: Wed Mar  6 02:51:33 2019
New Revision: 344837
URL: https://svnweb.freebsd.org/changeset/base/344837

Log:
  MFC r343705:
  
  new_kmem_alloc(9) is a Solaris/illumos malloc(9). FreeBSD and NetBSD
  never get here, however a test for SOLARIS, as redundant as this test is,
  serves to document that this is the illumos definition. This should help
  those who come after me to follow the code more easily.

Modified:
  stable/12/sys/contrib/ipfilter/netinet/ip_compat.h
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/contrib/ipfilter/netinet/ip_compat.h
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/contrib/ipfilter/netinet/ip_compat.h
==============================================================================
--- stable/12/sys/contrib/ipfilter/netinet/ip_compat.h	Wed Mar  6 02:46:18 2019	(r344836)
+++ stable/12/sys/contrib/ipfilter/netinet/ip_compat.h	Wed Mar  6 02:51:33 2019	(r344837)
@@ -590,7 +590,7 @@ MALLOC_DECLARE(M_IPFILTER);
 #  define	COPYOUT(a,b,c)	(bcopy((caddr_t)(a), (caddr_t)(b), (c)), 0)
 # endif
 
-# ifndef KMALLOC
+# if SOLARIS && !defined(KMALLOC)
 #  define	KMALLOC(a,b)	(a) = (b)new_kmem_alloc(sizeof(*(a)), \
 							KMEM_NOSLEEP)
 #  define	KMALLOCS(a,b,c)	(a) = (b)new_kmem_alloc((c), KMEM_NOSLEEP)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:51:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2469915228F5;
 Wed,  6 Mar 2019 02:51:34 +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)
 server-signature RSA-PSS (4096 bits)
 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 BF1446E9B6;
 Wed,  6 Mar 2019 02:51:33 +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 B466F25492;
 Wed,  6 Mar 2019 02:51:33 +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 x262pXUr014136;
 Wed, 6 Mar 2019 02:51:33 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262pXhb014135;
 Wed, 6 Mar 2019 02:51:33 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060251.x262pXhb014135@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:51:33 +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: r344837 - in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/sys/contrib/ipfilter/netinet
 12/sys/contrib/ipfilter/netinet
X-SVN-Commit-Revision: 344837
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BF1446E9B6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:51:34 -0000

Author: cy
Date: Wed Mar  6 02:51:33 2019
New Revision: 344837
URL: https://svnweb.freebsd.org/changeset/base/344837

Log:
  MFC r343705:
  
  new_kmem_alloc(9) is a Solaris/illumos malloc(9). FreeBSD and NetBSD
  never get here, however a test for SOLARIS, as redundant as this test is,
  serves to document that this is the illumos definition. This should help
  those who come after me to follow the code more easily.

Modified:
  stable/11/sys/contrib/ipfilter/netinet/ip_compat.h
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/contrib/ipfilter/netinet/ip_compat.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/contrib/ipfilter/netinet/ip_compat.h
==============================================================================
--- stable/11/sys/contrib/ipfilter/netinet/ip_compat.h	Wed Mar  6 02:46:18 2019	(r344836)
+++ stable/11/sys/contrib/ipfilter/netinet/ip_compat.h	Wed Mar  6 02:51:33 2019	(r344837)
@@ -589,7 +589,7 @@ MALLOC_DECLARE(M_IPFILTER);
 #  define	COPYOUT(a,b,c)	(bcopy((caddr_t)(a), (caddr_t)(b), (c)), 0)
 # endif
 
-# ifndef KMALLOC
+# if SOLARIS && !defined(KMALLOC)
 #  define	KMALLOC(a,b)	(a) = (b)new_kmem_alloc(sizeof(*(a)), \
 							KMEM_NOSLEEP)
 #  define	KMALLOCS(a,b,c)	(a) = (b)new_kmem_alloc((c), KMEM_NOSLEEP)

From owner-svn-src-all@freebsd.org  Wed Mar  6 02:52:59 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 87F2615229CB;
 Wed,  6 Mar 2019 02:52:59 +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)
 server-signature RSA-PSS (4096 bits)
 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 2696F6ECF8;
 Wed,  6 Mar 2019 02:52:59 +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 F1BC2254E1;
 Wed,  6 Mar 2019 02:52:58 +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 x262qwZ2014253;
 Wed, 6 Mar 2019 02:52:58 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x262qw1N014252;
 Wed, 6 Mar 2019 02:52:58 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903060252.x262qw1N014252@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Wed, 6 Mar 2019 02:52:58 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344838 - head/contrib/ipfilter/ipsend/.OLD
X-SVN-Group: head
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: head/contrib/ipfilter/ipsend/.OLD
X-SVN-Commit-Revision: 344838
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2696F6ECF8
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.946,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 02:52:59 -0000

Author: cy
Date: Wed Mar  6 02:52:58 2019
New Revision: 344838
URL: https://svnweb.freebsd.org/changeset/base/344838

Log:
  Remove an empty directory emptied by r343702.
  
  MFC after:	3 days

Deleted:
  head/contrib/ipfilter/ipsend/.OLD/

From owner-svn-src-all@freebsd.org  Wed Mar  6 05:39:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B50A1529440;
 Wed,  6 Mar 2019 05:39:41 +0000 (UTC)
 (envelope-from bcran@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B5E7974E1F;
 Wed,  6 Mar 2019 05:39:40 +0000 (UTC)
 (envelope-from bcran@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 A90A82707C;
 Wed,  6 Mar 2019 05:39:40 +0000 (UTC)
 (envelope-from bcran@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x265dekl000798;
 Wed, 6 Mar 2019 05:39:40 GMT (envelope-from bcran@FreeBSD.org)
Received: (from bcran@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x265denn000796;
 Wed, 6 Mar 2019 05:39:40 GMT (envelope-from bcran@FreeBSD.org)
Message-Id: <201903060539.x265denn000796@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bcran set sender to
 bcran@FreeBSD.org using -f
From: Rebecca Cran <bcran@FreeBSD.org>
Date: Wed, 6 Mar 2019 05:39:40 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344839 - head/stand/efi/loader
X-SVN-Group: head
X-SVN-Commit-Author: bcran
X-SVN-Commit-Paths: head/stand/efi/loader
X-SVN-Commit-Revision: 344839
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B5E7974E1F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.983,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 05:39:41 -0000

Author: bcran
Date: Wed Mar  6 05:39:40 2019
New Revision: 344839
URL: https://svnweb.freebsd.org/changeset/base/344839

Log:
  Add retry loop around GetMemoryMap call to fix fragmentation bug
  
  The call to BS->AllocatePages can cause the memory map to become framented,
  causing BS->GetMemoryMap to return EFI_BUFFER_TOO_SMALL more than once. For
  example this can happen on the MinnowBoard Turbot, causing the boot to stop
  with an error. Avoid this by calling GetMemoryMap in a loop.
  
  Reviewed by:	imp, tsoome, kevans
  Differential Revision:	https://reviews.freebsd.org/D19341

Modified:
  head/stand/efi/loader/bootinfo.c
  head/stand/efi/loader/copy.c

Modified: head/stand/efi/loader/bootinfo.c
==============================================================================
--- head/stand/efi/loader/bootinfo.c	Wed Mar  6 02:52:58 2019	(r344838)
+++ head/stand/efi/loader/bootinfo.c	Wed Mar  6 05:39:40 2019	(r344839)
@@ -287,12 +287,12 @@ static int
 bi_load_efi_data(struct preloaded_file *kfp)
 {
 	EFI_MEMORY_DESCRIPTOR *mm;
-	EFI_PHYSICAL_ADDRESS addr;
+	EFI_PHYSICAL_ADDRESS addr = 0;
 	EFI_STATUS status;
 	const char *efi_novmap;
 	size_t efisz;
 	UINTN efi_mapkey;
-	UINTN mmsz, pages, retry, sz;
+	UINTN dsz, pages, retry, sz;
 	UINT32 mmver;
 	struct efi_map_header *efihdr;
 	bool do_vmap;
@@ -323,76 +323,94 @@ bi_load_efi_data(struct preloaded_file *kfp)
 	efisz = (sizeof(struct efi_map_header) + 0xf) & ~0xf;
 
 	/*
-	 * Assgin size of EFI_MEMORY_DESCRIPTOR to keep compatible with
+	 * Assign size of EFI_MEMORY_DESCRIPTOR to keep compatible with
 	 * u-boot which doesn't fill this value when buffer for memory
 	 * descriptors is too small (eg. 0 to obtain memory map size)
 	 */
-	mmsz = sizeof(EFI_MEMORY_DESCRIPTOR);
+	dsz = sizeof(EFI_MEMORY_DESCRIPTOR);
 
 	/*
-	 * It is possible that the first call to ExitBootServices may change
-	 * the map key. Fetch a new map key and retry ExitBootServices in that
-	 * case.
+	 * Allocate enough pages to hold the bootinfo block and the
+	 * memory map EFI will return to us. The memory map has an
+	 * unknown size, so we have to determine that first. Note that
+	 * the AllocatePages call can itself modify the memory map, so
+	 * we have to take that into account as well. The changes to
+	 * the memory map are caused by splitting a range of free
+	 * memory into two, so that one is marked as being loader
+	 * data.
 	 */
+
+	sz = 0;
+
+	/*
+	 * Matthew Garrett has observed at least one system changing the
+	 * memory map when calling ExitBootServices, causing it to return an
+	 * error, probably because callbacks are allocating memory.
+	 * So we need to retry calling it at least once.
+	 */
 	for (retry = 2; retry > 0; retry--) {
-		/*
-		 * Allocate enough pages to hold the bootinfo block and the
-		 * memory map EFI will return to us. The memory map has an
-		 * unknown size, so we have to determine that first. Note that
-		 * the AllocatePages call can itself modify the memory map, so
-		 * we have to take that into account as well. The changes to
-		 * the memory map are caused by splitting a range of free
-		 * memory into two (AFAICT), so that one is marked as being
-		 * loader data.
-		 */
-		sz = 0;
-		BS->GetMemoryMap(&sz, NULL, &efi_mapkey, &mmsz, &mmver);
-		sz += mmsz;
-		sz = (sz + 0xf) & ~0xf;
-		pages = EFI_SIZE_TO_PAGES(sz + efisz);
-		status = BS->AllocatePages(AllocateAnyPages, EfiLoaderData,
-		     pages, &addr);
-		if (EFI_ERROR(status)) {
-			printf("%s: AllocatePages error %lu\n", __func__,
-			    EFI_ERROR_CODE(status));
-			return (ENOMEM);
-		}
+		for (;;) {
+			status = BS->GetMemoryMap(&sz, mm, &efi_mapkey, &dsz, &mmver);
+			if (!EFI_ERROR(status))
+				break;
 
-		/*
-		 * Read the memory map and stash it after bootinfo. Align the
-		 * memory map on a 16-byte boundary (the bootinfo block is page
-		 * aligned).
-		 */
-		efihdr = (struct efi_map_header *)(uintptr_t)addr;
-		mm = (void *)((uint8_t *)efihdr + efisz);
-		sz = (EFI_PAGE_SIZE * pages) - efisz;
+			if (status != EFI_BUFFER_TOO_SMALL) {
+				printf("%s: GetMemoryMap error %lu\n", __func__,
+	                           EFI_ERROR_CODE(status));
+				return (EINVAL);
+			}
 
-		status = BS->GetMemoryMap(&sz, mm, &efi_mapkey, &mmsz, &mmver);
-		if (EFI_ERROR(status)) {
-			printf("%s: GetMemoryMap error %lu\n", __func__,
-			    EFI_ERROR_CODE(status));
-			return (EINVAL);
-		}
-		status = BS->ExitBootServices(IH, efi_mapkey);
-		if (EFI_ERROR(status) == 0) {
+			if (addr != 0)
+				BS->FreePages(addr, pages);
+
+			/* Add 10 descriptors to the size to allow for
+			 * fragmentation caused by calling AllocatePages */
+			sz += (10 * dsz);
+			pages = EFI_SIZE_TO_PAGES(sz + efisz);
+			status = BS->AllocatePages(AllocateAnyPages, EfiLoaderData,
+					pages, &addr);
+			if (EFI_ERROR(status)) {
+				printf("%s: AllocatePages error %lu\n", __func__,
+				    EFI_ERROR_CODE(status));
+				return (ENOMEM);
+			}
+
 			/*
-			 * This may be disabled by setting efi_disable_vmap in
-			 * loader.conf(5). By default we will setup the virtual
-			 * map entries.
+			 * Read the memory map and stash it after bootinfo. Align the
+			 * memory map on a 16-byte boundary (the bootinfo block is page
+			 * aligned).
 			 */
-			if (do_vmap)
-				efi_do_vmap(mm, sz, mmsz, mmver);
-			efihdr->memory_size = sz;
-			efihdr->descriptor_size = mmsz;
-			efihdr->descriptor_version = mmver;
-			file_addmetadata(kfp, MODINFOMD_EFI_MAP, efisz + sz,
-			    efihdr);
-			return (0);
+			efihdr = (struct efi_map_header *)(uintptr_t)addr;
+			mm = (void *)((uint8_t *)efihdr + efisz);
+			sz = (EFI_PAGE_SIZE * pages) - efisz;
 		}
+
+		status = BS->ExitBootServices(IH, efi_mapkey);
+		if (!EFI_ERROR(status))
+			break;
+	}
+
+	if (retry == 0) {
 		BS->FreePages(addr, pages);
+		printf("ExitBootServices error %lu\n", EFI_ERROR_CODE(status));
+		return (EINVAL);
 	}
-	printf("ExitBootServices error %lu\n", EFI_ERROR_CODE(status));
-	return (EINVAL);
+
+	/*
+	 * This may be disabled by setting efi_disable_vmap in
+	 * loader.conf(5). By default we will setup the virtual
+	 * map entries.
+	 */
+
+	if (do_vmap)
+		efi_do_vmap(mm, sz, dsz, mmver);
+	efihdr->memory_size = sz;
+	efihdr->descriptor_size = dsz;
+	efihdr->descriptor_version = mmver;
+	file_addmetadata(kfp, MODINFOMD_EFI_MAP, efisz + sz,
+	    efihdr);
+
+	return (0);
 }
 
 /*

Modified: head/stand/efi/loader/copy.c
==============================================================================
--- head/stand/efi/loader/copy.c	Wed Mar  6 02:52:58 2019	(r344838)
+++ head/stand/efi/loader/copy.c	Wed Mar  6 05:39:40 2019	(r344839)
@@ -95,7 +95,7 @@ static void
 efi_verify_staging_size(unsigned long *nr_pages)
 {
 	UINTN sz;
-	EFI_MEMORY_DESCRIPTOR *map, *p;
+	EFI_MEMORY_DESCRIPTOR *map = NULL, *p;
 	EFI_PHYSICAL_ADDRESS start, end;
 	UINTN key, dsz;
 	UINT32 dver;
@@ -104,17 +104,28 @@ efi_verify_staging_size(unsigned long *nr_pages)
 	unsigned long available_pages = 0;
 
 	sz = 0;
-	status = BS->GetMemoryMap(&sz, 0, &key, &dsz, &dver);
-	if (status != EFI_BUFFER_TOO_SMALL) {
-		printf("Can't determine memory map size\n");
-		return;
-	}
 
-	map = malloc(sz);
-	status = BS->GetMemoryMap(&sz, map, &key, &dsz, &dver);
-	if (EFI_ERROR(status)) {
-		printf("Can't read memory map\n");
-		goto out;
+	for (;;) {
+		status = BS->GetMemoryMap(&sz, map, &key, &dsz, &dver);
+		if (!EFI_ERROR(status))
+			break;
+
+		if (status != EFI_BUFFER_TOO_SMALL) {
+			printf("Can't read memory map: %lu\n",
+			    EFI_ERROR_CODE(status));
+			goto out;
+		}
+
+		free(map);
+
+		/* Allocate 10 descriptors more than the size reported,
+		 * to allow for any fragmentation caused by calling
+		 * malloc */
+		map = malloc(sz + (10 * dsz));
+		if (map == NULL) {
+			printf("Unable to allocate memory\n");
+			goto out;
+		}
 	}
 
 	ndesc = sz / dsz;

From owner-svn-src-all@freebsd.org  Wed Mar  6 06:39:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83C80152BCE8;
 Wed,  6 Mar 2019 06:39:44 +0000 (UTC) (envelope-from mw@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3041976BEB;
 Wed,  6 Mar 2019 06:39:44 +0000 (UTC) (envelope-from mw@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 23AFC27ABF;
 Wed,  6 Mar 2019 06:39:44 +0000 (UTC) (envelope-from mw@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x266dil7031857;
 Wed, 6 Mar 2019 06:39:44 GMT (envelope-from mw@FreeBSD.org)
Received: (from mw@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x266dgXo031850;
 Wed, 6 Mar 2019 06:39:42 GMT (envelope-from mw@FreeBSD.org)
Message-Id: <201903060639.x266dgXo031850@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mw set sender to mw@FreeBSD.org
 using -f
From: Marcin Wojtas <mw@FreeBSD.org>
Date: Wed, 6 Mar 2019 06:39:42 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344840 - in head: lib/libsecureboot
 lib/libsecureboot/efi lib/libsecureboot/efi/include
 lib/libsecureboot/efi/include/Guid lib/libsecureboot/efi/include/Protocol
 lib/libsecureboot/h sh...
X-SVN-Group: head
X-SVN-Commit-Author: mw
X-SVN-Commit-Paths: in head: lib/libsecureboot lib/libsecureboot/efi
 lib/libsecureboot/efi/include lib/libsecureboot/efi/include/Guid
 lib/libsecureboot/efi/include/Protocol lib/libsecureboot/h share/mk
 stand/efi/loader t...
X-SVN-Commit-Revision: 344840
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3041976BEB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 06:39:44 -0000

Author: mw
Date: Wed Mar  6 06:39:42 2019
New Revision: 344840
URL: https://svnweb.freebsd.org/changeset/base/344840

Log:
  Extend libsecureboot(old libve) to obtain trusted certificates from UEFI and implement revocation
  
  UEFI related headers were copied from edk2.
  
  A new build option "MK_LOADER_EFI_SECUREBOOT" was added to allow
  loading of trusted anchors from UEFI.
  
  Certificate revocation support is also introduced.
  The forbidden certificates are loaded from dbx variable.
  Verification fails in two cases:
  
  There is a direct match between cert in dbx and the one in the chain.
  The CA used to sign the chain is found in dbx.
  One can also insert a hash of TBS section of a certificate into dbx.
  In this case verifications fails only if a direct match with a
  certificate in chain is found.
  
  Submitted by: Kornel Duleba <mindal@semihalf.com>
  Reviewed by: sjg
  Obtained from: Semihalf
  Sponsored by: Stormshield
  Differential Revision:	https://reviews.freebsd.org/D19093

Added:
  head/lib/libsecureboot/efi/
  head/lib/libsecureboot/efi/efi_init.c   (contents, props changed)
  head/lib/libsecureboot/efi/efi_variables.c   (contents, props changed)
  head/lib/libsecureboot/efi/include/
  head/lib/libsecureboot/efi/include/Guid/
  head/lib/libsecureboot/efi/include/Guid/GlobalVariable.h   (contents, props changed)
  head/lib/libsecureboot/efi/include/Guid/ImageAuthentication.h   (contents, props changed)
  head/lib/libsecureboot/efi/include/Protocol/
  head/lib/libsecureboot/efi/include/Protocol/Hash.h   (contents, props changed)
  head/tools/build/options/WITH_LOADER_EFI_SECUREBOOT   (contents, props changed)
Modified:
  head/lib/libsecureboot/Makefile.inc
  head/lib/libsecureboot/Makefile.libsa.inc
  head/lib/libsecureboot/h/verify_file.h
  head/lib/libsecureboot/libsecureboot-priv.h
  head/lib/libsecureboot/local.trust.mk
  head/lib/libsecureboot/verify_file.c
  head/lib/libsecureboot/vets.c
  head/share/mk/src.opts.mk
  head/stand/efi/loader/Makefile
  head/stand/efi/loader/main.c

Modified: head/lib/libsecureboot/Makefile.inc
==============================================================================
--- head/lib/libsecureboot/Makefile.inc	Wed Mar  6 05:39:40 2019	(r344839)
+++ head/lib/libsecureboot/Makefile.inc	Wed Mar  6 06:39:42 2019	(r344840)
@@ -31,6 +31,17 @@ BRSSL_SRCS+= \
 	${BEARSSL}/tools/xmem.c \
 	${BEARSSL}/tools/vector.c
 
+BRSSL_DEPS= \
+	brf.c \
+	vets.c \
+	veta.c
+
+.if ${MK_LOADER_EFI_SECUREBOOT} != "no"
+BRSSL_DEPS+= \
+	efi_init.c \
+	efi_variables.c
+.endif
+
 # we do not need/want nested objdirs
 OBJS_SRCS_FILTER = T R
 
@@ -134,7 +145,7 @@ vse.h:
 	echo 'NULL };' ) > ${.TARGET}
 
 
-.for s in ${BRSSL_SRCS} brf.c vets.c veta.c
+.for s in ${BRSSL_SRCS} ${BRSSL_DEPS}
 .ifdef BRSSL_SED
 $s: brssl.h
 .endif

Modified: head/lib/libsecureboot/Makefile.libsa.inc
==============================================================================
--- head/lib/libsecureboot/Makefile.libsa.inc	Wed Mar  6 05:39:40 2019	(r344839)
+++ head/lib/libsecureboot/Makefile.libsa.inc	Wed Mar  6 06:39:42 2019	(r344840)
@@ -16,6 +16,19 @@ SRCS+= \
 	vepcr.c \
 	verify_file.c \
 
+# Build library with support for the UEFI based authentication
+.if ${MK_LOADER_EFI_SECUREBOOT} == "yes"
+SRCS+= \
+	efi/efi_variables.c \
+	efi/efi_init.c
+
+# Add includes required by efi part
+CFLAGS+= \
+	-I${SRCTOP}/stand/efi/include \
+	-I${SRCTOP}/lib/libsecureboot/efi/include \
+	-I${SRCTOP}/stand/efi/include/${MACHINE}
+.endif
+
 # this is the list of paths (relative to a file
 # that we need to verify) used to find a signed manifest.
 # the signature extensions in VE_SIGNATURE_EXT_LIST

Added: head/lib/libsecureboot/efi/efi_init.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libsecureboot/efi/efi_init.c	Wed Mar  6 06:39:42 2019	(r344840)
@@ -0,0 +1,74 @@
+/*-
+ * Copyright (c) 2019 Stormshield.
+ * Copyright (c) 2019 Semihalf.
+ *
+ * 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 ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#define NEED_BRSSL_H
+#include "../libsecureboot-priv.h"
+#include <brssl.h>
+
+void
+ve_efi_init(void)
+{
+	br_x509_certificate *xcs;
+	hash_data *digests;
+	size_t num;
+	int result;
+	static int once = 0;
+
+	if (once > 0)
+		return;
+
+	once = 1;
+
+	result = efi_secure_boot_enabled();
+	if (result <= 0)
+		return;
+
+	xcs = efi_get_trusted_certs(&num);
+	if (num > 0 && xcs != NULL) {
+		num = ve_trust_anchors_add(xcs, num);
+		free_certificates(xcs, num);
+	}
+	xcs = efi_get_forbidden_certs(&num);
+	if (num > 0 && xcs != NULL) {
+		num = ve_forbidden_anchors_add(xcs, num);
+		free_certificates(xcs, num);
+	}
+	digests = efi_get_forbidden_digests(&num);
+	if (num > 0 && digests != NULL) {
+		ve_forbidden_digest_add(digests, num);
+		/*
+		 * Don't free the buffors for digests,
+		 * since they are shallow copied.
+		 */
+		xfree(digests);
+	}
+
+	return;
+}

Added: head/lib/libsecureboot/efi/efi_variables.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libsecureboot/efi/efi_variables.c	Wed Mar  6 06:39:42 2019	(r344840)
@@ -0,0 +1,278 @@
+/*-
+ * Copyright (c) 2019 Stormshield.
+ * Copyright (c) 2019 Semihalf.
+ *
+ * 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 ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <stand.h>
+#include <string.h>
+
+#include <efi.h>
+#include <efilib.h>
+#include <Guid/ImageAuthentication.h>
+
+#define NEED_BRSSL_H
+#include "../libsecureboot-priv.h"
+#include <brssl.h>
+
+static EFI_GUID ImageSecurityDatabaseGUID = EFI_IMAGE_SECURITY_DATABASE_GUID;
+
+static EFI_GUID efiCertX509GUID = EFI_CERT_X509_GUID;
+static EFI_GUID efiCertX509Sha256GUID = EFI_CERT_X509_SHA256_GUID;
+static EFI_GUID efiCertX509Sha384GUID = EFI_CERT_X509_SHA384_GUID;
+static EFI_GUID efiCertX509Sha5122UID = EFI_CERT_X509_SHA512_GUID;
+
+/*
+ * Check if Secure Boot is enabled in firmware.
+ * We evaluate two variables - Secure Boot and Setup Mode.
+ * Secure Boot is enforced only if the first one equals 1 and the other 0.
+ */
+int
+efi_secure_boot_enabled(void)
+{
+	UINT8 SecureBoot;
+	UINT8 SetupMode;
+	size_t length;
+	EFI_STATUS status;
+
+	length = sizeof(SecureBoot);
+	status = efi_global_getenv("SecureBoot", &SecureBoot, &length);
+	if (status != EFI_SUCCESS) {
+		if (status == EFI_NOT_FOUND)
+			return (0);
+
+		printf("Failed to read \"SecureBoot\" variable\n");
+		return (-efi_status_to_errno(status));
+	}
+
+	length = sizeof(SetupMode);
+	status = efi_global_getenv("SetupMode", &SetupMode, &length);
+	if (status != EFI_SUCCESS)
+		SetupMode = 0;
+
+	printf("   SecureBoot: %d, SetupMode: %d\n", SecureBoot, SetupMode);
+
+	return (SecureBoot == 1 && SetupMode == 0);
+}
+
+/*
+ * Iterate through UEFI variable and extract X509 certificates from it.
+ * The EFI_* structures and related guids are defined in UEFI standard.
+ */
+static br_x509_certificate*
+efi_get_certs(const char *name, size_t *count)
+{
+	br_x509_certificate *certs;
+	UINT8 *database;
+	EFI_SIGNATURE_LIST *list;
+	EFI_SIGNATURE_DATA *entry;
+	size_t db_size;
+	ssize_t cert_count;
+	EFI_STATUS status;
+
+	database = NULL;
+	certs = NULL;
+	db_size = 0;
+	cert_count = 0;
+
+	/*
+	 * Read variable length and allocate memory for it
+	 */
+	status = efi_getenv(&ImageSecurityDatabaseGUID, name, database, &db_size);
+	if (status != EFI_BUFFER_TOO_SMALL)
+		return (NULL);
+
+	database = malloc(db_size);
+	if (database == NULL)
+		return (NULL);
+
+	status = efi_getenv(&ImageSecurityDatabaseGUID, name, database, &db_size);
+	if (status != EFI_SUCCESS)
+		goto fail;
+
+	for (list = (EFI_SIGNATURE_LIST*) database;
+	    db_size >= list->SignatureListSize && db_size > 0;
+	    db_size -= list->SignatureListSize,
+	    list = (EFI_SIGNATURE_LIST*)
+	    ((UINT8*)list + list->SignatureListSize)) {
+
+		/* We are only interested in entries containing X509 certs. */
+		if (memcmp(&efiCertX509GUID,
+		    &list->SignatureType,
+		    sizeof(EFI_GUID)) != 0) {
+			continue;
+		}
+
+		entry = (EFI_SIGNATURE_DATA*)
+		    ((UINT8*)list +
+		    sizeof(EFI_SIGNATURE_LIST) +
+		    list->SignatureHeaderSize);
+
+		certs = realloc(certs,
+		    (cert_count + 1) * sizeof(br_x509_certificate));
+		if (certs == NULL) {
+			cert_count = 0;
+			goto fail;
+		}
+
+		certs[cert_count].data_len = list->SignatureSize - sizeof(EFI_GUID);
+		certs[cert_count].data = malloc(certs[cert_count].data_len);
+		if (certs[cert_count].data == NULL)
+			goto fail;
+
+		memcpy(certs[cert_count].data,
+		    entry->SignatureData,
+		    certs[cert_count].data_len);
+
+		cert_count++;
+	}
+
+	*count = cert_count;
+
+	xfree(database);
+	return (certs);
+
+fail:
+	free_certificates(certs, cert_count);
+	xfree(database);
+	return (NULL);
+
+}
+
+/*
+ * Extract digests from UEFI "dbx" variable.
+ * UEFI standard specifies three types of digest - sha256, sha386, sha512.
+ */
+hash_data*
+efi_get_forbidden_digests(size_t *count)
+{
+	UINT8 *database;
+	hash_data *digests;
+	EFI_SIGNATURE_LIST *list;
+	EFI_SIGNATURE_DATA *entry;
+	size_t db_size, header_size, hash_size;
+	int digest_count, entry_count;
+	EFI_STATUS status;
+
+	db_size = 0;
+	digest_count = 0;
+	database = NULL;
+	digests = NULL;
+
+	status = efi_getenv(&ImageSecurityDatabaseGUID, "dbx", database, &db_size);
+	if (status != EFI_BUFFER_TOO_SMALL)
+		return (NULL);
+
+	database = malloc(db_size);
+	if (database == NULL)
+		return (NULL);
+
+	status = efi_getenv(&ImageSecurityDatabaseGUID, "dbx", database, &db_size);
+	if (status != EFI_SUCCESS)
+		goto fail;
+
+
+	for (list = (EFI_SIGNATURE_LIST*) database;
+	    db_size >= list->SignatureListSize && db_size > 0;
+	    db_size -= list->SignatureListSize,
+	    list = (EFI_SIGNATURE_LIST*)
+	    ((UINT8*)list + list->SignatureListSize)) {
+
+		/* We are only interested in entries that contain digests. */
+		if (memcmp(&efiCertX509Sha256GUID, &list->SignatureType,
+		    sizeof(EFI_GUID)) == 0) {
+			hash_size = br_sha256_SIZE;
+		} else if (memcmp(&efiCertX509Sha384GUID, &list->SignatureType,
+		    sizeof(EFI_GUID)) == 0) {
+			hash_size = br_sha384_SIZE;
+		} else if (memcmp(&efiCertX509Sha5122UID, &list->SignatureType,
+		    sizeof(EFI_GUID)) == 0) {
+			hash_size = br_sha512_SIZE;
+		} else {
+			continue;
+		}
+
+		/*
+		 * A single entry can have multiple digests
+		 * of the same type for some reason.
+		 */
+		header_size = sizeof(EFI_SIGNATURE_LIST) + list->SignatureHeaderSize;
+
+		/* Calculate the number of entries basing on structure size */
+		entry_count = list->SignatureListSize - header_size;
+		entry_count /= list->SignatureSize;
+		entry = (EFI_SIGNATURE_DATA*)((UINT8*)list + header_size);
+		while (entry_count-- > 0) {
+			digests = realloc(digests,
+			    (digest_count + 1) * sizeof(hash_data));
+			if (digests == NULL) {
+				digest_count = 0;
+				goto fail;
+			}
+
+			digests[digest_count].data = malloc(hash_size);
+			if (digests[digest_count].data == NULL)
+				goto fail;
+
+			memcpy(digests[digest_count].data,
+			    entry->SignatureData,
+			    hash_size);
+			digests[digest_count].hash_size = hash_size;
+
+			entry = (EFI_SIGNATURE_DATA*)(entry + list->SignatureSize);
+			digest_count++;
+		}
+	}
+	xfree(database);
+	if (count != NULL)
+		*count = digest_count;
+
+	return (digests);
+
+fail:
+	while (digest_count--)
+		xfree(digests[digest_count].data);
+
+	xfree(database);
+	xfree(digests);
+	return (NULL);
+}
+
+/* Copy x509 certificates from db */
+br_x509_certificate*
+efi_get_trusted_certs(size_t *count)
+{
+	return (efi_get_certs("db", count));
+}
+
+/* Copy forbidden certificates from dbx */
+br_x509_certificate*
+efi_get_forbidden_certs(size_t *count)
+{
+	return (efi_get_certs("dbx", count));
+}

Added: head/lib/libsecureboot/efi/include/Guid/GlobalVariable.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libsecureboot/efi/include/Guid/GlobalVariable.h	Wed Mar  6 06:39:42 2019	(r344840)
@@ -0,0 +1,194 @@
+/** @file
+  GUID for EFI (NVRAM) Variables.
+  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+  This program and the accompanying materials
+  are licensed and made available under the terms and conditions of the BSD License
+  which accompanies this distribution.  The full text of the license may be found at
+  http://opensource.org/licenses/bsd-license.php
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+  @par Revision Reference:
+  GUID defined in UEFI 2.1
+**/
+
+#ifndef __GLOBAL_VARIABLE_GUID_H__
+#define __GLOBAL_VARIABLE_GUID_H__
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#ifndef EFI_GLOBAL_VARIABLE
+#define EFI_GLOBAL_VARIABLE \
+  { \
+    0x8BE4DF61, 0x93CA, 0x11d2, {0xAA, 0x0D, 0x00, 0xE0, 0x98, 0x03, 0x2B, 0x8C } \
+  }
+#endif	/* EFI_GLOBAL_VARIABLE */
+
+extern EFI_GUID gEfiGlobalVariableGuid;
+
+//
+// Follow UEFI 2.4 spec:
+// To prevent name collisions with possible future globally defined variables,
+// other internal firmware data variables that are not defined here must be
+// saved with a unique VendorGuid other than EFI_GLOBAL_VARIABLE or
+// any other GUID defined by the UEFI Specification. Implementations must
+// only permit the creation of variables with a UEFI Specification-defined
+// VendorGuid when these variables are documented in the UEFI Specification.
+//
+// Note: except the globally defined variables defined below, the spec also defines
+// L"Boot####"      - A boot load option.
+// L"Driver####"    - A driver load option.
+// L"SysPrep####"   - A System Prep application load option.
+// L"Key####"       - Describes hot key relationship with a Boot#### load option.
+// The attribute for them is NV+BS+RT, #### is a printed hex value, and no 0x or h
+// is included in the hex value. They can not be expressed as a #define like other globally
+// defined variables, it is because we can not list the Boot0000, Boot0001, etc one by one.
+//
+
+///
+/// The language codes that the firmware supports. This value is deprecated.
+/// Its attribute is BS+RT.
+///
+#define EFI_LANG_CODES_VARIABLE_NAME                L"LangCodes"
+///
+/// The language code that the system is configured for. This value is deprecated.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_LANG_VARIABLE_NAME                      L"Lang"
+///
+/// The firmware's boot managers timeout, in seconds, before initiating the default boot selection.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_TIME_OUT_VARIABLE_NAME                  L"Timeout"
+///
+/// The language codes that the firmware supports.
+/// Its attribute is BS+RT.
+///
+#define EFI_PLATFORM_LANG_CODES_VARIABLE_NAME       L"PlatformLangCodes"
+///
+/// The language code that the system is configured for.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_PLATFORM_LANG_VARIABLE_NAME             L"PlatformLang"
+///
+/// The device path of the default input/output/error output console.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_CON_IN_VARIABLE_NAME                    L"ConIn"
+#define EFI_CON_OUT_VARIABLE_NAME                   L"ConOut"
+#define EFI_ERR_OUT_VARIABLE_NAME                   L"ErrOut"
+///
+/// The device path of all possible input/output/error output devices.
+/// Its attribute is BS+RT.
+///
+#define EFI_CON_IN_DEV_VARIABLE_NAME                L"ConInDev"
+#define EFI_CON_OUT_DEV_VARIABLE_NAME               L"ConOutDev"
+#define EFI_ERR_OUT_DEV_VARIABLE_NAME               L"ErrOutDev"
+///
+/// The ordered boot option load list.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_BOOT_ORDER_VARIABLE_NAME                L"BootOrder"
+///
+/// The boot option for the next boot only.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_BOOT_NEXT_VARIABLE_NAME                 L"BootNext"
+///
+/// The boot option that was selected for the current boot.
+/// Its attribute is BS+RT.
+///
+#define EFI_BOOT_CURRENT_VARIABLE_NAME              L"BootCurrent"
+///
+/// The types of boot options supported by the boot manager. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_BOOT_OPTION_SUPPORT_VARIABLE_NAME       L"BootOptionSupport"
+///
+/// The ordered driver load option list.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_DRIVER_ORDER_VARIABLE_NAME              L"DriverOrder"
+///
+/// The ordered System Prep Application load option list.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_SYS_PREP_ORDER_VARIABLE_NAME            L"SysPrepOrder"
+///
+/// Identifies the level of hardware error record persistence
+/// support implemented by the platform. This variable is
+/// only modified by firmware and is read-only to the OS.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_HW_ERR_REC_SUPPORT_VARIABLE_NAME        L"HwErrRecSupport"
+///
+/// Whether the system is operating in setup mode (1) or not (0).
+/// All other values are reserved. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_SETUP_MODE_NAME                         L"SetupMode"
+///
+/// The Key Exchange Key Signature Database.
+/// Its attribute is NV+BS+RT+AT.
+///
+#define EFI_KEY_EXCHANGE_KEY_NAME                   L"KEK"
+///
+/// The public Platform Key.
+/// Its attribute is NV+BS+RT+AT.
+///
+#define EFI_PLATFORM_KEY_NAME                       L"PK"
+///
+/// Array of GUIDs representing the type of signatures supported
+/// by the platform firmware. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_SIGNATURE_SUPPORT_NAME                  L"SignatureSupport"
+///
+/// Whether the platform firmware is operating in Secure boot mode (1) or not (0).
+/// All other values are reserved. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_SECURE_BOOT_MODE_NAME                   L"SecureBoot"
+///
+/// The OEM's default Key Exchange Key Signature Database. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_KEK_DEFAULT_VARIABLE_NAME               L"KEKDefault"
+///
+/// The OEM's default public Platform Key. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_PK_DEFAULT_VARIABLE_NAME                L"PKDefault"
+///
+/// The OEM's default secure boot signature store. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_DB_DEFAULT_VARIABLE_NAME                L"dbDefault"
+///
+/// The OEM's default secure boot blacklist signature store. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_DBX_DEFAULT_VARIABLE_NAME               L"dbxDefault"
+///
+/// The OEM's default secure boot timestamp signature store. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_DBT_DEFAULT_VARIABLE_NAME               L"dbtDefault"
+///
+/// Allows the firmware to indicate supported features and actions to the OS.
+/// Its attribute is BS+RT.
+///
+#define EFI_OS_INDICATIONS_SUPPORT_VARIABLE_NAME    L"OsIndicationsSupported"
+///
+/// Allows the OS to request the firmware to enable certain features and to take certain actions.
+/// Its attribute is NV+BS+RT.
+///
+#define EFI_OS_INDICATIONS_VARIABLE_NAME            L"OsIndications"
+///
+/// Whether the system is configured to use only vendor provided
+/// keys or not. Should be treated as read-only.
+/// Its attribute is BS+RT.
+///
+#define EFI_VENDOR_KEYS_VARIABLE_NAME               L"VendorKeys"
+
+#endif

Added: head/lib/libsecureboot/efi/include/Guid/ImageAuthentication.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libsecureboot/efi/include/Guid/ImageAuthentication.h	Wed Mar  6 06:39:42 2019	(r344840)
@@ -0,0 +1,352 @@
+/** @file
+  Image signature database are defined for the signed image validation.
+  Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
+  This program and the accompanying materials
+  are licensed and made available under the terms and conditions of the BSD License
+  which accompanies this distribution.  The full text of the license may be found at
+  http://opensource.org/licenses/bsd-license.php
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+  @par Revision Reference:
+  GUIDs defined in UEFI 2.5 spec.
+**/
+
+#ifndef __IMAGE_AUTHTICATION_H__
+#define __IMAGE_AUTHTICATION_H__
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <Guid/GlobalVariable.h>
+#include <Protocol/Hash.h>
+
+#define EFI_IMAGE_SECURITY_DATABASE_GUID \
+  { \
+    0xd719b2cb, 0x3d3a, 0x4596, { 0xa3, 0xbc, 0xda, 0xd0, 0xe, 0x67, 0x65, 0x6f } \
+  }
+
+///
+/// Varialbe name with guid EFI_IMAGE_SECURITY_DATABASE_GUID
+/// for the authorized signature database.
+///
+#define EFI_IMAGE_SECURITY_DATABASE       L"db"
+///
+/// Varialbe name with guid EFI_IMAGE_SECURITY_DATABASE_GUID
+/// for the forbidden signature database.
+///
+#define EFI_IMAGE_SECURITY_DATABASE1      L"dbx"
+///
+/// Variable name with guid EFI_IMAGE_SECURITY_DATABASE_GUID
+/// for the timestamp signature database.
+///
+#define EFI_IMAGE_SECURITY_DATABASE2      L"dbt"
+
+#define SECURE_BOOT_MODE_ENABLE           1
+#define SECURE_BOOT_MODE_DISABLE          0
+
+#define SETUP_MODE                        1
+#define USER_MODE                         0
+
+//***********************************************************************
+// Signature Database
+//***********************************************************************
+///
+/// The format of a signature database.
+///
+#pragma pack(1)
+
+typedef struct {
+  ///
+  /// An identifier which identifies the agent which added the signature to the list.
+  ///
+  EFI_GUID          SignatureOwner;
+  ///
+  /// The format of the signature is defined by the SignatureType.
+  ///
+  UINT8             SignatureData[1];
+} EFI_SIGNATURE_DATA;
+
+typedef struct {
+  ///
+  /// Type of the signature. GUID signature types are defined in below.
+  ///
+  EFI_GUID            SignatureType;
+  ///
+  /// Total size of the signature list, including this header.
+  ///
+  UINT32              SignatureListSize;
+  ///
+  /// Size of the signature header which precedes the array of signatures.
+  ///
+  UINT32              SignatureHeaderSize;
+  ///
+  /// Size of each signature.
+  ///
+  UINT32              SignatureSize;
+  ///
+  /// Header before the array of signatures. The format of this header is specified
+  /// by the SignatureType.
+  /// UINT8           SignatureHeader[SignatureHeaderSize];
+  ///
+  /// An array of signatures. Each signature is SignatureSize bytes in length.
+  /// EFI_SIGNATURE_DATA Signatures[][SignatureSize];
+  ///
+} EFI_SIGNATURE_LIST;
+
+typedef struct {
+  ///
+  /// The SHA256 hash of an X.509 certificate's To-Be-Signed contents.
+  ///
+  EFI_SHA256_HASH     ToBeSignedHash;
+  ///
+  /// The time that the certificate shall be considered to be revoked.
+  ///
+  EFI_TIME            TimeOfRevocation;
+} EFI_CERT_X509_SHA256;
+
+typedef struct {
+  ///
+  /// The SHA384 hash of an X.509 certificate's To-Be-Signed contents.
+  ///
+  EFI_SHA384_HASH     ToBeSignedHash;
+  ///
+  /// The time that the certificate shall be considered to be revoked.
+  ///
+  EFI_TIME            TimeOfRevocation;
+} EFI_CERT_X509_SHA384;
+
+typedef struct {
+  ///
+  /// The SHA512 hash of an X.509 certificate's To-Be-Signed contents.
+  ///
+  EFI_SHA512_HASH     ToBeSignedHash;
+  ///
+  /// The time that the certificate shall be considered to be revoked.
+  ///
+  EFI_TIME            TimeOfRevocation;
+} EFI_CERT_X509_SHA512;
+
+#pragma pack()
+
+///
+/// This identifies a signature containing a SHA-256 hash. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of SignatureOwner component) +
+/// 32 bytes.
+///
+#define EFI_CERT_SHA256_GUID \
+  { \
+    0xc1c41626, 0x504c, 0x4092, {0xac, 0xa9, 0x41, 0xf9, 0x36, 0x93, 0x43, 0x28} \
+  }
+
+///
+/// This identifies a signature containing an RSA-2048 key. The key (only the modulus
+/// since the public key exponent is known to be 0x10001) shall be stored in big-endian
+/// order.
+/// The SignatureHeader size shall always be 0. The SignatureSize shall always be 16 (size
+/// of SignatureOwner component) + 256 bytes.
+///
+#define EFI_CERT_RSA2048_GUID \
+  { \
+    0x3c5766e8, 0x269c, 0x4e34, {0xaa, 0x14, 0xed, 0x77, 0x6e, 0x85, 0xb3, 0xb6} \
+  }
+
+///
+/// This identifies a signature containing a RSA-2048 signature of a SHA-256 hash.  The
+/// SignatureHeader size shall always be 0. The SignatureSize shall always be 16 (size of
+/// SignatureOwner component) + 256 bytes.
+///
+#define EFI_CERT_RSA2048_SHA256_GUID \
+  { \
+    0xe2b36190, 0x879b, 0x4a3d, {0xad, 0x8d, 0xf2, 0xe7, 0xbb, 0xa3, 0x27, 0x84} \
+  }
+
+///
+/// This identifies a signature containing a SHA-1 hash.  The SignatureSize shall always
+/// be 16 (size of SignatureOwner component) + 20 bytes.
+///
+#define EFI_CERT_SHA1_GUID \
+  { \
+    0x826ca512, 0xcf10, 0x4ac9, {0xb1, 0x87, 0xbe, 0x1, 0x49, 0x66, 0x31, 0xbd} \
+  }
+
+///
+/// TThis identifies a signature containing a RSA-2048 signature of a SHA-1 hash.  The
+/// SignatureHeader size shall always be 0. The SignatureSize shall always be 16 (size of
+/// SignatureOwner component) + 256 bytes.
+///
+#define EFI_CERT_RSA2048_SHA1_GUID \
+  { \
+    0x67f8444f, 0x8743, 0x48f1, {0xa3, 0x28, 0x1e, 0xaa, 0xb8, 0x73, 0x60, 0x80} \
+  }
+
+///
+/// This identifies a signature based on an X.509 certificate. If the signature is an X.509
+/// certificate then verification of the signature of an image should validate the public
+/// key certificate in the image using certificate path verification, up to this X.509
+/// certificate as a trusted root.  The SignatureHeader size shall always be 0. The
+/// SignatureSize may vary but shall always be 16 (size of the SignatureOwner component) +
+/// the size of the certificate itself.
+/// Note: This means that each certificate will normally be in a separate EFI_SIGNATURE_LIST.
+///
+#define EFI_CERT_X509_GUID \
+  { \
+    0xa5c059a1, 0x94e4, 0x4aa7, {0x87, 0xb5, 0xab, 0x15, 0x5c, 0x2b, 0xf0, 0x72} \
+  }
+
+///
+/// This identifies a signature containing a SHA-224 hash. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of SignatureOwner component) +
+/// 28 bytes.
+///
+#define EFI_CERT_SHA224_GUID \
+  { \
+    0xb6e5233, 0xa65c, 0x44c9, {0x94, 0x7, 0xd9, 0xab, 0x83, 0xbf, 0xc8, 0xbd} \
+  }
+
+///
+/// This identifies a signature containing a SHA-384 hash. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of SignatureOwner component) +
+/// 48 bytes.
+///
+#define EFI_CERT_SHA384_GUID \
+  { \
+    0xff3e5307, 0x9fd0, 0x48c9, {0x85, 0xf1, 0x8a, 0xd5, 0x6c, 0x70, 0x1e, 0x1} \
+  }
+
+///
+/// This identifies a signature containing a SHA-512 hash. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of SignatureOwner component) +
+/// 64 bytes.
+///
+#define EFI_CERT_SHA512_GUID \
+  { \
+    0x93e0fae, 0xa6c4, 0x4f50, {0x9f, 0x1b, 0xd4, 0x1e, 0x2b, 0x89, 0xc1, 0x9a} \
+  }
+
+///
+/// This identifies a signature containing the SHA256 hash of an X.509 certificate's
+/// To-Be-Signed contents, and a time of revocation. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of the SignatureOwner component)
+/// + 48 bytes for an EFI_CERT_X509_SHA256 structure. If the TimeOfRevocation is non-zero,
+/// the certificate should be considered to be revoked from that time and onwards, and
+/// otherwise the certificate shall be considered to always be revoked.
+///
+#define EFI_CERT_X509_SHA256_GUID \
+  { \
+    0x3bd2a492, 0x96c0, 0x4079, {0xb4, 0x20, 0xfc, 0xf9, 0x8e, 0xf1, 0x03, 0xed } \
+  }
+
+///
+/// This identifies a signature containing the SHA384 hash of an X.509 certificate's
+/// To-Be-Signed contents, and a time of revocation. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of the SignatureOwner component)
+/// + 64 bytes for an EFI_CERT_X509_SHA384 structure. If the TimeOfRevocation is non-zero,
+/// the certificate should be considered to be revoked from that time and onwards, and
+/// otherwise the certificate shall be considered to always be revoked.
+///
+#define EFI_CERT_X509_SHA384_GUID \
+  { \
+    0x7076876e, 0x80c2, 0x4ee6, {0xaa, 0xd2, 0x28, 0xb3, 0x49, 0xa6, 0x86, 0x5b } \
+  }
+
+///
+/// This identifies a signature containing the SHA512 hash of an X.509 certificate's
+/// To-Be-Signed contents, and a time of revocation. The SignatureHeader size shall
+/// always be 0. The SignatureSize shall always be 16 (size of the SignatureOwner component)
+/// + 80 bytes for an EFI_CERT_X509_SHA512 structure. If the TimeOfRevocation is non-zero,
+/// the certificate should be considered to be revoked from that time and onwards, and
+/// otherwise the certificate shall be considered to always be revoked.
+///
+#define EFI_CERT_X509_SHA512_GUID \
+  { \
+    0x446dbf63, 0x2502, 0x4cda, {0xbc, 0xfa, 0x24, 0x65, 0xd2, 0xb0, 0xfe, 0x9d } \
+  }
+
+///
+/// This identifies a signature containing a DER-encoded PKCS #7 version 1.5 [RFC2315]
+/// SignedData value.
+///
+#define EFI_CERT_TYPE_PKCS7_GUID \
+  { \
+    0x4aafd29d, 0x68df, 0x49ee, {0x8a, 0xa9, 0x34, 0x7d, 0x37, 0x56, 0x65, 0xa7} \
+  }
+
+//***********************************************************************
+// Image Execution Information Table Definition
+//***********************************************************************
+typedef UINT32 EFI_IMAGE_EXECUTION_ACTION;
+
+#define EFI_IMAGE_EXECUTION_AUTHENTICATION      0x00000007
+#define EFI_IMAGE_EXECUTION_AUTH_UNTESTED       0x00000000
+#define EFI_IMAGE_EXECUTION_AUTH_SIG_FAILED     0x00000001
+#define EFI_IMAGE_EXECUTION_AUTH_SIG_PASSED     0x00000002
+#define EFI_IMAGE_EXECUTION_AUTH_SIG_NOT_FOUND  0x00000003
+#define EFI_IMAGE_EXECUTION_AUTH_SIG_FOUND      0x00000004
+#define EFI_IMAGE_EXECUTION_POLICY_FAILED       0x00000005
+#define EFI_IMAGE_EXECUTION_INITIALIZED         0x00000008
+
+//
+// EFI_IMAGE_EXECUTION_INFO is added to EFI System Configuration Table
+// and assigned the GUID EFI_IMAGE_SECURITY_DATABASE_GUID.
+//
+typedef struct {
+  ///
+  /// Describes the action taken by the firmware regarding this image.
+  ///
+  EFI_IMAGE_EXECUTION_ACTION    Action;
+  ///
+  /// Size of all of the entire structure.
+  ///
+  UINT32                        InfoSize;
+  ///
+  /// If this image was a UEFI device driver (for option ROM, for example) this is the
+  /// null-terminated, user-friendly name for the device. If the image was for an application,
+  /// then this is the name of the application. If this cannot be determined, then a simple
+  /// NULL character should be put in this position.
+  /// CHAR16                    Name[];
+  ///
+
+  ///
+  /// For device drivers, this is the device path of the device for which this device driver
+  /// was intended. In some cases, the driver itself may be stored as part of the system
+  /// firmware, but this field should record the device's path, not the firmware path. For
+  /// applications, this is the device path of the application. If this cannot be determined,
+  /// a simple end-of-path device node should be put in this position.
+  /// EFI_DEVICE_PATH_PROTOCOL  DevicePath;
+  ///
+
+  ///
+  /// Zero or more image signatures. If the image contained no signatures,
+  /// then this field is empty.
+  /// EFI_SIGNATURE_LIST            Signature;
+  ///
+} EFI_IMAGE_EXECUTION_INFO;
+
+
+typedef struct {
+  ///
+  /// Number of EFI_IMAGE_EXECUTION_INFO structures.
+  ///
+  UINTN                     NumberOfImages;
+  ///
+  /// Number of image instances of EFI_IMAGE_EXECUTION_INFO structures.
+  ///
+  // EFI_IMAGE_EXECUTION_INFO  InformationInfo[]
+} EFI_IMAGE_EXECUTION_INFO_TABLE;
+
+extern EFI_GUID gEfiImageSecurityDatabaseGuid;
+extern EFI_GUID gEfiCertSha256Guid;
+extern EFI_GUID gEfiCertRsa2048Guid;
+extern EFI_GUID gEfiCertRsa2048Sha256Guid;
+extern EFI_GUID gEfiCertSha1Guid;
+extern EFI_GUID gEfiCertRsa2048Sha1Guid;
+extern EFI_GUID gEfiCertX509Guid;
+extern EFI_GUID gEfiCertSha224Guid;
+extern EFI_GUID gEfiCertSha384Guid;
+extern EFI_GUID gEfiCertSha512Guid;
+extern EFI_GUID gEfiCertX509Sha256Guid;
+extern EFI_GUID gEfiCertX509Sha384Guid;
+extern EFI_GUID gEfiCertX509Sha512Guid;
+extern EFI_GUID gEfiCertPkcs7Guid;
+
+#endif

Added: head/lib/libsecureboot/efi/include/Protocol/Hash.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lib/libsecureboot/efi/include/Protocol/Hash.h	Wed Mar  6 06:39:42 2019	(r344840)
@@ -0,0 +1,171 @@
+/** @file
+  EFI_HASH_SERVICE_BINDING_PROTOCOL as defined in UEFI 2.0.
+  EFI_HASH_PROTOCOL as defined in UEFI 2.0.
+  The EFI Hash Service Binding Protocol is used to locate hashing services support
+  provided by a driver and to create and destroy instances of the EFI Hash Protocol
+  so that a multiple drivers can use the underlying hashing services.
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
+This program and the accompanying materials are licensed and made available under
+the terms and conditions of the BSD License that accompanies this distribution.
+The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php.
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+**/
+
+#ifndef __EFI_HASH_PROTOCOL_H__
+#define __EFI_HASH_PROTOCOL_H__
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#define CONST const
+
+#define EFI_HASH_SERVICE_BINDING_PROTOCOL_GUID \
+  { \
+    0x42881c98, 0xa4f3, 0x44b0, {0xa3, 0x9d, 0xdf, 0xa1, 0x86, 0x67, 0xd8, 0xcd } \
+  }
+
+#define EFI_HASH_PROTOCOL_GUID \
+  { \
+    0xc5184932, 0xdba5, 0x46db, {0xa5, 0xba, 0xcc, 0x0b, 0xda, 0x9c, 0x14, 0x35 } \
+  }
+
+#define EFI_HASH_ALGORITHM_SHA1_GUID \
+  { \
+    0x2ae9d80f, 0x3fb2, 0x4095, {0xb7, 0xb1, 0xe9, 0x31, 0x57, 0xb9, 0x46, 0xb6 } \

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Wed Mar  6 07:54:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 359F515077CC;
 Wed,  6 Mar 2019 07:54:30 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CD10881860;
 Wed,  6 Mar 2019 07:54:29 +0000 (UTC)
 (envelope-from adrian@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 A412388C;
 Wed,  6 Mar 2019 07:54:29 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x267sTnX073397;
 Wed, 6 Mar 2019 07:54:29 GMT (envelope-from adrian@FreeBSD.org)
Received: (from adrian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x267sTHE073396;
 Wed, 6 Mar 2019 07:54:29 GMT (envelope-from adrian@FreeBSD.org)
Message-Id: <201903060754.x267sTHE073396@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: adrian set sender to
 adrian@FreeBSD.org using -f
From: Adrian Chadd <adrian@FreeBSD.org>
Date: Wed, 6 Mar 2019 07:54:29 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344841 - head/sys/dev/ath/ath_hal
X-SVN-Group: head
X-SVN-Commit-Author: adrian
X-SVN-Commit-Paths: head/sys/dev/ath/ath_hal
X-SVN-Commit-Revision: 344841
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CD10881860
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.976,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 07:54:30 -0000

Author: adrian
Date: Wed Mar  6 07:54:29 2019
New Revision: 344841
URL: https://svnweb.freebsd.org/changeset/base/344841

Log:
  [ath_hal] [ath_hal_ar9300] ANI fixes and preparation for userland control.
  
  * The ani function bitmap was being badly used when determining if a command
    could be used.  In hostap modes only a couple of the ANI control parameters
    are enabled.
  
  * The ani function bitmap was not being reset to HAL_ANI_ALL if transitioning
    from AP -> STA.
  
  * Change mrcCckOff to mrcCck - 1 == on, rather than 1 == off.  This matches
    the API used to set the value from userland via the diagnostic API.
  
  * Handle OFDM/CCK noise immunity level commands in ar9300_ani_control().
    These will only come from userland and it will go and program the rest of
    the ANI control parameters with the values in the ANI table.
  
  * Ensure all of the ANI parameters can be tweaked at runtime, even if they're
    disabled.
  
  Tested:
  
  * carambola2 (AR9331), STA/AP modes

Modified:
  head/sys/dev/ath/ath_hal/ah.h

Modified: head/sys/dev/ath/ath_hal/ah.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah.h	Wed Mar  6 06:39:42 2019	(r344840)
+++ head/sys/dev/ath/ath_hal/ah.h	Wed Mar  6 07:54:29 2019	(r344841)
@@ -893,13 +893,13 @@ typedef struct {
 } HAL_ANI_STATS;
 
 typedef struct {
-	uint8_t		noiseImmunityLevel; /* OFDM */
-	uint8_t		cckNoiseImmunityLevel;
+	uint8_t		noiseImmunityLevel; /* Global for pre-AR9380; OFDM later*/
+	uint8_t		cckNoiseImmunityLevel; /* AR9380: CCK specific NI */
 	uint8_t		spurImmunityLevel;
 	uint8_t		firstepLevel;
 	uint8_t		ofdmWeakSigDetectOff;
 	uint8_t		cckWeakSigThreshold;
-	uint8_t		mrcCckOff;
+	uint8_t		mrcCck;		/* MRC CCK is enabled */
 	uint32_t	listenTime;
 
 	/* NB: intentionally ordered so data exported to user space is first */
@@ -958,7 +958,7 @@ typedef struct {
  */
 typedef enum {
 	HAL_ANI_PRESENT = 0,			/* is ANI support present */
-	HAL_ANI_NOISE_IMMUNITY_LEVEL = 1,	/* set level */
+	HAL_ANI_NOISE_IMMUNITY_LEVEL = 1,	/* set level (global or ofdm) */
 	HAL_ANI_OFDM_WEAK_SIGNAL_DETECTION = 2,	/* enable/disable */
 	HAL_ANI_CCK_WEAK_SIGNAL_THR = 3,	/* enable/disable */
 	HAL_ANI_FIRSTEP_LEVEL = 4,		/* set level */
@@ -966,6 +966,7 @@ typedef enum {
 	HAL_ANI_MODE = 6,			/* 0 => manual, 1 => auto (XXX do not change) */
 	HAL_ANI_PHYERR_RESET = 7,		/* reset phy error stats */
 	HAL_ANI_MRC_CCK = 8,
+	HAL_ANI_CCK_NOISE_IMMUNITY_LEVEL = 9,	/* set level (cck) */
 } HAL_ANI_CMD;
 
 #define	HAL_ANI_ALL		0xffffffff

From owner-svn-src-all@freebsd.org  Wed Mar  6 07:58:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8770B15078BD;
 Wed,  6 Mar 2019 07:58:20 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2EE9B81AC4;
 Wed,  6 Mar 2019 07:58:20 +0000 (UTC)
 (envelope-from adrian@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 247CD891;
 Wed,  6 Mar 2019 07:58:20 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x267wJ5h073630;
 Wed, 6 Mar 2019 07:58:19 GMT (envelope-from adrian@FreeBSD.org)
Received: (from adrian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x267wJcP073627;
 Wed, 6 Mar 2019 07:58:19 GMT (envelope-from adrian@FreeBSD.org)
Message-Id: <201903060758.x267wJcP073627@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: adrian set sender to
 adrian@FreeBSD.org using -f
From: Adrian Chadd <adrian@FreeBSD.org>
Date: Wed, 6 Mar 2019 07:58:19 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344842 - in head/tools/tools/ath: . athani
X-SVN-Group: head
X-SVN-Commit-Author: adrian
X-SVN-Commit-Paths: in head/tools/tools/ath: . athani
X-SVN-Commit-Revision: 344842
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2EE9B81AC4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 07:58:20 -0000

Author: adrian
Date: Wed Mar  6 07:58:19 2019
New Revision: 344842
URL: https://svnweb.freebsd.org/changeset/base/344842

Log:
  [athani] Add a simple tool to list and control ANI parameters.
  
  This is a WIP tool I'm using to figure out why ANI is weirdly busted in my
  home FreeBSD AP/STA setup.  Although athstats (mostly) gets the ANI statistics
  correct, ANI is making the radio deaf it doesn't recover without being disabled.
  
  It's very WIP.
  
  Tested:
  
  * Carambola 2,  (AR9331), AP/STA mode.

Added:
  head/tools/tools/ath/athani/
  head/tools/tools/ath/athani/Makefile   (contents, props changed)
  head/tools/tools/ath/athani/main.c   (contents, props changed)
Modified:
  head/tools/tools/ath/Makefile

Modified: head/tools/tools/ath/Makefile
==============================================================================
--- head/tools/tools/ath/Makefile	Wed Mar  6 07:54:29 2019	(r344841)
+++ head/tools/tools/ath/Makefile	Wed Mar  6 07:58:19 2019	(r344842)
@@ -3,6 +3,6 @@
 SUBDIR=	arcode athdebug athdecode athkey athpoke athprom athrd athregs athalq
 SUBDIR+=	athstats ath_prom_read athradar athaggrstats
 SUBDIR+=	ath_ee_v14_print ath_ee_v4k_print ath_ee_9287_print ath_ee_9300_print
-SUBDIR+=	athsurvey athratestats athspectral
+SUBDIR+=	athsurvey athratestats athspectral athani
 
 .include <bsd.subdir.mk>

Added: head/tools/tools/ath/athani/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tools/tools/ath/athani/Makefile	Wed Mar  6 07:58:19 2019	(r344842)
@@ -0,0 +1,23 @@
+# $FreeBSD$
+
+PROG=	athani
+MAN=
+
+CFLAGS+=	-I../../../../sys/contrib
+
+SRCS=	main.c
+
+.include <../Makefile.inc>
+
+CFLAGS+=	-I${.CURDIR}/../common/
+.PATH.c:	${.CURDIR}/../common/
+SRCS+=		ctrl.c
+
+CLEANFILES+=    opt_ah.h
+
+opt_ah.h:
+	echo "#define AH_DEBUG 1" > opt_ah.h
+	echo "#define AH_DEBUG_COUNTRY 1" >> opt_ah.h
+	echo "#define AH_SUPPORT_AR5416 1" >> opt_ah.h
+
+.include <bsd.prog.mk>

Added: head/tools/tools/ath/athani/main.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tools/tools/ath/athani/main.c	Wed Mar  6 07:58:19 2019	(r344842)
@@ -0,0 +1,226 @@
+/*-
+ * Copyright (c) 2019 Adrian Chadd <adrian@FreeBSD.org>.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer,
+ *    without modification.
+ * 2. Redistributions in binary form must reproduce at minimum a disclaimer
+ *    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
+ *    redistribution must be conditioned upon including a substantially
+ *    similar Disclaimer requirement for further binary redistribution.
+ *
+ * NO WARRANTY
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
+ * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR 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 DAMAGES.
+ *
+ * $FreeBSD$
+ */
+#include "diag.h"
+
+#include "ah.h"
+#include "ah_internal.h"
+
+#include <getopt.h>
+#include <stdlib.h>
+#include <string.h>
+#include <ctype.h>
+#include <err.h>
+
+#include "../common/ctrl.h"
+
+/*
+ * This is a simple wrapper program around the ANI diagnostic interface.
+ * It is for fetching and setting the live ANI configuration when trying
+ * to diagnose a noisy environment.
+ */
+
+/*
+ * HAL_DIAG_ANI_CMD is used to set the ANI configuration.
+ * HAL_DIAG_ANI_CURRENT is used to fetch the current ANI configuration.
+ */
+
+struct ani_var {
+  const char *name;
+  int id;
+};
+
+static struct ani_var ani_labels[] = {
+  { "ofdm_noise_immunity_level", 1, },
+  { "noise_immunity_level", 1, },
+  { "ofdm_weak_signal_detect", 2, },
+  { "cck_weak_signal_threshold", 3, },
+  { "firstep_level", 4, },
+  { "spur_immunity_level", 5, },
+  { "mrc_cck", 8, },
+  { "cck_noise_immunity_level", 9, },
+  { NULL, -1, },
+};
+
+static void
+usage(void)
+{
+	fprintf(stderr, "usage: athani [-i interface] [-l]\n");
+	fprintf(stderr, "    -i: interface\n");
+	fprintf(stderr, "    -l: list ANI labels\n");
+	fprintf(stderr, "  If no args are given after flags, the ANI state will be listed.\n");
+	fprintf(stderr, "  To set, use '<label> <value>' to set the state\n");
+	exit(-1);
+}
+
+static void
+list_labels(void)
+{
+	int i;
+
+	for (i = 0; ani_labels[i].name != NULL; i++) {
+		printf("%s (%d)\n", ani_labels[i].name, ani_labels[i].id);
+	}
+}
+
+static int
+ani_write_state(struct ath_driver_req *req, const char *ifname,
+  const char *label, const char *value)
+{
+	struct ath_diag atd;
+	uint32_t args[2];
+	uint32_t cmd, val;
+	size_t sl;
+	int i;
+
+	/* Find the label */
+	sl = strlen(label);
+	for (i = 0; ani_labels[i].name != NULL; i++) {
+		if ((strlen(ani_labels[i].name) == sl) &&
+		    (strcmp(label, ani_labels[i].name) == 0)) {
+			cmd = ani_labels[i].id;
+			break;
+		}
+	}
+	if (ani_labels[i].name == NULL) {
+		fprintf(stderr, "%s: couldn't find ANI label (%s)\n",
+		    __func__, label);
+		return (-1);
+	}
+
+	val = strtoul(value, NULL, 0);
+
+	/*
+	 * Whilst we're doing the ath_diag pieces, we have to set this
+	 * ourselves.
+	 */
+	strncpy(atd.ad_name, ifname, sizeof (atd.ad_name));
+
+	/*
+	 * Populate HAL_DIAG_ANI_CMD fields.
+	 */
+	args[0] = cmd;
+	args[1] = val;
+
+	atd.ad_id = HAL_DIAG_ANI_CMD | ATH_DIAG_IN;
+	atd.ad_out_data = NULL;
+	atd.ad_out_size = 0;
+	atd.ad_in_data = (void *) &args;
+	atd.ad_in_size = sizeof(args);
+
+	if (ath_driver_req_fetch_diag(req, SIOCGATHDIAG, &atd) < 0) {
+		warn("SIOCGATHDIAG HAL_DIAG_ANI_CMD (%s)", atd.ad_name);
+		return (-1);
+	}
+
+	return (0);
+}
+
+static void
+ani_read_state(struct ath_driver_req *req, const char *ifname)
+{
+	struct ath_diag atd;
+	HAL_ANI_STATE state;
+
+	/*
+	 * Whilst we're doing the ath_diag pieces, we have to set this
+	 * ourselves.
+	 */
+	strncpy(atd.ad_name, ifname, sizeof (atd.ad_name));
+
+	atd.ad_id = HAL_DIAG_ANI_CURRENT; /* XXX | DIAG_DYN? */
+	atd.ad_out_data = (caddr_t) &state;
+	atd.ad_out_size = sizeof(state);
+
+	if (ath_driver_req_fetch_diag(req, SIOCGATHDIAG, &atd) < 0)
+		err(1, "%s", atd.ad_name);
+
+
+	printf("  ofdm_noise_immunity_level=%d\n", state.noiseImmunityLevel);
+	printf("  cck_noise_immunity_level=%d\n", state.cckNoiseImmunityLevel);
+	printf("  spur_immunity_level=%d\n", state.spurImmunityLevel);
+	printf("  firstep_level=%d\n", state.firstepLevel);
+	printf("  ofdm_weak_signal_detect=%d\n", state.ofdmWeakSigDetectOff);
+	printf("  cck_weak_signal_threshold=%d\n", state.cckWeakSigThreshold);
+	printf("  mrc_cck=%d\n", state.mrcCckOff);
+	/* XXX TODO: cycle counts? */
+}
+
+int
+main(int argc, char *argv[])
+{
+	struct ath_diag atd;
+	const char *ifname;
+	struct ath_driver_req req;
+	int what, c;
+
+	ath_driver_req_init(&req);
+
+	ifname = getenv("ATH");
+	if (!ifname)
+		ifname = ATH_DEFAULT;
+
+	what = 0;
+	while ((c = getopt(argc, argv, "i:l")) != -1)
+		switch (c) {
+		case 'i':
+			ifname = optarg;
+			break;
+		case 'l':
+			list_labels();
+			exit(0);
+		default:
+			usage();
+			/*NOTREACHED*/
+		}
+
+	/* Initialise the driver interface */
+	if (ath_driver_req_open(&req, ifname) < 0) {
+		exit(127);
+	}
+
+	argc -= optind;
+	argv += optind;
+
+	if (argc == 0) {
+		ani_read_state(&req, ifname);
+		exit(0);
+	}
+
+	if (argc < 2) {
+		usage();
+		/*NOTREACHED*/
+	}
+
+	if (ani_write_state(&req, ifname, argv[0], argv[1]) != 0)
+		exit(1);
+
+	exit(0);
+}

From owner-svn-src-all@freebsd.org  Wed Mar  6 08:52:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 11D8B1508D15;
 Wed,  6 Mar 2019 08:52:03 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CC33C835B0;
 Wed,  6 Mar 2019 08:52:02 +0000 (UTC)
 (envelope-from adrian@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 C2A951293;
 Wed,  6 Mar 2019 08:52:02 +0000 (UTC)
 (envelope-from adrian@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x268q2e4001615;
 Wed, 6 Mar 2019 08:52:02 GMT (envelope-from adrian@FreeBSD.org)
Received: (from adrian@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x268q2Iq001613;
 Wed, 6 Mar 2019 08:52:02 GMT (envelope-from adrian@FreeBSD.org)
Message-Id: <201903060852.x268q2Iq001613@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: adrian set sender to
 adrian@FreeBSD.org using -f
From: Adrian Chadd <adrian@FreeBSD.org>
Date: Wed, 6 Mar 2019 08:52:02 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344843 - head/sys/contrib/dev/ath/ath_hal/ar9300
X-SVN-Group: head
X-SVN-Commit-Author: adrian
X-SVN-Commit-Paths: head/sys/contrib/dev/ath/ath_hal/ar9300
X-SVN-Commit-Revision: 344843
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CC33C835B0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 08:52:03 -0000

Author: adrian
Date: Wed Mar  6 08:52:02 2019
New Revision: 344843
URL: https://svnweb.freebsd.org/changeset/base/344843

Log:
  [ath_hal_ar9300] Add the missing bits from the previous HAL commit.
  
  Noticed by: 75+ emails telling me I messed up.

Modified:
  head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_ani.c
  head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c

Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_ani.c
==============================================================================
--- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_ani.c	Wed Mar  6 07:58:19 2019	(r344842)
+++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_ani.c	Wed Mar  6 08:52:02 2019	(r344843)
@@ -462,13 +462,55 @@ ar9300_ani_control(struct ath_hal *ah, HAL_ANI_CMD cmd
     u_int level = param;
     u_int is_on;
 
+    HALDEBUG(ah, HAL_DEBUG_ANI, "%s: cmd=%d, param=%d, chan=%p, funcmask=0x%08x\n",
+      __func__,
+      cmd,
+      param,
+      chan,
+      ahp->ah_ani_function);
+
+
     if (chan == NULL && cmd != HAL_ANI_MODE) {
         HALDEBUG(ah, HAL_DEBUG_UNMASKABLE,
             "%s: ignoring cmd 0x%02x - no channel\n", __func__, cmd);
         return AH_FALSE;
     }
 
-    switch (cmd & ahp->ah_ani_function) {
+    /*
+     * These two control the top-level cck/ofdm immunity levels and will
+     * program the rest of the values.
+     */
+    if (cmd == HAL_ANI_NOISE_IMMUNITY_LEVEL) {
+        if (param > HAL_ANI_OFDM_NUM_LEVEL)
+          return AH_FALSE;
+        ar9300_ani_set_odfm_noise_immunity_level(ah, param);
+        return AH_TRUE;
+    }
+
+    if (cmd == HAL_ANI_CCK_NOISE_IMMUNITY_LEVEL) {
+        if (param > HAL_ANI_CCK_NUM_LEVEL)
+          return AH_FALSE;
+        ar9300_ani_set_cck_noise_immunity_level(ah, param);
+        return AH_TRUE;
+    }
+
+    /*
+     * Check to see if this command is available in the
+     * current operating mode.
+     */
+    if (((1 << cmd) & ahp->ah_ani_function) == 0) {
+        HALDEBUG(ah, HAL_DEBUG_ANI,
+            "%s: early check: invalid cmd 0x%02x (allowed=0x%02x)\n",
+            __func__, cmd, ahp->ah_ani_function);
+        return AH_FALSE;
+    }
+
+    /*
+     * The rest of these program in the requested parameter values
+     * into the PHY.
+     */
+    switch (cmd) {
+
     case HAL_ANI_OFDM_WEAK_SIGNAL_DETECTION: 
         {
             int m1_thresh_low, m2_thresh_low;
@@ -887,13 +929,16 @@ ar9300_ani_reset(struct ath_hal *ah, HAL_BOOL is_scann
     /* only allow a subset of functions in AP mode */
     if (AH_PRIVATE(ah)->ah_opmode == HAL_M_HOSTAP) {
         if (IS_CHAN_2GHZ(ichan)) {
-            ahp->ah_ani_function = (HAL_ANI_SPUR_IMMUNITY_LEVEL |
-                                    HAL_ANI_FIRSTEP_LEVEL |
-                                    HAL_ANI_MRC_CCK);
+            ahp->ah_ani_function = (1 << HAL_ANI_SPUR_IMMUNITY_LEVEL) |
+                                   (1 << HAL_ANI_FIRSTEP_LEVEL) |
+                                   (1 << HAL_ANI_MRC_CCK);
         } else {
             ahp->ah_ani_function = 0;
         }
+    } else {
+      ahp->ah_ani_function = HAL_ANI_ALL;
     }
+
     /* always allow mode (on/off) to be controlled */
     ahp->ah_ani_function |= HAL_ANI_MODE;
 

Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c
==============================================================================
--- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c	Wed Mar  6 07:58:19 2019	(r344842)
+++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_misc.c	Wed Mar  6 08:52:02 2019	(r344843)
@@ -1268,7 +1268,7 @@ ar9300_get_diag_state(struct ath_hal *ah, int request,
         ahp->ext_ani_state.spurImmunityLevel = ani->spur_immunity_level;
         ahp->ext_ani_state.firstepLevel = ani->firstep_level;
         ahp->ext_ani_state.ofdmWeakSigDetectOff = ani->ofdm_weak_sig_detect_off;
-        ahp->ext_ani_state.mrcCckOff = ani->mrc_cck_off;
+        ahp->ext_ani_state.mrcCck = !! ani->mrc_cck_off;
         ahp->ext_ani_state.cckNoiseImmunityLevel = ani->cck_noise_immunity_level;
 
         ahp->ext_ani_state.listenTime = ani->listen_time;
@@ -1287,12 +1287,18 @@ ar9300_get_diag_state(struct ath_hal *ah, int request,
             0 : sizeof(HAL_ANI_STATS);
         return AH_TRUE;
     case HAL_DIAG_ANI_CMD:
+    {
+        HAL_ANI_CMD savefunc = ahp->ah_ani_function;
         if (argsize != 2*sizeof(u_int32_t)) {
             return AH_FALSE;
         }
+        /* temporarly allow all functions so we can override */
+        ahp->ah_ani_function = HAL_ANI_ALL;
         ar9300_ani_control(
             ah, ((const u_int32_t *)args)[0], ((const u_int32_t *)args)[1]);
+        ahp->ah_ani_function = savefunc;
         return AH_TRUE;
+    }
 #if 0
     case HAL_DIAG_TXCONT:
         /*AR9300_CONTTXMODE(ah, (struct ath_desc *)args, argsize );*/

From owner-svn-src-all@freebsd.org  Wed Mar  6 15:00:33 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DA98F151A075;
 Wed,  6 Mar 2019 15:00:32 +0000 (UTC) (envelope-from pho@holm.cc)
Received: from relay01.pair.com (relay01.pair.com [209.68.5.15])
 (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 B4DC9904D6;
 Wed,  6 Mar 2019 15:00:31 +0000 (UTC) (envelope-from pho@holm.cc)
Received: from x2.osted.lan (87-58-223-204-dynamic.dk.customer.tdc.net
 [87.58.223.204])
 by relay01.pair.com (Postfix) with ESMTP id 06B9DD02539;
 Wed,  6 Mar 2019 10:00:24 -0500 (EST)
Received: from x2.osted.lan (localhost [127.0.0.1])
 by x2.osted.lan (8.15.2/8.15.2) with ESMTPS id x26F0KQn072323
 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO);
 Wed, 6 Mar 2019 16:00:20 +0100 (CET) (envelope-from pho@x2.osted.lan)
Received: (from pho@localhost)
 by x2.osted.lan (8.15.2/8.15.2/Submit) id x26F0KTl072322;
 Wed, 6 Mar 2019 16:00:20 +0100 (CET) (envelope-from pho)
Date: Wed, 6 Mar 2019 16:00:20 +0100
From: Peter Holm <pho@freebsd.org>
To: Fedor Uporov <fsu@freebsd.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344757 - head/sys/fs/ext2fs
Message-ID: <20190306150020.GA72148@x2.osted.lan>
References: <201903041133.x24BXnuY035956@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <201903041133.x24BXnuY035956@repo.freebsd.org>
User-Agent: Mutt/1.11.1 (2018-12-01)
X-Rspamd-Queue-Id: B4DC9904D6
X-Spamd-Bar: /
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [0.12 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-0.56)[-0.557,0]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[4]; TO_DN_SOME(0.00)[];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain];
 RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[freebsd.org];
 AUTH_NA(1.00)[]; NEURAL_SPAM_SHORT(0.35)[0.346,0];
 NEURAL_HAM_LONG(-0.59)[-0.592,0]; RCVD_COUNT_THREE(0.00)[4];
 IP_SCORE(-0.17)[ip: (0.28), ipnet: 209.68.0.0/18(-0.53), asn: 7859(-0.54),
 country: US(-0.07)]; MX_GOOD(-0.01)[mailwash28.pair.com];
 R_SPF_NA(0.00)[];
 FORGED_SENDER(0.30)[pho@freebsd.org,pho@holm.cc];
 RCVD_IN_DNSWL_LOW(-0.10)[15.5.68.209.list.dnswl.org : 127.0.5.1];
 R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+];
 ASN(0.00)[asn:7859, ipnet:209.68.0.0/18, country:US];
 FROM_NEQ_ENVFROM(0.00)[pho@freebsd.org,pho@holm.cc];
 RECEIVED_SPAMHAUS_PBL(0.00)[204.223.58.87.zen.spamhaus.org : 127.0.0.11]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 15:00:33 -0000

On Mon, Mar 04, 2019 at 11:33:49AM +0000, Fedor Uporov wrote:
> Author: fsu
> Date: Mon Mar  4 11:33:49 2019
> New Revision: 344757
> URL: https://svnweb.freebsd.org/changeset/base/344757
> 
> Log:
>   Fix double free in case of mount error.
>   
>   Reported by:    Christopher Krah <krah@protonmail.com>
>   Reported as:    FS-9-EXT3-2: Denial Of Service in nmount-5 (vm_fault_hold)
>   Reviewed by:    pfg
>   MFC after:      1 week
>   
>   Differential Revision:    https://reviews.freebsd.org/D19385
> 
> Modified:
>   head/sys/fs/ext2fs/ext2_vfsops.c
> 
> Modified: head/sys/fs/ext2fs/ext2_vfsops.c
> ==============================================================================
> --- head/sys/fs/ext2fs/ext2_vfsops.c	Mon Mar  4 11:27:47 2019	(r344756)

Could this panic be related to your latest ext2fs changes?

20190306 15:27:47 all (309/617): crossmp10.sh
panic: mutex EXT2FS not owned at ../../../kern/kern_mutex.c:281
cpuid = 9
time = 1551882471
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00bfb3f480
vpanic() at vpanic+0x1b4/frame 0xfffffe00bfb3f4e0
panic() at panic+0x43/frame 0xfffffe00bfb3f540
__mtx_unlock_flags() at __mtx_unlock_flags+0x13a/frame 0xfffffe00bfb3f570
ext2_valloc() at ext2_valloc+0x530/frame 0xfffffe00bfb3f620
ext2_makeinode() at ext2_makeinode+0x56/frame 0xfffffe00bfb3f680
ext2_create() at ext2_create+0x2d/frame 0xfffffe00bfb3f6a0
VOP_CREATE_APV() at VOP_CREATE_APV+0x86/frame 0xfffffe00bfb3f6d0
vn_open_cred() at vn_open_cred+0x2c3/frame 0xfffffe00bfb3f820
kern_openat() at kern_openat+0x1fd/frame 0xfffffe00bfb3f990
amd64_syscall() at amd64_syscall+0x291/frame 0xfffffe00bfb3fab0
fast_syscall_common() at fast_syscall_common+0x101/frame 0xfffffe00bfb3fab0

https://people.freebsd.org/~pho/stress/log/crossmp10-2.txt

- Peter

From owner-svn-src-all@freebsd.org  Wed Mar  6 15:19:05 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5A122151A831;
 Wed,  6 Mar 2019 15:19:05 +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)
 server-signature RSA-PSS (4096 bits)
 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 E1A7590FF4;
 Wed,  6 Mar 2019 15:19:04 +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 D152255CD;
 Wed,  6 Mar 2019 15:19:04 +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 x26FJ41i004653;
 Wed, 6 Mar 2019 15:19:04 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26FJ4Yc004652;
 Wed, 6 Mar 2019 15:19:04 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903061519.x26FJ4Yc004652@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Wed, 6 Mar 2019 15:19:04 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344844 - head/usr.bin/ctlstat
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/usr.bin/ctlstat
X-SVN-Commit-Revision: 344844
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: E1A7590FF4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.93)[-0.935,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 15:19:05 -0000

Author: mav
Date: Wed Mar  6 15:19:04 2019
New Revision: 344844
URL: https://svnweb.freebsd.org/changeset/base/344844

Log:
  Flush stdout after each iteration.
  
  Without this, if output is redirected from the console, it is buffered for
  too long, making tool quite unusable.
  
  MFC after:	1 week
  Sponsored by:	iXsystems, Inc.

Modified:
  head/usr.bin/ctlstat/ctlstat.c

Modified: head/usr.bin/ctlstat/ctlstat.c
==============================================================================
--- head/usr.bin/ctlstat/ctlstat.c	Wed Mar  6 08:52:02 2019	(r344843)
+++ head/usr.bin/ctlstat/ctlstat.c	Wed Mar  6 15:19:04 2019	(r344844)
@@ -717,6 +717,7 @@ main(int argc, char **argv)
 		}
 
 		fprintf(stdout, "\n");
+		fflush(stdout);
 		ctx.flags &= ~CTLSTAT_FLAG_FIRST_RUN;
 		if (count != 1)
 			sleep(waittime);

From owner-svn-src-all@freebsd.org  Wed Mar  6 16:50:16 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1137C151DD70;
 Wed,  6 Mar 2019 16:50:16 +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)
 server-signature RSA-PSS (4096 bits)
 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 9AD8793A19;
 Wed,  6 Mar 2019 16:50:15 +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 8142D6502;
 Wed,  6 Mar 2019 16:50:15 +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 x26GoFK7052494;
 Wed, 6 Mar 2019 16:50:15 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26GoF85052492;
 Wed, 6 Mar 2019 16:50:15 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903061650.x26GoF85052492@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Wed, 6 Mar 2019 16:50:15 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344845 - in head: lib/libkvm sys/riscv/riscv
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: in head: lib/libkvm sys/riscv/riscv
X-SVN-Commit-Revision: 344845
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9AD8793A19
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.93)[-0.932,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 16:50:16 -0000

Author: markj
Date: Wed Mar  6 16:50:14 2019
New Revision: 344845
URL: https://svnweb.freebsd.org/changeset/base/344845

Log:
  Reorder copyright lines to preserve the source of "All rights reserved."
  
  Reported by:	rgrimes
  MFC with:	r344829, r344830

Modified:
  head/lib/libkvm/kvm_riscv.h
  head/sys/riscv/riscv/minidump_machdep.c

Modified: head/lib/libkvm/kvm_riscv.h
==============================================================================
--- head/lib/libkvm/kvm_riscv.h	Wed Mar  6 15:19:04 2019	(r344844)
+++ head/lib/libkvm/kvm_riscv.h	Wed Mar  6 16:50:14 2019	(r344845)
@@ -1,7 +1,7 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * Copyright (c) 2019 Mitchell Horne
  * All rights reserved.
+ * Copyright (c) 2019 Mitchell Horne
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/riscv/riscv/minidump_machdep.c
==============================================================================
--- head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 15:19:04 2019	(r344844)
+++ head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 16:50:14 2019	(r344845)
@@ -1,8 +1,8 @@
 /*-
  * Copyright (c) 2006 Peter Wemm
  * Copyright (c) 2015 The FreeBSD Foundation
- * Copyright (c) 2019 Mitchell Horne
  * All rights reserved.
+ * Copyright (c) 2019 Mitchell Horne
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:25:12 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B5A8115208E9;
 Wed,  6 Mar 2019 17:25:12 +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)
 server-signature RSA-PSS (4096 bits)
 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 61E819534A;
 Wed,  6 Mar 2019 17:25:12 +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 53D616BAE;
 Wed,  6 Mar 2019 17:25:12 +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 x26HPCs8073605;
 Wed, 6 Mar 2019 17:25:12 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HPBFO073601;
 Wed, 6 Mar 2019 17:25:11 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903061725.x26HPBFO073601@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:25:11 +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: r344846 - in stable/12/sys: conf kern sys
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/12/sys: conf kern sys
X-SVN-Commit-Revision: 344846
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 61E819534A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.93)[-0.927,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:25:13 -0000

Author: kib
Date: Wed Mar  6 17:25:11 2019
New Revision: 344846
URL: https://svnweb.freebsd.org/changeset/base/344846

Log:
  MFC r344351:
  Implement rangesets.

Added:
  stable/12/sys/kern/subr_rangeset.c
     - copied unchanged from r344351, head/sys/kern/subr_rangeset.c
  stable/12/sys/sys/_rangeset.h
     - copied unchanged from r344351, head/sys/sys/_rangeset.h
  stable/12/sys/sys/rangeset.h
     - copied unchanged from r344351, head/sys/sys/rangeset.h
Modified:
  stable/12/sys/conf/files
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/conf/files
==============================================================================
--- stable/12/sys/conf/files	Wed Mar  6 16:50:14 2019	(r344845)
+++ stable/12/sys/conf/files	Wed Mar  6 17:25:11 2019	(r344846)
@@ -3919,6 +3919,7 @@ kern/subr_pidctrl.c		standard
 kern/subr_power.c		standard
 kern/subr_prf.c			standard
 kern/subr_prof.c		standard
+kern/subr_rangeset.c		standard
 kern/subr_rman.c		standard
 kern/subr_rtc.c			standard
 kern/subr_sbuf.c		standard

Copied: stable/12/sys/kern/subr_rangeset.c (from r344351, head/sys/kern/subr_rangeset.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/sys/kern/subr_rangeset.c	Wed Mar  6 17:25:11 2019	(r344846, copy of r344351, head/sys/kern/subr_rangeset.c)
@@ -0,0 +1,365 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ *
+ * Copyright (c) 2019 The FreeBSD Foundation
+ * All rights reserved.
+ *
+ * This software was developed by Konstantin Belousov <kib@FreeBSD.org>
+ * 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 <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <sys/kernel.h>
+#include <sys/lock.h>
+#include <sys/pctrie.h>
+#include <sys/rangeset.h>
+#include <vm/uma.h>
+
+#ifdef DIAGNOSTIC
+static void rangeset_check(struct rangeset *rs);
+#else
+#define	rangeset_check(rs)
+#endif
+
+static uma_zone_t rs_node_zone;
+
+static void
+rs_rangeset_init(void *arg __unused)
+{
+
+	rs_node_zone = uma_zcreate("rangeset pctrie nodes",
+	    pctrie_node_size(), NULL, NULL, pctrie_zone_init, NULL,
+	    UMA_ALIGN_PTR, 0);
+}
+SYSINIT(rs, SI_SUB_LOCK, SI_ORDER_ANY, rs_rangeset_init, NULL);
+
+static void *
+rs_node_alloc(struct pctrie *ptree)
+{
+	struct rangeset *rs;
+
+	rs = __containerof(ptree, struct rangeset, rs_trie);
+	return (uma_zalloc(rs_node_zone, rs->rs_alloc_flags));
+}
+
+static void
+rs_node_free(struct pctrie *ptree __unused, void *node)
+{
+
+	uma_zfree(rs_node_zone, node);
+}
+
+void
+rangeset_init(struct rangeset *rs, rs_dup_data_t dup_data,
+    rs_free_data_t free_data, void *data_ctx, u_int alloc_flags)
+{
+
+	pctrie_init(&rs->rs_trie);
+	rs->rs_dup_data = dup_data;
+	rs->rs_free_data = free_data;
+	rs->rs_data_ctx = data_ctx;
+	rs->rs_alloc_flags = alloc_flags;
+}
+
+void
+rangeset_fini(struct rangeset *rs)
+{
+
+	rangeset_check(rs);
+	rangeset_remove_all(rs);
+}
+
+bool
+rangeset_check_empty(struct rangeset *rs, uint64_t start, uint64_t end)
+{
+	struct rs_el *r;
+	uint64_t *r1;
+
+	rangeset_check(rs);
+	r1 = pctrie_lookup_le(&rs->rs_trie, end);
+	if (r1 != NULL) {
+		r = __containerof(r1, struct rs_el, re_start);
+		if (r->re_end > start)
+			return (false);
+	}
+	return (true);
+}
+
+int
+rangeset_insert(struct rangeset *rs, uint64_t start, uint64_t end,
+    void *data)
+{
+	struct rs_el *r;
+	int error;
+
+	rangeset_check(rs);
+	error = rangeset_remove(rs, start, end);
+	if (error != 0)
+		return (error);
+	r = data;
+	r->re_start = start;
+	r->re_end = end;
+	error = pctrie_insert(&rs->rs_trie, &r->re_start, rs_node_alloc);
+	rangeset_check(rs);
+	return (error);
+}
+
+int
+rangeset_remove_pred(struct rangeset *rs, uint64_t start, uint64_t end,
+    rs_pred_t pred)
+{
+	struct rs_el *r, *rn;
+	uint64_t *r1;
+	int error;
+
+	rangeset_check(rs);
+	error = 0;
+	for (; end > 0 && start < end;) {
+		r1 = pctrie_lookup_le(&rs->rs_trie, end - 1);
+		if (r1 == NULL)
+			break;
+		r = __containerof(r1, struct rs_el, re_start);
+
+		/*
+		 * ------============================--|-------|----
+		 *	 rs    	       	       	   re  s       e
+		 */
+		if (r->re_end <= start)
+			break;
+
+		if (r->re_end <= end) {
+			if (r->re_start < start) {
+				/*
+				 * ------========|==============-------|----
+				 *	 rs    	 s     	      re       e
+				 */
+				if (pred(rs->rs_data_ctx, r))
+					r->re_end = start;
+				break;
+			}
+
+			/*
+			 * ------|--------===================----------|----
+			 *	 s    	  rs   	       	   re          e
+			 */
+			end = r->re_start;
+			if (pred(rs->rs_data_ctx, r)) {
+				pctrie_remove(&rs->rs_trie, r->re_start,
+				    rs_node_free);
+				rs->rs_free_data(rs->rs_data_ctx, r);
+			}
+			continue;
+		}
+
+		/*
+		 * ------|--------====================|==========----
+		 *	 s    	  rs   	       	      e         re
+		 */
+		if (r->re_start >= start) {
+			if (pred(rs->rs_data_ctx, r)) {
+				pctrie_remove(&rs->rs_trie, r->re_start,
+				    rs_node_free);
+				r->re_start = end;
+				error = pctrie_insert(&rs->rs_trie,
+				    &r->re_start, rs_node_alloc);
+				/*
+				 * The insert above must succeed
+				 * because rs_node zone is marked
+				 * nofree and we freed one element
+				 * just before.
+				 */
+				MPASS(error == 0);
+			} else {
+				end = r->re_start;
+			}
+			continue;
+		}
+
+		/*
+		 * ------=========|===================|==========----
+		 *	 rs   	  s    	       	      e         re
+		 */
+		if (pred(rs->rs_data_ctx, r)) {
+			/*
+			 * Split.  Can only happen once, and then if
+			 * any allocation fails, the rangeset is kept
+			 * intact.
+			 */
+			rn = rs->rs_dup_data(rs->rs_data_ctx, r);
+			if (rn == NULL) {
+				error = ENOMEM;
+				break;
+			}
+			rn->re_start = end;
+			rn->re_end = r->re_end;
+			error = pctrie_insert(&rs->rs_trie, &rn->re_start,
+			    rs_node_alloc);
+			if (error != 0) {
+				rs->rs_free_data(rs->rs_data_ctx, rn);
+				break;
+			}
+			r->re_end = start;
+		}
+		break;
+	}
+	rangeset_check(rs);
+	return (error);
+}
+
+static bool
+rangeset_true_pred(void *ctx __unused, void *r __unused)
+{
+
+	return (true);
+}
+
+int
+rangeset_remove(struct rangeset *rs, uint64_t start, uint64_t end)
+{
+
+	return (rangeset_remove_pred(rs, start, end, rangeset_true_pred));
+}
+
+void
+rangeset_remove_all(struct rangeset *rs)
+{
+	struct rs_el *r;
+	uint64_t *r1;
+
+	for (;;) {
+		r1 = pctrie_lookup_ge(&rs->rs_trie, 0);
+		if (r1 == NULL)
+			break;
+		r = __containerof(r1, struct rs_el, re_start);
+		pctrie_remove(&rs->rs_trie, r->re_start, rs_node_free);
+		rs->rs_free_data(rs->rs_data_ctx, r);
+	}
+}
+
+void *
+rangeset_lookup(struct rangeset *rs, uint64_t place)
+{
+	struct rs_el *r;
+	uint64_t *r1;
+
+	rangeset_check(rs);
+	r1 = pctrie_lookup_le(&rs->rs_trie, place);
+	if (r1 == NULL)
+		return (NULL);
+	r = __containerof(r1, struct rs_el, re_start);
+	if (r->re_end <= place)
+		return (NULL);
+	return (r);
+}
+
+int
+rangeset_copy(struct rangeset *dst_rs, struct rangeset *src_rs)
+{
+	struct rs_el *src_r, *dst_r;
+	uint64_t cursor, *r1;
+	int error;
+
+	MPASS(pctrie_is_empty(&dst_rs->rs_trie));
+	rangeset_check(src_rs);
+	MPASS(dst_rs->rs_dup_data == src_rs->rs_dup_data);
+
+	error = 0;
+	for (cursor = 0;; cursor = src_r->re_start + 1) {
+		r1 = pctrie_lookup_ge(&src_rs->rs_trie, cursor);
+		if (r1 == NULL)
+			break;
+		src_r = __containerof(r1, struct rs_el, re_start);
+		dst_r = dst_rs->rs_dup_data(dst_rs->rs_data_ctx, src_r);
+		if (dst_r == NULL) {
+			error = ENOMEM;
+			break;
+		}
+		error = pctrie_insert(&dst_rs->rs_trie, &dst_r->re_start,
+		    rs_node_alloc);
+		if (error != 0)
+			break;
+	}
+	if (error != 0)
+		rangeset_remove_all(dst_rs);
+	return (error);
+}
+
+#ifdef DIAGNOSTIC
+static void
+rangeset_check(struct rangeset *rs)
+{
+	struct rs_el *r, *rp;
+	uint64_t cursor, *r1;
+
+	for (cursor = 0, rp = NULL;; cursor = r->re_start + 1, rp = r) {
+		r1 = pctrie_lookup_ge(&rs->rs_trie, cursor);
+		if (r1 == NULL)
+			break;
+		r = __containerof(r1, struct rs_el, re_start);
+		KASSERT(r->re_start < r->re_end,
+		    ("invalid interval rs %p elem %p (%#jx, %#jx)",
+		    rs, r, (uintmax_t)r->re_start,  (uintmax_t)r->re_end));
+		if (rp != NULL) {
+			KASSERT(rp->re_end <= r->re_start,
+			    ("non-ascending neighbors rs %p "
+			    "prev elem %p (%#jx, %#jx) elem %p (%#jx, %#jx)",
+			    rs, rp,  (uintmax_t)rp->re_start,
+			    (uintmax_t)rp->re_end, r,  (uintmax_t)r->re_start,
+			    (uintmax_t)r->re_end));
+		}
+	}
+}
+#endif
+
+#include "opt_ddb.h"
+#ifdef DDB
+#include <sys/kernel.h>
+#include <ddb/ddb.h>
+
+DB_SHOW_COMMAND(rangeset, rangeset_show_fn)
+{
+	struct rangeset *rs;
+	struct rs_el *r;
+	uint64_t cursor, *r1;
+
+	if (!have_addr) {
+		db_printf("show rangeset addr\n");
+		return;
+	}
+
+	rs = (struct rangeset *)addr;
+	db_printf("rangeset %p\n", rs);
+	for (cursor = 0;; cursor = r->re_start + 1) {
+		r1 = pctrie_lookup_ge(&rs->rs_trie, cursor);
+		if (r1 == NULL)
+			break;
+		r = __containerof(r1, struct rs_el, re_start);
+		db_printf("  el %p start %#jx end %#jx\n",
+		    r, r->re_start, r->re_end);
+	}
+}
+#endif

Copied: stable/12/sys/sys/_rangeset.h (from r344351, head/sys/sys/_rangeset.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/sys/sys/_rangeset.h	Wed Mar  6 17:25:11 2019	(r344846, copy of r344351, head/sys/sys/_rangeset.h)
@@ -0,0 +1,51 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ *
+ * Copyright (c) 2019 The FreeBSD Foundation
+ * All rights reserved.
+ *
+ * This software was developed by Konstantin Belousov <kib@FreeBSD.org>
+ * 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.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef	_SYS__RANGESET_H
+#define	_SYS__RANGESET_H
+
+#include <sys/_pctrie.h>
+
+typedef void *(*rs_dup_data_t)(void *ctx, void *data);
+typedef void (*rs_free_data_t)(void *ctx, void *data);
+
+struct rangeset {
+	struct pctrie	rs_trie;
+	rs_dup_data_t	rs_dup_data;
+	rs_free_data_t	rs_free_data;
+	void		*rs_data_ctx;
+	u_int		rs_alloc_flags;
+};
+
+#endif
+

Copied: stable/12/sys/sys/rangeset.h (from r344351, head/sys/sys/rangeset.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/sys/sys/rangeset.h	Wed Mar  6 17:25:11 2019	(r344846, copy of r344351, head/sys/sys/rangeset.h)
@@ -0,0 +1,88 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ *
+ * Copyright (c) 2019 The FreeBSD Foundation
+ * All rights reserved.
+ *
+ * This software was developed by Konstantin Belousov <kib@FreeBSD.org>
+ * 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.
+ *
+ * $FreeBSD$
+ */
+
+#ifndef	_SYS_RANGESET_H
+#define	_SYS_RANGESET_H
+
+#ifdef	_KERNEL
+
+#include <sys/_rangeset.h>
+
+typedef bool (*rs_pred_t)(void *ctx, void *r);
+
+/*
+ * This structure must be embedded at the start of the rangeset element.
+ */
+struct rs_el {
+	uint64_t	re_start;	/* pctrie key */
+	uint64_t	re_end;
+};
+
+void	rangeset_init(struct rangeset *rs, rs_dup_data_t dup_data,
+	    rs_free_data_t free_data, void *rs_data_ctx, u_int alloc_flags);
+void	rangeset_fini(struct rangeset *rs);
+
+bool	rangeset_check_empty(struct rangeset *rs, uint64_t start,
+	    uint64_t end);
+
+/*
+ * r point to the app data with struct rs_el at the beginning.
+ */
+int	rangeset_insert(struct rangeset *rs, uint64_t start, uint64_t end,
+	    void *r);
+
+/*
+ * Guarantees that on error the rangeset is not modified.  Remove
+ * might need to split element if its start/end completely cover the
+ * removed range, in which case ENOMEM might be returned.
+ */
+void	rangeset_remove_all(struct rangeset *rs);
+int	rangeset_remove(struct rangeset *rs, uint64_t start, uint64_t end);
+int	rangeset_remove_pred(struct rangeset *rs, uint64_t start,
+	    uint64_t end, rs_pred_t pred);
+
+/*
+ * Really returns the pointer to the data with struct rs_el embedded
+ * at the beginning.
+ */
+void	*rangeset_lookup(struct rangeset *rs, uint64_t place);
+
+/*
+ * Copies src_rs entries into dst_rs.  dst_rs must be empty.
+ * Leaves dst_rs empty on failure.
+ */
+int	rangeset_copy(struct rangeset *dst_rs, struct rangeset *src_rs);
+
+#endif
+
+#endif

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:26:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 22A1B1520AE1;
 Wed,  6 Mar 2019 17:26:32 +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)
 server-signature RSA-PSS (4096 bits)
 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 BAD4895525;
 Wed,  6 Mar 2019 17:26:31 +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 B09BC6BAF;
 Wed,  6 Mar 2019 17:26:31 +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 x26HQVtF073717;
 Wed, 6 Mar 2019 17:26:31 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HQV1C073715;
 Wed, 6 Mar 2019 17:26:31 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903061726.x26HQV1C073715@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:26: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: r344847 - in stable/12/sys/amd64: amd64 include
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/12/sys/amd64: amd64 include
X-SVN-Commit-Revision: 344847
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BAD4895525
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.92 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.92)[-0.923,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:26:32 -0000

Author: kib
Date: Wed Mar  6 17:26:30 2019
New Revision: 344847
URL: https://svnweb.freebsd.org/changeset/base/344847

Log:
  MFC r344352:
  amd64: add defines and decode protection keys and SGX page faults reasons.

Modified:
  stable/12/sys/amd64/amd64/trap.c
  stable/12/sys/amd64/include/pmap.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/amd64/amd64/trap.c
==============================================================================
--- stable/12/sys/amd64/amd64/trap.c	Wed Mar  6 17:25:11 2019	(r344846)
+++ stable/12/sys/amd64/amd64/trap.c	Wed Mar  6 17:26:30 2019	(r344847)
@@ -885,10 +885,12 @@ trap_fatal(frame, eva)
 #endif
 	if (type == T_PAGEFLT) {
 		printf("fault virtual address	= 0x%lx\n", eva);
-		printf("fault code		= %s %s %s, %s\n",
+		printf("fault code		= %s %s %s%s%s, %s\n",
 			code & PGEX_U ? "user" : "supervisor",
 			code & PGEX_W ? "write" : "read",
 			code & PGEX_I ? "instruction" : "data",
+			code & PGEX_PK ? " prot key" : " ",
+			code & PGEX_SGX ? " SGX" : " ",
 			code & PGEX_RSV ? "reserved bits in PTE" :
 			code & PGEX_P ? "protection violation" : "page not present");
 	}

Modified: stable/12/sys/amd64/include/pmap.h
==============================================================================
--- stable/12/sys/amd64/include/pmap.h	Wed Mar  6 17:25:11 2019	(r344846)
+++ stable/12/sys/amd64/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
@@ -131,6 +131,8 @@
 #define PGEX_U		0x04	/* access from User mode (UPL) */
 #define PGEX_RSV	0x08	/* reserved PTE field is non-zero */
 #define PGEX_I		0x10	/* during an instruction fetch */
+#define	PGEX_PK		0x20	/* protection key violation */
+#define	PGEX_SGX	0x40	/* SGX-related */
 
 /* 
  * undef the PG_xx macros that define bits in the regular x86 PTEs that

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:33:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 046F815211B2;
 Wed,  6 Mar 2019 17:33:09 +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)
 server-signature RSA-PSS (4096 bits)
 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 A4DB495BC7;
 Wed,  6 Mar 2019 17:33:08 +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 6A6236D51;
 Wed,  6 Mar 2019 17:33:08 +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 x26HX8OJ079182;
 Wed, 6 Mar 2019 17:33:08 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HX5ra079167;
 Wed, 6 Mar 2019 17:33:05 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903061733.x26HX5ra079167@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:33: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: r344848 - in stable/12/sys: amd64/amd64 amd64/include
 arm/include arm64/include i386/include mips/include powerpc/include
 riscv/include sparc64/include vm x86/include
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/12/sys: amd64/amd64 amd64/include arm/include
 arm64/include i386/include mips/include powerpc/include riscv/include
 sparc64/include vm x86/include
X-SVN-Commit-Revision: 344848
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A4DB495BC7
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.93)[-0.931,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:33:09 -0000

Author: kib
Date: Wed Mar  6 17:33:05 2019
New Revision: 344848
URL: https://svnweb.freebsd.org/changeset/base/344848

Log:
  MFC r344353:
  Add kernel support for Intel userspace protection keys feature on
  Skylake Xeons.

Modified:
  stable/12/sys/amd64/amd64/initcpu.c
  stable/12/sys/amd64/amd64/pmap.c
  stable/12/sys/amd64/amd64/sys_machdep.c
  stable/12/sys/amd64/amd64/trap.c
  stable/12/sys/amd64/include/pmap.h
  stable/12/sys/arm/include/pmap.h
  stable/12/sys/arm64/include/pmap.h
  stable/12/sys/i386/include/pmap.h
  stable/12/sys/mips/include/pmap.h
  stable/12/sys/powerpc/include/pmap.h
  stable/12/sys/riscv/include/pmap.h
  stable/12/sys/sparc64/include/pmap.h
  stable/12/sys/vm/vm_fault.c
  stable/12/sys/vm/vm_map.c
  stable/12/sys/x86/include/sysarch.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/amd64/amd64/initcpu.c
==============================================================================
--- stable/12/sys/amd64/amd64/initcpu.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/amd64/amd64/initcpu.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -233,6 +233,9 @@ initializecpu(void)
 	if (cpu_stdext_feature & CPUID_STDEXT_FSGSBASE)
 		cr4 |= CR4_FSGSBASE;
 
+	if (cpu_stdext_feature2 & CPUID_STDEXT2_PKU)
+		cr4 |= CR4_PKE;
+
 	/*
 	 * Postpone enabling the SMEP on the boot CPU until the page
 	 * tables are switched from the boot loader identity mapping

Modified: stable/12/sys/amd64/amd64/pmap.c
==============================================================================
--- stable/12/sys/amd64/amd64/pmap.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/amd64/amd64/pmap.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -48,7 +48,7 @@
  */
 /*-
  * Copyright (c) 2003 Networks Associates Technology, Inc.
- * Copyright (c) 2014-2018 The FreeBSD Foundation
+ * Copyright (c) 2014-2019 The FreeBSD Foundation
  * All rights reserved.
  *
  * This software was developed for the FreeBSD Project by Jake Burkholder,
@@ -121,6 +121,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/mman.h>
 #include <sys/mutex.h>
 #include <sys/proc.h>
+#include <sys/rangeset.h>
 #include <sys/rwlock.h>
 #include <sys/sx.h>
 #include <sys/turnstile.h>
@@ -155,6 +156,7 @@ __FBSDID("$FreeBSD$");
 #ifdef SMP
 #include <machine/smp.h>
 #endif
+#include <machine/sysarch.h>
 #include <machine/tss.h>
 
 static __inline boolean_t
@@ -285,6 +287,13 @@ pmap_modified_bit(pmap_t pmap)
 	return (mask);
 }
 
+static __inline pt_entry_t
+pmap_pku_mask_bit(pmap_t pmap)
+{
+
+	return (pmap->pm_type == PT_X86 ? X86_PG_PKU_MASK : 0);
+}
+
 #if !defined(DIAGNOSTIC)
 #ifdef __GNUC_GNU_INLINE__
 #define PMAP_INLINE	__attribute__((__gnu_inline__)) inline
@@ -429,6 +438,22 @@ static pml4_entry_t *pti_pml4;
 static vm_pindex_t pti_pg_idx;
 static bool pti_finalized;
 
+struct pmap_pkru_range {
+	struct rs_el	pkru_rs_el;
+	u_int		pkru_keyidx;
+	int		pkru_flags;
+};
+
+static uma_zone_t pmap_pkru_ranges_zone;
+static bool pmap_pkru_same(pmap_t pmap, vm_offset_t sva, vm_offset_t eva);
+static pt_entry_t pmap_pkru_get(pmap_t pmap, vm_offset_t va);
+static void pmap_pkru_on_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva);
+static void *pkru_dup_range(void *ctx, void *data);
+static void pkru_free_range(void *ctx, void *node);
+static int pmap_pkru_copy(pmap_t dst_pmap, pmap_t src_pmap);
+static int pmap_pkru_deassign(pmap_t pmap, vm_offset_t sva, vm_offset_t eva);
+static void pmap_pkru_deassign_all(pmap_t pmap);
+
 static int
 pmap_pcid_save_cnt_proc(SYSCTL_HANDLER_ARGS)
 {
@@ -2851,6 +2876,12 @@ pmap_pinit0(pmap_t pmap)
 		pmap->pm_pcids[i].pm_gen = 1;
 	}
 	pmap_activate_boot(pmap);
+
+	if ((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0) {
+		pmap_pkru_ranges_zone = uma_zcreate("pkru ranges",
+		    sizeof(struct pmap_pkru_range), NULL, NULL, NULL, NULL,
+		    UMA_ALIGN_PTR, 0);
+	}
 }
 
 void
@@ -2939,6 +2970,10 @@ pmap_pinit_type(pmap_t pmap, enum pmap_type pm_type, i
 			pmap_pinit_pml4_pti(pml4pgu);
 			pmap->pm_ucr3 = VM_PAGE_TO_PHYS(pml4pgu);
 		}
+		if ((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0) {
+			rangeset_init(&pmap->pm_pkru, pkru_dup_range,
+			    pkru_free_range, pmap, M_NOWAIT);
+		}
 	}
 
 	pmap->pm_root.rt_root = 0;
@@ -3235,6 +3270,9 @@ pmap_release(pmap_t pmap)
 		vm_page_unwire_noq(m);
 		vm_page_free(m);
 	}
+	if (pmap->pm_type == PT_X86 &&
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0)
+		rangeset_fini(&pmap->pm_pkru);
 }
 
 static int
@@ -4065,7 +4103,7 @@ pmap_demote_pde_locked(pmap_t pmap, pd_entry_t *pde, v
 {
 	pd_entry_t newpde, oldpde;
 	pt_entry_t *firstpte, newpte;
-	pt_entry_t PG_A, PG_G, PG_M, PG_RW, PG_V;
+	pt_entry_t PG_A, PG_G, PG_M, PG_PKU_MASK, PG_RW, PG_V;
 	vm_paddr_t mptepa;
 	vm_page_t mpte;
 	struct spglist free;
@@ -4078,6 +4116,7 @@ pmap_demote_pde_locked(pmap_t pmap, pd_entry_t *pde, v
 	PG_RW = pmap_rw_bit(pmap);
 	PG_V = pmap_valid_bit(pmap);
 	PG_PTE_CACHE = pmap_cache_mask(pmap, 0);
+	PG_PKU_MASK = pmap_pku_mask_bit(pmap);
 
 	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
 	oldpde = *pde;
@@ -4510,6 +4549,7 @@ pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t 
 out:
 	if (anyvalid)
 		pmap_invalidate_all(pmap);
+	pmap_pkru_on_remove(pmap, sva, eva);
 	PMAP_UNLOCK(pmap);
 	pmap_delayed_invl_finished();
 	vm_page_free_pages_toq(&free, true);
@@ -4821,7 +4861,7 @@ pmap_promote_pde(pmap_t pmap, pd_entry_t *pde, vm_offs
 {
 	pd_entry_t newpde;
 	pt_entry_t *firstpte, oldpte, pa, *pte;
-	pt_entry_t PG_G, PG_A, PG_M, PG_RW, PG_V;
+	pt_entry_t PG_G, PG_A, PG_M, PG_RW, PG_V, PG_PKU_MASK;
 	vm_page_t mpte;
 	int PG_PTE_CACHE;
 
@@ -4830,6 +4870,7 @@ pmap_promote_pde(pmap_t pmap, pd_entry_t *pde, vm_offs
 	PG_M = pmap_modified_bit(pmap);
 	PG_V = pmap_valid_bit(pmap);
 	PG_RW = pmap_rw_bit(pmap);
+	PG_PKU_MASK = pmap_pku_mask_bit(pmap);
 	PG_PTE_CACHE = pmap_cache_mask(pmap, 0);
 
 	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
@@ -5057,6 +5098,8 @@ retry:
 
 	origpte = *pte;
 	pv = NULL;
+	if (va < VM_MAXUSER_ADDRESS && pmap->pm_type == PT_X86)
+		newpte |= pmap_pkru_get(pmap, va);
 
 	/*
 	 * Is the specified virtual address already mapped?
@@ -5276,6 +5319,25 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t va, pd_entry_t
 		    " in pmap %p", va, pmap);
 		return (KERN_RESOURCE_SHORTAGE);
 	}
+
+	/*
+	 * If pkru is not same for the whole pde range, return failure
+	 * and let vm_fault() cope.  Check after pde allocation, since
+	 * it could sleep.
+	 */
+	if (!pmap_pkru_same(pmap, va, va + NBPDR)) {
+		SLIST_INIT(&free);
+		if (pmap_unwire_ptp(pmap, va, pdpg, &free)) {
+			pmap_invalidate_page(pmap, va);
+			vm_page_free_pages_toq(&free, true);
+		}
+		return (KERN_FAILURE);
+	}
+	if (va < VM_MAXUSER_ADDRESS && pmap->pm_type == PT_X86) {
+		newpde &= ~X86_PG_PKU_MASK;
+		newpde |= pmap_pkru_get(pmap, va);
+	}
+
 	pde = (pd_entry_t *)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(pdpg));
 	pde = &pde[pmap_pde_index(va)];
 	oldpde = *pde;
@@ -5535,7 +5597,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, v
 	if ((prot & VM_PROT_EXECUTE) == 0)
 		newpte |= pg_nx;
 	if (va < VM_MAXUSER_ADDRESS)
-		newpte |= PG_U;
+		newpte |= PG_U | pmap_pkru_get(pmap, va);
 	pte_store(pte, newpte);
 	return (mpte);
 }
@@ -5911,6 +5973,36 @@ out:
 	PMAP_UNLOCK(dst_pmap);
 }
 
+int
+pmap_vmspace_copy(pmap_t dst_pmap, pmap_t src_pmap)
+{
+	int error;
+
+	if (dst_pmap->pm_type != src_pmap->pm_type ||
+	    dst_pmap->pm_type != PT_X86 ||
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) == 0)
+		return (0);
+	for (;;) {
+		if (dst_pmap < src_pmap) {
+			PMAP_LOCK(dst_pmap);
+			PMAP_LOCK(src_pmap);
+		} else {
+			PMAP_LOCK(src_pmap);
+			PMAP_LOCK(dst_pmap);
+		}
+		error = pmap_pkru_copy(dst_pmap, src_pmap);
+		/* Clean up partial copy on failure due to no memory. */
+		if (error == ENOMEM)
+			pmap_pkru_deassign_all(dst_pmap);
+		PMAP_UNLOCK(src_pmap);
+		PMAP_UNLOCK(dst_pmap);
+		if (error != ENOMEM)
+			break;
+		vm_wait(NULL);
+	}
+	return (error);
+}
+
 /*
  * Zero the specified hardware page.
  */
@@ -6310,6 +6402,7 @@ pmap_remove_pages(pmap_t pmap)
 	if (lock != NULL)
 		rw_wunlock(lock);
 	pmap_invalidate_all(pmap);
+	pmap_pkru_deassign_all(pmap);
 	PMAP_UNLOCK(pmap);
 	vm_page_free_pages_toq(&free, true);
 }
@@ -8944,6 +9037,285 @@ pmap_pti_remove_kva(vm_offset_t sva, vm_offset_t eva)
 	}
 	pmap_invalidate_range(kernel_pmap, sva, eva);
 	VM_OBJECT_WUNLOCK(pti_obj);
+}
+
+static void *
+pkru_dup_range(void *ctx __unused, void *data)
+{
+	struct pmap_pkru_range *node, *new_node;
+
+	new_node = uma_zalloc(pmap_pkru_ranges_zone, M_NOWAIT);
+	if (new_node == NULL)
+		return (NULL);
+	node = data;
+	memcpy(new_node, node, sizeof(*node));
+	return (new_node);
+}
+
+static void
+pkru_free_range(void *ctx __unused, void *node)
+{
+
+	uma_zfree(pmap_pkru_ranges_zone, node);
+}
+
+static int
+pmap_pkru_assign(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, u_int keyidx,
+    int flags)
+{
+	struct pmap_pkru_range *ppr;
+	int error;
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	MPASS(pmap->pm_type == PT_X86);
+	MPASS((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0);
+	if ((flags & AMD64_PKRU_EXCL) != 0 &&
+	    !rangeset_check_empty(&pmap->pm_pkru, sva, eva))
+		return (EBUSY);
+	ppr = uma_zalloc(pmap_pkru_ranges_zone, M_NOWAIT);
+	if (ppr == NULL)
+		return (ENOMEM);
+	ppr->pkru_keyidx = keyidx;
+	ppr->pkru_flags = flags & AMD64_PKRU_PERSIST;
+	error = rangeset_insert(&pmap->pm_pkru, sva, eva, ppr);
+	if (error != 0)
+		uma_zfree(pmap_pkru_ranges_zone, ppr);
+	return (error);
+}
+
+static int
+pmap_pkru_deassign(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+{
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	MPASS(pmap->pm_type == PT_X86);
+	MPASS((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0);
+	return (rangeset_remove(&pmap->pm_pkru, sva, eva));
+}
+
+static void
+pmap_pkru_deassign_all(pmap_t pmap)
+{
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	if (pmap->pm_type == PT_X86 &&
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0)
+		rangeset_remove_all(&pmap->pm_pkru);
+}
+
+static bool
+pmap_pkru_same(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+{
+	struct pmap_pkru_range *ppr, *prev_ppr;
+	vm_offset_t va;
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	if (pmap->pm_type != PT_X86 ||
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) == 0 ||
+	    sva >= VM_MAXUSER_ADDRESS)
+		return (true);
+	MPASS(eva <= VM_MAXUSER_ADDRESS);
+	for (va = sva, prev_ppr = NULL; va < eva;) {
+		ppr = rangeset_lookup(&pmap->pm_pkru, va);
+		if ((ppr == NULL) ^ (prev_ppr == NULL))
+			return (false);
+		if (ppr == NULL) {
+			va += PAGE_SIZE;
+			continue;
+		}
+		if (prev_ppr->pkru_keyidx != ppr->pkru_keyidx)
+			return (false);
+		va = ppr->pkru_rs_el.re_end;
+	}
+	return (true);
+}
+
+static pt_entry_t
+pmap_pkru_get(pmap_t pmap, vm_offset_t va)
+{
+	struct pmap_pkru_range *ppr;
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	if (pmap->pm_type != PT_X86 ||
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) == 0 ||
+	    va >= VM_MAXUSER_ADDRESS)
+		return (0);
+	ppr = rangeset_lookup(&pmap->pm_pkru, va);
+	if (ppr != NULL)
+		return (X86_PG_PKU(ppr->pkru_keyidx));
+	return (0);
+}
+
+static bool
+pred_pkru_on_remove(void *ctx __unused, void *r)
+{
+	struct pmap_pkru_range *ppr;
+
+	ppr = r;
+	return ((ppr->pkru_flags & AMD64_PKRU_PERSIST) == 0);
+}
+
+static void
+pmap_pkru_on_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+{
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	if (pmap->pm_type == PT_X86 &&
+	    (cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0) {
+		rangeset_remove_pred(&pmap->pm_pkru, sva, eva,
+		    pred_pkru_on_remove);
+	}
+}
+
+static int
+pmap_pkru_copy(pmap_t dst_pmap, pmap_t src_pmap)
+{
+
+	PMAP_LOCK_ASSERT(dst_pmap, MA_OWNED);
+	PMAP_LOCK_ASSERT(src_pmap, MA_OWNED);
+	MPASS(dst_pmap->pm_type == PT_X86);
+	MPASS(src_pmap->pm_type == PT_X86);
+	MPASS((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) != 0);
+	if (src_pmap->pm_pkru.rs_data_ctx == NULL)
+		return (0);
+	return (rangeset_copy(&dst_pmap->pm_pkru, &src_pmap->pm_pkru));
+}
+
+static void
+pmap_pkru_update_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva,
+    u_int keyidx)
+{
+	pml4_entry_t *pml4e;
+	pdp_entry_t *pdpe;
+	pd_entry_t newpde, ptpaddr, *pde;
+	pt_entry_t newpte, *ptep, pte;
+	vm_offset_t va, va_next;
+	bool changed;
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	MPASS(pmap->pm_type == PT_X86);
+	MPASS(keyidx <= PMAP_MAX_PKRU_IDX);
+
+	for (changed = false, va = sva; va < eva; va = va_next) {
+		pml4e = pmap_pml4e(pmap, va);
+		if ((*pml4e & X86_PG_V) == 0) {
+			va_next = (va + NBPML4) & ~PML4MASK;
+			if (va_next < va)
+				va_next = eva;
+			continue;
+		}
+
+		pdpe = pmap_pml4e_to_pdpe(pml4e, va);
+		if ((*pdpe & X86_PG_V) == 0) {
+			va_next = (va + NBPDP) & ~PDPMASK;
+			if (va_next < va)
+				va_next = eva;
+			continue;
+		}
+
+		va_next = (va + NBPDR) & ~PDRMASK;
+		if (va_next < va)
+			va_next = eva;
+
+		pde = pmap_pdpe_to_pde(pdpe, va);
+		ptpaddr = *pde;
+		if (ptpaddr == 0)
+			continue;
+
+		MPASS((ptpaddr & X86_PG_V) != 0);
+		if ((ptpaddr & PG_PS) != 0) {
+			if (va + NBPDR == va_next && eva >= va_next) {
+				newpde = (ptpaddr & ~X86_PG_PKU_MASK) |
+				    X86_PG_PKU(keyidx);
+				if (newpde != ptpaddr) {
+					*pde = newpde;
+					changed = true;
+				}
+				continue;
+			} else if (!pmap_demote_pde(pmap, pde, va)) {
+				continue;
+			}
+		}
+
+		if (va_next > eva)
+			va_next = eva;
+
+		for (ptep = pmap_pde_to_pte(pde, va); va != va_next;
+		    ptep++, va += PAGE_SIZE) {
+			pte = *ptep;
+			if ((pte & X86_PG_V) == 0)
+				continue;
+			newpte = (pte & ~X86_PG_PKU_MASK) | X86_PG_PKU(keyidx);
+			if (newpte != pte) {
+				*ptep = newpte;
+				changed = true;
+			}
+		}
+	}
+	if (changed)
+		pmap_invalidate_range(pmap, sva, eva);
+}
+
+static int
+pmap_pkru_check_uargs(pmap_t pmap, vm_offset_t sva, vm_offset_t eva,
+    u_int keyidx, int flags)
+{
+
+	if (pmap->pm_type != PT_X86 || keyidx > PMAP_MAX_PKRU_IDX ||
+	    (flags & ~(AMD64_PKRU_PERSIST | AMD64_PKRU_EXCL)) != 0)
+		return (EINVAL);
+	if (eva <= sva || eva > VM_MAXUSER_ADDRESS)
+		return (EFAULT);
+	if ((cpu_stdext_feature2 & CPUID_STDEXT2_PKU) == 0)
+		return (ENOTSUP);
+	return (0);
+}
+
+int
+pmap_pkru_set(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, u_int keyidx,
+    int flags)
+{
+	int error;
+
+	sva = trunc_page(sva);
+	eva = round_page(eva);
+	error = pmap_pkru_check_uargs(pmap, sva, eva, keyidx, flags);
+	if (error != 0)
+		return (error);
+	for (;;) {
+		PMAP_LOCK(pmap);
+		error = pmap_pkru_assign(pmap, sva, eva, keyidx, flags);
+		if (error == 0)
+			pmap_pkru_update_range(pmap, sva, eva, keyidx);
+		PMAP_UNLOCK(pmap);
+		if (error != ENOMEM)
+			break;
+		vm_wait(NULL);
+	}
+	return (error);
+}
+
+int
+pmap_pkru_clear(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
+{
+	int error;
+
+	sva = trunc_page(sva);
+	eva = round_page(eva);
+	error = pmap_pkru_check_uargs(pmap, sva, eva, 0, 0);
+	if (error != 0)
+		return (error);
+	for (;;) {
+		PMAP_LOCK(pmap);
+		error = pmap_pkru_deassign(pmap, sva, eva);
+		if (error == 0)
+			pmap_pkru_update_range(pmap, sva, eva, 0);
+		PMAP_UNLOCK(pmap);
+		if (error != ENOMEM)
+			break;
+		vm_wait(NULL);
+	}
+	return (error);
 }
 
 #include "opt_ddb.h"

Modified: stable/12/sys/amd64/amd64/sys_machdep.c
==============================================================================
--- stable/12/sys/amd64/amd64/sys_machdep.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/amd64/amd64/sys_machdep.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$");
 #include <sys/lock.h>
 #include <sys/malloc.h>
 #include <sys/mutex.h>
+#include <sys/pcpu.h>
 #include <sys/priv.h>
 #include <sys/proc.h>
 #include <sys/smp.h>
@@ -53,6 +54,7 @@ __FBSDID("$FreeBSD$");
 #include <vm/vm.h>
 #include <vm/pmap.h>
 #include <vm/vm_kern.h>		/* for kernel_map */
+#include <vm/vm_map.h>
 #include <vm/vm_extern.h>
 
 #include <machine/frame.h>
@@ -170,13 +172,16 @@ update_gdt_fsbase(struct thread *td, uint32_t base)
 int
 sysarch(struct thread *td, struct sysarch_args *uap)
 {
-	int error = 0;
-	struct pcb *pcb = curthread->td_pcb;
+	struct pcb *pcb;
+	struct vm_map *map;
 	uint32_t i386base;
 	uint64_t a64base;
 	struct i386_ioperm_args iargs;
 	struct i386_get_xfpustate i386xfpu;
+	struct i386_set_pkru i386pkru;
 	struct amd64_get_xfpustate a64xfpu;
+	struct amd64_set_pkru a64pkru;
+	int error;
 
 #ifdef CAPABILITY_MODE
 	/*
@@ -194,11 +199,15 @@ sysarch(struct thread *td, struct sysarch_args *uap)
 		case I386_GET_GSBASE:
 		case I386_SET_GSBASE:
 		case I386_GET_XFPUSTATE:
+		case I386_SET_PKRU:
+		case I386_CLEAR_PKRU:
 		case AMD64_GET_FSBASE:
 		case AMD64_SET_FSBASE:
 		case AMD64_GET_GSBASE:
 		case AMD64_SET_GSBASE:
 		case AMD64_GET_XFPUSTATE:
+		case AMD64_SET_PKRU:
+		case AMD64_CLEAR_PKRU:
 			break;
 
 		case I386_SET_IOPERM:
@@ -214,6 +223,10 @@ sysarch(struct thread *td, struct sysarch_args *uap)
 
 	if (uap->op == I386_GET_LDT || uap->op == I386_SET_LDT)
 		return (sysarch_ldt(td, uap, UIO_USERSPACE));
+
+	error = 0;
+	pcb = td->td_pcb;
+
 	/*
 	 * XXXKIB check that the BSM generation code knows to encode
 	 * the op argument.
@@ -233,11 +246,27 @@ sysarch(struct thread *td, struct sysarch_args *uap)
 		a64xfpu.addr = (void *)(uintptr_t)i386xfpu.addr;
 		a64xfpu.len = i386xfpu.len;
 		break;
+	case I386_SET_PKRU:
+	case I386_CLEAR_PKRU:
+		if ((error = copyin(uap->parms, &i386pkru,
+		    sizeof(struct i386_set_pkru))) != 0)
+			return (error);
+		a64pkru.addr = (void *)(uintptr_t)i386pkru.addr;
+		a64pkru.len = i386pkru.len;
+		a64pkru.keyidx = i386pkru.keyidx;
+		a64pkru.flags = i386pkru.flags;
+		break;
 	case AMD64_GET_XFPUSTATE:
 		if ((error = copyin(uap->parms, &a64xfpu,
 		    sizeof(struct amd64_get_xfpustate))) != 0)
 			return (error);
 		break;
+	case AMD64_SET_PKRU:
+	case AMD64_CLEAR_PKRU:
+		if ((error = copyin(uap->parms, &a64pkru,
+		    sizeof(struct amd64_set_pkru))) != 0)
+			return (error);
+		break;
 	default:
 		break;
 	}
@@ -324,6 +353,34 @@ sysarch(struct thread *td, struct sysarch_args *uap)
 		fpugetregs(td);
 		error = copyout((char *)(get_pcb_user_save_td(td) + 1),
 		    a64xfpu.addr, a64xfpu.len);
+		break;
+
+	case I386_SET_PKRU:
+	case AMD64_SET_PKRU:
+		/*
+		 * Read-lock the map to synchronize with parallel
+		 * pmap_vmspace_copy() on fork.
+		 */
+		map = &td->td_proc->p_vmspace->vm_map;
+		vm_map_lock_read(map);
+		error = pmap_pkru_set(PCPU_GET(curpmap),
+		    (vm_offset_t)a64pkru.addr, (vm_offset_t)a64pkru.addr +
+		    a64pkru.len, a64pkru.keyidx, a64pkru.flags);
+		vm_map_unlock_read(map);
+		break;
+
+	case I386_CLEAR_PKRU:
+	case AMD64_CLEAR_PKRU:
+		if (a64pkru.flags != 0 || a64pkru.keyidx != 0) {
+			error = EINVAL;
+			break;
+		}
+		map = &td->td_proc->p_vmspace->vm_map;
+		vm_map_lock_read(map);
+		error = pmap_pkru_clear(PCPU_GET(curpmap),
+		    (vm_offset_t)a64pkru.addr,
+		    (vm_offset_t)a64pkru.addr + a64pkru.len);
+		vm_map_unlock(map);
 		break;
 
 	default:

Modified: stable/12/sys/amd64/amd64/trap.c
==============================================================================
--- stable/12/sys/amd64/amd64/trap.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/amd64/amd64/trap.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -808,6 +808,20 @@ trap_pfault(struct trapframe *frame, int usermode)
 	}
 
 	/*
+	 * User-mode protection key violation (PKU).  May happen
+	 * either from usermode or from kernel if copyin accessed
+	 * key-protected mapping.
+	 */
+	if ((frame->tf_err & PGEX_PK) != 0) {
+		if (eva > VM_MAXUSER_ADDRESS) {
+			trap_fatal(frame, eva);
+			return (-1);
+		}
+		rv = KERN_PROTECTION_FAILURE;
+		goto after_vmfault;
+	}
+
+	/*
 	 * If nx protection of the usermode portion of kernel page
 	 * tables caused trap, panic.
 	 */
@@ -842,6 +856,7 @@ trap_pfault(struct trapframe *frame, int usermode)
 #endif
 		return (0);
 	}
+after_vmfault:
 	if (!usermode) {
 		if (td->td_intr_nesting_level == 0 &&
 		    curpcb->pcb_onfault != NULL) {

Modified: stable/12/sys/amd64/include/pmap.h
==============================================================================
--- stable/12/sys/amd64/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/amd64/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -66,6 +66,7 @@
 #define	X86_PG_AVAIL2	0x400	/*   <	programmers use		*/
 #define	X86_PG_AVAIL3	0x800	/*    \				*/
 #define	X86_PG_PDE_PAT	0x1000	/* PAT	PAT index		*/
+#define	X86_PG_PKU(idx)	((pt_entry_t)idx << 59)
 #define	X86_PG_NX	(1ul<<63) /* No-execute */
 #define	X86_PG_AVAIL(x)	(1ul << (x))
 
@@ -73,6 +74,10 @@
 #define	X86_PG_PDE_CACHE (X86_PG_PDE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
 #define	X86_PG_PTE_CACHE (X86_PG_PTE_PAT | X86_PG_NC_PWT | X86_PG_NC_PCD)
 
+/* Protection keys indexes */
+#define	PMAP_MAX_PKRU_IDX	0xf
+#define	X86_PG_PKU_MASK		X86_PG_PKU(PMAP_MAX_PKRU_IDX)
+
 /*
  * Intel extended page table (EPT) bit definitions.
  */
@@ -120,7 +125,7 @@
  * (PTE) page mappings have identical settings for the following fields:
  */
 #define	PG_PTE_PROMOTE	(PG_NX | PG_MANAGED | PG_W | PG_G | PG_PTE_CACHE | \
-	    PG_M | PG_A | PG_U | PG_RW | PG_V)
+	    PG_M | PG_A | PG_U | PG_RW | PG_V | PG_PKU_MASK)
 
 /*
  * Page Protection Exception bits
@@ -242,6 +247,8 @@
 #include <sys/_cpuset.h>
 #include <sys/_lock.h>
 #include <sys/_mutex.h>
+#include <sys/_pctrie.h>
+#include <sys/_rangeset.h>
 
 #include <vm/_vm_radix.h>
 
@@ -336,6 +343,7 @@ struct pmap {
 	long			pm_eptgen;	/* EPT pmap generation id */
 	int			pm_flags;
 	struct pmap_pcids	pm_pcids[MAXCPU];
+	struct rangeset		pm_pkru;
 };
 
 /* flags */
@@ -454,6 +462,10 @@ void	pmap_pti_pcid_invalidate(uint64_t ucr3, uint64_t 
 void	pmap_pti_pcid_invlpg(uint64_t ucr3, uint64_t kcr3, vm_offset_t va);
 void	pmap_pti_pcid_invlrng(uint64_t ucr3, uint64_t kcr3, vm_offset_t sva,
 	    vm_offset_t eva);
+int	pmap_pkru_clear(pmap_t pmap, vm_offset_t sva, vm_offset_t eva);
+int	pmap_pkru_set(pmap_t pmap, vm_offset_t sva, vm_offset_t eva,
+	    u_int keyidx, int flags);
+int	pmap_vmspace_copy(pmap_t dst_pmap, pmap_t src_pmap);
 #endif /* _KERNEL */
 
 /* Return various clipped indexes for a given VA */

Modified: stable/12/sys/arm/include/pmap.h
==============================================================================
--- stable/12/sys/arm/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/arm/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -71,5 +71,12 @@ void pmap_kremove_device(vm_offset_t, vm_size_t);
 vm_paddr_t pmap_kextract(vm_offset_t);
 #define vtophys(va)	pmap_kextract((vm_offset_t)(va))
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif	/* _KERNEL */
 #endif	/* !_MACHINE_PMAP_H_ */

Modified: stable/12/sys/arm64/include/pmap.h
==============================================================================
--- stable/12/sys/arm64/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/arm64/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -171,6 +171,13 @@ struct pcb *pmap_switch(struct thread *, struct thread
 
 #define	pmap_page_is_mapped(m)	(!TAILQ_EMPTY(&(m)->md.pv_list))
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif	/* _KERNEL */
 
 #endif	/* !LOCORE */

Modified: stable/12/sys/i386/include/pmap.h
==============================================================================
--- stable/12/sys/i386/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/i386/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -372,6 +372,13 @@ extern vm_offset_t virtual_end;
 #define	pmap_page_is_write_mapped(m)	(((m)->aflags & PGA_WRITEABLE) != 0)
 #define	pmap_unmapbios(va, sz)	pmap_unmapdev((va), (sz))
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 /*
  * Only the following functions or macros may be used before pmap_bootstrap()
  * is called: pmap_kenter(), pmap_kextract(), pmap_kremove(), vtophys(), and

Modified: stable/12/sys/mips/include/pmap.h
==============================================================================
--- stable/12/sys/mips/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/mips/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -185,6 +185,13 @@ int pmap_emulate_modified(pmap_t pmap, vm_offset_t va)
 void pmap_page_set_memattr(vm_page_t, vm_memattr_t);
 int pmap_change_attr(vm_offset_t, vm_size_t, vm_memattr_t);
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif				/* _KERNEL */
 
 #endif				/* !LOCORE */

Modified: stable/12/sys/powerpc/include/pmap.h
==============================================================================
--- stable/12/sys/powerpc/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/powerpc/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -288,6 +288,13 @@ vm_offset_t pmap_early_io_map(vm_paddr_t pa, vm_size_t
 void pmap_early_io_unmap(vm_offset_t va, vm_size_t size);
 void pmap_track_page(pmap_t pmap, vm_offset_t va);
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif
 
 #endif /* !_MACHINE_PMAP_H_ */

Modified: stable/12/sys/riscv/include/pmap.h
==============================================================================
--- stable/12/sys/riscv/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/riscv/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -155,6 +155,13 @@ bool	pmap_get_tables(pmap_t, vm_offset_t, pd_entry_t *
 
 int pmap_fault_fixup(pmap_t, vm_offset_t, vm_prot_t);
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif	/* _KERNEL */
 
 #endif	/* !LOCORE */

Modified: stable/12/sys/sparc64/include/pmap.h
==============================================================================
--- stable/12/sys/sparc64/include/pmap.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/sparc64/include/pmap.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -128,4 +128,11 @@ SYSCTL_DECL(_debug_pmap_stats);
 
 #endif
 
+static inline int
+pmap_vmspace_copy(pmap_t dst_pmap __unused, pmap_t src_pmap __unused)
+{
+
+	return (0);
+}
+
 #endif /* !_MACHINE_PMAP_H_ */

Modified: stable/12/sys/vm/vm_fault.c
==============================================================================
--- stable/12/sys/vm/vm_fault.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/vm/vm_fault.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -479,8 +479,20 @@ vm_fault_populate(struct faultstate *fs, vm_prot_t pro
 			    fault_flags, true);
 		}
 		VM_OBJECT_WUNLOCK(fs->first_object);
-		pmap_enter(fs->map->pmap, vaddr, m, prot, fault_type | (wired ?
-		    PMAP_ENTER_WIRED : 0), psind);
+		rv = pmap_enter(fs->map->pmap, vaddr, m, prot, fault_type |
+		    (wired ? PMAP_ENTER_WIRED : 0), psind);
+#if defined(__amd64__)
+		if (psind > 0 && rv == KERN_FAILURE) {
+			for (i = 0; i < npages; i++) {
+				rv = pmap_enter(fs->map->pmap, vaddr + ptoa(i),
+				    &m[i], prot, fault_type |
+				    (wired ? PMAP_ENTER_WIRED : 0), 0);
+				MPASS(rv == KERN_SUCCESS);
+			}
+		}
+#else
+		MPASS(rv == KERN_SUCCESS);
+#endif
 		VM_OBJECT_WLOCK(fs->first_object);
 		m_mtx = NULL;
 		for (i = 0; i < npages; i++) {

Modified: stable/12/sys/vm/vm_map.c
==============================================================================
--- stable/12/sys/vm/vm_map.c	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/vm/vm_map.c	Wed Mar  6 17:33:05 2019	(r344848)
@@ -3424,7 +3424,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c
 	vm_map_t new_map, old_map;
 	vm_map_entry_t new_entry, old_entry;
 	vm_object_t object;
-	int locked;
+	int error, locked;
 	vm_inherit_t inh;
 
 	old_map = &vm1->vm_map;
@@ -3433,6 +3433,7 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c
 	    pmap_pinit);
 	if (vm2 == NULL)
 		return (NULL);
+
 	vm2->vm_taddr = vm1->vm_taddr;
 	vm2->vm_daddr = vm1->vm_daddr;
 	vm2->vm_maxsaddr = vm1->vm_maxsaddr;
@@ -3442,6 +3443,15 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_c
 	new_map = &vm2->vm_map;
 	locked = vm_map_trylock(new_map); /* trylock to silence WITNESS */
 	KASSERT(locked, ("vmspace_fork: lock failed"));
+
+	error = pmap_vmspace_copy(new_map->pmap, old_map->pmap);
+	if (error != 0) {
+		sx_xunlock(&old_map->lock);
+		sx_xunlock(&new_map->lock);
+		vm_map_process_deferred();
+		vmspace_free(vm2);
+		return (NULL);
+	}
 
 	old_entry = old_map->header.next;
 

Modified: stable/12/sys/x86/include/sysarch.h
==============================================================================
--- stable/12/sys/x86/include/sysarch.h	Wed Mar  6 17:26:30 2019	(r344847)
+++ stable/12/sys/x86/include/sysarch.h	Wed Mar  6 17:33:05 2019	(r344848)
@@ -52,6 +52,8 @@
 #define	I386_GET_GSBASE		9
 #define	I386_SET_GSBASE		10
 #define	I386_GET_XFPUSTATE	11
+#define	I386_SET_PKRU		12
+#define	I386_CLEAR_PKRU		13
 
 /* Leave space for 0-127 for to avoid translating syscalls */
 #define	AMD64_GET_FSBASE	128
@@ -59,7 +61,13 @@
 #define	AMD64_GET_GSBASE	130
 #define	AMD64_SET_GSBASE	131
 #define	AMD64_GET_XFPUSTATE	132
+#define	AMD64_SET_PKRU		133
+#define	AMD64_CLEAR_PKRU	134
 
+/* Flags for AMD64_SET_PKRU */
+#define	AMD64_PKRU_EXCL		0x0001
+#define	AMD64_PKRU_PERSIST	0x0002
+
 struct i386_ioperm_args {
 	unsigned int start;
 	unsigned int length;
@@ -94,11 +102,25 @@ struct i386_get_xfpustate {
 	int len;
 };
 
+struct i386_set_pkru {
+	unsigned int addr;
+	unsigned int len;
+	unsigned int keyidx;
+	int flags;
+};
+
 struct amd64_get_xfpustate {
 	void *addr;
 	int len;
 };
 #endif
+
+struct amd64_set_pkru {
+	void *addr;
+	unsigned long len;
+	unsigned int keyidx;
+	int flags;
+};
 
 #ifndef _KERNEL
 union descriptor;

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:37:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58C0E152133F;
 Wed,  6 Mar 2019 17:37:57 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 EC29F95D9C;
 Wed,  6 Mar 2019 17:37:56 +0000 (UTC) (envelope-from bcr@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 DC8A66D54;
 Wed,  6 Mar 2019 17:37:56 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26HbuKx079427;
 Wed, 6 Mar 2019 17:37:56 GMT (envelope-from bcr@FreeBSD.org)
Received: (from bcr@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HbuqB079426;
 Wed, 6 Mar 2019 17:37:56 GMT (envelope-from bcr@FreeBSD.org)
Message-Id: <201903061737.x26HbuqB079426@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bcr set sender to bcr@FreeBSD.org
 using -f
From: Benedict Reuschling <bcr@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:37:56 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344849 - head/share/misc
X-SVN-Group: head
X-SVN-Commit-Author: bcr
X-SVN-Commit-Paths: head/share/misc
X-SVN-Commit-Revision: 344849
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: EC29F95D9C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.93 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.93)[-0.932,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:37:57 -0000

Author: bcr (doc committer)
Date: Wed Mar  6 17:37:56 2019
New Revision: 344849
URL: https://svnweb.freebsd.org/changeset/base/344849

Log:
  Update the core-secretary role.
  
  With the last core election, matthew@ stepped down and handed over to jrm@ to
  serve as new core secretary. Update this file to match.
  
  Approved by:	core (implicit)

Modified:
  head/share/misc/organization.dot

Modified: head/share/misc/organization.dot
==============================================================================
--- head/share/misc/organization.dot	Wed Mar  6 17:33:05 2019	(r344848)
+++ head/share/misc/organization.dot	Wed Mar  6 17:37:56 2019	(r344849)
@@ -26,7 +26,7 @@ _misc [label="Miscellaneous Hats"]
 # Development teams go here alphabetically sorted
 
 core [label="Core Team\ncore@FreeBSD.org\nallanjude, bcr, brooks,\nimp, hrs, jeff,\njhb, kmoore, seanc"]
-coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\nmatthew"]
+coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\njrm"]
 doccommitters [label="Doc/www Committers\ndoc-committers@FreeBSD.org"]
 doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\ngjb, blackend,\ngabor, hrs,\nwblock"]
 portscommitters [label="Ports Committers\nports-committers@FreeBSD.org"]

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:40:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C9A61521404;
 Wed,  6 Mar 2019 17:40:32 +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)
 server-signature RSA-PSS (4096 bits)
 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 C4A2795F4D;
 Wed,  6 Mar 2019 17:40:31 +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 B50676D58;
 Wed,  6 Mar 2019 17:40:31 +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 x26HeVqF079607;
 Wed, 6 Mar 2019 17:40:31 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HeUPZ079602;
 Wed, 6 Mar 2019 17:40:30 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903061740.x26HeUPZ079602@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:40: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: r344850 - in stable/12: lib/libc/amd64 lib/libc/i386
 lib/libc/x86/sys sys/x86/include
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/12: lib/libc/amd64 lib/libc/i386
 lib/libc/x86/sys sys/x86/include
X-SVN-Commit-Revision: 344850
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C4A2795F4D
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.92 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.93)[-0.925,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:40:32 -0000

Author: kib
Date: Wed Mar  6 17:40:30 2019
New Revision: 344850
URL: https://svnweb.freebsd.org/changeset/base/344850

Log:
  MFC r344354:
  Add usermode helpers for the Intel userspace protection keys feature.

Added:
  stable/12/lib/libc/x86/sys/pkru.c
     - copied unchanged from r344354, head/lib/libc/x86/sys/pkru.c
Modified:
  stable/12/lib/libc/amd64/Symbol.map
  stable/12/lib/libc/i386/Symbol.map
  stable/12/lib/libc/x86/sys/Makefile.inc
  stable/12/sys/x86/include/sysarch.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/lib/libc/amd64/Symbol.map
==============================================================================
--- stable/12/lib/libc/amd64/Symbol.map	Wed Mar  6 17:37:56 2019	(r344849)
+++ stable/12/lib/libc/amd64/Symbol.map	Wed Mar  6 17:40:30 2019	(r344850)
@@ -44,6 +44,13 @@ FBSD_1.0 {
 	vfork;
 };
 
+FBSD_1.6 {
+	 x86_pkru_get_perm;
+	 x86_pkru_set_perm;
+	 x86_pkru_protect_range;
+	 x86_pkru_unprotect_range;
+};
+
 /*
  *
  * FreeBSD private ABI

Modified: stable/12/lib/libc/i386/Symbol.map
==============================================================================
--- stable/12/lib/libc/i386/Symbol.map	Wed Mar  6 17:37:56 2019	(r344849)
+++ stable/12/lib/libc/i386/Symbol.map	Wed Mar  6 17:40:30 2019	(r344850)
@@ -46,6 +46,13 @@ FBSD_1.0 {
 	___tls_get_addr;
 };
 
+FBSD_1.6 {
+	 x86_pkru_get_perm;
+	 x86_pkru_set_perm;
+	 x86_pkru_protect_range;
+	 x86_pkru_unprotect_range;
+};
+
 FBSDprivate_1.0 {
 	/* PSEUDO syscalls */
 	__sys_getlogin;

Modified: stable/12/lib/libc/x86/sys/Makefile.inc
==============================================================================
--- stable/12/lib/libc/x86/sys/Makefile.inc	Wed Mar  6 17:37:56 2019	(r344849)
+++ stable/12/lib/libc/x86/sys/Makefile.inc	Wed Mar  6 17:40:30 2019	(r344850)
@@ -3,7 +3,8 @@
 .PATH:	${LIBC_SRCTOP}/x86/sys
 
 SRCS+= \
-	__vdso_gettc.c
+	__vdso_gettc.c \
+	pkru.c
 
 .if ${MACHINE_CPUARCH} == "amd64" && ${MK_HYPERV} != "no"
 CFLAGS+=	-DWANT_HYPERV

Copied: stable/12/lib/libc/x86/sys/pkru.c (from r344354, head/lib/libc/x86/sys/pkru.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/lib/libc/x86/sys/pkru.c	Wed Mar  6 17:40:30 2019	(r344850, copy of r344354, head/lib/libc/x86/sys/pkru.c)
@@ -0,0 +1,138 @@
+/*-
+ * Copyright (c) 2019 The FreeBSD Foundation
+ * All rights reserved.
+ *
+ * Portions of this software were developed by Konstantin Belousov
+ * 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 <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <machine/cpufunc.h>
+#include <machine/specialreg.h>
+#include <machine/sysarch.h>
+#include <x86/ifunc.h>
+#include <errno.h>
+#include <string.h>
+
+#define	MAX_PKRU_IDX	0xf
+#ifdef __i386__
+#define	X86_SET_PKRU	I386_SET_PKRU
+#define	X86_CLEAR_PKRU	I386_CLEAR_PKRU
+#else
+#define	X86_SET_PKRU	AMD64_SET_PKRU
+#define	X86_CLEAR_PKRU	AMD64_CLEAR_PKRU
+#endif
+
+static int
+x86_pkru_get_perm_unsup(u_int keyidx, int *access, int *modify)
+{
+
+	errno = EOPNOTSUPP;
+	return (-1);
+}
+
+static int
+x86_pkru_get_perm_hw(u_int keyidx, int *access, int *modify)
+{
+	uint32_t pkru;
+
+	if (keyidx > MAX_PKRU_IDX) {
+		errno = EINVAL;
+		return (-1);
+	}
+	keyidx *= 2;
+	pkru = rdpkru();
+	*access = (pkru & (1 << keyidx)) == 0;
+	*modify = (pkru & (2 << keyidx)) == 0;
+	return (0);
+}
+
+DEFINE_UIFUNC(, int, x86_pkru_get_perm, (u_int, int *, int *), static)
+{
+
+	return ((cpu_stdext_feature2 & CPUID_STDEXT2_OSPKE) == 0 ?
+	    x86_pkru_get_perm_unsup : x86_pkru_get_perm_hw);
+}
+
+static int
+x86_pkru_set_perm_unsup(u_int keyidx, int access, int modify)
+{
+
+	errno = EOPNOTSUPP;
+	return (-1);
+}
+
+static int
+x86_pkru_set_perm_hw(u_int keyidx, int access, int modify)
+{
+	uint32_t pkru;
+
+	if (keyidx > MAX_PKRU_IDX) {
+		errno = EINVAL;
+		return (-1);
+	}
+	keyidx *= 2;
+	pkru = rdpkru();
+	pkru &= ~(3 << keyidx);
+	if (!access)
+		pkru |= 1 << keyidx;
+	if (!modify)
+		pkru |= 2 << keyidx;
+	wrpkru(pkru);
+	return (0);
+}
+
+DEFINE_UIFUNC(, int, x86_pkru_set_perm, (u_int, int, int), static)
+{
+
+	return ((cpu_stdext_feature2 & CPUID_STDEXT2_OSPKE) == 0 ?
+	    x86_pkru_set_perm_unsup : x86_pkru_set_perm_hw);
+}
+
+int
+x86_pkru_protect_range(void *addr, unsigned long len, u_int keyidx, int flags)
+{
+	struct amd64_set_pkru a64pkru;
+
+	memset(&a64pkru, 0, sizeof(a64pkru));
+	a64pkru.addr = addr;
+	a64pkru.len = len;
+	a64pkru.keyidx = keyidx;
+	a64pkru.flags = flags;
+	return (sysarch(X86_SET_PKRU, &a64pkru));
+}
+
+int
+x86_pkru_unprotect_range(void *addr, unsigned long len)
+{
+	struct amd64_set_pkru a64pkru;
+
+	memset(&a64pkru, 0, sizeof(a64pkru));
+	a64pkru.addr = addr;
+	a64pkru.len = len;
+	return (sysarch(X86_CLEAR_PKRU, &a64pkru));
+}

Modified: stable/12/sys/x86/include/sysarch.h
==============================================================================
--- stable/12/sys/x86/include/sysarch.h	Wed Mar  6 17:37:56 2019	(r344849)
+++ stable/12/sys/x86/include/sysarch.h	Wed Mar  6 17:40:30 2019	(r344850)
@@ -142,6 +142,11 @@ int amd64_get_fsbase(void **);
 int amd64_get_gsbase(void **);
 int amd64_set_fsbase(void *);
 int amd64_set_gsbase(void *);
+int x86_pkru_get_perm(unsigned int keyidx, int *access, int *modify);
+int x86_pkru_set_perm(unsigned int keyidx, int access, int modify);
+int x86_pkru_protect_range(void *addr, unsigned long len, unsigned int keyidx,
+    int flag);
+int x86_pkru_unprotect_range(void *addr, unsigned long len);
 int sysarch(int, void *);
 __END_DECLS
 #else

From owner-svn-src-all@freebsd.org  Wed Mar  6 17:41:13 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 150861521486;
 Wed,  6 Mar 2019 17:41:13 +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)
 server-signature RSA-PSS (4096 bits)
 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 AEFA4960D2;
 Wed,  6 Mar 2019 17:41:12 +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 A21306E91;
 Wed,  6 Mar 2019 17:41:12 +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 x26HfC9O082563;
 Wed, 6 Mar 2019 17:41:12 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26HfCJq082179;
 Wed, 6 Mar 2019 17:41:12 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903061741.x26HfCJq082179@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Wed, 6 Mar 2019 17:41:12 +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: r344851 - stable/12/lib/libc/x86/sys
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: stable/12/lib/libc/x86/sys
X-SVN-Commit-Revision: 344851
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: AEFA4960D2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.92 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.93)[-0.925,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 17:41:13 -0000

Author: kib
Date: Wed Mar  6 17:41:12 2019
New Revision: 344851
URL: https://svnweb.freebsd.org/changeset/base/344851

Log:
  MFC r344355:
  pkru(3) man page.

Added:
  stable/12/lib/libc/x86/sys/pkru.3
     - copied unchanged from r344355, head/lib/libc/x86/sys/pkru.3
Modified:
  stable/12/lib/libc/x86/sys/Makefile.inc
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/lib/libc/x86/sys/Makefile.inc
==============================================================================
--- stable/12/lib/libc/x86/sys/Makefile.inc	Wed Mar  6 17:40:30 2019	(r344850)
+++ stable/12/lib/libc/x86/sys/Makefile.inc	Wed Mar  6 17:41:12 2019	(r344851)
@@ -6,6 +6,9 @@ SRCS+= \
 	__vdso_gettc.c \
 	pkru.c
 
+MAN+=	\
+	pkru.3
+
 .if ${MACHINE_CPUARCH} == "amd64" && ${MK_HYPERV} != "no"
 CFLAGS+=	-DWANT_HYPERV
 .endif

Copied: stable/12/lib/libc/x86/sys/pkru.3 (from r344355, head/lib/libc/x86/sys/pkru.3)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/lib/libc/x86/sys/pkru.3	Wed Mar  6 17:41:12 2019	(r344851, copy of r344355, head/lib/libc/x86/sys/pkru.3)
@@ -0,0 +1,206 @@
+.\" Copyright (c) 2019 The FreeBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This documentation was written by
+.\" Konstantin Belousov <kib@FreeBSD.org> 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 AUTHORS 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 AUTHORS 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 February 16, 2019
+.Dt PKRU 3
+.Os
+.Sh NAME
+.Nm Protection Key Rights for User pages
+.Nd provide fast user-managed key-based access control for pages
+.Sh LIBRARY
+.Lb libc
+.Sh SYNOPSIS
+.In machine/sysarch.h
+.Ft int
+.Fn x86_pkru_get_perm "unsigned int keyidx" "int *access" "int *modify"
+.Ft int
+.Fn x86_pkru_set_perm "unsigned int keyidx" "int access" "int modify"
+.Ft int
+.Fo x86_pkru_protect_range
+.Fa "void *addr"
+.Fa "unsigned long len"
+.Fa "unsigned int keyidx"
+.Fa "int flag"
+.Fc
+.Ft int
+.Fn x86_pkru_unprotect_range "void *addr" "unsigned long len"
+.Sh DESCRIPTION
+The protection keys feature provides an additional mechanism, besides the
+normal page permissions as established by
+.Xr mmap 2
+and
+.Xr mprotect 2 ,
+to control access to user-mode addresses.
+The mechanism gives safety measures which can be used to avoid
+incidental read or modification of sensitive memory,
+or as a debugging feature.
+It cannot guard against conscious accesses since permissions
+are user-controllable.
+.Pp
+If supported by hardware, each mapped user linear address
+has an associated 4-bit protection key.
+A new per-thread PKRU hardware register determines, for each protection
+key, whether user-mode addresses with that protection key may be
+read or written.
+.Pp
+Only one key may apply to a given range at a time.
+The default protection key index is zero, it is used even if no key
+was explicitly assigned to the address, or if the key was removed.
+.Pp
+The protection prevents the system from accessing user addresses as well
+as the user applications.
+When a system call was unable to read or write user memory due to key
+protection, it returns the
+.Er EFAULT
+error code.
+Note that some side effects may have occurred if this error is reported.
+.Pp
+Protection keys require that the system uses 4-level paging
+(also called long mode),
+which means that it is only available on amd64 system.
+Both 64-bit and 32-bit applications can use protection keys.
+More information about the hardware feature is provided in the IA32 Software
+Developer's Manual published by Intel Corp.
+.Pp
+The key indexes written into the page table entries are managed by the
+.Fn sysarch
+syscall.
+Per-key permissions are managed using the user-mode instructions
+.Em RDPKRU
+and
+.Em WRPKRU.
+The system provides convenient library helpers for both the syscall and
+the instructions, described below.
+.Pp
+The
+.Fn x86_pkru_protect_range
+function assigns key
+.Fa keyidx
+to the range starting at
+.Fa addr
+and having length
+.Fa len .
+Starting address is truncated to the page start,
+and the end is rounded up to the end of the page.
+After a successfull call, the range has the specified key assigned,
+even if the key is zero and it did not change the page table entries.
+.Pp
+The
+.Fa flags
+argument takes the logical OR of the following values:
+.Bl -tag -width
+.It Bq Va AMD64_PKRU_EXCL
+Only assign the key if the range does not have any other keys assigned
+(including the zero key).
+You must first remove any existing key with
+.Fn x86_pkru_unprotect_range
+in order for this request to succeed.
+If the
+.Va AMD64_PKRU_EXCL
+flag is not specified,
+.Fn x86_pkru_protect_range
+replaces any existing key.
+.It Bq Va AMD64_PKRU_PERSIST
+The keys assigned to the range are persistent.
+They are re-established when the current mapping is destroyed
+and a new mapping is created in any sub-range of the specified range.
+You must use a
+.Fn x86_pkru_unprotect_range
+call to forget the key.
+.El
+.Pp
+The
+.Fn x86_pkru_unprotect_range
+function removes any keys assigned to the specified range.
+Existing mappings are changed to use key index zero in page table entries.
+Keys are no longer considered installed for all mappings in the range,
+for the purposes of
+.Fn x86_pkru_protect_range
+with the
+.Va AMD64_PKRU_EXCL
+flag.
+.Pp
+The
+.Fn x86_pkru_get_perm
+function returns access rights for the key specified by the
+.Fn keyidx
+argument.
+If the value pointed to by
+.Fa access
+is zero after the call, no read or write permissions is granted for
+mappings which are assigned the key
+.Fn keyidx .
+If
+.Fa access
+is not zero, read access is permitted.
+The non-zero value of the variable pointed to by the
+.Fa modify
+argument indicates that write access is permitted.
+.Pp
+Conversely, the
+.Fn x86_pkru_set_perm
+establishes the access and modify permissions for the given key index
+as specified by its arguments.
+.Sh RETURN VALUES
+.Rv -std
+.Sh ERRORS
+.Bl -tag -width Er
+.It Bq Er EOPNOTSUPP
+The hardware does not support protection keys.
+.It Bq Er EINVAL
+The supplied key index is invalid (greater than 15).
+.It Bq Er EINVAL
+The supplied
+.Fa flags
+argument for
+.Fn x86_pkru_protect_range
+has reserved bits set.
+.It Bq Er EFAULT
+The supplied address range does not completely fit into the user-managed
+address range.
+.It Bq Er ENOMEM
+The memory shortage prevents the completion of the operation.
+.It Bq Er EBUSY
+The
+.Va AMD64_PKRU_EXCL
+flag was specified for
+.Fn x86_pkru_protect_range
+and the range already has defined protection keys.
+.El
+.Sh SEE ALSO
+.Xr mmap 2 ,
+.Xr mprotect 2 ,
+.Xr munmap 2 ,
+.Xr sysarch 2 .
+.Sh STANDARDS
+The
+.Nm
+functions are non-standard and first appeared in
+.Fx 13.0 .

From owner-svn-src-all@freebsd.org  Wed Mar  6 18:19:28 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 48CD81522FBF;
 Wed,  6 Mar 2019 18:19:28 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 DB4516A008;
 Wed,  6 Mar 2019 18:19:27 +0000 (UTC) (envelope-from dim@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 CFBA07451;
 Wed,  6 Mar 2019 18:19:27 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26IJRP1003228;
 Wed, 6 Mar 2019 18:19:27 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26IJRca003227;
 Wed, 6 Mar 2019 18:19:27 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903061819.x26IJRca003227@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Wed, 6 Mar 2019 18:19:27 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344852 - head/contrib/llvm/tools/lldb/include/lldb/Target
X-SVN-Group: head
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: head/contrib/llvm/tools/lldb/include/lldb/Target
X-SVN-Commit-Revision: 344852
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DB4516A008
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.964,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 18:19:28 -0000

Author: dim
Date: Wed Mar  6 18:19:27 2019
New Revision: 344852
URL: https://svnweb.freebsd.org/changeset/base/344852

Log:
  Put in a temporary workaround for what is likely a gcc 6 bug (it does
  not occur with gcc 7 or later).  This should prevent the following error
  from breaking the head-amd64-gcc CI builds:
  
  In file included from /workspace/src/contrib/llvm/tools/lldb/source/API/SBMemoryRegionInfo.cpp:14:0:
  /workspace/src/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h:128:54: error: 'template<class _InputIterator> lldb_private::MemoryRegionInfos::MemoryRegionInfos(_InputIterator, _InputIterator, const allocator_type&)' inherited from 'std::__1::vector<lldb_private::MemoryRegionInfo>'
     using std::vector<lldb_private::MemoryRegionInfo>::vector;
                                                        ^~~~~~
  /workspace/src/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h:128:54: error: conflicts with version inherited from 'std::__1::vector<lldb_private::MemoryRegionInfo>'
  
  Reported by:	CI

Modified:
  head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h

Modified: head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h
==============================================================================
--- head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h	Wed Mar  6 17:41:12 2019	(r344851)
+++ head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h	Wed Mar  6 18:19:27 2019	(r344852)
@@ -125,7 +125,7 @@ inline bool operator<(lldb::addr_t lhs, const MemoryRe
 // Forward-declarable wrapper.
 class MemoryRegionInfos : public std::vector<lldb_private::MemoryRegionInfo> {
 public:
-  using std::vector<lldb_private::MemoryRegionInfo>::vector;
+  //using std::vector<lldb_private::MemoryRegionInfo>::vector;
 };
 
 }

From owner-svn-src-all@freebsd.org  Wed Mar  6 18:21:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 141CD1523198;
 Wed,  6 Mar 2019 18:21:47 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 815436A5B3;
 Wed,  6 Mar 2019 18:21:46 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x26ILfpF086794;
 Wed, 6 Mar 2019 10:21:41 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x26ILfNG086793;
 Wed, 6 Mar 2019 10:21:41 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344849 - head/share/misc
In-Reply-To: <201903061737.x26HbuqB079426@repo.freebsd.org>
To: Benedict Reuschling <bcr@freebsd.org>
Date: Wed, 6 Mar 2019 10:21:41 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 815436A5B3
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.95 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 18:21:47 -0000

> Author: bcr (doc committer)
> Date: Wed Mar  6 17:37:56 2019
> New Revision: 344849
> URL: https://svnweb.freebsd.org/changeset/base/344849
> 
> Log:
>   Update the core-secretary role.
>   
>   With the last core election, matthew@ stepped down and handed over to jrm@ to
>   serve as new core secretary. Update this file to match.
>   
>   Approved by:	core (implicit)

Is there a secretary alumni list some place that should also be updated?
Or should one be created if not?  This is a significant contribution
by individuals that should be recognised in perpetuity.


Regards,
Rod

> Modified:
>   head/share/misc/organization.dot
> 
> Modified: head/share/misc/organization.dot
> ==============================================================================
> --- head/share/misc/organization.dot	Wed Mar  6 17:33:05 2019	(r344848)
> +++ head/share/misc/organization.dot	Wed Mar  6 17:37:56 2019	(r344849)
> @@ -26,7 +26,7 @@ _misc [label="Miscellaneous Hats"]
>  # Development teams go here alphabetically sorted
>  
>  core [label="Core Team\ncore@FreeBSD.org\nallanjude, bcr, brooks,\nimp, hrs, jeff,\njhb, kmoore, seanc"]
> -coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\nmatthew"]
> +coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\njrm"]
>  doccommitters [label="Doc/www Committers\ndoc-committers@FreeBSD.org"]
>  doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\ngjb, blackend,\ngabor, hrs,\nwblock"]
>  portscommitters [label="Ports Committers\nports-committers@FreeBSD.org"]

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Wed Mar  6 18:22:11 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5F6715231E5;
 Wed,  6 Mar 2019 18:22:10 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 96F0E6A751;
 Wed,  6 Mar 2019 18:22:07 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x26IM5RK086820;
 Wed, 6 Mar 2019 10:22:05 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x26IM5lK086819;
 Wed, 6 Mar 2019 10:22:05 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903061822.x26IM5lK086819@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344845 - in head: lib/libkvm sys/riscv/riscv
In-Reply-To: <201903061650.x26GoF85052492@repo.freebsd.org>
To: Mark Johnston <markj@freebsd.org>
Date: Wed, 6 Mar 2019 10:22:05 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 96F0E6A751
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.95 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 18:22:11 -0000

> Author: markj
> Date: Wed Mar  6 16:50:14 2019
> New Revision: 344845
> URL: https://svnweb.freebsd.org/changeset/base/344845
> 
> Log:
>   Reorder copyright lines to preserve the source of "All rights reserved."
>   
>   Reported by:	rgrimes
>   MFC with:	r344829, r344830

Thank you.


> Modified:
>   head/lib/libkvm/kvm_riscv.h
>   head/sys/riscv/riscv/minidump_machdep.c
> 
> Modified: head/lib/libkvm/kvm_riscv.h
> ==============================================================================
> --- head/lib/libkvm/kvm_riscv.h	Wed Mar  6 15:19:04 2019	(r344844)
> +++ head/lib/libkvm/kvm_riscv.h	Wed Mar  6 16:50:14 2019	(r344845)
> @@ -1,7 +1,7 @@
>  /*-
>   * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
> - * Copyright (c) 2019 Mitchell Horne
>   * All rights reserved.
> + * Copyright (c) 2019 Mitchell Horne
>   *
>   * Redistribution and use in source and binary forms, with or without
>   * modification, are permitted provided that the following conditions
> 
> Modified: head/sys/riscv/riscv/minidump_machdep.c
> ==============================================================================
> --- head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 15:19:04 2019	(r344844)
> +++ head/sys/riscv/riscv/minidump_machdep.c	Wed Mar  6 16:50:14 2019	(r344845)
> @@ -1,8 +1,8 @@
>  /*-
>   * Copyright (c) 2006 Peter Wemm
>   * Copyright (c) 2015 The FreeBSD Foundation
> - * Copyright (c) 2019 Mitchell Horne
>   * All rights reserved.
> + * Copyright (c) 2019 Mitchell Horne
>   *
>   * Redistribution and use in source and binary forms, with or without
>   * modification, are permitted provided that the following conditions
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Wed Mar  6 18:45:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 727611523D55;
 Wed,  6 Mar 2019 18:45:37 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from mxout1bln1.prossl.de (mxout1bln1.prossl.de [91.233.87.26])
 (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 C13736B7FC;
 Wed,  6 Mar 2019 18:45:36 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from Voyager.fritz.box (p4FD0FF38.dip0.t-ipconnect.de
 [79.208.255.56]) (authenticated bits=0)
 by mx1bln1.prossl.de (8.15.2/8.14.9) with ESMTPSA id x26IjYmR047674
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO);
 Wed, 6 Mar 2019 19:45:34 +0100
To: rgrimes@freebsd.org
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
References: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>
From: Benedict Reuschling <bcr@FreeBSD.org>
Openpgp: preference=signencrypt
Autocrypt: addr=bcr@FreeBSD.org; prefer-encrypt=mutual; keydata=
 mQENBFr4feYBCACdrnRpuvW/d/PeKuFu54ifaGhG+yFf3wnWaQX8hTCvySbv6A24Owot6cyU
 vhjdsifZ9iRQ82Likl+6OxI9qBXR9N+WCv1ut46q+mL50YLnYRejRCz8vEmVunlyVDKjsBY5
 DtjsaRXMJ/D56wh3ROd9VYjrDHWobu+bg9D7RIv0kCyoPd0JsYRFXISgt4IocWVLT8ciWqiT
 Pp3m37BPrtXhR3EDOnHmGWPf6SuolvveqyOlpdguD3LAkFJDLeq3isnMaLXUhcsTqBTBLdOT
 6EJHBYCcq39izNVC88JsVBmEuByhpb0LaXrBFQWhUG5RyecROAqrx+DWhcZnxayCtr3NABEB
 AAG0N0JlbmVkaWN0IFJldXNjaGxpbmcgKHd3dy5mcmVlYnNkLm9yZykgPGJjckBGcmVlQlNE
 Lm9yZz6JAVQEEwEKAD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRTQnZtbeuE5dPj
 3Pah0MHTBYXRWAUCWviOpwUJA8J3wQAKCRCh0MHTBYXRWJfJB/9qxBylB2KlA5EkdhyOp9cO
 O8kGpx301Rg6I/IUDACmDRvZckthpaUlNJ/RBYtid12o9A9kIhabdEaZfoBcV+ehyq3iSnff
 9U+YlXkQ0iOflujWfgyMKNmaseWAPl6aCYc4gUsRH6YTVJFANPdofAIghEFLeY4jPsfkCIPP
 SAzUK1kQDtsHc5zwTYltqiKRBxQe1Y8WftitRp4LkTkR2wxWggp5oS6yKzh0kRir+U+5pFWZ
 9g4ZQGxqodp8fKHI1IsJvs921UArjbmtLmDbrd28SK96i5ck4xga6mPf7ShhE9haYy1A+cbK
 fDhwizaJUl/H3jjXXbPv1MuIsvo+qEKVuQENBFr4f7wBCACxULIM5UFaEyZwAojYMXwIF/QW
 zq20MXaQXjn2JxJp04VaQHCL794ZrNtvkTvyqxYVFCKjvJHPXsT4zKuglMSTi83choejs7DJ
 4YNmBBJKDHbugAcb5OgdTaT+ztUGl1VL4S3iEvWJwBAOUuzd9TTC/4GhYnUJR7A0CeEZnPfF
 av2K+d8BZ8x/XryFgQo3Wi5FnOekwls4v1wzzJE4ssaW4p357fmXRG2Czzytzf/W3I2/VWFm
 2J8P8TIzSoJq+girktqhH+dYwbDeWkldWj6egcMdpVzJ89ottXARQYeu6YFSHnmHHnBhX2hV
 z+K2WkVLqYwj7XdBQAtPxIk8VlMBABEBAAGJAnIEGAEKACYCGwIWIQRTQnZtbeuE5dPj3Pah
 0MHTBYXRWAUCWviOsgUJA8J19gFAwHQgBBkBCgAdFiEEwXonQDvNfP/33IoBVXQ7/QHhjTUF
 Alr4f7wACgkQVXQ7/QHhjTWg7Qf/WzBvcfskO8HBHfmLEE5zJRIOgogl6kVwvwR6PjihhMFC
 iBeH2fGz8nTtkouSttcbMnLnmV0qVv/r5FgIohTlEimaQUh7LgQKiql2SdYVpF1ha/3NHerR
 1Rc0OGW+eliseI9b9/OKkY1AOaRM98HGJZB6TO2iKf2wiJDjr1RdlN2VcCST+ksG2Ehc3RvZ
 UTY1Kw5i9BOKsTsiQkrpCsrZ2/0tqvwv7efYJ0FOHfm0WbmvAlfdpxqsWmtgdsa0m/ItBtpo
 zIhlZs8/BlOmDK5571bAmWOV0apXSgp6OTmeQkpIsJKjwj/JwOhzvfkxZv03Js4+51xKjotT
 ma8XGjnJKgkQodDB0wWF0Vj+Wwf/f5cEjvLmq+Xw0KYjPA8oqk9L5a4Z9J/BdeH630koZ2wP
 YUwUsF/rFfdZf7jHvJJas1I0ctsutvhlgu4Elb7kJrfNRMSXUXe8ucdPS/cH9M/y9e7flW3i
 c/Ik14rV1Z1E9ME0CtDzfUtS3BfhyxpgmHbQmgPv/NkCE8Zu+nU/1QInpi7ZrDWWyJOCndcm
 R4kZpP0MJ0OCTWGDkDtJG4zIRQKeJKscqolWo7yu3GiG/Fr9W5cfr3IIo9xp8UQ06idbjjSV
 jItrSmL/HoZYQ7DSGCsQObC6snbkdeWRSaz/TCzEth5O0NGgA37apNaF3TZTbxRWcMG9uICc
 oGpDIZeCe7kBDQRa+IBQAQgA2EV0IFUgcJEpznzSxRhKajgLUmP/CJkUrXRipRrR0PqeXEH2
 dF1+T8JObDVBN33oXwbXfIvBUhEw2uWsAHDW8OqzUsCTUxdy3ehVHkxHw1deXfvYf5VTtSli
 QsVIEJ0LZtD3V0idDnfGAhWqbMubBtF2tj1I6P2Py+RlU1pMD4B4g8zcWU+H4H39tpLkd9c/
 kTemaX6QwRNW42L8+tDjL4pUogf8/tweMOj9LDOWVTqE2lipWxCH0uTEj8G8kSMLCyGgjxni
 MFDpjJLu3ETBZMevA+HNWS80RGbT2byu0FbeqXdRV3/+PL3MUY3mOs91bVgxpULG3aDcEmWd
 IJzNgQARAQABiQE8BBgBCgAmAhsMFiEEU0J2bW3rhOXT49z2odDB0wWF0VgFAlr4jsAFCQPC
 dXAACgkQodDB0wWF0VgnUQf/T1Z0SBj8YdepF91TTQnvH21USuyEsWCIX8d2xrUqGdVnwlIS
 fllS3SKTZQJdFhqQtEEYrKRhUDHrPt5Sm0NBisiD+lLcRajv7si4Xj8/ZY/gFjt7RrraYv5D
 Yb1BjSzsY4YEtq55jDknGufmBpannhnLFFlltt12Sa+xVgZMOl3g8zMjQkiPMtesw1DMDy9N
 lPB2WlbBVQlkzNHMifpIEiqc+ckZJavYabl/Nsv/kbMFGTizdIllN2EML6l9/KUC3Iw0OWB9
 pnge7j3cX7+6sv4ypu65B/XMb4h/4HvXs4D2NW0HIIWtPA50fjjPSJs2JHJt9qVkI7/rNNNL
 byRcKQ==
Organization: The FreeBSD Project
Subject: Re: svn commit: r344849 - head/share/misc
Message-ID: <3893ea2b-f7ba-f07a-c8a9-70671d1a82f9@FreeBSD.org>
Date: Wed, 6 Mar 2019 19:45:34 +0100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0)
 Gecko/20100101 Thunderbird/60.5.3
MIME-Version: 1.0
In-Reply-To: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature";
 boundary="nnTLtgGKIkNWHTwP8LN5Akzw4QYsZgMoL"
X-Null-Tag: d927a513307d388e373a2b607d089486
X-Rspamd-Queue-Id: C13736B7FC
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 18:45:37 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--nnTLtgGKIkNWHTwP8LN5Akzw4QYsZgMoL
Content-Type: multipart/mixed; boundary="C1BL3GGu8Ohp3uQESIkH1mUL88S0wVQFq";
 protected-headers="v1"
From: Benedict Reuschling <bcr@FreeBSD.org>
To: rgrimes@freebsd.org
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Message-ID: <3893ea2b-f7ba-f07a-c8a9-70671d1a82f9@FreeBSD.org>
Subject: Re: svn commit: r344849 - head/share/misc
References: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>
In-Reply-To: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>

--C1BL3GGu8Ohp3uQESIkH1mUL88S0wVQFq
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Am 06.03.19 um 19:21 schrieb Rodney W. Grimes:
>> Author: bcr (doc committer)
>> Date: Wed Mar  6 17:37:56 2019
>> New Revision: 344849
>> URL: https://svnweb.freebsd.org/changeset/base/344849
>>
>> Log:
>>   Update the core-secretary role.
>>  =20
>>   With the last core election, matthew@ stepped down and handed over t=
o jrm@ to
>>   serve as new core secretary. Update this file to match.
>>  =20
>>   Approved by:	core (implicit)
>=20
> Is there a secretary alumni list some place that should also be updated=
?
> Or should one be created if not?  This is a significant contribution
> by individuals that should be recognised in perpetuity.
>=20
>=20
> Regards,
> Rod
>=20

I'm not aware of such a list, nor for any other secretary-roles that we
have (i.e. portmgr secretary). The only history is in the repository for
this file itself (and core's own archives). I remember that when there
is a change of secretaries (either in conjunction with a new core team
or otherwise), a message goes out to the mailing lists (which are
archived) announcing the new secretary and thanking the old one for
their services.

Regards,
Benedict


--C1BL3GGu8Ohp3uQESIkH1mUL88S0wVQFq--

--nnTLtgGKIkNWHTwP8LN5Akzw4QYsZgMoL
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEwXonQDvNfP/33IoBVXQ7/QHhjTUFAlyAFU4ACgkQVXQ7/QHh
jTXlMgf/S+KHi4zbATTK09R13koWMCthQm/Adl4rFuJOOFic3FtgZKFdHEh3d8Ye
6JYBorq3Wkemfa/SmLfLrc57DJTB8z067CBB95cH0otwD+VaTffBleEgGBpBfMdH
hGZc7F2MVg8a552FPS9b+6IHU0XSWI/bbNgnn4Q+IgmJsfGwlEZAUrIrTe9F8jEd
8VIeFoU9RDdgq+IqIclZHn4NyF3dyVMdmJgVsOErtB++PJ8MdJsUwBXnmHJge9xb
rik8Wyi8QCEtRAJS2xT6ACaOR8BL8s+WYaOx5iKJx724R31o9320VuREyHNH+4PS
PkuI4qV2fe4QgNMXQbO73drWcQYr8w==
=8a1e
-----END PGP SIGNATURE-----

--nnTLtgGKIkNWHTwP8LN5Akzw4QYsZgMoL--

From owner-svn-src-all@freebsd.org  Wed Mar  6 18:56:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97362152424F;
 Wed,  6 Mar 2019 18:56:35 +0000 (UTC) (envelope-from jhb@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)
 server-signature RSA-PSS (4096 bits)
 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 3B2966BDC6;
 Wed,  6 Mar 2019 18:56:35 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from John-Baldwins-MacBook-Pro-3.local (ralph.baldwin.cx
 [66.234.199.215])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client did not present a certificate) (Authenticated sender: jhb)
 by smtp.freebsd.org (Postfix) with ESMTPSA id 9698B58E8;
 Wed,  6 Mar 2019 18:56:34 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Subject: Re: svn commit: r344849 - head/share/misc
To: Benedict Reuschling <bcr@FreeBSD.org>, rgrimes@freebsd.org
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
References: <201903061821.x26ILfNG086793@ gndrsh.dnsmgr.net>
 <3893ea2b-f7ba-f07a-c8a9-70671d1a82f9@FreeBSD.org>
From: John Baldwin <jhb@FreeBSD.org>
Openpgp: preference=signencrypt
Autocrypt: addr=jhb@FreeBSD.org; keydata=
 mQGiBETQ+XcRBADMFybiq69u+fJRy/0wzqTNS8jFfWaBTs5/OfcV7wWezVmf9sgwn8TW0Dk0
 c9MBl0pz+H01dA2ZSGZ5fXlmFIsee1WEzqeJzpiwd/pejPgSzXB9ijbLHZ2/E0jhGBcVy5Yo
 /Tw5+U/+laeYKu2xb0XPvM0zMNls1ah5OnP9a6Ql6wCgupaoMySb7DXm2LHD1Z9jTsHcAQMD
 /1jzh2BoHriy/Q2s4KzzjVp/mQO5DSm2z14BvbQRcXU48oAosHA1u3Wrov6LfPY+0U1tG47X
 1BGfnQH+rNAaH0livoSBQ0IPI/8WfIW7ub4qV6HYwWKVqkDkqwcpmGNDbz3gfaDht6nsie5Z
 pcuCcul4M9CW7Md6zzyvktjnbz61BADGDCopfZC4of0Z3Ka0u8Wik6UJOuqShBt1WcFS8ya1
 oB4rc4tXfSHyMF63aPUBMxHR5DXeH+EO2edoSwViDMqWk1jTnYza51rbGY+pebLQOVOxAY7k
 do5Ordl3wklBPMVEPWoZ61SdbcjhHVwaC5zfiskcxj5wwXd2E9qYlBqRg7QeSm9obiBCYWxk
 d2luIDxqaGJARnJlZUJTRC5vcmc+iGAEExECACAFAkTQ+awCGwMGCwkIBwMCBBUCCAMEFgID
 AQIeAQIXgAAKCRBy3lIGd+N/BI6RAJ9S97fvbME+3hxzE3JUyUZ6vTewDACdE1stFuSfqMvM
 jomvZdYxIYyTUpC5Ag0ERND5ghAIAPwsO0B7BL+bz8sLlLoQktGxXwXQfS5cInvL17Dsgnr3
 1AKa94j9EnXQyPEj7u0d+LmEe6CGEGDh1OcGFTMVrof2ZzkSy4+FkZwMKJpTiqeaShMh+Goj
 XlwIMDxyADYvBIg3eN5YdFKaPQpfgSqhT+7El7w+wSZZD8pPQuLAnie5iz9C8iKy4/cMSOrH
 YUK/tO+Nhw8Jjlw94Ik0T80iEhI2t+XBVjwdfjbq3HrJ0ehqdBwukyeJRYKmbn298KOFQVHO
 EVbHA4rF/37jzaMadK43FgJ0SAhPPF5l4l89z5oPu0b/+5e2inA3b8J3iGZxywjM+Csq1tqz
 hltEc7Q+E08AAwUIAL+15XH8bPbjNJdVyg2CMl10JNW2wWg2Q6qdljeaRqeR6zFus7EZTwtX
 sNzs5bP8y51PSUDJbeiy2RNCNKWFMndM22TZnk3GNG45nQd4OwYK0RZVrikalmJY5Q6m7Z16
 4yrZgIXFdKj2t8F+x613/SJW1lIr9/bDp4U9tw0V1g3l2dFtD3p3ZrQ3hpoDtoK70ioIAjjH
 aIXIAcm3FGZFXy503DOA0KaTWwvOVdYCFLm3zWuSOmrX/GsEc7ovasOWwjPn878qVjbUKWwx
 Q4QkF4OhUV9zPtf9tDSAZ3x7QSwoKbCoRCZ/xbyTUPyQ1VvNy/mYrBcYlzHodsaqUDjHuW+I
 SQQYEQIACQUCRND5ggIbDAAKCRBy3lIGd+N/BCO8AJ9j1dWVQWxw/YdTbEyrRKOY8YZNwwCf
 afMAg8QvmOWnHx3wl8WslCaXaE8=
Message-ID: <a5612ffe-812e-dd1e-e90b-d82470ee5aaf@FreeBSD.org>
Date: Wed, 6 Mar 2019 10:56:22 -0800
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0)
 Gecko/20100101 Thunderbird/60.5.1
MIME-Version: 1.0
In-Reply-To: <3893ea2b-f7ba-f07a-c8a9-70671d1a82f9@FreeBSD.org>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Rspamd-Queue-Id: 3B2966BDC6
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 18:56:35 -0000

On 3/6/19 10:45 AM, Benedict Reuschling wrote:
> Am 06.03.19 um 19:21 schrieb Rodney W. Grimes:
>>> Author: bcr (doc committer)
>>> Date: Wed Mar  6 17:37:56 2019
>>> New Revision: 344849
>>> URL: https://svnweb.freebsd.org/changeset/base/344849
>>>
>>> Log:
>>>   Update the core-secretary role.
>>>   
>>>   With the last core election, matthew@ stepped down and handed over to jrm@ to
>>>   serve as new core secretary. Update this file to match.
>>>   
>>>   Approved by:	core (implicit)
>>
>> Is there a secretary alumni list some place that should also be updated?
>> Or should one be created if not?  This is a significant contribution
>> by individuals that should be recognised in perpetuity.
>>
>>
>> Regards,
>> Rod
>>
> 
> I'm not aware of such a list, nor for any other secretary-roles that we
> have (i.e. portmgr secretary). The only history is in the repository for
> this file itself (and core's own archives). I remember that when there
> is a change of secretaries (either in conjunction with a new core team
> or otherwise), a message goes out to the mailing lists (which are
> archived) announcing the new secretary and thanking the old one for
> their services.

No reason we couldn't add such a list in the contributor's list doc that
lists developer alumni, etc.

-- 
John Baldwin

From owner-svn-src-all@freebsd.org  Wed Mar  6 20:10:24 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EBEB81525C4F;
 Wed,  6 Mar 2019 20:10:23 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 90B8A6E36B;
 Wed,  6 Mar 2019 20:10:23 +0000 (UTC) (envelope-from jhb@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 83A4587D5;
 Wed,  6 Mar 2019 20:10:23 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26KANOP062984;
 Wed, 6 Mar 2019 20:10:23 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26KANQv062983;
 Wed, 6 Mar 2019 20:10:23 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062010.x26KANQv062983@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 20:10:23 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344853 - head/share/man/man5
X-SVN-Group: head
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: head/share/man/man5
X-SVN-Commit-Revision: 344853
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 90B8A6E36B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.980,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 20:10:24 -0000

Author: jhb
Date: Wed Mar  6 20:10:23 2019
New Revision: 344853
URL: https://svnweb.freebsd.org/changeset/base/344853

Log:
  Regenerate src.conf.5 for recent changes.
  
  Updates include removal of DRM2 and addition of several options
  related to secure booting.

Modified:
  head/share/man/man5/src.conf.5

Modified: head/share/man/man5/src.conf.5
==============================================================================
--- head/share/man/man5/src.conf.5	Wed Mar  6 18:19:27 2019	(r344852)
+++ head/share/man/man5/src.conf.5	Wed Mar  6 20:10:23 2019	(r344853)
@@ -1,6 +1,6 @@
 .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
 .\" $FreeBSD$
-.Dd February 15, 2019
+.Dd March 6, 2019
 .Dt SRC.CONF 5
 .Os
 .Sh NAME
@@ -137,6 +137,33 @@ This must be set in the environment, make command line
 .Pa /etc/src-env.conf ,
 not
 .Pa /etc/src.conf .
+.It Va WITH_BEARSSL
+Build the BearSSL library.
+.Pp
+BearSSL is a tiny SSL library suitable for embedded environments.
+For details see
+.Lk http://www.BearSSL.org/
+.Pp
+This library is currently only used to perform
+signature verification and related operations
+for Verified Exec and
+.Xr loader 8 .
+When set, these options are also in effect:
+.Pp
+.Bl -inset -compact
+.It Va WITH_LOADER_EFI_SECUREBOOT
+(unless
+.Va WITHOUT_LOADER_EFI_SECUREBOOT
+is set explicitly)
+.It Va WITH_LOADER_VERIEXEC
+(unless
+.Va WITHOUT_LOADER_VERIEXEC
+is set explicitly)
+.It Va WITH_VERIEXEC
+(unless
+.Va WITHOUT_VERIEXEC
+is set explicitly)
+.El
 .It Va WITHOUT_BHYVE
 Set to not build or install
 .Xr bhyve 8 ,
@@ -1216,6 +1243,11 @@ option should be used rather than this in most cases.
 .Pp
 This is a default setting on
 amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
+.It Va WITH_LOADER_EFI_SECUREBOOT
+Enable building
+.Xr loader 8
+with support for verification based on certificates obtained from UEFI.
+.Pp
 .It Va WITH_LOADER_FIREWIRE
 Enable firewire support in /boot/loader on x86. This option is a nop
 on all other platforms.
@@ -1267,6 +1299,21 @@ Set to build with extra verbose debugging in the loade
 May explode already nearly too large loader over the limit.
 Use with care.
 
+.It Va WITH_LOADER_VERIEXEC
+Enable building
+.Xr loader 8
+with support for verifcation similar to Verified Exec.
+.Pp
+It depends on
+.Va WITH_BEARSSL
+When set, these options are also in effect:
+.Pp
+.Bl -inset -compact
+.It Va WITH_LOADER_EFI_SECUREBOOT
+(unless
+.Va WITHOUT_LOADER_EFI_SECUREBOOT
+is set explicitly)
+.El
 .It Va WITHOUT_LOADER_ZFS
 Set to not build ZFS file system boot loader support.
 .It Va WITHOUT_LOCALES
@@ -1405,10 +1452,6 @@ Set to build
 .Pp
 This is a default setting on
 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
-.It Va WITH_MODULE_DRM
-Enable creation of old drm video modules.
-.It Va WITH_MODULE_DRM2
-Enable creation of old drm2 video modules.
 .It Va WITH_NAND
 Set to build the NAND Flash components.
 .It Va WITHOUT_NDIS
@@ -1869,6 +1912,15 @@ Set to not build user accounting tools such as
 .Xr lastlogin 8
 and
 .Xr utx 8 .
+.It Va WITH_VERIEXEC
+Enable building
+.Xr veriexec 8
+which loads the contents of verified manifests into the kernel
+for use by
+.Xr mac_veriexec 4
+.Pp
+It depends on
+.Va WITH_BEARSSL
 .It Va WITHOUT_VI
 Set to not build and install vi, view, ex and related programs.
 .It Va WITHOUT_VT

From owner-svn-src-all@freebsd.org  Wed Mar  6 20:13:04 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 302991525E3F;
 Wed,  6 Mar 2019 20:13:04 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 C81EE6E770;
 Wed,  6 Mar 2019 20:13:03 +0000 (UTC) (envelope-from jhb@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 A0FB28987;
 Wed,  6 Mar 2019 20:13:03 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26KD3uQ067724;
 Wed, 6 Mar 2019 20:13:03 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26KD2xi067720;
 Wed, 6 Mar 2019 20:13:02 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062013.x26KD2xi067720@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 20:13:02 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344854 - in head: gnu/usr.bin gnu/usr.bin/binutils
 share/man/man5 share/mk
X-SVN-Group: head
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in head: gnu/usr.bin gnu/usr.bin/binutils share/man/man5
 share/mk
X-SVN-Commit-Revision: 344854
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C81EE6E770
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.980,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 20:13:04 -0000

Author: jhb
Date: Wed Mar  6 20:13:02 2019
New Revision: 344854
URL: https://svnweb.freebsd.org/changeset/base/344854

Log:
  Divorce MK_GDB from MK_BINUTILS.
  
  This permits legacy GDB to still be built and installed if
  WITHOUT_BINUTILS is set (e.g. if base/binutils is installed).
  
  Reviewed by:	emaste
  MFC after:	2 weeks
  Differential Revision:	https://reviews.freebsd.org/D19480

Modified:
  head/gnu/usr.bin/Makefile
  head/gnu/usr.bin/binutils/Makefile
  head/share/man/man5/src.conf.5
  head/share/mk/src.opts.mk

Modified: head/gnu/usr.bin/Makefile
==============================================================================
--- head/gnu/usr.bin/Makefile	Wed Mar  6 20:10:23 2019	(r344853)
+++ head/gnu/usr.bin/Makefile	Wed Mar  6 20:13:02 2019	(r344854)
@@ -7,7 +7,10 @@
 SUBDIR.${MK_GCC}+=	gperf
 .endif
 
-SUBDIR.${MK_BINUTILS}+=	binutils
+.if ${MK_GDB} != "no" || ${MK_BINUTILS} != "no"
+SUBDIR+=	binutils
+.endif
+
 SUBDIR.${MK_DIALOG}+=	dialog
 SUBDIR.${MK_GCC}+=	cc
 SUBDIR.${MK_GNU_DIFF}+=	diff3

Modified: head/gnu/usr.bin/binutils/Makefile
==============================================================================
--- head/gnu/usr.bin/binutils/Makefile	Wed Mar  6 20:10:23 2019	(r344853)
+++ head/gnu/usr.bin/binutils/Makefile	Wed Mar  6 20:13:02 2019	(r344854)
@@ -2,18 +2,19 @@
 
 .include <src.opts.mk>
 
-SUBDIR=	doc\
-	libiberty \
+SUBDIR=	libiberty \
 	libbfd \
-	libopcodes \
-	libbinutils \
-	as \
-	objdump
+	libopcodes
 
+SUBDIR.${MK_BINUTILS}+=	doc
+SUBDIR.${MK_BINUTILS}+=	libbinutils
+SUBDIR.${MK_BINUTILS}+=	as
+SUBDIR.${MK_BINUTILS}+=	objdump
+
 # When we use ld.lld as /usr/bin/ld, do not install the non-ifunc-capable
 # GNU binutils 2.17.50 ld.
 .if ${MK_LLD_IS_LD} == "no"
-SUBDIR+=ld
+SUBDIR.${MK_BINUTILS}+=ld
 .endif
 
 SUBDIR_DEPEND_libbinutils=libbfd		# for bfdver.h

Modified: head/share/man/man5/src.conf.5
==============================================================================
--- head/share/man/man5/src.conf.5	Wed Mar  6 20:10:23 2019	(r344853)
+++ head/share/man/man5/src.conf.5	Wed Mar  6 20:13:02 2019	(r344854)
@@ -187,12 +187,6 @@ The resulting system cannot build programs from source
 .Pp
 This is a default setting on
 arm64/aarch64 and riscv/riscv64.
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_GDB
-.El
 .It Va WITH_BINUTILS
 Set to build and install GNU
 .Xr as 1 ,

Modified: head/share/mk/src.opts.mk
==============================================================================
--- head/share/mk/src.opts.mk	Wed Mar  6 20:10:23 2019	(r344853)
+++ head/share/mk/src.opts.mk	Wed Mar  6 20:13:02 2019	(r344854)
@@ -430,10 +430,6 @@ MK_${var}:=	no
 MK_LLVM_LIBUNWIND:=	no
 .endif
 
-.if ${MK_BINUTILS} == "no"
-MK_GDB:=	no
-.endif
-
 .if ${MK_CAPSICUM} == "no"
 MK_CASPER:=	no
 .endif

From owner-svn-src-all@freebsd.org  Wed Mar  6 22:12:05 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3F7C9152947D;
 Wed,  6 Mar 2019 22:12:05 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 DD6DE735D2;
 Wed,  6 Mar 2019 22:12:04 +0000 (UTC) (envelope-from jhb@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 D098B9CFC;
 Wed,  6 Mar 2019 22:12:04 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26MC4Tg031972;
 Wed, 6 Mar 2019 22:12:04 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26MBjec031868;
 Wed, 6 Mar 2019 22:11:45 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062211.x26MBjec031868@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 22:11:45 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344855 - in head: contrib/elftoolchain/libelf
 lib/libc/tests/gen lib/libdevctl lib/libkvm lib/libsysdecode lib/libutil
 sbin/hastd share/man/man3 share/man/man4 share/man/man9 stand/efi...
X-SVN-Group: head
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in head: contrib/elftoolchain/libelf lib/libc/tests/gen
 lib/libdevctl lib/libkvm lib/libsysdecode lib/libutil sbin/hastd
 share/man/man3 share/man/man4 share/man/man9 stand/efi/libefi
 stand/i386/cdboot...
X-SVN-Commit-Revision: 344855
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DD6DE735D2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.974,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 22:12:05 -0000

Author: jhb
Date: Wed Mar  6 22:11:45 2019
New Revision: 344855
URL: https://svnweb.freebsd.org/changeset/base/344855

Log:
  Drop "All rights reserved" from my copyright statements.
  
  Reviewed by:	rgrimes
  MFC after:	1 month
  Differential Revision:	https://reviews.freebsd.org/D19485

Modified:
  head/contrib/elftoolchain/libelf/gelf_mips64el.c
  head/lib/libc/tests/gen/makecontext_test.c
  head/lib/libdevctl/devctl.3
  head/lib/libdevctl/devctl.c
  head/lib/libdevctl/devctl.h
  head/lib/libkvm/kvm_aarch64.h
  head/lib/libkvm/kvm_amd64.h
  head/lib/libkvm/kvm_arm.h
  head/lib/libkvm/kvm_i386.h
  head/lib/libkvm/kvm_mips.h
  head/lib/libkvm/kvm_native.3
  head/lib/libkvm/kvm_riscv.h
  head/lib/libkvm/kvm_sparc64.h
  head/lib/libsysdecode/errno.c
  head/lib/libsysdecode/signal.c
  head/lib/libsysdecode/syscallnames.c
  head/lib/libsysdecode/sysdecode.3
  head/lib/libsysdecode/sysdecode.h
  head/lib/libsysdecode/sysdecode_abi_to_freebsd_errno.3
  head/lib/libsysdecode/sysdecode_cap_rights.3
  head/lib/libsysdecode/sysdecode_enum.3
  head/lib/libsysdecode/sysdecode_fcntl_arg.3
  head/lib/libsysdecode/sysdecode_ioctlname.3
  head/lib/libsysdecode/sysdecode_kevent.3
  head/lib/libsysdecode/sysdecode_mask.3
  head/lib/libsysdecode/sysdecode_quotactl_cmd.3
  head/lib/libsysdecode/sysdecode_sigcode.3
  head/lib/libsysdecode/sysdecode_socket_protocol.3
  head/lib/libsysdecode/sysdecode_sockopt_name.3
  head/lib/libsysdecode/sysdecode_syscallnames.3
  head/lib/libsysdecode/sysdecode_utrace.3
  head/lib/libutil/kinfo_getvmobject.3
  head/sbin/hastd/refcnt.h
  head/share/man/man3/sigevent.3
  head/share/man/man4/ktr.4
  head/share/man/man4/witness.4
  head/share/man/man9/BUS_GET_CPUS.9
  head/share/man/man9/BUS_RESCAN.9
  head/share/man/man9/atomic.9
  head/share/man/man9/bus_map_resource.9
  head/share/man/man9/critical_enter.9
  head/share/man/man9/ithread.9
  head/share/man/man9/ktr.9
  head/share/man/man9/runqueue.9
  head/share/man/man9/scheduler.9
  head/share/man/man9/sleepqueue.9
  head/share/man/man9/swi.9
  head/stand/efi/libefi/devpath.c
  head/stand/i386/cdboot/cdboot.S
  head/stand/i386/libi386/pxe.c
  head/stand/i386/libi386/pxe.h
  head/stand/i386/pxeldr/pxeldr.S
  head/sys/amd64/include/intr_machdep.h
  head/sys/arm/arm/ptrace_machdep.c
  head/sys/dev/acpica/acpi_isab.c
  head/sys/dev/acpica/acpi_pcivar.h
  head/sys/dev/pci/vga_pci.c
  head/sys/dev/rc/rc.c
  head/sys/dev/rc/rcreg.h
  head/sys/i386/pci/pci_pir.c
  head/sys/kern/kern_ktr.c
  head/sys/kern/kern_rwlock.c
  head/sys/kern/subr_lock.c
  head/sys/kern/subr_sleepqueue.c
  head/sys/kern/subr_smp.c
  head/sys/sys/_rwlock.h
  head/sys/sys/refcount.h
  head/sys/sys/rwlock.h
  head/sys/sys/sleepqueue.h
  head/sys/sys/turnstile.h
  head/sys/x86/acpica/madt.c
  head/sys/x86/include/apicvar.h
  head/sys/x86/include/intr_machdep.h
  head/sys/x86/isa/atpic.c
  head/sys/x86/isa/elcr.c
  head/sys/x86/x86/intr_machdep.c
  head/sys/x86/x86/io_apic.c
  head/sys/x86/x86/local_apic.c
  head/sys/x86/x86/mptable.c
  head/sys/x86/x86/mptable_pci.c
  head/sys/x86/xen/pvcpu_enum.c
  head/tests/sys/capsicum/ioctls_test.c
  head/tests/sys/kern/ptrace_test.c
  head/tools/tools/decioctl/decioctl.c
  head/usr.sbin/bhyve/gdb.c
  head/usr.sbin/bhyve/gdb.h
  head/usr.sbin/devctl/devctl.8
  head/usr.sbin/devctl/devctl.c

Modified: head/contrib/elftoolchain/libelf/gelf_mips64el.c
==============================================================================
--- head/contrib/elftoolchain/libelf/gelf_mips64el.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/contrib/elftoolchain/libelf/gelf_mips64el.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2018 John Baldwin
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libc/tests/gen/makecontext_test.c
==============================================================================
--- head/lib/libc/tests/gen/makecontext_test.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libc/tests/gen/makecontext_test.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2018 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libdevctl/devctl.3
==============================================================================
--- head/lib/libdevctl/devctl.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libdevctl/devctl.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2014 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libdevctl/devctl.c
==============================================================================
--- head/lib/libdevctl/devctl.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libdevctl/devctl.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2014 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libdevctl/devctl.h
==============================================================================
--- head/lib/libdevctl/devctl.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libdevctl/devctl.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2014 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_aarch64.h
==============================================================================
--- head/lib/libkvm/kvm_aarch64.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_aarch64.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_amd64.h
==============================================================================
--- head/lib/libkvm/kvm_amd64.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_amd64.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_arm.h
==============================================================================
--- head/lib/libkvm/kvm_arm.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_arm.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_i386.h
==============================================================================
--- head/lib/libkvm/kvm_i386.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_i386.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_mips.h
==============================================================================
--- head/lib/libkvm/kvm_mips.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_mips.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_native.3
==============================================================================
--- head/lib/libkvm/kvm_native.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_native.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libkvm/kvm_riscv.h
==============================================================================
--- head/lib/libkvm/kvm_riscv.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_riscv.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  * Copyright (c) 2019 Mitchell Horne
  *
  * Redistribution and use in source and binary forms, with or without

Modified: head/lib/libkvm/kvm_sparc64.h
==============================================================================
--- head/lib/libkvm/kvm_sparc64.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libkvm/kvm_sparc64.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/errno.c
==============================================================================
--- head/lib/libsysdecode/errno.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/errno.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/signal.c
==============================================================================
--- head/lib/libsysdecode/signal.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/signal.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2016 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/syscallnames.c
==============================================================================
--- head/lib/libsysdecode/syscallnames.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/syscallnames.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode.3
==============================================================================
--- head/lib/libsysdecode/sysdecode.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode.h
==============================================================================
--- head/lib/libsysdecode/sysdecode.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_abi_to_freebsd_errno.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_abi_to_freebsd_errno.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_abi_to_freebsd_errno.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_cap_rights.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_cap_rights.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_cap_rights.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_enum.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_enum.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_enum.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_fcntl_arg.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_fcntl_arg.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_fcntl_arg.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_ioctlname.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_ioctlname.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_ioctlname.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_kevent.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_kevent.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_kevent.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2017 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_mask.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_mask.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_mask.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_quotactl_cmd.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_quotactl_cmd.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_quotactl_cmd.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_sigcode.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_sigcode.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_sigcode.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_socket_protocol.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_socket_protocol.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_socket_protocol.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_sockopt_name.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_sockopt_name.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_sockopt_name.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_syscallnames.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_syscallnames.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_syscallnames.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libsysdecode/sysdecode_utrace.3
==============================================================================
--- head/lib/libsysdecode/sysdecode_utrace.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libsysdecode/sysdecode_utrace.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/lib/libutil/kinfo_getvmobject.3
==============================================================================
--- head/lib/libutil/kinfo_getvmobject.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/lib/libutil/kinfo_getvmobject.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/sbin/hastd/refcnt.h
==============================================================================
--- head/sbin/hastd/refcnt.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sbin/hastd/refcnt.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2005 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/share/man/man3/sigevent.3
==============================================================================
--- head/share/man/man3/sigevent.3	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man3/sigevent.3	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,7 +1,6 @@
 .\" -*- nroff -*-
 .\"
 .\" Copyright (c) 2016 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man4/ktr.4
==============================================================================
--- head/share/man/man4/ktr.4	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man4/ktr.4	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man4/witness.4
==============================================================================
--- head/share/man/man4/witness.4	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man4/witness.4	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/BUS_GET_CPUS.9
==============================================================================
--- head/share/man/man9/BUS_GET_CPUS.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/BUS_GET_CPUS.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,7 +1,6 @@
 .\" -*- nroff -*-
 .\"
 .\" Copyright (c) 2016 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/BUS_RESCAN.9
==============================================================================
--- head/share/man/man9/BUS_RESCAN.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/BUS_RESCAN.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,7 +1,6 @@
 .\" -*- nroff -*-
 .\"
 .\" Copyright (c) 2016 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/atomic.9
==============================================================================
--- head/share/man/man9/atomic.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/atomic.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2000-2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/bus_map_resource.9
==============================================================================
--- head/share/man/man9/bus_map_resource.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/bus_map_resource.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,7 +1,6 @@
 .\" -*- nroff -*-
 .\"
 .\" Copyright (c) 2016 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/critical_enter.9
==============================================================================
--- head/share/man/man9/critical_enter.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/critical_enter.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2001,2002 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/ithread.9
==============================================================================
--- head/share/man/man9/ithread.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/ithread.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/ktr.9
==============================================================================
--- head/share/man/man9/ktr.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/ktr.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/runqueue.9
==============================================================================
--- head/share/man/man9/runqueue.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/runqueue.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2000-2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/scheduler.9
==============================================================================
--- head/share/man/man9/scheduler.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/scheduler.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2000-2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/sleepqueue.9
==============================================================================
--- head/share/man/man9/sleepqueue.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/sleepqueue.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2000-2004 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/share/man/man9/swi.9
==============================================================================
--- head/share/man/man9/swi.9	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/share/man/man9/swi.9	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,5 +1,4 @@
 .\" Copyright (c) 2000-2001 John H. Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/stand/efi/libefi/devpath.c
==============================================================================
--- head/stand/efi/libefi/devpath.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/stand/efi/libefi/devpath.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/stand/i386/cdboot/cdboot.S
==============================================================================
--- head/stand/i386/cdboot/cdboot.S	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/stand/i386/cdboot/cdboot.S	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 #
 # Copyright (c) 2001 John Baldwin <jhb@FreeBSD.org>
-# All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
 # modification, are permitted provided that the following conditions

Modified: head/stand/i386/libi386/pxe.c
==============================================================================
--- head/stand/i386/libi386/pxe.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/stand/i386/libi386/pxe.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,8 +1,8 @@
 /*-
  * Copyright (c) 2000 Alfred Perlstein <alfred@freebsd.org>
  * Copyright (c) 2000 Paul Saab <ps@freebsd.org>
- * Copyright (c) 2000 John Baldwin <jhb@freebsd.org>
  * All rights reserved.
+ * Copyright (c) 2000 John Baldwin <jhb@freebsd.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/stand/i386/libi386/pxe.h
==============================================================================
--- head/stand/i386/libi386/pxe.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/stand/i386/libi386/pxe.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -4,7 +4,6 @@
  * Copyright (c) 2000 Paul Saab <ps@freebsd.org>
  * All rights reserved.
  * Copyright (c) 2000 John Baldwin <jhb@freebsd.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/stand/i386/pxeldr/pxeldr.S
==============================================================================
--- head/stand/i386/pxeldr/pxeldr.S	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/stand/i386/pxeldr/pxeldr.S	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*
  * Copyright (c) 2000 John Baldwin
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/amd64/include/intr_machdep.h
==============================================================================
--- head/sys/amd64/include/intr_machdep.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/amd64/include/intr_machdep.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/arm/arm/ptrace_machdep.c
==============================================================================
--- head/sys/arm/arm/ptrace_machdep.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/arm/arm/ptrace_machdep.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2017 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/dev/acpica/acpi_isab.c
==============================================================================
--- head/sys/dev/acpica/acpi_isab.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/dev/acpica/acpi_isab.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/dev/acpica/acpi_pcivar.h
==============================================================================
--- head/sys/dev/acpica/acpi_pcivar.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/dev/acpica/acpi_pcivar.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2016 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/dev/pci/vga_pci.c
==============================================================================
--- head/sys/dev/pci/vga_pci.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/dev/pci/vga_pci.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2005 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/dev/rc/rc.c
==============================================================================
--- head/sys/dev/rc/rc.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/dev/rc/rc.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -3,8 +3,8 @@
  *
  * Copyright (C) 1995 by Pavel Antonov, Moscow, Russia.
  * Copyright (C) 1995 by Andrey A. Chernov, Moscow, Russia.
- * Copyright (C) 2002 by John Baldwin <jhb@FreeBSD.org>
  * All rights reserved.
+ * Copyright (C) 2002 by John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/dev/rc/rcreg.h
==============================================================================
--- head/sys/dev/rc/rcreg.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/dev/rc/rcreg.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -3,8 +3,8 @@
  *
  * Copyright (C) 1995 by Pavel Antonov, Moscow, Russia.
  * Copyright (C) 1995 by Andrey A. Chernov, Moscow, Russia.
- * Copyright (C) 2002 by John Baldwin <jhb@FreeBSD.org>
  * All rights reserved.
+ * Copyright (C) 2002 by John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/i386/pci/pci_pir.c
==============================================================================
--- head/sys/i386/pci/pci_pir.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/i386/pci/pci_pir.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -4,8 +4,8 @@
  * Copyright (c) 1997, Stefan Esser <se@freebsd.org>
  * Copyright (c) 2000, Michael Smith <msmith@freebsd.org>
  * Copyright (c) 2000, BSDi
- * Copyright (c) 2004, John Baldwin <jhb@FreeBSD.org>
  * All rights reserved.
+ * Copyright (c) 2004, John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/kern/kern_ktr.c
==============================================================================
--- head/sys/kern/kern_ktr.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/kern/kern_ktr.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2000 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/kern/kern_rwlock.c
==============================================================================
--- head/sys/kern/kern_rwlock.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/kern/kern_rwlock.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2006 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/kern/subr_lock.c
==============================================================================
--- head/sys/kern/subr_lock.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/kern/subr_lock.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2006 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/kern/subr_sleepqueue.c
==============================================================================
--- head/sys/kern/subr_sleepqueue.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/kern/subr_sleepqueue.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2004 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/kern/subr_smp.c
==============================================================================
--- head/sys/kern/subr_smp.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/kern/subr_smp.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2001, John Baldwin <jhb@FreeBSD.org>.
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/sys/_rwlock.h
==============================================================================
--- head/sys/sys/_rwlock.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/sys/_rwlock.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2006 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/sys/refcount.h
==============================================================================
--- head/sys/sys/refcount.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/sys/refcount.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2005 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/sys/rwlock.h
==============================================================================
--- head/sys/sys/rwlock.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/sys/rwlock.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2006 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/sys/sleepqueue.h
==============================================================================
--- head/sys/sys/sleepqueue.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/sys/sleepqueue.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2004 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/sys/turnstile.h
==============================================================================
--- head/sys/sys/turnstile.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/sys/turnstile.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2002 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/acpica/madt.c
==============================================================================
--- head/sys/x86/acpica/madt.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/acpica/madt.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/include/apicvar.h
==============================================================================
--- head/sys/x86/include/apicvar.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/include/apicvar.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/include/intr_machdep.h
==============================================================================
--- head/sys/x86/include/intr_machdep.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/include/intr_machdep.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/isa/atpic.c
==============================================================================
--- head/sys/x86/isa/atpic.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/isa/atpic.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/isa/elcr.c
==============================================================================
--- head/sys/x86/isa/elcr.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/isa/elcr.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2004 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/x86/intr_machdep.c
==============================================================================
--- head/sys/x86/x86/intr_machdep.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/x86/intr_machdep.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/x86/io_apic.c
==============================================================================
--- head/sys/x86/x86/io_apic.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/x86/io_apic.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/x86/local_apic.c
==============================================================================
--- head/sys/x86/x86/local_apic.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/x86/local_apic.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,9 +1,9 @@
 /*-
  * SPDX-License-Identifier: BSD-3-Clause
  *
- * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  * Copyright (c) 1996, by Steve Passe
  * All rights reserved.
+ * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/x86/mptable.c
==============================================================================
--- head/sys/x86/x86/mptable.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/x86/mptable.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,9 +1,9 @@
 /*-
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
- * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  * Copyright (c) 1996, by Steve Passe
  * All rights reserved.
+ * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/x86/mptable_pci.c
==============================================================================
--- head/sys/x86/x86/mptable_pci.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/x86/mptable_pci.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/sys/x86/xen/pvcpu_enum.c
==============================================================================
--- head/sys/x86/xen/pvcpu_enum.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/sys/x86/xen/pvcpu_enum.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,9 +1,9 @@
 /*-
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
- * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  * Copyright (c) 2013 Roger Pau Monné <roger.pau@citrix.com>
  * All rights reserved.
+ * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/tests/sys/capsicum/ioctls_test.c
==============================================================================
--- head/tests/sys/capsicum/ioctls_test.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/tests/sys/capsicum/ioctls_test.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2018 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/tests/sys/kern/ptrace_test.c
==============================================================================
--- head/tests/sys/kern/ptrace_test.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/tests/sys/kern/ptrace_test.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/tools/tools/decioctl/decioctl.c
==============================================================================
--- head/tools/tools/decioctl/decioctl.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/tools/tools/decioctl/decioctl.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2005-2006,2016 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/usr.sbin/bhyve/gdb.c
==============================================================================
--- head/usr.sbin/bhyve/gdb.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/usr.sbin/bhyve/gdb.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2017-2018 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/usr.sbin/bhyve/gdb.h
==============================================================================
--- head/usr.sbin/bhyve/gdb.h	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/usr.sbin/bhyve/gdb.h	Wed Mar  6 22:11:45 2019	(r344855)
@@ -2,7 +2,6 @@
  * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
  *
  * Copyright (c) 2017 John H. Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

Modified: head/usr.sbin/devctl/devctl.8
==============================================================================
--- head/usr.sbin/devctl/devctl.8	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/usr.sbin/devctl/devctl.8	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 .\"
 .\" Copyright (c) 2015 John Baldwin <jhb@FreeBSD.org>
-.\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions

Modified: head/usr.sbin/devctl/devctl.c
==============================================================================
--- head/usr.sbin/devctl/devctl.c	Wed Mar  6 20:13:02 2019	(r344854)
+++ head/usr.sbin/devctl/devctl.c	Wed Mar  6 22:11:45 2019	(r344855)
@@ -1,6 +1,5 @@
 /*-
  * Copyright (c) 2014 John Baldwin <jhb@FreeBSD.org>
- * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions

From owner-svn-src-all@freebsd.org  Wed Mar  6 22:13:55 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D12A41529520;
 Wed,  6 Mar 2019 22:13:54 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 72B98737D5;
 Wed,  6 Mar 2019 22:13:54 +0000 (UTC) (envelope-from jhb@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 6932C9E61;
 Wed,  6 Mar 2019 22:13:54 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26MDsNb032815;
 Wed, 6 Mar 2019 22:13:54 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26MDroR032813;
 Wed, 6 Mar 2019 22:13:53 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062213.x26MDroR032813@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 22:13:53 +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: r344856 - stable/11/sys/dev/cxgbe/tom
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: stable/11/sys/dev/cxgbe/tom
X-SVN-Commit-Revision: 344856
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 72B98737D5
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.969,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 22:13:55 -0000

Author: jhb
Date: Wed Mar  6 22:13:53 2019
New Revision: 344856
URL: https://svnweb.freebsd.org/changeset/base/344856

Log:
  MFC 330882: Simplify error handling in t4_tom.ko module loading.
  
  - Change t4_ddp_mod_load() to return void instead of always returning
    success.  This avoids having to pretend to have proper support for
    unloading when only part of t4_tom_mod_load() has run.
  - If t4_register_uld() fails, don't invoke t4_tom_mod_unload() directly.
    The module handling code in the kernel invokes MOD_UNLOAD on a module
    whose MOD_LOAD fails with an error already.

Modified:
  stable/11/sys/dev/cxgbe/tom/t4_ddp.c
  stable/11/sys/dev/cxgbe/tom/t4_tom.c
  stable/11/sys/dev/cxgbe/tom/t4_tom.h
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/cxgbe/tom/t4_ddp.c
==============================================================================
--- stable/11/sys/dev/cxgbe/tom/t4_ddp.c	Wed Mar  6 22:11:45 2019	(r344855)
+++ stable/11/sys/dev/cxgbe/tom/t4_ddp.c	Wed Mar  6 22:13:53 2019	(r344856)
@@ -1944,7 +1944,7 @@ t4_aio_queue_ddp(struct socket *so, struct kaiocb *job
 	return (0);
 }
 
-int
+void
 t4_ddp_mod_load(void)
 {
 
@@ -1953,7 +1953,6 @@ t4_ddp_mod_load(void)
 	TAILQ_INIT(&ddp_orphan_pagesets);
 	mtx_init(&ddp_orphan_pagesets_lock, "ddp orphans", NULL, MTX_DEF);
 	TASK_INIT(&ddp_orphan_task, 0, ddp_free_orphan_pagesets, NULL);
-	return (0);
 }
 
 void

Modified: stable/11/sys/dev/cxgbe/tom/t4_tom.c
==============================================================================
--- stable/11/sys/dev/cxgbe/tom/t4_tom.c	Wed Mar  6 22:11:45 2019	(r344855)
+++ stable/11/sys/dev/cxgbe/tom/t4_tom.c	Wed Mar  6 22:13:53 2019	(r344856)
@@ -1162,7 +1162,6 @@ t4_aio_queue_tom(struct socket *so, struct kaiocb *job
 static int
 t4_tom_mod_load(void)
 {
-	int rc;
 	struct protosw *tcp_protosw, *tcp6_protosw;
 
 	/* CPL handlers */
@@ -1170,9 +1169,7 @@ t4_tom_mod_load(void)
 	t4_init_listen_cpl_handlers();
 	t4_init_cpl_io_handlers();
 
-	rc = t4_ddp_mod_load();
-	if (rc != 0)
-		return (rc);
+	t4_ddp_mod_load();
 
 	tcp_protosw = pffindproto(PF_INET, IPPROTO_TCP, SOCK_STREAM);
 	if (tcp_protosw == NULL)
@@ -1194,11 +1191,7 @@ t4_tom_mod_load(void)
 	ifaddr_evhandler = EVENTHANDLER_REGISTER(ifaddr_event,
 	    t4_tom_ifaddr_event, NULL, EVENTHANDLER_PRI_ANY);
 
-	rc = t4_register_uld(&tom_uld_info);
-	if (rc != 0)
-		t4_tom_mod_unload();
-
-	return (rc);
+	return (t4_register_uld(&tom_uld_info));
 }
 
 static void

Modified: stable/11/sys/dev/cxgbe/tom/t4_tom.h
==============================================================================
--- stable/11/sys/dev/cxgbe/tom/t4_tom.h	Wed Mar  6 22:11:45 2019	(r344855)
+++ stable/11/sys/dev/cxgbe/tom/t4_tom.h	Wed Mar  6 22:13:53 2019	(r344856)
@@ -386,7 +386,7 @@ void t4_free_page_pods(struct ppod_reservation *);
 int t4_soreceive_ddp(struct socket *, struct sockaddr **, struct uio *,
     struct mbuf **, struct mbuf **, int *);
 int t4_aio_queue_ddp(struct socket *, struct kaiocb *);
-int t4_ddp_mod_load(void);
+void t4_ddp_mod_load(void);
 void t4_ddp_mod_unload(void);
 void ddp_assert_empty(struct toepcb *);
 void ddp_init_toep(struct toepcb *);

From owner-svn-src-all@freebsd.org  Wed Mar  6 22:56:50 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 373D4152A37A;
 Wed,  6 Mar 2019 22:56:50 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 C15957539F;
 Wed,  6 Mar 2019 22:56:49 +0000 (UTC) (envelope-from cem@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 ACD2FA50A;
 Wed,  6 Mar 2019 22:56:49 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26MunL5054949;
 Wed, 6 Mar 2019 22:56:49 GMT (envelope-from cem@FreeBSD.org)
Received: (from cem@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26Munf3054948;
 Wed, 6 Mar 2019 22:56:49 GMT (envelope-from cem@FreeBSD.org)
Message-Id: <201903062256.x26Munf3054948@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org
 using -f
From: Conrad Meyer <cem@FreeBSD.org>
Date: Wed, 6 Mar 2019 22:56:49 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344857 - head/sys/fs/fuse
X-SVN-Group: head
X-SVN-Commit-Author: cem
X-SVN-Commit-Paths: head/sys/fs/fuse
X-SVN-Commit-Revision: 344857
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C15957539F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.956,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 22:56:50 -0000

Author: cem
Date: Wed Mar  6 22:56:49 2019
New Revision: 344857
URL: https://svnweb.freebsd.org/changeset/base/344857

Log:
  FUSE: Prevent trivial panic
  
  When open(2) was invoked against a FUSE filesystem with an unexpected flags
  value (no O_RDONLY / O_RDWR / O_WRONLY), an assertion fired, causing panic.
  
  For now, prevent the panic by rejecting such VOP_OPENs with EINVAL.
  
  This is not considered the correct long term fix, but does prevent an
  unprivileged denial-of-service.
  
  PR:		236329
  Reported by:	asomers
  Reviewed by:	asomers
  Sponsored by:	Dell EMC Isilon

Modified:
  head/sys/fs/fuse/fuse_vnops.c

Modified: head/sys/fs/fuse/fuse_vnops.c
==============================================================================
--- head/sys/fs/fuse/fuse_vnops.c	Wed Mar  6 22:13:53 2019	(r344856)
+++ head/sys/fs/fuse/fuse_vnops.c	Wed Mar  6 22:56:49 2019	(r344857)
@@ -1174,6 +1174,9 @@ fuse_vnop_open(struct vop_open_args *ap)
 	if (fuse_isdeadfs(vp)) {
 		return ENXIO;
 	}
+	if ((mode & (FREAD | FWRITE)) == 0)
+		return EINVAL;
+
 	fvdat = VTOFUD(vp);
 
 	if (vnode_isdir(vp)) {

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:09:28 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B30F2152A970;
 Wed,  6 Mar 2019 23:09:28 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3E25275AFE;
 Wed,  6 Mar 2019 23:09:28 +0000 (UTC) (envelope-from jhb@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 3379FA6B4;
 Wed,  6 Mar 2019 23:09:28 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26N9SmS060298;
 Wed, 6 Mar 2019 23:09:28 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26N9R97060294;
 Wed, 6 Mar 2019 23:09:27 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062309.x26N9R97060294@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 23:09: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: r344858 - in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Commit-Revision: 344858
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3E25275AFE
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:09:29 -0000

Author: jhb
Date: Wed Mar  6 23:09:27 2019
New Revision: 344858
URL: https://svnweb.freebsd.org/changeset/base/344858

Log:
  MFC 341098: Add read-only sysctls for all tunables in the cxgbe(4) driver.

Modified:
  stable/12/sys/dev/cxgbe/adapter.h
  stable/12/sys/dev/cxgbe/t4_main.c
  stable/12/sys/dev/cxgbe/t4_netmap.c
  stable/12/sys/dev/cxgbe/t4_sge.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/dev/cxgbe/adapter.h
  stable/11/sys/dev/cxgbe/t4_main.c
  stable/11/sys/dev/cxgbe/t4_netmap.c
  stable/11/sys/dev/cxgbe/t4_sge.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/dev/cxgbe/adapter.h
==============================================================================
--- stable/12/sys/dev/cxgbe/adapter.h	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/12/sys/dev/cxgbe/adapter.h	Wed Mar  6 23:09:27 2019	(r344858)
@@ -82,6 +82,8 @@ prefetch(void *x)
 #define CTLTYPE_U64 CTLTYPE_QUAD
 #endif
 
+SYSCTL_DECL(_hw_cxgbe);
+
 struct adapter;
 typedef struct adapter adapter_t;
 

Modified: stable/12/sys/dev/cxgbe/t4_main.c
==============================================================================
--- stable/12/sys/dev/cxgbe/t4_main.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/12/sys/dev/cxgbe/t4_main.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -251,110 +251,150 @@ SLIST_HEAD(, uld_info) t4_uld_list;
  * Tunables applicable to both T4 and T5 are under hw.cxgbe.  Those specific to
  * T5 are under hw.cxl.
  */
+SYSCTL_NODE(_hw, OID_AUTO, cxgbe, CTLFLAG_RD, 0, "cxgbe(4) parameters");
+SYSCTL_NODE(_hw, OID_AUTO, cxl, CTLFLAG_RD, 0, "cxgbe(4) T5+ parameters");
+SYSCTL_NODE(_hw_cxgbe, OID_AUTO, toe, CTLFLAG_RD, 0, "cxgbe(4) TOE parameters");
 
 /*
  * Number of queues for tx and rx, NIC and offload.
  */
 #define NTXQ 16
 int t4_ntxq = -NTXQ;
-TUNABLE_INT("hw.cxgbe.ntxq", &t4_ntxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, ntxq, CTLFLAG_RDTUN, &t4_ntxq, 0,
+    "Number of TX queues per port");
 TUNABLE_INT("hw.cxgbe.ntxq10g", &t4_ntxq);	/* Old name, undocumented */
 
 #define NRXQ 8
 int t4_nrxq = -NRXQ;
-TUNABLE_INT("hw.cxgbe.nrxq", &t4_nrxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nrxq, CTLFLAG_RDTUN, &t4_nrxq, 0,
+    "Number of RX queues per port");
 TUNABLE_INT("hw.cxgbe.nrxq10g", &t4_nrxq);	/* Old name, undocumented */
 
 #define NTXQ_VI 1
 static int t4_ntxq_vi = -NTXQ_VI;
-TUNABLE_INT("hw.cxgbe.ntxq_vi", &t4_ntxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, ntxq_vi, CTLFLAG_RDTUN, &t4_ntxq_vi, 0,
+    "Number of TX queues per VI");
 
 #define NRXQ_VI 1
 static int t4_nrxq_vi = -NRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nrxq_vi", &t4_nrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nrxq_vi, CTLFLAG_RDTUN, &t4_nrxq_vi, 0,
+    "Number of RX queues per VI");
 
 static int t4_rsrv_noflowq = 0;
-TUNABLE_INT("hw.cxgbe.rsrv_noflowq", &t4_rsrv_noflowq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, rsrv_noflowq, CTLFLAG_RDTUN, &t4_rsrv_noflowq,
+    0, "Reserve TX queue 0 of each VI for non-flowid packets");
 
 #if defined(TCP_OFFLOAD) || defined(RATELIMIT)
 #define NOFLDTXQ 8
 static int t4_nofldtxq = -NOFLDTXQ;
-TUNABLE_INT("hw.cxgbe.nofldtxq", &t4_nofldtxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldtxq, CTLFLAG_RDTUN, &t4_nofldtxq, 0,
+    "Number of offload TX queues per port");
 
 #define NOFLDRXQ 2
 static int t4_nofldrxq = -NOFLDRXQ;
-TUNABLE_INT("hw.cxgbe.nofldrxq", &t4_nofldrxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldrxq, CTLFLAG_RDTUN, &t4_nofldrxq, 0,
+    "Number of offload RX queues per port");
 
 #define NOFLDTXQ_VI 1
 static int t4_nofldtxq_vi = -NOFLDTXQ_VI;
-TUNABLE_INT("hw.cxgbe.nofldtxq_vi", &t4_nofldtxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldtxq_vi, CTLFLAG_RDTUN, &t4_nofldtxq_vi, 0,
+    "Number of offload TX queues per VI");
 
 #define NOFLDRXQ_VI 1
 static int t4_nofldrxq_vi = -NOFLDRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nofldrxq_vi", &t4_nofldrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldrxq_vi, CTLFLAG_RDTUN, &t4_nofldrxq_vi, 0,
+    "Number of offload RX queues per VI");
 
 #define TMR_IDX_OFLD 1
 int t4_tmr_idx_ofld = TMR_IDX_OFLD;
-TUNABLE_INT("hw.cxgbe.holdoff_timer_idx_ofld", &t4_tmr_idx_ofld);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_timer_idx_ofld, CTLFLAG_RDTUN,
+    &t4_tmr_idx_ofld, 0, "Holdoff timer index for offload queues");
 
 #define PKTC_IDX_OFLD (-1)
 int t4_pktc_idx_ofld = PKTC_IDX_OFLD;
-TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx_ofld", &t4_pktc_idx_ofld);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_pktc_idx_ofld, CTLFLAG_RDTUN,
+    &t4_pktc_idx_ofld, 0, "holdoff packet counter index for offload queues");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_keepalive_idle = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.keepalive_idle", &t4_toe_keepalive_idle);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, keepalive_idle, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_idle, 0, "TOE keepalive idle timer (us)");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_keepalive_interval = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.keepalive_interval", &t4_toe_keepalive_interval);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, keepalive_interval, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_interval, 0, "TOE keepalive interval timer (us)");
 
 /* 0 means chip/fw default, non-zero number is # of keepalives before abort */
 static int t4_toe_keepalive_count = 0;
-TUNABLE_INT("hw.cxgbe.toe.keepalive_count", &t4_toe_keepalive_count);
+SYSCTL_INT(_hw_cxgbe_toe, OID_AUTO, keepalive_count, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_count, 0, "Number of TOE keepalive probes before abort");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_rexmt_min = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.rexmt_min", &t4_toe_rexmt_min);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, rexmt_min, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_min, 0, "Minimum TOE retransmit interval (us)");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_rexmt_max = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.rexmt_max", &t4_toe_rexmt_max);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, rexmt_max, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_max, 0, "Maximum TOE retransmit interval (us)");
 
 /* 0 means chip/fw default, non-zero number is # of rexmt before abort */
 static int t4_toe_rexmt_count = 0;
-TUNABLE_INT("hw.cxgbe.toe.rexmt_count", &t4_toe_rexmt_count);
+SYSCTL_INT(_hw_cxgbe_toe, OID_AUTO, rexmt_count, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_count, 0, "Number of TOE retransmissions before abort");
 
 /* -1 means chip/fw default, other values are raw backoff values to use */
 static int t4_toe_rexmt_backoff[16] = {
 	-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1
 };
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.0", &t4_toe_rexmt_backoff[0]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.1", &t4_toe_rexmt_backoff[1]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.2", &t4_toe_rexmt_backoff[2]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.3", &t4_toe_rexmt_backoff[3]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.4", &t4_toe_rexmt_backoff[4]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.5", &t4_toe_rexmt_backoff[5]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.6", &t4_toe_rexmt_backoff[6]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.7", &t4_toe_rexmt_backoff[7]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.8", &t4_toe_rexmt_backoff[8]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.9", &t4_toe_rexmt_backoff[9]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.10", &t4_toe_rexmt_backoff[10]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.11", &t4_toe_rexmt_backoff[11]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.12", &t4_toe_rexmt_backoff[12]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.13", &t4_toe_rexmt_backoff[13]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.14", &t4_toe_rexmt_backoff[14]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.15", &t4_toe_rexmt_backoff[15]);
+SYSCTL_NODE(_hw_cxgbe_toe, OID_AUTO, rexmt_backoff, CTLFLAG_RD, 0,
+    "cxgbe(4) TOE retransmit backoff values");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 0, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[0], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 1, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[1], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 2, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[2], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 3, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[3], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 4, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[4], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 5, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[5], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 6, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[6], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 7, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[7], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 8, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[8], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 9, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[9], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 10, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[10], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 11, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[11], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 12, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[12], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 13, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[13], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 14, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[14], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 15, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[15], 0, "");
 #endif
 
 #ifdef DEV_NETMAP
 #define NNMTXQ_VI 2
 static int t4_nnmtxq_vi = -NNMTXQ_VI;
-TUNABLE_INT("hw.cxgbe.nnmtxq_vi", &t4_nnmtxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nnmtxq_vi, CTLFLAG_RDTUN, &t4_nnmtxq_vi, 0,
+    "Number of netmap TX queues per VI");
 
 #define NNMRXQ_VI 2
 static int t4_nnmrxq_vi = -NNMRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nnmrxq_vi", &t4_nnmrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nnmrxq_vi, CTLFLAG_RDTUN, &t4_nnmrxq_vi, 0,
+    "Number of netmap RX queues per VI");
 #endif
 
 /*
@@ -362,28 +402,33 @@ TUNABLE_INT("hw.cxgbe.nnmrxq_vi", &t4_nnmrxq_vi);
  */
 #define TMR_IDX 1
 int t4_tmr_idx = TMR_IDX;
-TUNABLE_INT("hw.cxgbe.holdoff_timer_idx", &t4_tmr_idx);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_timer_idx, CTLFLAG_RDTUN, &t4_tmr_idx,
+    0, "Holdoff timer index");
 TUNABLE_INT("hw.cxgbe.holdoff_timer_idx_10G", &t4_tmr_idx);	/* Old name */
 
 #define PKTC_IDX (-1)
 int t4_pktc_idx = PKTC_IDX;
-TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx", &t4_pktc_idx);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_pktc_idx, CTLFLAG_RDTUN, &t4_pktc_idx,
+    0, "Holdoff packet counter index");
 TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx_10G", &t4_pktc_idx);	/* Old name */
 
 /*
  * Size (# of entries) of each tx and rx queue.
  */
 unsigned int t4_qsize_txq = TX_EQ_QSIZE;
-TUNABLE_INT("hw.cxgbe.qsize_txq", &t4_qsize_txq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, qsize_txq, CTLFLAG_RDTUN, &t4_qsize_txq, 0,
+    "Number of descriptors in each TX queue");
 
 unsigned int t4_qsize_rxq = RX_IQ_QSIZE;
-TUNABLE_INT("hw.cxgbe.qsize_rxq", &t4_qsize_rxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, qsize_rxq, CTLFLAG_RDTUN, &t4_qsize_rxq, 0,
+    "Number of descriptors in each RX queue");
 
 /*
  * Interrupt types allowed (bits 0, 1, 2 = INTx, MSI, MSI-X respectively).
  */
 int t4_intr_types = INTR_MSIX | INTR_MSI | INTR_INTX;
-TUNABLE_INT("hw.cxgbe.interrupt_types", &t4_intr_types);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, interrupt_types, CTLFLAG_RDTUN, &t4_intr_types,
+    0, "Interrupt types allowed (bit 0 = INTx, 1 = MSI, 2 = MSI-X)");
 
 /*
  * Configuration file.  All the _CF names here are special.
@@ -394,7 +439,8 @@ TUNABLE_INT("hw.cxgbe.interrupt_types", &t4_intr_types
 #define UWIRE_CF	"uwire"
 #define FPGA_CF		"fpga"
 static char t4_cfg_file[32] = DEFAULT_CF;
-TUNABLE_STR("hw.cxgbe.config_file", t4_cfg_file, sizeof(t4_cfg_file));
+SYSCTL_STRING(_hw_cxgbe, OID_AUTO, config_file, CTLFLAG_RDTUN, t4_cfg_file,
+    sizeof(t4_cfg_file), "Firmware configuration file");
 
 /*
  * PAUSE settings (bit 0, 1, 2 = rx_pause, tx_pause, pause_autoneg respectively).
@@ -406,7 +452,9 @@ TUNABLE_STR("hw.cxgbe.config_file", t4_cfg_file, sizeo
  *                 Otherwise rx_pause/tx_pause are applied forcibly.
  */
 static int t4_pause_settings = PAUSE_RX | PAUSE_TX | PAUSE_AUTONEG;
-TUNABLE_INT("hw.cxgbe.pause_settings", &t4_pause_settings);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, pause_settings, CTLFLAG_RDTUN,
+    &t4_pause_settings, 0,
+    "PAUSE settings (bit 0 = rx_pause, 1 = tx_pause, 2 = pause_autoneg)");
 
 /*
  * Forward Error Correction settings (bit 0, 1 = RS, BASER respectively).
@@ -414,7 +462,8 @@ TUNABLE_INT("hw.cxgbe.pause_settings", &t4_pause_setti
  *  0 to disable FEC.
  */
 static int t4_fec = -1;
-TUNABLE_INT("hw.cxgbe.fec", &t4_fec);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fec, CTLFLAG_RDTUN, &t4_fec, 0,
+    "Forward Error Correction (bit 0 = RS, bit 1 = BASER_RS)");
 
 /*
  * Link autonegotiation.
@@ -423,28 +472,33 @@ TUNABLE_INT("hw.cxgbe.fec", &t4_fec);
  *  1 to enable.
  */
 static int t4_autoneg = -1;
-TUNABLE_INT("hw.cxgbe.autoneg", &t4_autoneg);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, autoneg, CTLFLAG_RDTUN, &t4_autoneg, 0,
+    "Link autonegotiation");
 
 /*
  * Firmware auto-install by driver during attach (0, 1, 2 = prohibited, allowed,
  * encouraged respectively).
  */
 static unsigned int t4_fw_install = 1;
-TUNABLE_INT("hw.cxgbe.fw_install", &t4_fw_install);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fw_install, CTLFLAG_RDTUN, &t4_fw_install, 0,
+    "Firmware auto-install (0 = prohibited, 1 = allowed, 2 = encouraged)");
 
 /*
  * ASIC features that will be used.  Disable the ones you don't want so that the
  * chip resources aren't wasted on features that will not be used.
  */
 static int t4_nbmcaps_allowed = 0;
-TUNABLE_INT("hw.cxgbe.nbmcaps_allowed", &t4_nbmcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nbmcaps_allowed, CTLFLAG_RDTUN,
+    &t4_nbmcaps_allowed, 0, "Default NBM capabilities");
 
 static int t4_linkcaps_allowed = 0;	/* No DCBX, PPP, etc. by default */
-TUNABLE_INT("hw.cxgbe.linkcaps_allowed", &t4_linkcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, linkcaps_allowed, CTLFLAG_RDTUN,
+    &t4_linkcaps_allowed, 0, "Default link capabilities");
 
 static int t4_switchcaps_allowed = FW_CAPS_CONFIG_SWITCH_INGRESS |
     FW_CAPS_CONFIG_SWITCH_EGRESS;
-TUNABLE_INT("hw.cxgbe.switchcaps_allowed", &t4_switchcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, switchcaps_allowed, CTLFLAG_RDTUN,
+    &t4_switchcaps_allowed, 0, "Default switch capabilities");
 
 #ifdef RATELIMIT
 static int t4_niccaps_allowed = FW_CAPS_CONFIG_NIC |
@@ -453,28 +507,37 @@ static int t4_niccaps_allowed = FW_CAPS_CONFIG_NIC |
 static int t4_niccaps_allowed = FW_CAPS_CONFIG_NIC |
 	FW_CAPS_CONFIG_NIC_HASHFILTER;
 #endif
-TUNABLE_INT("hw.cxgbe.niccaps_allowed", &t4_niccaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, niccaps_allowed, CTLFLAG_RDTUN,
+    &t4_niccaps_allowed, 0, "Default NIC capabilities");
 
 static int t4_toecaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.toecaps_allowed", &t4_toecaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, toecaps_allowed, CTLFLAG_RDTUN,
+    &t4_toecaps_allowed, 0, "Default TCP offload capabilities");
 
 static int t4_rdmacaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.rdmacaps_allowed", &t4_rdmacaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, rdmacaps_allowed, CTLFLAG_RDTUN,
+    &t4_rdmacaps_allowed, 0, "Default RDMA capabilities");
 
 static int t4_cryptocaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.cryptocaps_allowed", &t4_cryptocaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, cryptocaps_allowed, CTLFLAG_RDTUN,
+    &t4_cryptocaps_allowed, 0, "Default crypto capabilities");
 
 static int t4_iscsicaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.iscsicaps_allowed", &t4_iscsicaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, iscsicaps_allowed, CTLFLAG_RDTUN,
+    &t4_iscsicaps_allowed, 0, "Default iSCSI capabilities");
 
 static int t4_fcoecaps_allowed = 0;
-TUNABLE_INT("hw.cxgbe.fcoecaps_allowed", &t4_fcoecaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fcoecaps_allowed, CTLFLAG_RDTUN,
+    &t4_fcoecaps_allowed, 0, "Default FCoE capabilities");
 
 static int t5_write_combine = 0;
-TUNABLE_INT("hw.cxl.write_combine", &t5_write_combine);
+SYSCTL_INT(_hw_cxl, OID_AUTO, write_combine, CTLFLAG_RDTUN, &t5_write_combine,
+    0, "Use WC instead of UC for BAR2");
 
 static int t4_num_vis = 1;
-TUNABLE_INT("hw.cxgbe.num_vis", &t4_num_vis);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, num_vis, CTLFLAG_RDTUN, &t4_num_vis, 0,
+    "Number of VIs per port");
+
 /*
  * PCIe Relaxed Ordering.
  * -1: driver should figure out a good value.
@@ -483,17 +546,22 @@ TUNABLE_INT("hw.cxgbe.num_vis", &t4_num_vis);
  * 2: leave RO alone.
  */
 static int pcie_relaxed_ordering = -1;
-TUNABLE_INT("hw.cxgbe.pcie_relaxed_ordering", &pcie_relaxed_ordering);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, pcie_relaxed_ordering, CTLFLAG_RDTUN,
+    &pcie_relaxed_ordering, 0,
+    "PCIe Relaxed Ordering: 0 = disable, 1 = enable, 2 = leave alone");
 
 static int t4_panic_on_fatal_err = 0;
-TUNABLE_INT("hw.cxgbe.panic_on_fatal_err", &t4_panic_on_fatal_err);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, panic_on_fatal_err, CTLFLAG_RDTUN,
+    &t4_panic_on_fatal_err, 0, "panic on fatal firmware errors");
 
 #ifdef TCP_OFFLOAD
 /*
  * TOE tunables.
  */
 static int t4_cop_managed_offloading = 0;
-TUNABLE_INT("hw.cxgbe.cop_managed_offloading", &t4_cop_managed_offloading);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, cop_managed_offloading, CTLFLAG_RDTUN,
+    &t4_cop_managed_offloading, 0,
+    "COP (Connection Offload Policy) controls all TOE offload");
 #endif
 
 /* Functions used by VIs to obtain unique MAC addresses for each VI. */
@@ -6197,7 +6265,7 @@ cxgbe_sysctls(struct port_info *pi)
 
 	SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "pause_settings",
 	    CTLTYPE_STRING | CTLFLAG_RW, pi, 0, sysctl_pause_settings, "A",
-	    "PAUSE settings (bit 0 = rx_pause, bit 1 = tx_pause)");
+    "PAUSE settings (bit 0 = rx_pause, 1 = tx_pause, 2 = pause_autoneg)");
 	SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "fec",
 	    CTLTYPE_STRING | CTLFLAG_RW, pi, 0, sysctl_fec, "A",
 	    "Forward Error Correction (bit 0 = RS, bit 1 = BASER_RS)");

Modified: stable/12/sys/dev/cxgbe/t4_netmap.c
==============================================================================
--- stable/12/sys/dev/cxgbe/t4_netmap.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/12/sys/dev/cxgbe/t4_netmap.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -57,8 +57,6 @@ __FBSDID("$FreeBSD$");
 
 extern int fl_pad;	/* XXXNM */
 
-SYSCTL_NODE(_hw, OID_AUTO, cxgbe, CTLFLAG_RD, 0, "cxgbe netmap parameters");
-
 /*
  * 0 = normal netmap rx
  * 1 = black hole
@@ -87,7 +85,9 @@ SYSCTL_INT(_hw_cxgbe, OID_AUTO, nm_holdoff_tmr_idx, CT
  *  1: no backpressure, drop packets for the congested queue immediately.
  */
 static int nm_cong_drop = 1;
-TUNABLE_INT("hw.cxgbe.nm_cong_drop", &nm_cong_drop);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nm_cong_drop, CTLFLAG_RDTUN,
+    &nm_cong_drop, 0,
+    "Congestion control for netmap rx queues (0 = backpressure, 1 = drop");
 
 int starve_fl = 0;
 SYSCTL_INT(_hw_cxgbe, OID_AUTO, starve_fl, CTLFLAG_RWTUN,

Modified: stable/12/sys/dev/cxgbe/t4_sge.c
==============================================================================
--- stable/12/sys/dev/cxgbe/t4_sge.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/12/sys/dev/cxgbe/t4_sge.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -87,7 +87,8 @@ __FBSDID("$FreeBSD$");
  * 0-7 are valid values.
  */
 static int fl_pktshift = 0;
-TUNABLE_INT("hw.cxgbe.fl_pktshift", &fl_pktshift);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pktshift, CTLFLAG_RDTUN, &fl_pktshift, 0,
+    "payload DMA offset in rx buffer (bytes)");
 
 /*
  * Pad ethernet payload up to this boundary.
@@ -96,7 +97,8 @@ TUNABLE_INT("hw.cxgbe.fl_pktshift", &fl_pktshift);
  *  Any power of 2 from 32 to 4096 (both inclusive) is also a valid value.
  */
 int fl_pad = -1;
-TUNABLE_INT("hw.cxgbe.fl_pad", &fl_pad);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pad, CTLFLAG_RDTUN, &fl_pad, 0,
+    "payload pad boundary (bytes)");
 
 /*
  * Status page length.
@@ -104,7 +106,8 @@ TUNABLE_INT("hw.cxgbe.fl_pad", &fl_pad);
  *  64 or 128 are the only other valid values.
  */
 static int spg_len = -1;
-TUNABLE_INT("hw.cxgbe.spg_len", &spg_len);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, spg_len, CTLFLAG_RDTUN, &spg_len, 0,
+    "status page size (bytes)");
 
 /*
  * Congestion drops.
@@ -113,7 +116,8 @@ TUNABLE_INT("hw.cxgbe.spg_len", &spg_len);
  *  1: no backpressure, drop packets for the congested queue immediately.
  */
 static int cong_drop = 0;
-TUNABLE_INT("hw.cxgbe.cong_drop", &cong_drop);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, cong_drop, CTLFLAG_RDTUN, &cong_drop, 0,
+    "Congestion control for RX queues (0 = backpressure, 1 = drop");
 
 /*
  * Deliver multiple frames in the same free list buffer if they fit.
@@ -122,7 +126,8 @@ TUNABLE_INT("hw.cxgbe.cong_drop", &cong_drop);
  *  1: enable buffer packing.
  */
 static int buffer_packing = -1;
-TUNABLE_INT("hw.cxgbe.buffer_packing", &buffer_packing);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, buffer_packing, CTLFLAG_RDTUN, &buffer_packing,
+    0, "Enable buffer packing");
 
 /*
  * Start next frame in a packed buffer at this boundary.
@@ -131,7 +136,8 @@ TUNABLE_INT("hw.cxgbe.buffer_packing", &buffer_packing
  * T5: 16, or a power of 2 from 64 to 4096 (both inclusive) is a valid value.
  */
 static int fl_pack = -1;
-TUNABLE_INT("hw.cxgbe.fl_pack", &fl_pack);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pack, CTLFLAG_RDTUN, &fl_pack, 0,
+    "payload pack boundary (bytes)");
 
 /*
  * Allow the driver to create mbuf(s) in a cluster allocated for rx.
@@ -139,20 +145,24 @@ TUNABLE_INT("hw.cxgbe.fl_pack", &fl_pack);
  * 1: ok to create mbuf(s) within a cluster if there is room.
  */
 static int allow_mbufs_in_cluster = 1;
-TUNABLE_INT("hw.cxgbe.allow_mbufs_in_cluster", &allow_mbufs_in_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, allow_mbufs_in_cluster, CTLFLAG_RDTUN,
+    &allow_mbufs_in_cluster, 0,
+    "Allow driver to create mbufs within a rx cluster");
 
 /*
  * Largest rx cluster size that the driver is allowed to allocate.
  */
 static int largest_rx_cluster = MJUM16BYTES;
-TUNABLE_INT("hw.cxgbe.largest_rx_cluster", &largest_rx_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, largest_rx_cluster, CTLFLAG_RDTUN,
+    &largest_rx_cluster, 0, "Largest rx cluster (bytes)");
 
 /*
  * Size of cluster allocation that's most likely to succeed.  The driver will
  * fall back to this size if it fails to allocate clusters larger than this.
  */
 static int safest_rx_cluster = PAGE_SIZE;
-TUNABLE_INT("hw.cxgbe.safest_rx_cluster", &safest_rx_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, safest_rx_cluster, CTLFLAG_RDTUN,
+    &safest_rx_cluster, 0, "Safe rx cluster (bytes)");
 
 #ifdef RATELIMIT
 /*
@@ -165,10 +175,12 @@ TUNABLE_INT("hw.cxgbe.safest_rx_cluster", &safest_rx_c
  * 3: 1us
  */
 static int tsclk = -1;
-TUNABLE_INT("hw.cxgbe.tsclk", &tsclk);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, tsclk, CTLFLAG_RDTUN, &tsclk, 0,
+    "Control TCP timestamp rewriting when using pacing");
 
 static int eo_max_backlog = 1024 * 1024;
-TUNABLE_INT("hw.cxgbe.eo_max_backlog", &eo_max_backlog);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, eo_max_backlog, CTLFLAG_RDTUN, &eo_max_backlog,
+    0, "Maximum backlog of ratelimited data per flow");
 #endif
 
 /*
@@ -176,19 +188,22 @@ TUNABLE_INT("hw.cxgbe.eo_max_backlog", &eo_max_backlog
  * 1 and 3-17 (both inclusive) are legal values.
  */
 static int tscale = 1;
-TUNABLE_INT("hw.cxgbe.tscale", &tscale);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, tscale, CTLFLAG_RDTUN, &tscale, 0,
+    "Interrupt holdoff timer scale on T6+");
 
 /*
  * Number of LRO entries in the lro_ctrl structure per rx queue.
  */
 static int lro_entries = TCP_LRO_ENTRIES;
-TUNABLE_INT("hw.cxgbe.lro_entries", &lro_entries);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, lro_entries, CTLFLAG_RDTUN, &lro_entries, 0,
+    "Number of LRO entries per RX queue");
 
 /*
  * This enables presorting of frames before they're fed into tcp_lro_rx.
  */
 static int lro_mbufs = 0;
-TUNABLE_INT("hw.cxgbe.lro_mbufs", &lro_mbufs);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, lro_mbufs, CTLFLAG_RDTUN, &lro_mbufs, 0,
+    "Enable presorting of LRO frames");
 
 struct txpkts {
 	u_int wr_type;		/* type 0 or type 1 */

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:09:29 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7F8CA152A975;
 Wed,  6 Mar 2019 23:09:29 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 2FED875B01;
 Wed,  6 Mar 2019 23:09:29 +0000 (UTC) (envelope-from jhb@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 25767A6B5;
 Wed,  6 Mar 2019 23:09:29 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26N9Tfb060307;
 Wed, 6 Mar 2019 23:09:29 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26N9S8o060303;
 Wed, 6 Mar 2019 23:09:28 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903062309.x26N9S8o060303@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Wed, 6 Mar 2019 23:09:28 +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: r344858 - in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Commit-Revision: 344858
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2FED875B01
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:09:29 -0000

Author: jhb
Date: Wed Mar  6 23:09:27 2019
New Revision: 344858
URL: https://svnweb.freebsd.org/changeset/base/344858

Log:
  MFC 341098: Add read-only sysctls for all tunables in the cxgbe(4) driver.

Modified:
  stable/11/sys/dev/cxgbe/adapter.h
  stable/11/sys/dev/cxgbe/t4_main.c
  stable/11/sys/dev/cxgbe/t4_netmap.c
  stable/11/sys/dev/cxgbe/t4_sge.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/dev/cxgbe/adapter.h
  stable/12/sys/dev/cxgbe/t4_main.c
  stable/12/sys/dev/cxgbe/t4_netmap.c
  stable/12/sys/dev/cxgbe/t4_sge.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/dev/cxgbe/adapter.h
==============================================================================
--- stable/11/sys/dev/cxgbe/adapter.h	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/11/sys/dev/cxgbe/adapter.h	Wed Mar  6 23:09:27 2019	(r344858)
@@ -84,6 +84,8 @@ prefetch(void *x)
 #define SBUF_DRAIN 1
 #endif
 
+SYSCTL_DECL(_hw_cxgbe);
+
 struct adapter;
 typedef struct adapter adapter_t;
 

Modified: stable/11/sys/dev/cxgbe/t4_main.c
==============================================================================
--- stable/11/sys/dev/cxgbe/t4_main.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/11/sys/dev/cxgbe/t4_main.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -248,110 +248,150 @@ SLIST_HEAD(, uld_info) t4_uld_list;
  * Tunables applicable to both T4 and T5 are under hw.cxgbe.  Those specific to
  * T5 are under hw.cxl.
  */
+SYSCTL_NODE(_hw, OID_AUTO, cxgbe, CTLFLAG_RD, 0, "cxgbe(4) parameters");
+SYSCTL_NODE(_hw, OID_AUTO, cxl, CTLFLAG_RD, 0, "cxgbe(4) T5+ parameters");
+SYSCTL_NODE(_hw_cxgbe, OID_AUTO, toe, CTLFLAG_RD, 0, "cxgbe(4) TOE parameters");
 
 /*
  * Number of queues for tx and rx, NIC and offload.
  */
 #define NTXQ 16
 int t4_ntxq = -NTXQ;
-TUNABLE_INT("hw.cxgbe.ntxq", &t4_ntxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, ntxq, CTLFLAG_RDTUN, &t4_ntxq, 0,
+    "Number of TX queues per port");
 TUNABLE_INT("hw.cxgbe.ntxq10g", &t4_ntxq);	/* Old name, undocumented */
 
 #define NRXQ 8
 int t4_nrxq = -NRXQ;
-TUNABLE_INT("hw.cxgbe.nrxq", &t4_nrxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nrxq, CTLFLAG_RDTUN, &t4_nrxq, 0,
+    "Number of RX queues per port");
 TUNABLE_INT("hw.cxgbe.nrxq10g", &t4_nrxq);	/* Old name, undocumented */
 
 #define NTXQ_VI 1
 static int t4_ntxq_vi = -NTXQ_VI;
-TUNABLE_INT("hw.cxgbe.ntxq_vi", &t4_ntxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, ntxq_vi, CTLFLAG_RDTUN, &t4_ntxq_vi, 0,
+    "Number of TX queues per VI");
 
 #define NRXQ_VI 1
 static int t4_nrxq_vi = -NRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nrxq_vi", &t4_nrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nrxq_vi, CTLFLAG_RDTUN, &t4_nrxq_vi, 0,
+    "Number of RX queues per VI");
 
 static int t4_rsrv_noflowq = 0;
-TUNABLE_INT("hw.cxgbe.rsrv_noflowq", &t4_rsrv_noflowq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, rsrv_noflowq, CTLFLAG_RDTUN, &t4_rsrv_noflowq,
+    0, "Reserve TX queue 0 of each VI for non-flowid packets");
 
 #ifdef TCP_OFFLOAD
 #define NOFLDTXQ 8
 static int t4_nofldtxq = -NOFLDTXQ;
-TUNABLE_INT("hw.cxgbe.nofldtxq", &t4_nofldtxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldtxq, CTLFLAG_RDTUN, &t4_nofldtxq, 0,
+    "Number of offload TX queues per port");
 
 #define NOFLDRXQ 2
 static int t4_nofldrxq = -NOFLDRXQ;
-TUNABLE_INT("hw.cxgbe.nofldrxq", &t4_nofldrxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldrxq, CTLFLAG_RDTUN, &t4_nofldrxq, 0,
+    "Number of offload RX queues per port");
 
 #define NOFLDTXQ_VI 1
 static int t4_nofldtxq_vi = -NOFLDTXQ_VI;
-TUNABLE_INT("hw.cxgbe.nofldtxq_vi", &t4_nofldtxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldtxq_vi, CTLFLAG_RDTUN, &t4_nofldtxq_vi, 0,
+    "Number of offload TX queues per VI");
 
 #define NOFLDRXQ_VI 1
 static int t4_nofldrxq_vi = -NOFLDRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nofldrxq_vi", &t4_nofldrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nofldrxq_vi, CTLFLAG_RDTUN, &t4_nofldrxq_vi, 0,
+    "Number of offload RX queues per VI");
 
 #define TMR_IDX_OFLD 1
 int t4_tmr_idx_ofld = TMR_IDX_OFLD;
-TUNABLE_INT("hw.cxgbe.holdoff_timer_idx_ofld", &t4_tmr_idx_ofld);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_timer_idx_ofld, CTLFLAG_RDTUN,
+    &t4_tmr_idx_ofld, 0, "Holdoff timer index for offload queues");
 
 #define PKTC_IDX_OFLD (-1)
 int t4_pktc_idx_ofld = PKTC_IDX_OFLD;
-TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx_ofld", &t4_pktc_idx_ofld);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_pktc_idx_ofld, CTLFLAG_RDTUN,
+    &t4_pktc_idx_ofld, 0, "holdoff packet counter index for offload queues");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_keepalive_idle = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.keepalive_idle", &t4_toe_keepalive_idle);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, keepalive_idle, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_idle, 0, "TOE keepalive idle timer (us)");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_keepalive_interval = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.keepalive_interval", &t4_toe_keepalive_interval);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, keepalive_interval, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_interval, 0, "TOE keepalive interval timer (us)");
 
 /* 0 means chip/fw default, non-zero number is # of keepalives before abort */
 static int t4_toe_keepalive_count = 0;
-TUNABLE_INT("hw.cxgbe.toe.keepalive_count", &t4_toe_keepalive_count);
+SYSCTL_INT(_hw_cxgbe_toe, OID_AUTO, keepalive_count, CTLFLAG_RDTUN,
+    &t4_toe_keepalive_count, 0, "Number of TOE keepalive probes before abort");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_rexmt_min = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.rexmt_min", &t4_toe_rexmt_min);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, rexmt_min, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_min, 0, "Minimum TOE retransmit interval (us)");
 
 /* 0 means chip/fw default, non-zero number is value in microseconds */
 static u_long t4_toe_rexmt_max = 0;
-TUNABLE_ULONG("hw.cxgbe.toe.rexmt_max", &t4_toe_rexmt_max);
+SYSCTL_ULONG(_hw_cxgbe_toe, OID_AUTO, rexmt_max, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_max, 0, "Maximum TOE retransmit interval (us)");
 
 /* 0 means chip/fw default, non-zero number is # of rexmt before abort */
 static int t4_toe_rexmt_count = 0;
-TUNABLE_INT("hw.cxgbe.toe.rexmt_count", &t4_toe_rexmt_count);
+SYSCTL_INT(_hw_cxgbe_toe, OID_AUTO, rexmt_count, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_count, 0, "Number of TOE retransmissions before abort");
 
 /* -1 means chip/fw default, other values are raw backoff values to use */
 static int t4_toe_rexmt_backoff[16] = {
 	-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1
 };
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.0", &t4_toe_rexmt_backoff[0]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.1", &t4_toe_rexmt_backoff[1]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.2", &t4_toe_rexmt_backoff[2]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.3", &t4_toe_rexmt_backoff[3]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.4", &t4_toe_rexmt_backoff[4]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.5", &t4_toe_rexmt_backoff[5]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.6", &t4_toe_rexmt_backoff[6]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.7", &t4_toe_rexmt_backoff[7]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.8", &t4_toe_rexmt_backoff[8]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.9", &t4_toe_rexmt_backoff[9]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.10", &t4_toe_rexmt_backoff[10]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.11", &t4_toe_rexmt_backoff[11]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.12", &t4_toe_rexmt_backoff[12]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.13", &t4_toe_rexmt_backoff[13]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.14", &t4_toe_rexmt_backoff[14]);
-TUNABLE_INT("hw.cxgbe.toe.rexmt_backoff.15", &t4_toe_rexmt_backoff[15]);
+SYSCTL_NODE(_hw_cxgbe_toe, OID_AUTO, rexmt_backoff, CTLFLAG_RD, 0,
+    "cxgbe(4) TOE retransmit backoff values");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 0, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[0], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 1, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[1], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 2, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[2], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 3, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[3], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 4, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[4], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 5, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[5], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 6, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[6], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 7, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[7], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 8, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[8], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 9, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[9], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 10, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[10], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 11, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[11], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 12, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[12], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 13, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[13], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 14, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[14], 0, "");
+SYSCTL_INT(_hw_cxgbe_toe_rexmt_backoff, OID_AUTO, 15, CTLFLAG_RDTUN,
+    &t4_toe_rexmt_backoff[15], 0, "");
 #endif
 
 #ifdef DEV_NETMAP
 #define NNMTXQ_VI 2
 static int t4_nnmtxq_vi = -NNMTXQ_VI;
-TUNABLE_INT("hw.cxgbe.nnmtxq_vi", &t4_nnmtxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nnmtxq_vi, CTLFLAG_RDTUN, &t4_nnmtxq_vi, 0,
+    "Number of netmap TX queues per VI");
 
 #define NNMRXQ_VI 2
 static int t4_nnmrxq_vi = -NNMRXQ_VI;
-TUNABLE_INT("hw.cxgbe.nnmrxq_vi", &t4_nnmrxq_vi);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nnmrxq_vi, CTLFLAG_RDTUN, &t4_nnmrxq_vi, 0,
+    "Number of netmap RX queues per VI");
 #endif
 
 /*
@@ -359,28 +399,33 @@ TUNABLE_INT("hw.cxgbe.nnmrxq_vi", &t4_nnmrxq_vi);
  */
 #define TMR_IDX 1
 int t4_tmr_idx = TMR_IDX;
-TUNABLE_INT("hw.cxgbe.holdoff_timer_idx", &t4_tmr_idx);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_timer_idx, CTLFLAG_RDTUN, &t4_tmr_idx,
+    0, "Holdoff timer index");
 TUNABLE_INT("hw.cxgbe.holdoff_timer_idx_10G", &t4_tmr_idx);	/* Old name */
 
 #define PKTC_IDX (-1)
 int t4_pktc_idx = PKTC_IDX;
-TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx", &t4_pktc_idx);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, holdoff_pktc_idx, CTLFLAG_RDTUN, &t4_pktc_idx,
+    0, "Holdoff packet counter index");
 TUNABLE_INT("hw.cxgbe.holdoff_pktc_idx_10G", &t4_pktc_idx);	/* Old name */
 
 /*
  * Size (# of entries) of each tx and rx queue.
  */
 unsigned int t4_qsize_txq = TX_EQ_QSIZE;
-TUNABLE_INT("hw.cxgbe.qsize_txq", &t4_qsize_txq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, qsize_txq, CTLFLAG_RDTUN, &t4_qsize_txq, 0,
+    "Number of descriptors in each TX queue");
 
 unsigned int t4_qsize_rxq = RX_IQ_QSIZE;
-TUNABLE_INT("hw.cxgbe.qsize_rxq", &t4_qsize_rxq);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, qsize_rxq, CTLFLAG_RDTUN, &t4_qsize_rxq, 0,
+    "Number of descriptors in each RX queue");
 
 /*
  * Interrupt types allowed (bits 0, 1, 2 = INTx, MSI, MSI-X respectively).
  */
 int t4_intr_types = INTR_MSIX | INTR_MSI | INTR_INTX;
-TUNABLE_INT("hw.cxgbe.interrupt_types", &t4_intr_types);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, interrupt_types, CTLFLAG_RDTUN, &t4_intr_types,
+    0, "Interrupt types allowed (bit 0 = INTx, 1 = MSI, 2 = MSI-X)");
 
 /*
  * Configuration file.  All the _CF names here are special.
@@ -391,7 +436,8 @@ TUNABLE_INT("hw.cxgbe.interrupt_types", &t4_intr_types
 #define UWIRE_CF	"uwire"
 #define FPGA_CF		"fpga"
 static char t4_cfg_file[32] = DEFAULT_CF;
-TUNABLE_STR("hw.cxgbe.config_file", t4_cfg_file, sizeof(t4_cfg_file));
+SYSCTL_STRING(_hw_cxgbe, OID_AUTO, config_file, CTLFLAG_RDTUN, t4_cfg_file,
+    sizeof(t4_cfg_file), "Firmware configuration file");
 
 /*
  * PAUSE settings (bit 0, 1, 2 = rx_pause, tx_pause, pause_autoneg respectively).
@@ -403,7 +449,9 @@ TUNABLE_STR("hw.cxgbe.config_file", t4_cfg_file, sizeo
  *                 Otherwise rx_pause/tx_pause are applied forcibly.
  */
 static int t4_pause_settings = PAUSE_RX | PAUSE_TX | PAUSE_AUTONEG;
-TUNABLE_INT("hw.cxgbe.pause_settings", &t4_pause_settings);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, pause_settings, CTLFLAG_RDTUN,
+    &t4_pause_settings, 0,
+    "PAUSE settings (bit 0 = rx_pause, 1 = tx_pause, 2 = pause_autoneg)");
 
 /*
  * Forward Error Correction settings (bit 0, 1 = RS, BASER respectively).
@@ -411,7 +459,8 @@ TUNABLE_INT("hw.cxgbe.pause_settings", &t4_pause_setti
  *  0 to disable FEC.
  */
 static int t4_fec = -1;
-TUNABLE_INT("hw.cxgbe.fec", &t4_fec);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fec, CTLFLAG_RDTUN, &t4_fec, 0,
+    "Forward Error Correction (bit 0 = RS, bit 1 = BASER_RS)");
 
 /*
  * Link autonegotiation.
@@ -420,52 +469,66 @@ TUNABLE_INT("hw.cxgbe.fec", &t4_fec);
  *  1 to enable.
  */
 static int t4_autoneg = -1;
-TUNABLE_INT("hw.cxgbe.autoneg", &t4_autoneg);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, autoneg, CTLFLAG_RDTUN, &t4_autoneg, 0,
+    "Link autonegotiation");
 
 /*
  * Firmware auto-install by driver during attach (0, 1, 2 = prohibited, allowed,
  * encouraged respectively).
  */
 static unsigned int t4_fw_install = 1;
-TUNABLE_INT("hw.cxgbe.fw_install", &t4_fw_install);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fw_install, CTLFLAG_RDTUN, &t4_fw_install, 0,
+    "Firmware auto-install (0 = prohibited, 1 = allowed, 2 = encouraged)");
 
 /*
  * ASIC features that will be used.  Disable the ones you don't want so that the
  * chip resources aren't wasted on features that will not be used.
  */
 static int t4_nbmcaps_allowed = 0;
-TUNABLE_INT("hw.cxgbe.nbmcaps_allowed", &t4_nbmcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nbmcaps_allowed, CTLFLAG_RDTUN,
+    &t4_nbmcaps_allowed, 0, "Default NBM capabilities");
 
 static int t4_linkcaps_allowed = 0;	/* No DCBX, PPP, etc. by default */
-TUNABLE_INT("hw.cxgbe.linkcaps_allowed", &t4_linkcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, linkcaps_allowed, CTLFLAG_RDTUN,
+    &t4_linkcaps_allowed, 0, "Default link capabilities");
 
 static int t4_switchcaps_allowed = FW_CAPS_CONFIG_SWITCH_INGRESS |
     FW_CAPS_CONFIG_SWITCH_EGRESS;
-TUNABLE_INT("hw.cxgbe.switchcaps_allowed", &t4_switchcaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, switchcaps_allowed, CTLFLAG_RDTUN,
+    &t4_switchcaps_allowed, 0, "Default switch capabilities");
 
 static int t4_niccaps_allowed = FW_CAPS_CONFIG_NIC;
-TUNABLE_INT("hw.cxgbe.niccaps_allowed", &t4_niccaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, niccaps_allowed, CTLFLAG_RDTUN,
+    &t4_niccaps_allowed, 0, "Default NIC capabilities");
 
 static int t4_toecaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.toecaps_allowed", &t4_toecaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, toecaps_allowed, CTLFLAG_RDTUN,
+    &t4_toecaps_allowed, 0, "Default TCP offload capabilities");
 
 static int t4_rdmacaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.rdmacaps_allowed", &t4_rdmacaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, rdmacaps_allowed, CTLFLAG_RDTUN,
+    &t4_rdmacaps_allowed, 0, "Default RDMA capabilities");
 
 static int t4_cryptocaps_allowed = 0;
-TUNABLE_INT("hw.cxgbe.cryptocaps_allowed", &t4_cryptocaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, cryptocaps_allowed, CTLFLAG_RDTUN,
+    &t4_cryptocaps_allowed, 0, "Default crypto capabilities");
 
 static int t4_iscsicaps_allowed = -1;
-TUNABLE_INT("hw.cxgbe.iscsicaps_allowed", &t4_iscsicaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, iscsicaps_allowed, CTLFLAG_RDTUN,
+    &t4_iscsicaps_allowed, 0, "Default iSCSI capabilities");
 
 static int t4_fcoecaps_allowed = 0;
-TUNABLE_INT("hw.cxgbe.fcoecaps_allowed", &t4_fcoecaps_allowed);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fcoecaps_allowed, CTLFLAG_RDTUN,
+    &t4_fcoecaps_allowed, 0, "Default FCoE capabilities");
 
 static int t5_write_combine = 0;
-TUNABLE_INT("hw.cxl.write_combine", &t5_write_combine);
+SYSCTL_INT(_hw_cxl, OID_AUTO, write_combine, CTLFLAG_RDTUN, &t5_write_combine,
+    0, "Use WC instead of UC for BAR2");
 
 static int t4_num_vis = 1;
-TUNABLE_INT("hw.cxgbe.num_vis", &t4_num_vis);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, num_vis, CTLFLAG_RDTUN, &t4_num_vis, 0,
+    "Number of VIs per port");
+
 /*
  * PCIe Relaxed Ordering.
  * -1: driver should figure out a good value.
@@ -474,7 +537,9 @@ TUNABLE_INT("hw.cxgbe.num_vis", &t4_num_vis);
  * 2: leave RO alone.
  */
 static int pcie_relaxed_ordering = -1;
-TUNABLE_INT("hw.cxgbe.pcie_relaxed_ordering", &pcie_relaxed_ordering);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, pcie_relaxed_ordering, CTLFLAG_RDTUN,
+    &pcie_relaxed_ordering, 0,
+    "PCIe Relaxed Ordering: 0 = disable, 1 = enable, 2 = leave alone");
 
 
 /* Functions used by VIs to obtain unique MAC addresses for each VI. */
@@ -5910,7 +5975,7 @@ cxgbe_sysctls(struct port_info *pi)
 
 	SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "pause_settings",
 	    CTLTYPE_STRING | CTLFLAG_RW, pi, 0, sysctl_pause_settings, "A",
-	    "PAUSE settings (bit 0 = rx_pause, bit 1 = tx_pause)");
+    "PAUSE settings (bit 0 = rx_pause, 1 = tx_pause, 2 = pause_autoneg)");
 	SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "fec",
 	    CTLTYPE_STRING | CTLFLAG_RW, pi, 0, sysctl_fec, "A",
 	    "Forward Error Correction (bit 0 = RS, bit 1 = BASER_RS)");

Modified: stable/11/sys/dev/cxgbe/t4_netmap.c
==============================================================================
--- stable/11/sys/dev/cxgbe/t4_netmap.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/11/sys/dev/cxgbe/t4_netmap.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -57,8 +57,6 @@ __FBSDID("$FreeBSD$");
 
 extern int fl_pad;	/* XXXNM */
 
-SYSCTL_NODE(_hw, OID_AUTO, cxgbe, CTLFLAG_RD, 0, "cxgbe netmap parameters");
-
 /*
  * 0 = normal netmap rx
  * 1 = black hole
@@ -83,7 +81,9 @@ SYSCTL_INT(_hw_cxgbe, OID_AUTO, nm_holdoff_tmr_idx, CT
  *  1: no backpressure, drop packets for the congested queue immediately.
  */
 static int nm_cong_drop = 1;
-TUNABLE_INT("hw.cxgbe.nm_cong_drop", &nm_cong_drop);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, nm_cong_drop, CTLFLAG_RDTUN,
+    &nm_cong_drop, 0,
+    "Congestion control for netmap rx queues (0 = backpressure, 1 = drop");
 
 static int
 alloc_nm_rxq_hwq(struct vi_info *vi, struct sge_nm_rxq *nm_rxq, int cong)

Modified: stable/11/sys/dev/cxgbe/t4_sge.c
==============================================================================
--- stable/11/sys/dev/cxgbe/t4_sge.c	Wed Mar  6 22:56:49 2019	(r344857)
+++ stable/11/sys/dev/cxgbe/t4_sge.c	Wed Mar  6 23:09:27 2019	(r344858)
@@ -83,7 +83,8 @@ __FBSDID("$FreeBSD$");
  * 0-7 are valid values.
  */
 static int fl_pktshift = 2;
-TUNABLE_INT("hw.cxgbe.fl_pktshift", &fl_pktshift);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pktshift, CTLFLAG_RDTUN, &fl_pktshift, 0,
+    "payload DMA offset in rx buffer (bytes)");
 
 /*
  * Pad ethernet payload up to this boundary.
@@ -92,7 +93,8 @@ TUNABLE_INT("hw.cxgbe.fl_pktshift", &fl_pktshift);
  *  Any power of 2 from 32 to 4096 (both inclusive) is also a valid value.
  */
 int fl_pad = -1;
-TUNABLE_INT("hw.cxgbe.fl_pad", &fl_pad);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pad, CTLFLAG_RDTUN, &fl_pad, 0,
+    "payload pad boundary (bytes)");
 
 /*
  * Status page length.
@@ -100,7 +102,8 @@ TUNABLE_INT("hw.cxgbe.fl_pad", &fl_pad);
  *  64 or 128 are the only other valid values.
  */
 static int spg_len = -1;
-TUNABLE_INT("hw.cxgbe.spg_len", &spg_len);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, spg_len, CTLFLAG_RDTUN, &spg_len, 0,
+    "status page size (bytes)");
 
 /*
  * Congestion drops.
@@ -109,7 +112,8 @@ TUNABLE_INT("hw.cxgbe.spg_len", &spg_len);
  *  1: no backpressure, drop packets for the congested queue immediately.
  */
 static int cong_drop = 0;
-TUNABLE_INT("hw.cxgbe.cong_drop", &cong_drop);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, cong_drop, CTLFLAG_RDTUN, &cong_drop, 0,
+    "Congestion control for RX queues (0 = backpressure, 1 = drop");
 
 /*
  * Deliver multiple frames in the same free list buffer if they fit.
@@ -118,7 +122,8 @@ TUNABLE_INT("hw.cxgbe.cong_drop", &cong_drop);
  *  1: enable buffer packing.
  */
 static int buffer_packing = -1;
-TUNABLE_INT("hw.cxgbe.buffer_packing", &buffer_packing);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, buffer_packing, CTLFLAG_RDTUN, &buffer_packing,
+    0, "Enable buffer packing");
 
 /*
  * Start next frame in a packed buffer at this boundary.
@@ -127,7 +132,8 @@ TUNABLE_INT("hw.cxgbe.buffer_packing", &buffer_packing
  * T5: 16, or a power of 2 from 64 to 4096 (both inclusive) is a valid value.
  */
 static int fl_pack = -1;
-TUNABLE_INT("hw.cxgbe.fl_pack", &fl_pack);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, fl_pack, CTLFLAG_RDTUN, &fl_pack, 0,
+    "payload pack boundary (bytes)");
 
 /*
  * Allow the driver to create mbuf(s) in a cluster allocated for rx.
@@ -135,39 +141,46 @@ TUNABLE_INT("hw.cxgbe.fl_pack", &fl_pack);
  * 1: ok to create mbuf(s) within a cluster if there is room.
  */
 static int allow_mbufs_in_cluster = 1;
-TUNABLE_INT("hw.cxgbe.allow_mbufs_in_cluster", &allow_mbufs_in_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, allow_mbufs_in_cluster, CTLFLAG_RDTUN,
+    &allow_mbufs_in_cluster, 0,
+    "Allow driver to create mbufs within a rx cluster");
 
 /*
  * Largest rx cluster size that the driver is allowed to allocate.
  */
 static int largest_rx_cluster = MJUM16BYTES;
-TUNABLE_INT("hw.cxgbe.largest_rx_cluster", &largest_rx_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, largest_rx_cluster, CTLFLAG_RDTUN,
+    &largest_rx_cluster, 0, "Largest rx cluster (bytes)");
 
 /*
  * Size of cluster allocation that's most likely to succeed.  The driver will
  * fall back to this size if it fails to allocate clusters larger than this.
  */
 static int safest_rx_cluster = PAGE_SIZE;
-TUNABLE_INT("hw.cxgbe.safest_rx_cluster", &safest_rx_cluster);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, safest_rx_cluster, CTLFLAG_RDTUN,
+    &safest_rx_cluster, 0, "Safe rx cluster (bytes)");
 
 /*
  * The interrupt holdoff timers are multiplied by this value on T6+.
  * 1 and 3-17 (both inclusive) are legal values.
  */
 static int tscale = 1;
-TUNABLE_INT("hw.cxgbe.tscale", &tscale);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, tscale, CTLFLAG_RDTUN, &tscale, 0,
+    "Interrupt holdoff timer scale on T6+");
 
 /*
  * Number of LRO entries in the lro_ctrl structure per rx queue.
  */
 static int lro_entries = TCP_LRO_ENTRIES;
-TUNABLE_INT("hw.cxgbe.lro_entries", &lro_entries);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, lro_entries, CTLFLAG_RDTUN, &lro_entries, 0,
+    "Number of LRO entries per RX queue");
 
 /*
  * This enables presorting of frames before they're fed into tcp_lro_rx.
  */
 static int lro_mbufs = 0;
-TUNABLE_INT("hw.cxgbe.lro_mbufs", &lro_mbufs);
+SYSCTL_INT(_hw_cxgbe, OID_AUTO, lro_mbufs, CTLFLAG_RDTUN, &lro_mbufs, 0,
+    "Enable presorting of LRO frames");
 
 struct txpkts {
 	u_int wr_type;		/* type 0 or type 1 */

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:31:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D0199152B09B;
 Wed,  6 Mar 2019 23:31:44 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 7534776754;
 Wed,  6 Mar 2019 23:31:44 +0000 (UTC) (envelope-from bz@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 69862AB6D;
 Wed,  6 Mar 2019 23:31:44 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26NViNK071547;
 Wed, 6 Mar 2019 23:31:44 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26NVgmw071539;
 Wed, 6 Mar 2019 23:31:42 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903062331.x26NVgmw071539@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Wed, 6 Mar 2019 23:31:42 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344859 - in head: sbin/ifconfig sys/net sys/netinet6
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: in head: sbin/ifconfig sys/net sys/netinet6
X-SVN-Commit-Revision: 344859
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7534776754
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:31:45 -0000

Author: bz
Date: Wed Mar  6 23:31:42 2019
New Revision: 344859
URL: https://svnweb.freebsd.org/changeset/base/344859

Log:
  Update for IETF draft-ietf-6man-ipv6only-flag.
  
  All changes are hidden behind the EXPERIMENTAL option and are not compiled
  in by default.
  
  Add ND6_IFF_IPV6_ONLY_MANUAL to be able to set the interface into no-IPv4-mode
  manually without router advertisement options.  This will allow developers to
  test software for the appropriate behaviour even on dual-stack networks or
  IPv6-Only networks without the option being set in RA messages.
  Update ifconfig to allow setting and displaying the flag.
  
  Update the checks for the filters to check for either the automatic or the manual
  flag to be set.  Add REVARP to the list of filtered IPv4-related protocols and add
  an input filter similar to the output filter.
  
  Add a check, when receiving the IPv6-Only RA flag to see if the receiving
  interface has any IPv4 configured.  If it does, ignore the IPv6-Only flag.
  
  Add a per-VNET global sysctl, which is on by default, to not process the automatic
  RA IPv6-Only flag.  This way an administrator (if this is compiled in) has control
  over the behaviour in case the node still relies on IPv4.

Modified:
  head/sbin/ifconfig/Makefile
  head/sbin/ifconfig/af_inet6.c
  head/sbin/ifconfig/af_nd6.c
  head/sys/net/if_ethersubr.c
  head/sys/netinet6/in6_proto.c
  head/sys/netinet6/ip6_var.h
  head/sys/netinet6/nd6.h
  head/sys/netinet6/nd6_rtr.c

Modified: head/sbin/ifconfig/Makefile
==============================================================================
--- head/sbin/ifconfig/Makefile	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sbin/ifconfig/Makefile	Wed Mar  6 23:31:42 2019	(r344859)
@@ -55,6 +55,7 @@ SRCS+=	iflagg.c		# lagg support
 
 .if ${MK_EXPERIMENTAL} != "no"
 CFLAGS+= -DDRAFT_IETF_6MAN_IPV6ONLY_FLAG
+CFLAGS+= -DEXPERIMENTAL
 .endif
 .if ${MK_INET6_SUPPORT} != "no"
 CFLAGS+= -DINET6

Modified: head/sbin/ifconfig/af_inet6.c
==============================================================================
--- head/sbin/ifconfig/af_inet6.c	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sbin/ifconfig/af_inet6.c	Wed Mar  6 23:31:42 2019	(r344859)
@@ -505,6 +505,10 @@ static struct cmd inet6_cmds[] = {
 	DEF_CMD_ARG("pltime",        			setip6pltime),
 	DEF_CMD_ARG("vltime",        			setip6vltime),
 	DEF_CMD("eui64",	0,			setip6eui64),
+#ifdef EXPERIMENTAL
+	DEF_CMD("ipv6_only",	ND6_IFF_IPV6_ONLY_MANUAL,setnd6flags),
+	DEF_CMD("-ipv6_only",	-ND6_IFF_IPV6_ONLY_MANUAL,setnd6flags),
+#endif
 };
 
 static struct afswtch af_inet6 = {

Modified: head/sbin/ifconfig/af_nd6.c
==============================================================================
--- head/sbin/ifconfig/af_nd6.c	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sbin/ifconfig/af_nd6.c	Wed Mar  6 23:31:42 2019	(r344859)
@@ -61,7 +61,7 @@ static const char rcsid[] =
 #define	ND6BITS	"\020\001PERFORMNUD\002ACCEPT_RTADV\003PREFER_SOURCE" \
 		"\004IFDISABLED\005DONT_SET_IFROUTE\006AUTO_LINKLOCAL" \
 		"\007NO_RADR\010NO_PREFER_IFACE\011NO_DAD" \
-		"\012IPV6_ONLY" \
+		"\012IPV6_ONLY\013IPV6_ONLY_MANUAL" \
 		"\020DEFAULTIF"
 #else
 #define	ND6BITS	"\020\001PERFORMNUD\002ACCEPT_RTADV\003PREFER_SOURCE" \

Modified: head/sys/net/if_ethersubr.c
==============================================================================
--- head/sys/net/if_ethersubr.c	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sys/net/if_ethersubr.c	Wed Mar  6 23:31:42 2019	(r344859)
@@ -476,14 +476,15 @@ ether_output_frame(struct ifnet *ifp, struct mbuf *m)
 #ifdef EXPERIMENTAL
 #if defined(INET6) && defined(INET)
 	/* draft-ietf-6man-ipv6only-flag */
-	/* Catch ETHERTYPE_IP, and ETHERTYPE_ARP if we are v6-only. */
-	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY) != 0) {
+	/* Catch ETHERTYPE_IP, and ETHERTYPE_[REV]ARP if we are v6-only. */
+	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY_MASK) != 0) {
 		struct ether_header *eh;
 
 		eh = mtod(m, struct ether_header *);
 		switch (ntohs(eh->ether_type)) {
 		case ETHERTYPE_IP:
 		case ETHERTYPE_ARP:
+		case ETHERTYPE_REVARP:
 			m_freem(m);
 			return (EAFNOSUPPORT);
 			/* NOTREACHED */
@@ -533,6 +534,25 @@ ether_input_internal(struct ifnet *ifp, struct mbuf *m
 	eh = mtod(m, struct ether_header *);
 	etype = ntohs(eh->ether_type);
 	random_harvest_queue_ether(m, sizeof(*m));
+
+#ifdef EXPERIMENTAL
+#if defined(INET6) && defined(INET)
+	/* draft-ietf-6man-ipv6only-flag */
+	/* Catch ETHERTYPE_IP, and ETHERTYPE_[REV]ARP if we are v6-only. */
+	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY_MASK) != 0) {
+
+		switch (etype) {
+		case ETHERTYPE_IP:
+		case ETHERTYPE_ARP:
+		case ETHERTYPE_REVARP:
+			m_freem(m);
+			return;
+			/* NOTREACHED */
+			break;
+		};
+	}
+#endif
+#endif
 
 	CURVNET_SET_QUIET(ifp->if_vnet);
 

Modified: head/sys/netinet6/in6_proto.c
==============================================================================
--- head/sys/netinet6/in6_proto.c	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sys/netinet6/in6_proto.c	Wed Mar  6 23:31:42 2019	(r344859)
@@ -641,3 +641,10 @@ SYSCTL_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_ONLINKNSRFC
 	nd6_onlink_ns_rfc4861, CTLFLAG_VNET | CTLFLAG_RW,
 	&VNET_NAME(nd6_onlink_ns_rfc4861), 0,
 	"Accept 'on-link' ICMPv6 NS messages in compliance with RFC 4861");
+#ifdef EXPERIMENTAL
+SYSCTL_INT(_net_inet6_icmp6, OID_AUTO,
+	nd6_ignore_ipv6_only_ra, CTLFLAG_VNET | CTLFLAG_RW,
+	&VNET_NAME(nd6_ignore_ipv6_only_ra), 0,
+	"Ignore the 'IPv6-Only flag' in RA messages in compliance with "
+	"draft-ietf-6man-ipv6only-flag");
+#endif

Modified: head/sys/netinet6/ip6_var.h
==============================================================================
--- head/sys/netinet6/ip6_var.h	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sys/netinet6/ip6_var.h	Wed Mar  6 23:31:42 2019	(r344859)
@@ -355,6 +355,11 @@ VNET_DECLARE(int, ip6stealth);
 #define	V_ip6stealth			VNET(ip6stealth)
 #endif
 
+#ifdef EXPERIMENTAL
+VNET_DECLARE(int, nd6_ignore_ipv6_only_ra);
+#define	V_nd6_ignore_ipv6_only_ra	VNET(nd6_ignore_ipv6_only_ra)
+#endif
+
 extern struct	pr_usrreqs rip6_usrreqs;
 struct sockopt;
 

Modified: head/sys/netinet6/nd6.h
==============================================================================
--- head/sys/netinet6/nd6.h	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sys/netinet6/nd6.h	Wed Mar  6 23:31:42 2019	(r344859)
@@ -91,7 +91,10 @@ struct nd_ifinfo {
 #define ND6_IFF_NO_PREFER_IFACE	0x80 /* XXX: not related to ND. */
 #define ND6_IFF_NO_DAD		0x100
 #ifdef EXPERIMENTAL
+/* XXX: not related to ND. */
 #define	ND6_IFF_IPV6_ONLY	0x200 /* draft-ietf-6man-ipv6only-flag */
+#define	ND6_IFF_IPV6_ONLY_MANUAL	0x400
+#define	ND6_IFF_IPV6_ONLY_MASK	(ND6_IFF_IPV6_ONLY|ND6_IFF_IPV6_ONLY_MANUAL)
 #endif
 
 #ifdef _KERNEL

Modified: head/sys/netinet6/nd6_rtr.c
==============================================================================
--- head/sys/netinet6/nd6_rtr.c	Wed Mar  6 23:09:27 2019	(r344858)
+++ head/sys/netinet6/nd6_rtr.c	Wed Mar  6 23:31:42 2019	(r344859)
@@ -106,6 +106,10 @@ VNET_DEFINE(u_int32_t, ip6_temp_valid_lifetime) = DEF_
 
 VNET_DEFINE(int, ip6_temp_regen_advance) = TEMPADDR_REGEN_ADVANCE;
 
+#ifdef EXPERIMENTAL
+VNET_DEFINE(int, nd6_ignore_ipv6_only_ra) = 1;
+#endif
+
 /* RTPREF_MEDIUM has to be 0! */
 #define RTPREF_HIGH	1
 #define RTPREF_MEDIUM	0
@@ -208,7 +212,7 @@ nd6_rs_input(struct mbuf *m, int off, int icmp6len)
 /*
  * An initial update routine for draft-ietf-6man-ipv6only-flag.
  * We need to iterate over all default routers for the given
- * interface to see whether they are all advertising the "6"
+ * interface to see whether they are all advertising the "S"
  * (IPv6-Only) flag.  If they do set, otherwise unset, the
  * interface flag we later use to filter on.
  */
@@ -216,8 +220,16 @@ static void
 defrtr_ipv6_only_ifp(struct ifnet *ifp)
 {
 	struct nd_defrouter *dr;
-	bool ipv6_only;
+	bool ipv6_only, ipv6_only_old;
+#ifdef INET
+	struct epoch_tracker et;
+	struct ifaddr *ifa;
+	bool has_ipv4_addr;
+#endif
 
+	if (V_nd6_ignore_ipv6_only_ra != 0)
+		return;
+
 	ipv6_only = true;
 	ND6_RLOCK();
 	TAILQ_FOREACH(dr, &V_nd_defrouter, dr_entry)
@@ -227,13 +239,53 @@ defrtr_ipv6_only_ifp(struct ifnet *ifp)
 	ND6_RUNLOCK();
 
 	IF_AFDATA_WLOCK(ifp);
+	ipv6_only_old = ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY;
+	IF_AFDATA_WUNLOCK(ifp);
+
+	/* If nothing changed, we have an early exit. */
+	if (ipv6_only == ipv6_only_old)
+		return;
+
+#ifdef INET
+	/*
+	 * Should we want to set the IPV6-ONLY flag, check if the
+	 * interface has a non-0/0 and non-link-local IPv4 address
+	 * configured on it.  If it has we will assume working
+	 * IPv4 operations and will clear the interface flag.
+	 */
+	has_ipv4_addr = false;
+	if (ipv6_only) {
+		NET_EPOCH_ENTER(et);
+		CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
+			if (ifa->ifa_addr->sa_family != AF_INET)
+				continue;
+			if (in_canforward(
+			    satosin(ifa->ifa_addr)->sin_addr)) {
+				has_ipv4_addr = true;
+				break;
+			}
+		}
+		NET_EPOCH_EXIT(et);
+	}
+	if (ipv6_only && has_ipv4_addr) {
+		log(LOG_NOTICE, "%s rcvd RA w/ IPv6-Only flag set but has IPv4 "
+		    "configured, ignoring IPv6-Only flag.\n", ifp->if_xname);
+		ipv6_only = false;
+	}
+#endif
+
+	IF_AFDATA_WLOCK(ifp);
 	if (ipv6_only)
 		ND_IFINFO(ifp)->flags |= ND6_IFF_IPV6_ONLY;
 	else
 		ND_IFINFO(ifp)->flags &= ~ND6_IFF_IPV6_ONLY;
 	IF_AFDATA_WUNLOCK(ifp);
-}
+
+#ifdef notyet
+	/* Send notification of flag change. */
 #endif
+}
+#endif	/* EXPERIMENTAL */
 
 /*
  * Receive Router Advertisement Message.

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:39:15 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AF651152B591;
 Wed,  6 Mar 2019 23:39:15 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 0D6FA76CC1;
 Wed,  6 Mar 2019 23:39:14 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x26Nd6CI088090;
 Wed, 6 Mar 2019 15:39:06 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x26Nd6nx088089;
 Wed, 6 Mar 2019 15:39:06 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903062339.x26Nd6nx088089@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344859 - in head: sbin/ifconfig sys/net sys/netinet6
In-Reply-To: <201903062331.x26NVgmw071539@repo.freebsd.org>
To: "Bjoern A. Zeeb" <bz@freebsd.org>
Date: Wed, 6 Mar 2019 15:39:06 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 0D6FA76CC1
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.957,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:39:15 -0000

> Author: bz
> Date: Wed Mar  6 23:31:42 2019
> New Revision: 344859
> URL: https://svnweb.freebsd.org/changeset/base/344859
> 
> Log:
>   Update for IETF draft-ietf-6man-ipv6only-flag.
>   
>   All changes are hidden behind the EXPERIMENTAL option and are not compiled
>   in by default.

It is probably time to make EXPERIMENTAL finer grain,
there are likely more than one experiment to be avaliable
in the tree at the same time, and having them all use this
one knob is a bit of a pita.

Thanks,
Rod

>   Add ND6_IFF_IPV6_ONLY_MANUAL to be able to set the interface into no-IPv4-mode
>   manually without router advertisement options.  This will allow developers to
>   test software for the appropriate behaviour even on dual-stack networks or
>   IPv6-Only networks without the option being set in RA messages.
>   Update ifconfig to allow setting and displaying the flag.
>   
>   Update the checks for the filters to check for either the automatic or the manual
>   flag to be set.  Add REVARP to the list of filtered IPv4-related protocols and add
>   an input filter similar to the output filter.
>   
>   Add a check, when receiving the IPv6-Only RA flag to see if the receiving
>   interface has any IPv4 configured.  If it does, ignore the IPv6-Only flag.
>   
>   Add a per-VNET global sysctl, which is on by default, to not process the automatic
>   RA IPv6-Only flag.  This way an administrator (if this is compiled in) has control
>   over the behaviour in case the node still relies on IPv4.
> 
> Modified:
>   head/sbin/ifconfig/Makefile
>   head/sbin/ifconfig/af_inet6.c
>   head/sbin/ifconfig/af_nd6.c
>   head/sys/net/if_ethersubr.c
>   head/sys/netinet6/in6_proto.c
>   head/sys/netinet6/ip6_var.h
>   head/sys/netinet6/nd6.h
>   head/sys/netinet6/nd6_rtr.c
> 
> Modified: head/sbin/ifconfig/Makefile
> ==============================================================================
> --- head/sbin/ifconfig/Makefile	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sbin/ifconfig/Makefile	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -55,6 +55,7 @@ SRCS+=	iflagg.c		# lagg support
>  
>  .if ${MK_EXPERIMENTAL} != "no"
>  CFLAGS+= -DDRAFT_IETF_6MAN_IPV6ONLY_FLAG
> +CFLAGS+= -DEXPERIMENTAL
>  .endif
>  .if ${MK_INET6_SUPPORT} != "no"
>  CFLAGS+= -DINET6
> 
> Modified: head/sbin/ifconfig/af_inet6.c
> ==============================================================================
> --- head/sbin/ifconfig/af_inet6.c	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sbin/ifconfig/af_inet6.c	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -505,6 +505,10 @@ static struct cmd inet6_cmds[] = {
>  	DEF_CMD_ARG("pltime",        			setip6pltime),
>  	DEF_CMD_ARG("vltime",        			setip6vltime),
>  	DEF_CMD("eui64",	0,			setip6eui64),
> +#ifdef EXPERIMENTAL
> +	DEF_CMD("ipv6_only",	ND6_IFF_IPV6_ONLY_MANUAL,setnd6flags),
> +	DEF_CMD("-ipv6_only",	-ND6_IFF_IPV6_ONLY_MANUAL,setnd6flags),
> +#endif
>  };
>  
>  static struct afswtch af_inet6 = {
> 
> Modified: head/sbin/ifconfig/af_nd6.c
> ==============================================================================
> --- head/sbin/ifconfig/af_nd6.c	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sbin/ifconfig/af_nd6.c	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -61,7 +61,7 @@ static const char rcsid[] =
>  #define	ND6BITS	"\020\001PERFORMNUD\002ACCEPT_RTADV\003PREFER_SOURCE" \
>  		"\004IFDISABLED\005DONT_SET_IFROUTE\006AUTO_LINKLOCAL" \
>  		"\007NO_RADR\010NO_PREFER_IFACE\011NO_DAD" \
> -		"\012IPV6_ONLY" \
> +		"\012IPV6_ONLY\013IPV6_ONLY_MANUAL" \
>  		"\020DEFAULTIF"
>  #else
>  #define	ND6BITS	"\020\001PERFORMNUD\002ACCEPT_RTADV\003PREFER_SOURCE" \
> 
> Modified: head/sys/net/if_ethersubr.c
> ==============================================================================
> --- head/sys/net/if_ethersubr.c	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sys/net/if_ethersubr.c	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -476,14 +476,15 @@ ether_output_frame(struct ifnet *ifp, struct mbuf *m)
>  #ifdef EXPERIMENTAL
>  #if defined(INET6) && defined(INET)
>  	/* draft-ietf-6man-ipv6only-flag */
> -	/* Catch ETHERTYPE_IP, and ETHERTYPE_ARP if we are v6-only. */
> -	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY) != 0) {
> +	/* Catch ETHERTYPE_IP, and ETHERTYPE_[REV]ARP if we are v6-only. */
> +	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY_MASK) != 0) {
>  		struct ether_header *eh;
>  
>  		eh = mtod(m, struct ether_header *);
>  		switch (ntohs(eh->ether_type)) {
>  		case ETHERTYPE_IP:
>  		case ETHERTYPE_ARP:
> +		case ETHERTYPE_REVARP:
>  			m_freem(m);
>  			return (EAFNOSUPPORT);
>  			/* NOTREACHED */
> @@ -533,6 +534,25 @@ ether_input_internal(struct ifnet *ifp, struct mbuf *m
>  	eh = mtod(m, struct ether_header *);
>  	etype = ntohs(eh->ether_type);
>  	random_harvest_queue_ether(m, sizeof(*m));
> +
> +#ifdef EXPERIMENTAL
> +#if defined(INET6) && defined(INET)
> +	/* draft-ietf-6man-ipv6only-flag */
> +	/* Catch ETHERTYPE_IP, and ETHERTYPE_[REV]ARP if we are v6-only. */
> +	if ((ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY_MASK) != 0) {
> +
> +		switch (etype) {
> +		case ETHERTYPE_IP:
> +		case ETHERTYPE_ARP:
> +		case ETHERTYPE_REVARP:
> +			m_freem(m);
> +			return;
> +			/* NOTREACHED */
> +			break;
> +		};
> +	}
> +#endif
> +#endif
>  
>  	CURVNET_SET_QUIET(ifp->if_vnet);
>  
> 
> Modified: head/sys/netinet6/in6_proto.c
> ==============================================================================
> --- head/sys/netinet6/in6_proto.c	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sys/netinet6/in6_proto.c	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -641,3 +641,10 @@ SYSCTL_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_ONLINKNSRFC
>  	nd6_onlink_ns_rfc4861, CTLFLAG_VNET | CTLFLAG_RW,
>  	&VNET_NAME(nd6_onlink_ns_rfc4861), 0,
>  	"Accept 'on-link' ICMPv6 NS messages in compliance with RFC 4861");
> +#ifdef EXPERIMENTAL
> +SYSCTL_INT(_net_inet6_icmp6, OID_AUTO,
> +	nd6_ignore_ipv6_only_ra, CTLFLAG_VNET | CTLFLAG_RW,
> +	&VNET_NAME(nd6_ignore_ipv6_only_ra), 0,
> +	"Ignore the 'IPv6-Only flag' in RA messages in compliance with "
> +	"draft-ietf-6man-ipv6only-flag");
> +#endif
> 
> Modified: head/sys/netinet6/ip6_var.h
> ==============================================================================
> --- head/sys/netinet6/ip6_var.h	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sys/netinet6/ip6_var.h	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -355,6 +355,11 @@ VNET_DECLARE(int, ip6stealth);
>  #define	V_ip6stealth			VNET(ip6stealth)
>  #endif
>  
> +#ifdef EXPERIMENTAL
> +VNET_DECLARE(int, nd6_ignore_ipv6_only_ra);
> +#define	V_nd6_ignore_ipv6_only_ra	VNET(nd6_ignore_ipv6_only_ra)
> +#endif
> +
>  extern struct	pr_usrreqs rip6_usrreqs;
>  struct sockopt;
>  
> 
> Modified: head/sys/netinet6/nd6.h
> ==============================================================================
> --- head/sys/netinet6/nd6.h	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sys/netinet6/nd6.h	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -91,7 +91,10 @@ struct nd_ifinfo {
>  #define ND6_IFF_NO_PREFER_IFACE	0x80 /* XXX: not related to ND. */
>  #define ND6_IFF_NO_DAD		0x100
>  #ifdef EXPERIMENTAL
> +/* XXX: not related to ND. */
>  #define	ND6_IFF_IPV6_ONLY	0x200 /* draft-ietf-6man-ipv6only-flag */
> +#define	ND6_IFF_IPV6_ONLY_MANUAL	0x400
> +#define	ND6_IFF_IPV6_ONLY_MASK	(ND6_IFF_IPV6_ONLY|ND6_IFF_IPV6_ONLY_MANUAL)
>  #endif
>  
>  #ifdef _KERNEL
> 
> Modified: head/sys/netinet6/nd6_rtr.c
> ==============================================================================
> --- head/sys/netinet6/nd6_rtr.c	Wed Mar  6 23:09:27 2019	(r344858)
> +++ head/sys/netinet6/nd6_rtr.c	Wed Mar  6 23:31:42 2019	(r344859)
> @@ -106,6 +106,10 @@ VNET_DEFINE(u_int32_t, ip6_temp_valid_lifetime) = DEF_
>  
>  VNET_DEFINE(int, ip6_temp_regen_advance) = TEMPADDR_REGEN_ADVANCE;
>  
> +#ifdef EXPERIMENTAL
> +VNET_DEFINE(int, nd6_ignore_ipv6_only_ra) = 1;
> +#endif
> +
>  /* RTPREF_MEDIUM has to be 0! */
>  #define RTPREF_HIGH	1
>  #define RTPREF_MEDIUM	0
> @@ -208,7 +212,7 @@ nd6_rs_input(struct mbuf *m, int off, int icmp6len)
>  /*
>   * An initial update routine for draft-ietf-6man-ipv6only-flag.
>   * We need to iterate over all default routers for the given
> - * interface to see whether they are all advertising the "6"
> + * interface to see whether they are all advertising the "S"
>   * (IPv6-Only) flag.  If they do set, otherwise unset, the
>   * interface flag we later use to filter on.
>   */
> @@ -216,8 +220,16 @@ static void
>  defrtr_ipv6_only_ifp(struct ifnet *ifp)
>  {
>  	struct nd_defrouter *dr;
> -	bool ipv6_only;
> +	bool ipv6_only, ipv6_only_old;
> +#ifdef INET
> +	struct epoch_tracker et;
> +	struct ifaddr *ifa;
> +	bool has_ipv4_addr;
> +#endif
>  
> +	if (V_nd6_ignore_ipv6_only_ra != 0)
> +		return;
> +
>  	ipv6_only = true;
>  	ND6_RLOCK();
>  	TAILQ_FOREACH(dr, &V_nd_defrouter, dr_entry)
> @@ -227,13 +239,53 @@ defrtr_ipv6_only_ifp(struct ifnet *ifp)
>  	ND6_RUNLOCK();
>  
>  	IF_AFDATA_WLOCK(ifp);
> +	ipv6_only_old = ND_IFINFO(ifp)->flags & ND6_IFF_IPV6_ONLY;
> +	IF_AFDATA_WUNLOCK(ifp);
> +
> +	/* If nothing changed, we have an early exit. */
> +	if (ipv6_only == ipv6_only_old)
> +		return;
> +
> +#ifdef INET
> +	/*
> +	 * Should we want to set the IPV6-ONLY flag, check if the
> +	 * interface has a non-0/0 and non-link-local IPv4 address
> +	 * configured on it.  If it has we will assume working
> +	 * IPv4 operations and will clear the interface flag.
> +	 */
> +	has_ipv4_addr = false;
> +	if (ipv6_only) {
> +		NET_EPOCH_ENTER(et);
> +		CK_STAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
> +			if (ifa->ifa_addr->sa_family != AF_INET)
> +				continue;
> +			if (in_canforward(
> +			    satosin(ifa->ifa_addr)->sin_addr)) {
> +				has_ipv4_addr = true;
> +				break;
> +			}
> +		}
> +		NET_EPOCH_EXIT(et);
> +	}
> +	if (ipv6_only && has_ipv4_addr) {
> +		log(LOG_NOTICE, "%s rcvd RA w/ IPv6-Only flag set but has IPv4 "
> +		    "configured, ignoring IPv6-Only flag.\n", ifp->if_xname);
> +		ipv6_only = false;
> +	}
> +#endif
> +
> +	IF_AFDATA_WLOCK(ifp);
>  	if (ipv6_only)
>  		ND_IFINFO(ifp)->flags |= ND6_IFF_IPV6_ONLY;
>  	else
>  		ND_IFINFO(ifp)->flags &= ~ND6_IFF_IPV6_ONLY;
>  	IF_AFDATA_WUNLOCK(ifp);
> -}
> +
> +#ifdef notyet
> +	/* Send notification of flag change. */
>  #endif
> +}
> +#endif	/* EXPERIMENTAL */
>  
>  /*
>   * Receive Router Advertisement Message.
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:47:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 71326152B845;
 Wed,  6 Mar 2019 23:47:40 +0000 (UTC) (envelope-from bz@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)
 server-signature RSA-PSS (4096 bits)
 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 17B8C7717B;
 Wed,  6 Mar 2019 23:47:40 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mx1.sbone.de (mx1.sbone.de [IPv6:2a01:4f8:13b:39f::9f:25])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "mx1.sbone.de", Issuer "SBone.DE" (not verified))
 (Authenticated sender: bz/mail)
 by smtp.freebsd.org (Postfix) with ESMTPSA id E6A137872;
 Wed,  6 Mar 2019 23:47:39 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:31::2013:587])
 (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits))
 (No client certificate requested)
 by mx1.sbone.de (Postfix) with ESMTPS id DE3518D4A175;
 Wed,  6 Mar 2019 23:47:37 +0000 (UTC)
Received: from content-filter.sbone.de (content-filter.sbone.de
 [IPv6:fde9:577b:c1a9:31::2013:2742])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mail.sbone.de (Postfix) with ESMTPS id 05B1CE707FD;
 Wed,  6 Mar 2019 23:47:37 +0000 (UTC)
X-Virus-Scanned: amavisd-new at sbone.de
Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:31::2013:587])
 by content-filter.sbone.de (content-filter.sbone.de
 [fde9:577b:c1a9:31::2013:2742]) (amavisd-new, port 10024)
 with ESMTP id vRxbCxayil-y; Wed,  6 Mar 2019 23:47:35 +0000 (UTC)
Received: from [192.168.2.110] (unknown
 [IPv6:fde9:577b:c1a9:31:2ef0:eeff:fe03:ee34])
 (using TLSv1 with cipher AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mail.sbone.de (Postfix) with ESMTPSA id 448FFE707E9;
 Wed,  6 Mar 2019 23:47:35 +0000 (UTC)
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
To: rgrimes@freebsd.org
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344859 - in head: sbin/ifconfig sys/net sys/netinet6
Date: Wed, 06 Mar 2019 23:47:34 +0000
X-Mailer: MailMate (2.0BETAr6135)
Message-ID: <F6692ABD-BEB2-4250-8B35-08A37EFABCAC@FreeBSD.org>
In-Reply-To: <201903062339.x26Nd6nx088089@ gndrsh.dnsmgr.net>
References: <201903062339.x26Nd6nx088089@ gndrsh.dnsmgr.net>
MIME-Version: 1.0
Content-Type: text/plain; format=flowed
X-Rspamd-Queue-Id: 17B8C7717B
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.93 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.93)[-0.930,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:47:40 -0000

On 6 Mar 2019, at 23:39, Rodney W. Grimes wrote:

>> Author: bz
>> Date: Wed Mar  6 23:31:42 2019
>> New Revision: 344859
>> URL: https://svnweb.freebsd.org/changeset/base/344859
>>
>> Log:
>>   Update for IETF draft-ietf-6man-ipv6only-flag.
>>
>>   All changes are hidden behind the EXPERIMENTAL option and are not 
>> compiled
>>   in by default.
>
> It is probably time to make EXPERIMENTAL finer grain,
> there are likely more than one experiment to be avaliable
> in the tree at the same time, and having them all use this
> one knob is a bit of a pita.

I added the knob to encourage people putting more stuff under it.

Making it finer grained did not seem to be a good idea at the time.   
For that we do have individual kernel options.

If you are saying that I should add an extra layer of #ifdef under 
EXPERIMENTAL such as #ifdef EXP_IPV6_ONLY_FLAG, adding such a kernel 
option seems plausible though a pain when this either goes away entirely 
or becomes mainline and in either case would not be under an extra 
option.

/bz

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:54:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B9CF0152BA56;
 Wed,  6 Mar 2019 23:54:57 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 5DCE5775AA;
 Wed,  6 Mar 2019 23:54:57 +0000 (UTC)
 (envelope-from mckusick@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 4DE4AAF1F;
 Wed,  6 Mar 2019 23:54:57 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26NsvMT086014;
 Wed, 6 Mar 2019 23:54:57 GMT (envelope-from mckusick@FreeBSD.org)
Received: (from mckusick@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26NstKN086003;
 Wed, 6 Mar 2019 23:54:55 GMT (envelope-from mckusick@FreeBSD.org)
Message-Id: <201903062354.x26NstKN086003@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mckusick set sender to
 mckusick@FreeBSD.org using -f
From: Kirk McKusick <mckusick@FreeBSD.org>
Date: Wed, 6 Mar 2019 23:54: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: r344860 - in stable/12: sbin/fsck_ffs sbin/fsdb
 sys/ufs/ffs
X-SVN-Group: stable-12
X-SVN-Commit-Author: mckusick
X-SVN-Commit-Paths: in stable/12: sbin/fsck_ffs sbin/fsdb sys/ufs/ffs
X-SVN-Commit-Revision: 344860
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5DCE5775AA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:54:58 -0000

Author: mckusick
Date: Wed Mar  6 23:54:55 2019
New Revision: 344860
URL: https://svnweb.freebsd.org/changeset/base/344860

Log:
  MFC of 344552 and 344732
  
  Have fsck_ffs adjust size for files with hole at end
  
  Tighten last lbn calculation
  
  Sponsored by: Netflix

Modified:
  stable/12/sbin/fsck_ffs/fsck.h
  stable/12/sbin/fsck_ffs/globs.c
  stable/12/sbin/fsck_ffs/inode.c
  stable/12/sbin/fsck_ffs/pass1.c
  stable/12/sbin/fsck_ffs/setup.c
  stable/12/sbin/fsdb/fsdb.c
  stable/12/sys/ufs/ffs/ffs_alloc.c
  stable/12/sys/ufs/ffs/fs.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sbin/fsck_ffs/fsck.h
==============================================================================
--- stable/12/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:54:55 2019	(r344860)
@@ -232,6 +232,7 @@ struct inodesc {
 	ufs_lbn_t id_lbn;	/* logical block number of current block */
 	ufs2_daddr_t id_blkno;	/* current block number being examined */
 	int id_numfrags;	/* number of frags contained in block */
+	ufs_lbn_t id_lballoc;	/* pass1: last LBN that is allocated */
 	off_t id_filesize;	/* for DATA nodes, the size of the directory */
 	ufs2_daddr_t id_entryno;/* for DATA nodes, current entry number */
 	int id_loc;		/* for DATA nodes, current location in dir */
@@ -291,6 +292,7 @@ extern long countdirs;		/* number of directories we ac
 #define MIBSIZE	3		/* size of fsck sysctl MIBs */
 extern int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference cnt */
 extern int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block count */
+extern int	setsize[MIBSIZE];	/* MIB command to set inode size */
 extern int	adjndir[MIBSIZE];	/* MIB command to adjust number of directories */
 extern int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free blocks */
 extern int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free inodes */

Modified: stable/12/sbin/fsck_ffs/globs.c
==============================================================================
--- stable/12/sbin/fsck_ffs/globs.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsck_ffs/globs.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -63,6 +63,7 @@ unsigned long  numdirs, listmax;
 long countdirs;		/* number of directories we actually found */
 int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference cnt */
 int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block count */
+int	setsize[MIBSIZE];	/* MIB command to set inode size */
 int	adjndir[MIBSIZE];	/* MIB command to adjust number of directories */
 int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free blocks */
 int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free inodes */
@@ -131,6 +132,7 @@ fsckinit(void)
 	countdirs = 0;
 	bzero(adjrefcnt, sizeof(int) * MIBSIZE);
 	bzero(adjblkcnt, sizeof(int) * MIBSIZE);
+	bzero(setsize, sizeof(int) * MIBSIZE);
 	bzero(adjndir, sizeof(int) * MIBSIZE);
 	bzero(adjnbfree, sizeof(int) * MIBSIZE);
 	bzero(adjnifree, sizeof(int) * MIBSIZE);

Modified: stable/12/sbin/fsck_ffs/inode.c
==============================================================================
--- stable/12/sbin/fsck_ffs/inode.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsck_ffs/inode.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -126,9 +126,9 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 			ret = iblock(idesc, i + 1, remsize, BT_LEVEL1 + i);
 			if (ret & STOP)
 				return (ret);
-		} else {
+		} else if (remsize > 0) {
 			idesc->id_lbn += sizepb / sblock.fs_bsize;
-			if (idesc->id_type == DATA && remsize > 0) {
+			if (idesc->id_type == DATA) {
 				/* An empty block in a directory XXX */
 				getpathname(pathbuf, idesc->id_number,
 						idesc->id_number);

Modified: stable/12/sbin/fsck_ffs/pass1.c
==============================================================================
--- stable/12/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -247,6 +247,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 	off_t kernmaxfilesize;
 	ufs2_daddr_t ndb;
 	mode_t mode;
+	uintmax_t fixsize;
 	int j, ret, offset;
 
 	if ((dp = getnextinode(inumber, rebuildcg)) == NULL)
@@ -377,6 +378,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		idesc->id_type = SNAP;
 	else
 		idesc->id_type = ADDR;
+	idesc->id_lballoc = -1;
 	(void)ckinode(dp, idesc);
 	if (sblock.fs_magic == FS_UFS2_MAGIC && dp->dp2.di_extsize > 0) {
 		idesc->id_type = ADDR;
@@ -422,6 +424,46 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 				rwerror("ADJUST INODE BLOCK COUNT", cmd.value);
 		}
 	}
+	/*
+	 * Soft updates will always ensure that the file size is correct
+	 * for files that contain only direct block pointers. However
+	 * soft updates does not roll back sizes for files with indirect
+	 * blocks that it has set to unallocated because their contents
+	 * have not yet been written to disk. Hence, the file can appear
+	 * to have a hole at its end because the block pointer has been
+	 * rolled back to zero. Thus, id_lballoc tracks the last allocated
+	 * block in the file. Here, for files that extend into indirect
+	 * blocks, we check for a size past the last allocated block of
+	 * the file and if that is found, shorten the file to reference
+	 * the last allocated block to avoid having it reference a hole
+	 * at its end.
+	 */
+	if (DIP(dp, di_size) > UFS_NDADDR * sblock.fs_bsize &&
+	    idesc->id_lballoc < lblkno(&sblock, DIP(dp, di_size) - 1)) {
+		fixsize = lblktosize(&sblock, idesc->id_lballoc + 1);
+		pwarn("INODE %lu: FILE SIZE %ju BEYOND END OF ALLOCATED FILE, "
+		      "SIZE SHOULD BE %ju", (u_long)inumber,
+		      (uintmax_t)DIP(dp, di_size), fixsize);
+		if (preen)
+			printf(" (ADJUSTED)\n");
+		else if (reply("ADJUST") == 0)
+			return (1);
+		if (bkgrdflag == 0) {
+			dp = ginode(inumber);
+			DIP_SET(dp, di_size, fixsize);
+			inodirty(dp);
+		} else {
+			cmd.value = idesc->id_number;
+			cmd.size = fixsize;
+			if (debug)
+				printf("setsize ino %ju size set to %ju\n",
+				    (uintmax_t)cmd.value, (uintmax_t)cmd.size);
+			if (sysctl(setsize, MIBSIZE, 0, 0,
+			    &cmd, sizeof cmd) == -1)
+				rwerror("SET INODE SIZE", cmd.value);
+		}
+
+	}
 	return (1);
 unknown:
 	pfatal("UNKNOWN FILE TYPE I=%lu", (u_long)inumber);
@@ -523,5 +565,7 @@ pass1check(struct inodesc *idesc)
 		 */
 		idesc->id_entryno++;
 	}
+	if (idesc->id_lballoc == -1 || idesc->id_lballoc < idesc->id_lbn)
+		idesc->id_lballoc = idesc->id_lbn;
 	return (res);
 }

Modified: stable/12/sbin/fsck_ffs/setup.c
==============================================================================
--- stable/12/sbin/fsck_ffs/setup.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsck_ffs/setup.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -140,6 +140,7 @@ setup(char *dev)
 		size = MIBSIZE;
 		if (sysctlnametomib("vfs.ffs.adjrefcnt", adjrefcnt, &size) < 0||
 		    sysctlnametomib("vfs.ffs.adjblkcnt", adjblkcnt, &size) < 0||
+		    sysctlnametomib("vfs.ffs.setsize", setsize, &size) < 0 ||
 		    sysctlnametomib("vfs.ffs.freefiles", freefiles, &size) < 0||
 		    sysctlnametomib("vfs.ffs.freedirs", freedirs, &size) < 0 ||
 		    sysctlnametomib("vfs.ffs.freeblks", freeblks, &size) < 0) {

Modified: stable/12/sbin/fsdb/fsdb.c
==============================================================================
--- stable/12/sbin/fsdb/fsdb.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sbin/fsdb/fsdb.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -157,6 +157,7 @@ CMDFUNC(chctime);			/* Change ctime */
 CMDFUNC(chatime);			/* Change atime */
 CMDFUNC(chinum);			/* Change inode # of dirent */
 CMDFUNC(chname);			/* Change dirname of dirent */
+CMDFUNC(chsize);			/* Change size */
 
 struct cmdtable cmds[] = {
 	{ "help", "Print out help", 1, 1, FL_RO, helpfn },
@@ -186,6 +187,7 @@ struct cmdtable cmds[] = {
 	{ "chgrp", "Change group of current inode to GROUP", 2, 2, FL_WR, chgroup },
 	{ "chflags", "Change flags of current inode to FLAGS", 2, 2, FL_WR, chaflags },
 	{ "chgen", "Change generation number of current inode to GEN", 2, 2, FL_WR, chgen },
+	{ "chsize", "Change size of current inode to SIZE", 2, 2, FL_WR, chsize },
 	{ "btime", "Change btime of current inode to BTIME", 2, 2, FL_WR, chbtime },
 	{ "mtime", "Change mtime of current inode to MTIME", 2, 2, FL_WR, chmtime },
 	{ "ctime", "Change ctime of current inode to CTIME", 2, 2, FL_WR, chctime },
@@ -1013,6 +1015,31 @@ CMDFUNCSTART(chgen)
     }
     DIP_SET(curinode, di_gen, gen);
     inodirty();
+    printactive(0);
+    return rval;
+}
+
+CMDFUNCSTART(chsize)
+{
+    int rval = 1;
+    off_t size;
+    char *cp;
+
+    if (!checkactive())
+	return 1;
+
+    size = strtoll(argv[1], &cp, 0);
+    if (cp == argv[1] || *cp != '\0') {
+	warnx("bad size `%s'", argv[1]);
+	return 1;
+    }
+
+    if (size < 0) {
+	warnx("size set to negative (%jd)\n", (intmax_t)size);
+	return(1);
+    }
+    DIP_SET(curinode, di_size, size);
+    inodirty(curinode);
     printactive(0);
     return rval;
 }

Modified: stable/12/sys/ufs/ffs/ffs_alloc.c
==============================================================================
--- stable/12/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:54:55 2019	(r344860)
@@ -3020,6 +3020,8 @@ ffs_fserr(fs, inum, cp)
  *	the count to zero will cause the inode to be freed.
  * adjblkcnt(inode, amt) - adjust the number of blocks used by the
  *	inode by the specified amount.
+ * adjsize(inode, size) - set the size of the inode to the
+ *	specified size.
  * adjndir, adjbfree, adjifree, adjffree, adjnumclusters(amt) -
  *	adjust the superblock summary.
  * freedirs(inode, count) - directory inodes [inode..inode + count - 1]
@@ -3061,6 +3063,9 @@ SYSCTL_PROC(_vfs_ffs, FFS_ADJ_REFCNT, adjrefcnt, CTLFL
 static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_BLKCNT, adjblkcnt, CTLFLAG_WR,
 	sysctl_ffs_fsck, "Adjust Inode Used Blocks Count");
 
+static SYSCTL_NODE(_vfs_ffs, FFS_SET_SIZE, setsize, CTLFLAG_WR,
+	sysctl_ffs_fsck, "Set the inode size");
+
 static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_NDIR, adjndir, CTLFLAG_WR,
 	sysctl_ffs_fsck, "Adjust number of directories");
 
@@ -3208,6 +3213,23 @@ sysctl_ffs_fsck(SYSCTL_HANDLER_ARGS)
 			break;
 		ip = VTOI(vp);
 		DIP_SET(ip, i_blocks, DIP(ip, i_blocks) + cmd.size);
+		ip->i_flag |= IN_CHANGE | IN_MODIFIED;
+		error = ffs_update(vp, 1);
+		vput(vp);
+		break;
+
+	case FFS_SET_SIZE:
+#ifdef DEBUG
+		if (fsckcmds) {
+			printf("%s: set inode %jd size to %jd\n",
+			    mp->mnt_stat.f_mntonname, (intmax_t)cmd.value,
+			    (intmax_t)cmd.size);
+		}
+#endif /* DEBUG */
+		if ((error = ffs_vget(mp, (ino_t)cmd.value, LK_EXCLUSIVE, &vp)))
+			break;
+		ip = VTOI(vp);
+		DIP_SET(ip, i_size, cmd.size);
 		ip->i_flag |= IN_CHANGE | IN_MODIFIED;
 		error = ffs_update(vp, 1);
 		vput(vp);

Modified: stable/12/sys/ufs/ffs/fs.h
==============================================================================
--- stable/12/sys/ufs/ffs/fs.h	Wed Mar  6 23:31:42 2019	(r344859)
+++ stable/12/sys/ufs/ffs/fs.h	Wed Mar  6 23:54:55 2019	(r344860)
@@ -221,7 +221,8 @@
 #define	FFS_UNLINK		14	/* remove a name in the filesystem */
 #define	FFS_SET_INODE		15	/* update an on-disk inode */
 #define	FFS_SET_BUFOUTPUT	16	/* set buffered writing on descriptor */
-#define	FFS_MAXID		16	/* number of valid ffs ids */
+#define	FFS_SET_SIZE		17	/* set inode size */
+#define	FFS_MAXID		17	/* number of valid ffs ids */
 
 /*
  * Command structure passed in to the filesystem to adjust filesystem values.

From owner-svn-src-all@freebsd.org  Wed Mar  6 23:59:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A03E2152BC98;
 Wed,  6 Mar 2019 23:59:58 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3D6CD777B4;
 Wed,  6 Mar 2019 23:59:58 +0000 (UTC)
 (envelope-from mckusick@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 320C4AF41;
 Wed,  6 Mar 2019 23:59:58 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x26NxwtR086327;
 Wed, 6 Mar 2019 23:59:58 GMT (envelope-from mckusick@FreeBSD.org)
Received: (from mckusick@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x26NxugE086319;
 Wed, 6 Mar 2019 23:59:56 GMT (envelope-from mckusick@FreeBSD.org)
Message-Id: <201903062359.x26NxugE086319@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mckusick set sender to
 mckusick@FreeBSD.org using -f
From: Kirk McKusick <mckusick@FreeBSD.org>
Date: Wed, 6 Mar 2019 23:59:56 +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: r344861 - in stable/11: sbin/fsck_ffs sbin/fsdb
 sys/ufs/ffs
X-SVN-Group: stable-11
X-SVN-Commit-Author: mckusick
X-SVN-Commit-Paths: in stable/11: sbin/fsck_ffs sbin/fsdb sys/ufs/ffs
X-SVN-Commit-Revision: 344861
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3D6CD777B4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Mar 2019 23:59:59 -0000

Author: mckusick
Date: Wed Mar  6 23:59:56 2019
New Revision: 344861
URL: https://svnweb.freebsd.org/changeset/base/344861

Log:
  MFC of 344552 and 344732
  
  Have fsck_ffs adjust size for files with hole at end
  
  Tighten last lbn calculation
  
  Sponsored by: Netflix

Modified:
  stable/11/sbin/fsck_ffs/fsck.h
  stable/11/sbin/fsck_ffs/globs.c
  stable/11/sbin/fsck_ffs/inode.c
  stable/11/sbin/fsck_ffs/pass1.c
  stable/11/sbin/fsck_ffs/setup.c
  stable/11/sbin/fsdb/fsdb.c
  stable/11/sys/ufs/ffs/ffs_alloc.c
  stable/11/sys/ufs/ffs/fs.h
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sbin/fsck_ffs/fsck.h
==============================================================================
--- stable/11/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:59:56 2019	(r344861)
@@ -230,6 +230,7 @@ struct inodesc {
 	ufs_lbn_t id_lbn;	/* logical block number of current block */
 	ufs2_daddr_t id_blkno;	/* current block number being examined */
 	int id_numfrags;	/* number of frags contained in block */
+	ufs_lbn_t id_lballoc;	/* pass1: last LBN that is allocated */
 	off_t id_filesize;	/* for DATA nodes, the size of the directory */
 	ufs2_daddr_t id_entryno;/* for DATA nodes, current entry number */
 	int id_loc;		/* for DATA nodes, current location in dir */
@@ -289,6 +290,7 @@ extern long countdirs;		/* number of directories we ac
 #define MIBSIZE	3		/* size of fsck sysctl MIBs */
 extern int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference cnt */
 extern int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block count */
+extern int	setsize[MIBSIZE];	/* MIB command to set inode size */
 extern int	adjndir[MIBSIZE];	/* MIB command to adjust number of directories */
 extern int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free blocks */
 extern int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free inodes */

Modified: stable/11/sbin/fsck_ffs/globs.c
==============================================================================
--- stable/11/sbin/fsck_ffs/globs.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsck_ffs/globs.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -61,6 +61,7 @@ unsigned long  numdirs, listmax;
 long countdirs;		/* number of directories we actually found */
 int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference cnt */
 int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block count */
+int	setsize[MIBSIZE];	/* MIB command to set inode size */
 int	adjndir[MIBSIZE];	/* MIB command to adjust number of directories */
 int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free blocks */
 int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free inodes */
@@ -128,6 +129,7 @@ fsckinit(void)
 	countdirs = 0;
 	bzero(adjrefcnt, sizeof(int) * MIBSIZE);
 	bzero(adjblkcnt, sizeof(int) * MIBSIZE);
+	bzero(setsize, sizeof(int) * MIBSIZE);
 	bzero(adjndir, sizeof(int) * MIBSIZE);
 	bzero(adjnbfree, sizeof(int) * MIBSIZE);
 	bzero(adjnifree, sizeof(int) * MIBSIZE);

Modified: stable/11/sbin/fsck_ffs/inode.c
==============================================================================
--- stable/11/sbin/fsck_ffs/inode.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsck_ffs/inode.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -124,9 +124,9 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 			ret = iblock(idesc, i + 1, remsize, BT_LEVEL1 + i);
 			if (ret & STOP)
 				return (ret);
-		} else {
+		} else if (remsize > 0) {
 			idesc->id_lbn += sizepb / sblock.fs_bsize;
-			if (idesc->id_type == DATA && remsize > 0) {
+			if (idesc->id_type == DATA) {
 				/* An empty block in a directory XXX */
 				getpathname(pathbuf, idesc->id_number,
 						idesc->id_number);

Modified: stable/11/sbin/fsck_ffs/pass1.c
==============================================================================
--- stable/11/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -245,6 +245,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 	off_t kernmaxfilesize;
 	ufs2_daddr_t ndb;
 	mode_t mode;
+	uintmax_t fixsize;
 	int j, ret, offset;
 
 	if ((dp = getnextinode(inumber, rebuildcg)) == NULL)
@@ -375,6 +376,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		idesc->id_type = SNAP;
 	else
 		idesc->id_type = ADDR;
+	idesc->id_lballoc = -1;
 	(void)ckinode(dp, idesc);
 	if (sblock.fs_magic == FS_UFS2_MAGIC && dp->dp2.di_extsize > 0) {
 		idesc->id_type = ADDR;
@@ -420,6 +422,46 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 				rwerror("ADJUST INODE BLOCK COUNT", cmd.value);
 		}
 	}
+	/*
+	 * Soft updates will always ensure that the file size is correct
+	 * for files that contain only direct block pointers. However
+	 * soft updates does not roll back sizes for files with indirect
+	 * blocks that it has set to unallocated because their contents
+	 * have not yet been written to disk. Hence, the file can appear
+	 * to have a hole at its end because the block pointer has been
+	 * rolled back to zero. Thus, id_lballoc tracks the last allocated
+	 * block in the file. Here, for files that extend into indirect
+	 * blocks, we check for a size past the last allocated block of
+	 * the file and if that is found, shorten the file to reference
+	 * the last allocated block to avoid having it reference a hole
+	 * at its end.
+	 */
+	if (DIP(dp, di_size) > UFS_NDADDR * sblock.fs_bsize &&
+	    idesc->id_lballoc < lblkno(&sblock, DIP(dp, di_size) - 1)) {
+		fixsize = lblktosize(&sblock, idesc->id_lballoc + 1);
+		pwarn("INODE %lu: FILE SIZE %ju BEYOND END OF ALLOCATED FILE, "
+		      "SIZE SHOULD BE %ju", (u_long)inumber,
+		      (uintmax_t)DIP(dp, di_size), fixsize);
+		if (preen)
+			printf(" (ADJUSTED)\n");
+		else if (reply("ADJUST") == 0)
+			return (1);
+		if (bkgrdflag == 0) {
+			dp = ginode(inumber);
+			DIP_SET(dp, di_size, fixsize);
+			inodirty(dp);
+		} else {
+			cmd.value = idesc->id_number;
+			cmd.size = fixsize;
+			if (debug)
+				printf("setsize ino %ju size set to %ju\n",
+				    (uintmax_t)cmd.value, (uintmax_t)cmd.size);
+			if (sysctl(setsize, MIBSIZE, 0, 0,
+			    &cmd, sizeof cmd) == -1)
+				rwerror("SET INODE SIZE", cmd.value);
+		}
+
+	}
 	return (1);
 unknown:
 	pfatal("UNKNOWN FILE TYPE I=%lu", (u_long)inumber);
@@ -521,5 +563,7 @@ pass1check(struct inodesc *idesc)
 		 */
 		idesc->id_entryno++;
 	}
+	if (idesc->id_lballoc == -1 || idesc->id_lballoc < idesc->id_lbn)
+		idesc->id_lballoc = idesc->id_lbn;
 	return (res);
 }

Modified: stable/11/sbin/fsck_ffs/setup.c
==============================================================================
--- stable/11/sbin/fsck_ffs/setup.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsck_ffs/setup.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -134,6 +134,7 @@ setup(char *dev)
 		size = MIBSIZE;
 		if (sysctlnametomib("vfs.ffs.adjrefcnt", adjrefcnt, &size) < 0||
 		    sysctlnametomib("vfs.ffs.adjblkcnt", adjblkcnt, &size) < 0||
+		    sysctlnametomib("vfs.ffs.setsize", setsize, &size) < 0 ||
 		    sysctlnametomib("vfs.ffs.freefiles", freefiles, &size) < 0||
 		    sysctlnametomib("vfs.ffs.freedirs", freedirs, &size) < 0 ||
 		    sysctlnametomib("vfs.ffs.freeblks", freeblks, &size) < 0) {

Modified: stable/11/sbin/fsdb/fsdb.c
==============================================================================
--- stable/11/sbin/fsdb/fsdb.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sbin/fsdb/fsdb.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -157,6 +157,7 @@ CMDFUNC(chctime);			/* Change ctime */
 CMDFUNC(chatime);			/* Change atime */
 CMDFUNC(chinum);			/* Change inode # of dirent */
 CMDFUNC(chname);			/* Change dirname of dirent */
+CMDFUNC(chsize);			/* Change size */
 
 struct cmdtable cmds[] = {
 	{ "help", "Print out help", 1, 1, FL_RO, helpfn },
@@ -186,6 +187,7 @@ struct cmdtable cmds[] = {
 	{ "chgrp", "Change group of current inode to GROUP", 2, 2, FL_WR, chgroup },
 	{ "chflags", "Change flags of current inode to FLAGS", 2, 2, FL_WR, chaflags },
 	{ "chgen", "Change generation number of current inode to GEN", 2, 2, FL_WR, chgen },
+	{ "chsize", "Change size of current inode to SIZE", 2, 2, FL_WR, chsize },
 	{ "btime", "Change btime of current inode to BTIME", 2, 2, FL_WR, chbtime },
 	{ "mtime", "Change mtime of current inode to MTIME", 2, 2, FL_WR, chmtime },
 	{ "ctime", "Change ctime of current inode to CTIME", 2, 2, FL_WR, chctime },
@@ -1009,6 +1011,31 @@ CMDFUNCSTART(chgen)
     }
     DIP_SET(curinode, di_gen, gen);
     inodirty();
+    printactive(0);
+    return rval;
+}
+
+CMDFUNCSTART(chsize)
+{
+    int rval = 1;
+    off_t size;
+    char *cp;
+
+    if (!checkactive())
+	return 1;
+
+    size = strtoll(argv[1], &cp, 0);
+    if (cp == argv[1] || *cp != '\0') {
+	warnx("bad size `%s'", argv[1]);
+	return 1;
+    }
+
+    if (size < 0) {
+	warnx("size set to negative (%jd)\n", (intmax_t)size);
+	return(1);
+    }
+    DIP_SET(curinode, di_size, size);
+    inodirty(curinode);
     printactive(0);
     return rval;
 }

Modified: stable/11/sys/ufs/ffs/ffs_alloc.c
==============================================================================
--- stable/11/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:59:56 2019	(r344861)
@@ -2688,6 +2688,8 @@ ffs_fserr(fs, inum, cp)
  *	the count to zero will cause the inode to be freed.
  * adjblkcnt(inode, amt) - adjust the number of blocks used by the
  *	inode by the specified amount.
+ * adjsize(inode, size) - set the size of the inode to the
+ *	specified size.
  * adjndir, adjbfree, adjifree, adjffree, adjnumclusters(amt) -
  *	adjust the superblock summary.
  * freedirs(inode, count) - directory inodes [inode..inode + count - 1]
@@ -2729,6 +2731,9 @@ SYSCTL_PROC(_vfs_ffs, FFS_ADJ_REFCNT, adjrefcnt, CTLFL
 static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_BLKCNT, adjblkcnt, CTLFLAG_WR,
 	sysctl_ffs_fsck, "Adjust Inode Used Blocks Count");
 
+static SYSCTL_NODE(_vfs_ffs, FFS_SET_SIZE, setsize, CTLFLAG_WR,
+	sysctl_ffs_fsck, "Set the inode size");
+
 static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_NDIR, adjndir, CTLFLAG_WR,
 	sysctl_ffs_fsck, "Adjust number of directories");
 
@@ -2875,6 +2880,23 @@ sysctl_ffs_fsck(SYSCTL_HANDLER_ARGS)
 			break;
 		ip = VTOI(vp);
 		DIP_SET(ip, i_blocks, DIP(ip, i_blocks) + cmd.size);
+		ip->i_flag |= IN_CHANGE | IN_MODIFIED;
+		error = ffs_update(vp, 1);
+		vput(vp);
+		break;
+
+	case FFS_SET_SIZE:
+#ifdef DEBUG
+		if (fsckcmds) {
+			printf("%s: set inode %jd size to %jd\n",
+			    mp->mnt_stat.f_mntonname, (intmax_t)cmd.value,
+			    (intmax_t)cmd.size);
+		}
+#endif /* DEBUG */
+		if ((error = ffs_vget(mp, (ino_t)cmd.value, LK_EXCLUSIVE, &vp)))
+			break;
+		ip = VTOI(vp);
+		DIP_SET(ip, i_size, cmd.size);
 		ip->i_flag |= IN_CHANGE | IN_MODIFIED;
 		error = ffs_update(vp, 1);
 		vput(vp);

Modified: stable/11/sys/ufs/ffs/fs.h
==============================================================================
--- stable/11/sys/ufs/ffs/fs.h	Wed Mar  6 23:54:55 2019	(r344860)
+++ stable/11/sys/ufs/ffs/fs.h	Wed Mar  6 23:59:56 2019	(r344861)
@@ -219,7 +219,8 @@
 #define	FFS_UNLINK		14	/* remove a name in the filesystem */
 #define	FFS_SET_INODE		15	/* update an on-disk inode */
 #define	FFS_SET_BUFOUTPUT	16	/* set buffered writing on descriptor */
-#define	FFS_MAXID		16	/* number of valid ffs ids */
+#define	FFS_SET_SIZE		17	/* set inode size */
+#define	FFS_MAXID		17	/* number of valid ffs ids */
 
 /*
  * Command structure passed in to the filesystem to adjust filesystem values.

From owner-svn-src-all@freebsd.org  Thu Mar  7 00:01:28 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AD2CF152BEEC;
 Thu,  7 Mar 2019 00:01:28 +0000 (UTC)
 (envelope-from bcran@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 75ED677A25;
 Thu,  7 Mar 2019 00:01:28 +0000 (UTC)
 (envelope-from bcran@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 6A021AF8D;
 Thu,  7 Mar 2019 00:01:28 +0000 (UTC)
 (envelope-from bcran@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2701Sk5087955;
 Thu, 7 Mar 2019 00:01:28 GMT (envelope-from bcran@FreeBSD.org)
Received: (from bcran@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2701SCD087954;
 Thu, 7 Mar 2019 00:01:28 GMT (envelope-from bcran@FreeBSD.org)
Message-Id: <201903070001.x2701SCD087954@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bcran set sender to
 bcran@FreeBSD.org using -f
From: Rebecca Cran <bcran@FreeBSD.org>
Date: Thu, 7 Mar 2019 00:01:28 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344862 - head/usr.sbin/efivar
X-SVN-Group: head
X-SVN-Commit-Author: bcran
X-SVN-Commit-Paths: head/usr.sbin/efivar
X-SVN-Commit-Revision: 344862
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 75ED677A25
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 00:01:28 -0000

Author: bcran
Date: Thu Mar  7 00:01:28 2019
New Revision: 344862
URL: https://svnweb.freebsd.org/changeset/base/344862

Log:
  Document the efivar --load-option option
  
  Reviewed by:	imp, kevans
  Sponsored by:	Netflix, Inc.
  Differential Revision:	https://reviews.freebsd.org/D19263

Modified:
  head/usr.sbin/efivar/efivar.8

Modified: head/usr.sbin/efivar/efivar.8
==============================================================================
--- head/usr.sbin/efivar/efivar.8	Wed Mar  6 23:59:56 2019	(r344861)
+++ head/usr.sbin/efivar/efivar.8	Thu Mar  7 00:01:28 2019	(r344862)
@@ -1,5 +1,5 @@
 .\"
-.\" Copyright (c) 2017 Netflix, Inc.
+.\" Copyright (c) 2017-2019 Netflix, Inc.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" modification, are permitted provided that the following conditions
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd May 22, 2017
+.Dd March 6, 2019
 .Dt EFIVAR 8
 .Os
 .Sh NAME
@@ -46,6 +46,7 @@
 .Op Fl -hex
 .Op Fl -list-guids
 .Op Fl -list
+.Op Fl -load-option
 .Op Fl -name Ar name
 .Op Fl -no-name
 .Op Fl -print
@@ -147,6 +148,8 @@ List all the variables.
 If the
 .Fl -print
 flag is also listed, their values will be displayed.
+.It Fl -load-option
+Decode the variable as if it were a UEFI Boot Option, including information about what device and/or paths the UEFI DevicePaths decode to.
 .It Fl N Fl -no-name
 Do not display the variable name.
 .It Fl p Fl -print

From owner-svn-src-all@freebsd.org  Thu Mar  7 00:02:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94C35152C031;
 Thu,  7 Mar 2019 00:02:26 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3323877DE6;
 Thu,  7 Mar 2019 00:02:26 +0000 (UTC)
 (envelope-from mckusick@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 22BEEB109;
 Thu,  7 Mar 2019 00:02:26 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2702QGb091211;
 Thu, 7 Mar 2019 00:02:26 GMT (envelope-from mckusick@FreeBSD.org)
Received: (from mckusick@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2702QmT091210;
 Thu, 7 Mar 2019 00:02:26 GMT (envelope-from mckusick@FreeBSD.org)
Message-Id: <201903070002.x2702QmT091210@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mckusick set sender to
 mckusick@FreeBSD.org using -f
From: Kirk McKusick <mckusick@FreeBSD.org>
Date: Thu, 7 Mar 2019 00:02:26 +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: r344863 - stable/12/sbin/tunefs
X-SVN-Group: stable-12
X-SVN-Commit-Author: mckusick
X-SVN-Commit-Paths: stable/12/sbin/tunefs
X-SVN-Commit-Revision: 344863
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3323877DE6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 00:02:26 -0000

Author: mckusick
Date: Thu Mar  7 00:02:25 2019
New Revision: 344863
URL: https://svnweb.freebsd.org/changeset/base/344863

Log:
  MFC of 344731
  
  Roundup tunefs -S logsize to filesystem block size
  
  Sponsored by: Netflix

Modified:
  stable/12/sbin/tunefs/tunefs.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sbin/tunefs/tunefs.c
==============================================================================
--- stable/12/sbin/tunefs/tunefs.c	Thu Mar  7 00:01:28 2019	(r344862)
+++ stable/12/sbin/tunefs/tunefs.c	Thu Mar  7 00:02:25 2019	(r344863)
@@ -989,9 +989,9 @@ journal_alloc(int64_t size)
 		if (size / sblock.fs_fsize > sblock.fs_fpg)
 			size = sblock.fs_fpg * sblock.fs_fsize;
 		size = MAX(SUJ_MIN, size);
-		/* fsck does not support fragments in journal files. */
-		size = roundup(size, sblock.fs_bsize);
 	}
+	/* fsck does not support fragments in journal files. */
+	size = roundup(size, sblock.fs_bsize);
 	resid = blocks = size / sblock.fs_bsize;
 	if (sblock.fs_cstotal.cs_nbfree < blocks) {
 		warn("Insufficient free space for %jd byte journal", size);

From owner-svn-src-all@freebsd.org  Thu Mar  7 00:03:02 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 79A2D152C0D6;
 Thu,  7 Mar 2019 00:03:02 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 0771B77F7A;
 Thu,  7 Mar 2019 00:03:01 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x2702x0g088190;
 Wed, 6 Mar 2019 16:02:59 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x2702xQX088189;
 Wed, 6 Mar 2019 16:02:59 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903070002.x2702xQX088189@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344859 - in head: sbin/ifconfig sys/net sys/netinet6
In-Reply-To: <F6692ABD-BEB2-4250-8B35-08A37EFABCAC@FreeBSD.org>
To: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Wed, 6 Mar 2019 16:02:59 -0800 (PST)
CC: rgrimes@FreeBSD.org, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, 
 svn-src-head@FreeBSD.org
Reply-To: rgrimes@FreeBSD.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 0771B77F7A
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.98 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.984,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 00:03:02 -0000

> On 6 Mar 2019, at 23:39, Rodney W. Grimes wrote:
> 
> >> Author: bz
> >> Date: Wed Mar  6 23:31:42 2019
> >> New Revision: 344859
> >> URL: https://svnweb.freebsd.org/changeset/base/344859
> >>
> >> Log:
> >>   Update for IETF draft-ietf-6man-ipv6only-flag.
> >>
> >>   All changes are hidden behind the EXPERIMENTAL option and are not 
> >> compiled
> >>   in by default.
> >
> > It is probably time to make EXPERIMENTAL finer grain,
> > there are likely more than one experiment to be avaliable
> > in the tree at the same time, and having them all use this
> > one knob is a bit of a pita.
> 
> I added the knob to encourage people putting more stuff under it.

Such as?

> Making it finer grained did not seem to be a good idea at the time.   
> For that we do have individual kernel options.

Which is what I am going to have to do for my "EXPERIMENT" since
I do not want this code in it.  Its fine, but more or less you
have now reserved EXPERIMENT for some subset, and I'll call mine
something like EXPERIMENT_foo

> If you are saying that I should add an extra layer of #ifdef under 
> EXPERIMENTAL such as #ifdef EXP_IPV6_ONLY_FLAG, adding such a kernel 
> option seems plausible though a pain when this either goes away entirely 
> or becomes mainline and in either case would not be under an extra 
> option.

I would of just used #ifdef EXP_IPV6_ONLY_FLAG and not used EXPERIMENTAL
at all.  The #ifdef goes away when it is mainline.

> /bz
-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Thu Mar  7 00:04:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2B5DB152C1EE;
 Thu,  7 Mar 2019 00:04:14 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 C4D2380137;
 Thu,  7 Mar 2019 00:04:13 +0000 (UTC)
 (envelope-from mckusick@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 BA440B10F;
 Thu,  7 Mar 2019 00:04:13 +0000 (UTC)
 (envelope-from mckusick@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2704D1e091346;
 Thu, 7 Mar 2019 00:04:13 GMT (envelope-from mckusick@FreeBSD.org)
Received: (from mckusick@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2704DkT091345;
 Thu, 7 Mar 2019 00:04:13 GMT (envelope-from mckusick@FreeBSD.org)
Message-Id: <201903070004.x2704DkT091345@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mckusick set sender to
 mckusick@FreeBSD.org using -f
From: Kirk McKusick <mckusick@FreeBSD.org>
Date: Thu, 7 Mar 2019 00:04:13 +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: r344864 - stable/11/sbin/tunefs
X-SVN-Group: stable-11
X-SVN-Commit-Author: mckusick
X-SVN-Commit-Paths: stable/11/sbin/tunefs
X-SVN-Commit-Revision: 344864
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: C4D2380137
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 00:04:14 -0000

Author: mckusick
Date: Thu Mar  7 00:04:13 2019
New Revision: 344864
URL: https://svnweb.freebsd.org/changeset/base/344864

Log:
  MFC of 344731
  
  Roundup tunefs -S logsize to filesystem block size
  
  Sponsored by: Netflix

Modified:
  stable/11/sbin/tunefs/tunefs.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sbin/tunefs/tunefs.c
==============================================================================
--- stable/11/sbin/tunefs/tunefs.c	Thu Mar  7 00:02:25 2019	(r344863)
+++ stable/11/sbin/tunefs/tunefs.c	Thu Mar  7 00:04:13 2019	(r344864)
@@ -976,9 +976,9 @@ journal_alloc(int64_t size)
 		if (size / sblock.fs_fsize > sblock.fs_fpg)
 			size = sblock.fs_fpg * sblock.fs_fsize;
 		size = MAX(SUJ_MIN, size);
-		/* fsck does not support fragments in journal files. */
-		size = roundup(size, sblock.fs_bsize);
 	}
+	/* fsck does not support fragments in journal files. */
+	size = roundup(size, sblock.fs_bsize);
 	resid = blocks = size / sblock.fs_bsize;
 	if (sblock.fs_cstotal.cs_nbfree < blocks) {
 		warn("Insufficient free space for %jd byte journal", size);

From owner-svn-src-all@freebsd.org  Thu Mar  7 00:55:50 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C8D6152D0E1;
 Thu,  7 Mar 2019 00:55:50 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3FADA81E60;
 Thu,  7 Mar 2019 00:55:50 +0000 (UTC) (envelope-from cem@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 26B85BA1C;
 Thu,  7 Mar 2019 00:55:50 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x270toxP018122;
 Thu, 7 Mar 2019 00:55:50 GMT (envelope-from cem@FreeBSD.org)
Received: (from cem@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x270tnZt018120;
 Thu, 7 Mar 2019 00:55:49 GMT (envelope-from cem@FreeBSD.org)
Message-Id: <201903070055.x270tnZt018120@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org
 using -f
From: Conrad Meyer <cem@FreeBSD.org>
Date: Thu, 7 Mar 2019 00:55:49 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344865 - head/sys/fs/fuse
X-SVN-Group: head
X-SVN-Commit-Author: cem
X-SVN-Commit-Paths: head/sys/fs/fuse
X-SVN-Commit-Revision: 344865
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3FADA81E60
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 00:55:50 -0000

Author: cem
Date: Thu Mar  7 00:55:49 2019
New Revision: 344865
URL: https://svnweb.freebsd.org/changeset/base/344865

Log:
  fuse: switch from DFLTPHYS/MAXBSIZE to maxcachebuf
  
  On GENERIC kernels with empty loader.conf, there is no functional change.
  DFLTPHYS and MAXBSIZE are both 64kB at the moment.  This change allows
  larger bufcache block sizes to be used when either MAXBSIZE (custom kernel)
  or the loader.conf tunable vfs.maxbcachebuf (GENERIC) is adjusted higher
  than the default.
  
  Suggested by:	ken@

Modified:
  head/sys/fs/fuse/fuse_io.c
  head/sys/fs/fuse/fuse_vfsops.c

Modified: head/sys/fs/fuse/fuse_io.c
==============================================================================
--- head/sys/fs/fuse/fuse_io.c	Thu Mar  7 00:04:13 2019	(r344864)
+++ head/sys/fs/fuse/fuse_io.c	Thu Mar  7 00:55:49 2019	(r344865)
@@ -198,7 +198,7 @@ fuse_read_biobackend(struct vnode *vp, struct uio *uio
 	if (uio->uio_offset < 0)
 		return (EINVAL);
 
-	bcount = MIN(MAXBSIZE, biosize);
+	bcount = biosize;
 	filesize = VTOFUD(vp)->filesize;
 
 	do {

Modified: head/sys/fs/fuse/fuse_vfsops.c
==============================================================================
--- head/sys/fs/fuse/fuse_vfsops.c	Thu Mar  7 00:04:13 2019	(r344864)
+++ head/sys/fs/fuse/fuse_vfsops.c	Thu Mar  7 00:55:49 2019	(r344865)
@@ -58,11 +58,11 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <sys/types.h>
+#include <sys/param.h>
+#include <sys/buf.h>
 #include <sys/module.h>
 #include <sys/systm.h>
 #include <sys/errno.h>
-#include <sys/param.h>
 #include <sys/kernel.h>
 #include <sys/capsicum.h>
 #include <sys/conf.h>
@@ -338,7 +338,7 @@ fuse_vfsop_mount(struct mount *mp)
 	mp->mnt_kern_flag |= MNTK_USES_BCACHE;
 	MNT_IUNLOCK(mp);
 	/* We need this here as this slot is used by getnewvnode() */
-	mp->mnt_stat.f_iosize = MIN(DFLTPHYS, MAXBSIZE);
+	mp->mnt_stat.f_iosize = maxbcachebuf;
 	if (subtype) {
 		strlcat(mp->mnt_stat.f_fstypename, ".", MFSNAMELEN);
 		strlcat(mp->mnt_stat.f_fstypename, subtype, MFSNAMELEN);

From owner-svn-src-all@freebsd.org  Thu Mar  7 01:24:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DE499152EF3B;
 Thu,  7 Mar 2019 01:24:09 +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)
 server-signature RSA-PSS (4096 bits)
 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 8713783C0D;
 Thu,  7 Mar 2019 01:24:09 +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 62CECC3A7;
 Thu,  7 Mar 2019 01:24:09 +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 x271O9NE034008;
 Thu, 7 Mar 2019 01:24:09 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x271O9Lb034006;
 Thu, 7 Mar 2019 01:24:09 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903070124.x271O9Lb034006@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Thu, 7 Mar 2019 01:24:09 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344866 -
 head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Commit-Revision: 344866
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 8713783C0D
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 01:24:10 -0000

Author: mav
Date: Thu Mar  7 01:24:08 2019
New Revision: 344866
URL: https://svnweb.freebsd.org/changeset/base/344866

Log:
  Add respective tunables to few ZFS sysctls.
  
  MFC after:	1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Thu Mar  7 00:55:49 2019	(r344865)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Thu Mar  7 01:24:08 2019	(r344866)
@@ -1420,22 +1420,22 @@ boolean_t l2arc_noprefetch = B_TRUE;		/* don't cache p
 boolean_t l2arc_feed_again = B_TRUE;		/* turbo warmup */
 boolean_t l2arc_norw = B_TRUE;			/* no reads during writes */
 
-SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_write_max, CTLFLAG_RW,
+SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_write_max, CTLFLAG_RWTUN,
     &l2arc_write_max, 0, "max write size");
-SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_write_boost, CTLFLAG_RW,
+SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_write_boost, CTLFLAG_RWTUN,
     &l2arc_write_boost, 0, "extra write during warmup");
-SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_headroom, CTLFLAG_RW,
+SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_headroom, CTLFLAG_RWTUN,
     &l2arc_headroom, 0, "number of dev writes");
-SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_feed_secs, CTLFLAG_RW,
+SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_feed_secs, CTLFLAG_RWTUN,
     &l2arc_feed_secs, 0, "interval seconds");
-SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_feed_min_ms, CTLFLAG_RW,
+SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, l2arc_feed_min_ms, CTLFLAG_RWTUN,
     &l2arc_feed_min_ms, 0, "min interval milliseconds");
 
-SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_noprefetch, CTLFLAG_RW,
+SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_noprefetch, CTLFLAG_RWTUN,
     &l2arc_noprefetch, 0, "don't cache prefetch bufs");
-SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_feed_again, CTLFLAG_RW,
+SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_feed_again, CTLFLAG_RWTUN,
     &l2arc_feed_again, 0, "turbo warmup");
-SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_norw, CTLFLAG_RW,
+SYSCTL_INT(_vfs_zfs, OID_AUTO, l2arc_norw, CTLFLAG_RWTUN,
     &l2arc_norw, 0, "no reads during writes");
 
 SYSCTL_UQUAD(_vfs_zfs, OID_AUTO, anon_size, CTLFLAG_RD,

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c	Thu Mar  7 00:55:49 2019	(r344865)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c	Thu Mar  7 01:24:08 2019	(r344866)
@@ -152,7 +152,7 @@
 
 static boolean_t vdev_trim_on_init = B_TRUE;
 SYSCTL_DECL(_vfs_zfs_vdev);
-SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, trim_on_init, CTLFLAG_RW,
+SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, trim_on_init, CTLFLAG_RWTUN,
     &vdev_trim_on_init, 0, "Enable/disable full vdev trim on initialisation");
 
 /*

From owner-svn-src-all@freebsd.org  Thu Mar  7 03:50:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8FE6F150C3EE;
 Thu,  7 Mar 2019 03:50:35 +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)
 server-signature RSA-PSS (4096 bits)
 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 002AA8A696;
 Thu,  7 Mar 2019 03:50:35 +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 E8A03DF31;
 Thu,  7 Mar 2019 03:50:34 +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 x273oYlU008820;
 Thu, 7 Mar 2019 03:50:34 GMT (envelope-from mmacy@FreeBSD.org)
Received: (from mmacy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x273oY29008819;
 Thu, 7 Mar 2019 03:50:34 GMT (envelope-from mmacy@FreeBSD.org)
Message-Id: <201903070350.x273oY29008819@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mmacy set sender to
 mmacy@FreeBSD.org using -f
From: Matt Macy <mmacy@FreeBSD.org>
Date: Thu, 7 Mar 2019 03:50:34 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344868 - head/sys/amd64/conf
X-SVN-Group: head
X-SVN-Commit-Author: mmacy
X-SVN-Commit-Paths: head/sys/amd64/conf
X-SVN-Commit-Revision: 344868
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 002AA8A696
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 03:50:35 -0000

Author: mmacy
Date: Thu Mar  7 03:50:34 2019
New Revision: 344868
URL: https://svnweb.freebsd.org/changeset/base/344868

Log:
  add gcov to LINT build
  
  MFC after:	1 week

Modified:
  head/sys/amd64/conf/NOTES

Modified: head/sys/amd64/conf/NOTES
==============================================================================
--- head/sys/amd64/conf/NOTES	Thu Mar  7 03:47:41 2019	(r344867)
+++ head/sys/amd64/conf/NOTES	Thu Mar  7 03:50:34 2019	(r344868)
@@ -664,3 +664,9 @@ options 	VM_KMEM_SIZE_SCALE
 # Enable NDIS binary driver support
 options 	NDISAPI
 device		ndis
+
+
+# GCOV (code coverage) support
+
+options		LINDEBUGFS
+options		GCOV

From owner-svn-src-all@freebsd.org  Thu Mar  7 03:47:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18B7C150C327;
 Thu,  7 Mar 2019 03:47:42 +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)
 server-signature RSA-PSS (4096 bits)
 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 B102B8A4CA;
 Thu,  7 Mar 2019 03:47:41 +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 9F625DF25;
 Thu,  7 Mar 2019 03:47:41 +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 x273lfot008550;
 Thu, 7 Mar 2019 03:47:41 GMT (envelope-from mmacy@FreeBSD.org)
Received: (from mmacy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x273lfuk008549;
 Thu, 7 Mar 2019 03:47:41 GMT (envelope-from mmacy@FreeBSD.org)
Message-Id: <201903070347.x273lfuk008549@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mmacy set sender to
 mmacy@FreeBSD.org using -f
From: Matt Macy <mmacy@FreeBSD.org>
Date: Thu, 7 Mar 2019 03:47:41 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344867 - head/sys/conf
X-SVN-Group: head
X-SVN-Commit-Author: mmacy
X-SVN-Commit-Paths: head/sys/conf
X-SVN-Commit-Revision: 344867
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B102B8A4CA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 03:47:42 -0000

Author: mmacy
Date: Thu Mar  7 03:47:41 2019
New Revision: 344867
URL: https://svnweb.freebsd.org/changeset/base/344867

Log:
  Add build time GPL warning when GCOV is enabled
  
  MFC after:	1 week

Modified:
  head/sys/conf/files

Modified: head/sys/conf/files
==============================================================================
--- head/sys/conf/files	Thu Mar  7 01:24:08 2019	(r344866)
+++ head/sys/conf/files	Thu Mar  7 03:47:41 2019	(r344867)
@@ -3722,7 +3722,8 @@ fs/cd9660/cd9660_util.c	optional cd9660
 fs/cd9660/cd9660_vfsops.c	optional cd9660
 fs/cd9660/cd9660_vnops.c	optional cd9660
 fs/cd9660/cd9660_iconv.c	optional cd9660_iconv
-gnu/gcov/gcc_4_7.c		optional gcov
+gnu/gcov/gcc_4_7.c		optional gcov  \
+	warning "kernel contains GPL licensed gcov support"
 gnu/gcov/gcov_fs.c		optional gcov  lindebugfs \
 	compile-with "${LINUXKPI_C}"
 gnu/gcov/gcov_subr.c		optional gcov

From owner-svn-src-all@freebsd.org  Thu Mar  7 03:53:49 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 91593150C794;
 Thu,  7 Mar 2019 03:53:49 +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)
 server-signature RSA-PSS (4096 bits)
 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 3646D8AB0A;
 Thu,  7 Mar 2019 03:53:49 +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 0C133E0D2;
 Thu,  7 Mar 2019 03:53:49 +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 x273rmLi013480;
 Thu, 7 Mar 2019 03:53:48 GMT (envelope-from mmacy@FreeBSD.org)
Received: (from mmacy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x273rmV6013479;
 Thu, 7 Mar 2019 03:53:48 GMT (envelope-from mmacy@FreeBSD.org)
Message-Id: <201903070353.x273rmV6013479@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mmacy set sender to
 mmacy@FreeBSD.org using -f
From: Matt Macy <mmacy@FreeBSD.org>
Date: Thu, 7 Mar 2019 03:53:48 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344869 - head/sys/gnu/gcov
X-SVN-Group: head
X-SVN-Commit-Author: mmacy
X-SVN-Commit-Paths: head/sys/gnu/gcov
X-SVN-Commit-Revision: 344869
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3646D8AB0A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 03:53:49 -0000

Author: mmacy
Date: Thu Mar  7 03:53:48 2019
New Revision: 344869
URL: https://svnweb.freebsd.org/changeset/base/344869

Log:
  add GPL text in addition to SPDX tags as requested by core
  
  MFC after:	1 week

Modified:
  head/sys/gnu/gcov/gcc_4_7.c
  head/sys/gnu/gcov/gcov_fs.c

Modified: head/sys/gnu/gcov/gcc_4_7.c
==============================================================================
--- head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 03:50:34 2019	(r344868)
+++ head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 03:53:48 2019	(r344869)
@@ -1,4 +1,18 @@
 // SPDX-License-Identifier: GPL-2.0
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+// 02110-1301, USA.
 /*
  *  This code provides functions to handle gcc's profiling data format
  *  introduced with gcc 4.7.

Modified: head/sys/gnu/gcov/gcov_fs.c
==============================================================================
--- head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 03:50:34 2019	(r344868)
+++ head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 03:53:48 2019	(r344869)
@@ -1,4 +1,18 @@
 // SPDX-License-Identifier: GPL-2.0
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+// 02110-1301, USA.
 /*
  *  This code exports profiling data as debugfs files to userspace.
  *

From owner-svn-src-all@freebsd.org  Thu Mar  7 04:43:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D66D9150F99D;
 Thu,  7 Mar 2019 04:43:09 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 7D1E18D131;
 Thu,  7 Mar 2019 04:43:09 +0000 (UTC)
 (envelope-from jhibbits@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 6BE03E985;
 Thu,  7 Mar 2019 04:43:09 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x274h9sl039756;
 Thu, 7 Mar 2019 04:43:09 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x274h9Wc039754;
 Thu, 7 Mar 2019 04:43:09 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903070443.x274h9Wc039754@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Thu, 7 Mar 2019 04:43:09 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344871 - head/sys/powerpc/powerpc
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/powerpc
X-SVN-Commit-Revision: 344871
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7D1E18D131
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.962,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 04:43:10 -0000

Author: jhibbits
Date: Thu Mar  7 04:43:08 2019
New Revision: 344871
URL: https://svnweb.freebsd.org/changeset/base/344871

Log:
  powerpc: Save stack pointer in savectx
  
  This allows 'show acttrace' to show backtrace on processes currently running
  on CPUs.
  
  Reported by:	Brandon Bergren
  MFC after:	1 week

Modified:
  head/sys/powerpc/powerpc/swtch32.S
  head/sys/powerpc/powerpc/swtch64.S

Modified: head/sys/powerpc/powerpc/swtch32.S
==============================================================================
--- head/sys/powerpc/powerpc/swtch32.S	Thu Mar  7 04:40:44 2019	(r344870)
+++ head/sys/powerpc/powerpc/swtch32.S	Thu Mar  7 04:43:08 2019	(r344871)
@@ -195,6 +195,7 @@ ENTRY(savectx)
 	stmw	%r12,PCB_CONTEXT(%r3)	/* Save the non-volatile GP regs */
 	mfcr	%r4			/* Save the condition register */
 	stw	%r4,PCB_CR(%r3)
+	stw	%r1,PCB_SP(%r3)		/* Save the stack pointer */
 	mflr	%r4			/* Save the link register */
 	stw	%r4,PCB_LR(%r3)
 	blr

Modified: head/sys/powerpc/powerpc/swtch64.S
==============================================================================
--- head/sys/powerpc/powerpc/swtch64.S	Thu Mar  7 04:40:44 2019	(r344870)
+++ head/sys/powerpc/powerpc/swtch64.S	Thu Mar  7 04:43:08 2019	(r344871)
@@ -276,6 +276,7 @@ ENTRY(savectx)
 
 	mfcr	%r4			/* Save the condition register */
 	std	%r4,PCB_CR(%r3)
+	std	%r1,PCB_SP(%r3)		/* Save the stack pointer */
 	std	%r2,PCB_TOC(%r3)	/* Save the TOC pointer */
 	mflr	%r4			/* Save the link register */
 	std	%r4,PCB_LR(%r3)

From owner-svn-src-all@freebsd.org  Thu Mar  7 04:40:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7229C150F577;
 Thu,  7 Mar 2019 04:40:45 +0000 (UTC) (envelope-from ae@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0FBAD8CCEF;
 Thu,  7 Mar 2019 04:40:45 +0000 (UTC) (envelope-from ae@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 03634E7DA;
 Thu,  7 Mar 2019 04:40:45 +0000 (UTC) (envelope-from ae@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x274eiTP035111;
 Thu, 7 Mar 2019 04:40:44 GMT (envelope-from ae@FreeBSD.org)
Received: (from ae@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x274eiV1035110;
 Thu, 7 Mar 2019 04:40:44 GMT (envelope-from ae@FreeBSD.org)
Message-Id: <201903070440.x274eiV1035110@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org
 using -f
From: "Andrey V. Elsukov" <ae@FreeBSD.org>
Date: Thu, 7 Mar 2019 04:40:44 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344870 - head/sys/netpfil/ipfw
X-SVN-Group: head
X-SVN-Commit-Author: ae
X-SVN-Commit-Paths: head/sys/netpfil/ipfw
X-SVN-Commit-Revision: 344870
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0FBAD8CCEF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.962,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 04:40:45 -0000

Author: ae
Date: Thu Mar  7 04:40:44 2019
New Revision: 344870
URL: https://svnweb.freebsd.org/changeset/base/344870

Log:
  Fix the problem with O_LIMIT states introduced in r344018.
  
  dyn_install_state() uses `rule` pointer when it creates state.
  For O_LIMIT states this pointer actually is not struct ip_fw,
  it is pointer to O_LIMIT_PARENT state, that keeps actual pointer
  to ip_fw parent rule. Thus we need to cache rule id and number
  before calling dyn_get_parent_state(), so we can use them later
  when the `rule` pointer is overrided.
  
  PR:		236292
  MFC after:	3 days

Modified:
  head/sys/netpfil/ipfw/ip_fw_dynamic.c

Modified: head/sys/netpfil/ipfw/ip_fw_dynamic.c
==============================================================================
--- head/sys/netpfil/ipfw/ip_fw_dynamic.c	Thu Mar  7 03:53:48 2019	(r344869)
+++ head/sys/netpfil/ipfw/ip_fw_dynamic.c	Thu Mar  7 04:40:44 2019	(r344870)
@@ -1868,11 +1868,13 @@ dyn_install_state(const struct ipfw_flow_id *pkt, uint
     uint16_t kidx, uint8_t type)
 {
 	struct ipfw_flow_id id;
-	uint32_t hashval, parent_hashval;
+	uint32_t hashval, parent_hashval, ruleid, rulenum;
 	int ret;
 
 	MPASS(type == O_LIMIT || type == O_KEEP_STATE);
 
+	ruleid = rule->id;
+	rulenum = rule->rulenum;
 	if (type == O_LIMIT) {
 		/* Create masked flow id and calculate bucket */
 		id.addr_type = pkt->addr_type;
@@ -1927,11 +1929,11 @@ dyn_install_state(const struct ipfw_flow_id *pkt, uint
 
 	hashval = hash_packet(pkt);
 	if (IS_IP4_FLOW_ID(pkt))
-		ret = dyn_add_ipv4_state(rule, rule->id, rule->rulenum, pkt,
+		ret = dyn_add_ipv4_state(rule, ruleid, rulenum, pkt,
 		    ulp, pktlen, hashval, info, fibnum, kidx, type);
 #ifdef INET6
 	else if (IS_IP6_FLOW_ID(pkt))
-		ret = dyn_add_ipv6_state(rule, rule->id, rule->rulenum, pkt,
+		ret = dyn_add_ipv6_state(rule, ruleid, rulenum, pkt,
 		    zoneid, ulp, pktlen, hashval, info, fibnum, kidx, type);
 #endif /* INET6 */
 	else

From owner-svn-src-all@freebsd.org  Thu Mar  7 08:43:21 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F15F115247F1;
 Thu,  7 Mar 2019 08:43:20 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9545170C78;
 Thu,  7 Mar 2019 08:43:20 +0000 (UTC)
 (envelope-from tuexen@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 8ACAE192B0;
 Thu,  7 Mar 2019 08:43:20 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x278hK80069280;
 Thu, 7 Mar 2019 08:43:20 GMT (envelope-from tuexen@FreeBSD.org)
Received: (from tuexen@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x278hKMB069279;
 Thu, 7 Mar 2019 08:43:20 GMT (envelope-from tuexen@FreeBSD.org)
Message-Id: <201903070843.x278hKMB069279@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: tuexen set sender to
 tuexen@FreeBSD.org using -f
From: Michael Tuexen <tuexen@FreeBSD.org>
Date: Thu, 7 Mar 2019 08:43:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344872 - head/sys/netinet
X-SVN-Group: head
X-SVN-Commit-Author: tuexen
X-SVN-Commit-Paths: head/sys/netinet
X-SVN-Commit-Revision: 344872
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9545170C78
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.90 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.90)[-0.904,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 08:43:21 -0000

Author: tuexen
Date: Thu Mar  7 08:43:20 2019
New Revision: 344872
URL: https://svnweb.freebsd.org/changeset/base/344872

Log:
  After removing an entry from the stream scheduler list, set the pointers
  to NULL, since we are checking for it in case the element gets inserted
  again.
  
  This issue was found by running syzkaller.
  
  MFC after:		3 days

Modified:
  head/sys/netinet/sctp_ss_functions.c

Modified: head/sys/netinet/sctp_ss_functions.c
==============================================================================
--- head/sys/netinet/sctp_ss_functions.c	Thu Mar  7 04:43:08 2019	(r344871)
+++ head/sys/netinet/sctp_ss_functions.c	Thu Mar  7 08:43:20 2019	(r344872)
@@ -78,9 +78,10 @@ sctp_ss_default_clear(struct sctp_tcb *stcb, struct sc
 		SCTP_TCB_SEND_LOCK(stcb);
 	}
 	while (!TAILQ_EMPTY(&asoc->ss_data.out.wheel)) {
-		struct sctp_stream_out *strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
+		struct sctp_stream_out *strq;
 
-		TAILQ_REMOVE(&asoc->ss_data.out.wheel, TAILQ_FIRST(&asoc->ss_data.out.wheel), ss_params.rr.next_spoke);
+		strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
+		TAILQ_REMOVE(&asoc->ss_data.out.wheel, strq, ss_params.rr.next_spoke);
 		strq->ss_params.rr.next_spoke.tqe_next = NULL;
 		strq->ss_params.rr.next_spoke.tqe_prev = NULL;
 	}
@@ -793,12 +794,17 @@ static void
 sctp_ss_fcfs_clear(struct sctp_tcb *stcb, struct sctp_association *asoc,
     int clear_values, int holds_lock)
 {
+	struct sctp_stream_queue_pending *sp;
+
 	if (clear_values) {
 		if (holds_lock == 0) {
 			SCTP_TCB_SEND_LOCK(stcb);
 		}
 		while (!TAILQ_EMPTY(&asoc->ss_data.out.list)) {
-			TAILQ_REMOVE(&asoc->ss_data.out.list, TAILQ_FIRST(&asoc->ss_data.out.list), ss_next);
+			sp = TAILQ_FIRST(&asoc->ss_data.out.list);
+			TAILQ_REMOVE(&asoc->ss_data.out.list, sp, ss_next);
+			sp->ss_next.tqe_next = NULL;
+			sp->ss_next.tqe_prev = NULL;
 		}
 		if (holds_lock == 0) {
 			SCTP_TCB_SEND_UNLOCK(stcb);
@@ -861,6 +867,8 @@ sctp_ss_fcfs_remove(struct sctp_tcb *stcb, struct sctp
 	    ((sp->ss_next.tqe_next != NULL) ||
 	    (sp->ss_next.tqe_prev != NULL))) {
 		TAILQ_REMOVE(&asoc->ss_data.out.list, sp, ss_next);
+		sp->ss_next.tqe_next = NULL;
+		sp->ss_next.tqe_prev = NULL;
 	}
 	if (holds_lock == 0) {
 		SCTP_TCB_SEND_UNLOCK(stcb);

From owner-svn-src-all@freebsd.org  Thu Mar  7 10:01:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0254715280D6;
 Thu,  7 Mar 2019 10:01:34 +0000 (UTC) (envelope-from ae@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 5816E747C1;
 Thu,  7 Mar 2019 10:01:33 +0000 (UTC) (envelope-from ae@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 1884C19FEB;
 Thu,  7 Mar 2019 10:01:33 +0000 (UTC) (envelope-from ae@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27A1WjH007528;
 Thu, 7 Mar 2019 10:01:32 GMT (envelope-from ae@FreeBSD.org)
Received: (from ae@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27A1W9U007526;
 Thu, 7 Mar 2019 10:01:32 GMT (envelope-from ae@FreeBSD.org)
Message-Id: <201903071001.x27A1W9U007526@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org
 using -f
From: "Andrey V. Elsukov" <ae@FreeBSD.org>
Date: Thu, 7 Mar 2019 10:01:32 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344873 - in head/sys: amd64/amd64 i386/i386
X-SVN-Group: head
X-SVN-Commit-Author: ae
X-SVN-Commit-Paths: in head/sys: amd64/amd64 i386/i386
X-SVN-Commit-Revision: 344873
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5816E747C1
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.94)[-0.939,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 10:01:34 -0000

Author: ae
Date: Thu Mar  7 10:01:32 2019
New Revision: 344873
URL: https://svnweb.freebsd.org/changeset/base/344873

Log:
  Fix typo.
  
  MFC after:	1 week

Modified:
  head/sys/amd64/amd64/vm_machdep.c
  head/sys/i386/i386/vm_machdep.c

Modified: head/sys/amd64/amd64/vm_machdep.c
==============================================================================
--- head/sys/amd64/amd64/vm_machdep.c	Thu Mar  7 08:43:20 2019	(r344872)
+++ head/sys/amd64/amd64/vm_machdep.c	Thu Mar  7 10:01:32 2019	(r344873)
@@ -86,7 +86,7 @@ _Static_assert(OFFSETOF_CURTHREAD == offsetof(struct p
 _Static_assert(OFFSETOF_CURPCB == offsetof(struct pcpu, pc_curpcb),
     "OFFSETOF_CURPCB does not correspond with offset of pc_curpcb.");
 _Static_assert(OFFSETOF_MONITORBUF == offsetof(struct pcpu, pc_monitorbuf),
-    "OFFSETOF_MONINORBUF does not correspond with offset of pc_monitorbuf.");
+    "OFFSETOF_MONITORBUF does not correspond with offset of pc_monitorbuf.");
 
 struct savefpu *
 get_pcb_user_save_td(struct thread *td)

Modified: head/sys/i386/i386/vm_machdep.c
==============================================================================
--- head/sys/i386/i386/vm_machdep.c	Thu Mar  7 08:43:20 2019	(r344872)
+++ head/sys/i386/i386/vm_machdep.c	Thu Mar  7 10:01:32 2019	(r344873)
@@ -95,7 +95,7 @@ _Static_assert(OFFSETOF_CURTHREAD == offsetof(struct p
 _Static_assert(OFFSETOF_CURPCB == offsetof(struct pcpu, pc_curpcb),
     "OFFSETOF_CURPCB does not correspond with offset of pc_curpcb.");
 _Static_assert(__OFFSETOF_MONITORBUF == offsetof(struct pcpu, pc_monitorbuf),
-    "__OFFSETOF_MONINORBUF does not correspond with offset of pc_monitorbuf.");
+    "__OFFSETOF_MONITORBUF does not correspond with offset of pc_monitorbuf.");
 
 union savefpu *
 get_pcb_user_save_td(struct thread *td)

From owner-svn-src-all@freebsd.org  Thu Mar  7 10:19:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8D5071528CB2;
 Thu,  7 Mar 2019 10:19:41 +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)
 server-signature RSA-PSS (4096 bits)
 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 2B2FB753F7;
 Thu,  7 Mar 2019 10:19:41 +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 189A81A35D;
 Thu,  7 Mar 2019 10:19:41 +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 x27AJePi017421;
 Thu, 7 Mar 2019 10:19:40 GMT (envelope-from 0mp@FreeBSD.org)
Received: (from 0mp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27AJeFQ017420;
 Thu, 7 Mar 2019 10:19:40 GMT (envelope-from 0mp@FreeBSD.org)
Message-Id: <201903071019.x27AJeFQ017420@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: Thu, 7 Mar 2019 10:19:40 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344874 - head/usr.bin/ncal
X-SVN-Group: head
X-SVN-Commit-Author: 0mp
X-SVN-Commit-Paths: head/usr.bin/ncal
X-SVN-Commit-Revision: 344874
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2B2FB753F7
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.94)[-0.939,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 10:19:41 -0000

Author: 0mp (ports committer)
Date: Thu Mar  7 10:19:40 2019
New Revision: 344874
URL: https://svnweb.freebsd.org/changeset/base/344874

Log:
  Document that cal(1) cannot start a week with Monday.
  
  Reviewed by:	bcr
  Approved by:	bcr (doc)
  Approved by:	krion (mentor, implicit), mat (mentor, implicit)
  Differential Revision:	https://reviews.freebsd.org/D19491

Modified:
  head/usr.bin/ncal/ncal.1

Modified: head/usr.bin/ncal/ncal.1
==============================================================================
--- head/usr.bin/ncal/ncal.1	Thu Mar  7 10:01:32 2019	(r344873)
+++ head/usr.bin/ncal/ncal.1	Thu Mar  7 10:19:40 2019	(r344874)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 08, 2018
+.Dd March 7, 2019
 .Dt CAL 1
 .Os
 .Sh NAME
@@ -199,3 +199,12 @@ codes is historically naive for many countries.
 .Pp
 Not all options are compatible and using them in different orders
 will give varying results.
+.Pp
+It is not possible to display Monday as the first day of the week with
+.Nm cal .
+If you want to use
+.Nm cal
+and want to have Mondays to start the week, use the ports version
+.Pq Pa deskutils/cal
+rather than the base system
+.Nm cal .

From owner-svn-src-all@freebsd.org  Thu Mar  7 11:00:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5D5F8152A191;
 Thu,  7 Mar 2019 11:00:10 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1])
 (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 68B46769F3;
 Thu,  7 Mar 2019 11:00:09 +0000 (UTC)
 (envelope-from kostikbel@gmail.com)
Received: from tom.home (kib@localhost [127.0.0.1])
 by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id x27AxxsB047500
 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO);
 Thu, 7 Mar 2019 13:00:02 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua x27AxxsB047500
Received: (from kostik@localhost)
 by tom.home (8.15.2/8.15.2/Submit) id x27Axx1c047499;
 Thu, 7 Mar 2019 12:59:59 +0200 (EET)
 (envelope-from kostikbel@gmail.com)
X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com
 using -f
Date: Thu, 7 Mar 2019 12:59:59 +0200
From: Konstantin Belousov <kostikbel@gmail.com>
To: Conrad Meyer <cem@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344857 - head/sys/fs/fuse
Message-ID: <20190307105959.GJ2492@kib.kiev.ua>
References: <201903062256.x26Munf3054948@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <201903062256.x26Munf3054948@repo.freebsd.org>
User-Agent: Mutt/1.11.3 (2019-02-01)
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00,
 DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM,
 NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on tom.home
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 11:00:10 -0000

On Wed, Mar 06, 2019 at 10:56:49PM +0000, Conrad Meyer wrote:
> Author: cem
> Date: Wed Mar  6 22:56:49 2019
> New Revision: 344857
> URL: https://svnweb.freebsd.org/changeset/base/344857
> 
> Log:
>   FUSE: Prevent trivial panic
>   
>   When open(2) was invoked against a FUSE filesystem with an unexpected flags
>   value (no O_RDONLY / O_RDWR / O_WRONLY), an assertion fired, causing panic.
Did you miss O_EXEC ?   O_RDONLY is defined as zero, and we interpret the
flags as having O_RDONLY if no other flags were passed.

VFS guarantees that one of the O_EXEC/FREAD/FWRITE flag is always
there.  If it does not, it is bug.  See the code at the start of
kern_openat().

>   
>   For now, prevent the panic by rejecting such VOP_OPENs with EINVAL.
>   
>   This is not considered the correct long term fix, but does prevent an
>   unprivileged denial-of-service.
>   
>   PR:		236329
>   Reported by:	asomers
>   Reviewed by:	asomers
>   Sponsored by:	Dell EMC Isilon
> 
> Modified:
>   head/sys/fs/fuse/fuse_vnops.c
> 
> Modified: head/sys/fs/fuse/fuse_vnops.c
> ==============================================================================
> --- head/sys/fs/fuse/fuse_vnops.c	Wed Mar  6 22:13:53 2019	(r344856)
> +++ head/sys/fs/fuse/fuse_vnops.c	Wed Mar  6 22:56:49 2019	(r344857)
> @@ -1174,6 +1174,9 @@ fuse_vnop_open(struct vop_open_args *ap)
>  	if (fuse_isdeadfs(vp)) {
>  		return ENXIO;
>  	}
> +	if ((mode & (FREAD | FWRITE)) == 0)
> +		return EINVAL;
> +
>  	fvdat = VTOFUD(vp);
>  
>  	if (vnode_isdir(vp)) {

From owner-svn-src-all@freebsd.org  Thu Mar  7 11:09:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 845F4152A3F2;
 Thu,  7 Mar 2019 11:09:26 +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)
 server-signature RSA-PSS (4096 bits)
 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 2316376EE8;
 Thu,  7 Mar 2019 11:09:26 +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 C32F81AC8A;
 Thu,  7 Mar 2019 11:09:25 +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 x27B9PSD043460;
 Thu, 7 Mar 2019 11:09:25 GMT (envelope-from 0mp@FreeBSD.org)
Received: (from 0mp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27B9PPA043459;
 Thu, 7 Mar 2019 11:09:25 GMT (envelope-from 0mp@FreeBSD.org)
Message-Id: <201903071109.x27B9PPA043459@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: Thu, 7 Mar 2019 11:09:25 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344875 - head/usr.bin/ncal
X-SVN-Group: head
X-SVN-Commit-Author: 0mp
X-SVN-Commit-Paths: head/usr.bin/ncal
X-SVN-Commit-Revision: 344875
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2316376EE8
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-0.999,0];
 NEURAL_HAM_SHORT(-0.96)[-0.956,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 11:09:26 -0000

Author: 0mp (ports committer)
Date: Thu Mar  7 11:09:25 2019
New Revision: 344875
URL: https://svnweb.freebsd.org/changeset/base/344875

Log:
  Do not reference deskutils/cal from cal.1.
  
  The ports version of cal is an abandonware so in order to minimize the
  potential bit rot of our documentation let's not mention it at all.
  Interested users are going to find suitable alternatives anyway on their
  own.
  
  Reported by:	bapt
  Approved by:	bapt (src)
  Approved by:	krion (mentor, implicit), mat (mentor, implicit)
  Differential Revision:	https://reviews.freebsd.org/D19492

Modified:
  head/usr.bin/ncal/ncal.1

Modified: head/usr.bin/ncal/ncal.1
==============================================================================
--- head/usr.bin/ncal/ncal.1	Thu Mar  7 10:19:40 2019	(r344874)
+++ head/usr.bin/ncal/ncal.1	Thu Mar  7 11:09:25 2019	(r344875)
@@ -202,9 +202,3 @@ will give varying results.
 .Pp
 It is not possible to display Monday as the first day of the week with
 .Nm cal .
-If you want to use
-.Nm cal
-and want to have Mondays to start the week, use the ports version
-.Pq Pa deskutils/cal
-rather than the base system
-.Nm cal .

From owner-svn-src-all@freebsd.org  Thu Mar  7 11:09:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B10F152A414;
 Thu,  7 Mar 2019 11:09:30 +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)
 server-signature RSA-PSS (4096 bits)
 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 B568676EEF;
 Thu,  7 Mar 2019 11:09:29 +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 ABEA71AC8B;
 Thu,  7 Mar 2019 11:09:29 +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 x27B9T9C043508;
 Thu, 7 Mar 2019 11:09:29 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27B9TBu043507;
 Thu, 7 Mar 2019 11:09:29 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903071109.x27B9TBu043507@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Thu, 7 Mar 2019 11:09:29 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344876 - head/tests/sys/netpfil/pf
X-SVN-Group: head
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: head/tests/sys/netpfil/pf
X-SVN-Commit-Revision: 344876
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B568676EEF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 11:09:30 -0000

Author: kp
Date: Thu Mar  7 11:09:29 2019
New Revision: 344876
URL: https://svnweb.freebsd.org/changeset/base/344876

Log:
  pf tests: Accelerate tests
  
  Make the tests run slightly faster by having pft_ping.py end the capture
  of packets as soon as it sees the expected packet, rather than
  continuing to sniff.
  
  MFC after:	2 weeks

Modified:
  head/tests/sys/netpfil/pf/pft_ping.py

Modified: head/tests/sys/netpfil/pf/pft_ping.py
==============================================================================
--- head/tests/sys/netpfil/pf/pft_ping.py	Thu Mar  7 11:09:25 2019	(r344875)
+++ head/tests/sys/netpfil/pf/pft_ping.py	Thu Mar  7 11:09:29 2019	(r344876)
@@ -8,26 +8,38 @@ import threading
 PAYLOAD_MAGIC = 0x42c0ffee
 
 class Sniffer(threading.Thread):
-	def __init__(self, recvif):
+	def __init__(self, args, check_function):
 		threading.Thread.__init__(self)
 
-		self._recvif = recvif
+		self._args = args
+		self._recvif = args.recvif[0]
+		self._check_function = check_function
+		self.foundCorrectPacket = False
 
 		self.start()
 
+	def _checkPacket(self, packet):
+		ret = self._check_function(self._args, packet)
+		if ret:
+			self.foundCorrectPacket = True
+		return ret
+
 	def run(self):
-		self.packets = sp.sniff(iface=self._recvif, timeout=3)
+		self.packets = sp.sniff(iface=self._recvif,
+				stop_filter=self._checkPacket, timeout=3)
 
-def check_ping_request(packet, dst_ip, args):
+def check_ping_request(args, packet):
 	if args.ip6:
-		return check_ping6_request(packet, dst_ip, args)
+		return check_ping6_request(args, packet)
 	else:
-		return check_ping4_request(packet, dst_ip, args)
+		return check_ping4_request(args, packet)
 
-def check_ping4_request(packet, dst_ip, args):
+def check_ping4_request(args, packet):
 	"""
 	Verify that the packet matches what we'd have sent
 	"""
+	dst_ip = args.to[0]
+
 	ip = packet.getlayer(sp.IP)
 	if not ip:
 		return False
@@ -54,13 +66,14 @@ def check_ping4_request(packet, dst_ip, args):
 				% (ip.tos, args.expect_tos[0])
 			return False
 
-
 	return True
 
-def check_ping6_request(packet, dst_ip, args):
+def check_ping6_request(args, packet):
 	"""
 	Verify that the packet matches what we'd have sent
 	"""
+	dst_ip = args.to[0]
+
 	ip = packet.getlayer(sp.IPv6)
 	if not ip:
 		return False
@@ -124,7 +137,7 @@ def main():
 
 	sniffer = None
 	if not args.recvif is None:
-		sniffer = Sniffer(args.recvif[0])
+		sniffer = Sniffer(args, check_ping_request)
 
 	if args.ip6:
 		ping6(args.sendif[0], args.to[0], args)
@@ -134,12 +147,10 @@ def main():
 	if sniffer:
 		sniffer.join()
 
-		for packet in sniffer.packets:
-			if check_ping_request(packet, args.to[0], args):
-				sys.exit(0)
-
-		# We did not get the packet we expected
-		sys.exit(1)
+		if sniffer.foundCorrectPacket:
+			sys.exit(0)
+		else:
+			sys.exit(1)
 
 if __name__ == '__main__':
 	main()

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:00:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BFF98152E70A;
 Thu,  7 Mar 2019 13:00:32 +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)
 server-signature RSA-PSS (4096 bits)
 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 63BC28392E;
 Thu,  7 Mar 2019 13:00:32 +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 58B6F1BF40;
 Thu,  7 Mar 2019 13:00:32 +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 x27D0W5I002356;
 Thu, 7 Mar 2019 13:00:32 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27D0WnQ002355;
 Thu, 7 Mar 2019 13:00:32 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071300.x27D0WnQ002355@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:00:32 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-svnadmin@freebsd.org
Subject: svn commit: r344877 - svnadmin/conf
X-SVN-Group: svnadmin
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: svnadmin/conf
X-SVN-Commit-Revision: 344877
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 63BC28392E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:00:32 -0000

Author: cy
Date: Thu Mar  7 13:00:31 2019
New Revision: 344877
URL: https://svnweb.freebsd.org/changeset/base/344877

Log:
  Sizelimit for ntp-4.2.8p13.

Modified:
  svnadmin/conf/sizelimit.conf

Modified: svnadmin/conf/sizelimit.conf
==============================================================================
--- svnadmin/conf/sizelimit.conf	Thu Mar  7 11:09:29 2019	(r344876)
+++ svnadmin/conf/sizelimit.conf	Thu Mar  7 13:00:31 2019	(r344877)
@@ -16,6 +16,7 @@
 # First field is username, second field is the raised limit required.
 achim
 bapt
+cy
 davidcs
 dim	20480000
 imp

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:03:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 454DD152E914;
 Thu,  7 Mar 2019 13:03:38 +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)
 server-signature RSA-PSS (4096 bits)
 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 EB25C83D62;
 Thu,  7 Mar 2019 13:03:37 +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 DF8C31C0E0;
 Thu,  7 Mar 2019 13:03:37 +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 x27D3b9g007021;
 Thu, 7 Mar 2019 13:03:37 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27D1HOJ002438;
 Thu, 7 Mar 2019 13:01:17 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071301.x27D1HOJ002438@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:01:17 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344878 - in vendor/ntp/dist: . adjtimed clockstuff
 include include/isc kernel kernel/sys libntp libparse ntpd ntpdate ntpdc ntpq
 ntpsnmpd parseutil ports/winnt/vs2005 ports/winnt/vs200...
X-SVN-Group: vendor
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in vendor/ntp/dist: . adjtimed clockstuff include
 include/isc kernel kernel/sys libntp libparse ntpd ntpdate ntpdc ntpq
 ntpsnmpd parseutil ports/winnt/vs2005 ports/winnt/vs2008/libntp
 ports/winnt/vs20...
X-SVN-Commit-Revision: 344878
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: EB25C83D62
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:03:38 -0000

Author: cy
Date: Thu Mar  7 13:01:16 2019
New Revision: 344878
URL: https://svnweb.freebsd.org/changeset/base/344878

Log:
  Import 4.2.8p13.

Added:
  vendor/ntp/dist/libntp/xsbprintf.c   (contents, props changed)
  vendor/ntp/dist/tests/libntp/run-sbprintf.c   (contents, props changed)
  vendor/ntp/dist/tests/libntp/sbprintf.c   (contents, props changed)
Modified:
  vendor/ntp/dist/COPYRIGHT
  vendor/ntp/dist/ChangeLog
  vendor/ntp/dist/CommitLog
  vendor/ntp/dist/Makefile.in
  vendor/ntp/dist/NEWS
  vendor/ntp/dist/aclocal.m4
  vendor/ntp/dist/adjtimed/Makefile.in
  vendor/ntp/dist/build
  vendor/ntp/dist/clockstuff/Makefile.in
  vendor/ntp/dist/config.h.in
  vendor/ntp/dist/configure
  vendor/ntp/dist/configure.ac
  vendor/ntp/dist/include/Makefile.in
  vendor/ntp/dist/include/isc/Makefile.in
  vendor/ntp/dist/include/ntp_calendar.h
  vendor/ntp/dist/include/ntp_stdlib.h
  vendor/ntp/dist/include/ntpd.h
  vendor/ntp/dist/include/parse.h
  vendor/ntp/dist/kernel/Makefile.in
  vendor/ntp/dist/kernel/sys/Makefile.in
  vendor/ntp/dist/libntp/Makefile.am
  vendor/ntp/dist/libntp/Makefile.in
  vendor/ntp/dist/libntp/authreadkeys.c
  vendor/ntp/dist/libntp/calyearstart.c
  vendor/ntp/dist/libntp/ntp_calendar.c
  vendor/ntp/dist/libntp/work_fork.c
  vendor/ntp/dist/libparse/Makefile.in
  vendor/ntp/dist/libparse/clk_trimtsip.c
  vendor/ntp/dist/libparse/gpstolfp.c
  vendor/ntp/dist/ntpd/Makefile.in
  vendor/ntp/dist/ntpd/invoke-ntp.conf.texi
  vendor/ntp/dist/ntpd/invoke-ntp.keys.texi
  vendor/ntp/dist/ntpd/invoke-ntpd.texi
  vendor/ntp/dist/ntpd/ntp.conf.5man
  vendor/ntp/dist/ntpd/ntp.conf.5mdoc
  vendor/ntp/dist/ntpd/ntp.conf.html
  vendor/ntp/dist/ntpd/ntp.conf.man.in
  vendor/ntp/dist/ntpd/ntp.conf.mdoc.in
  vendor/ntp/dist/ntpd/ntp.keys.5man
  vendor/ntp/dist/ntpd/ntp.keys.5mdoc
  vendor/ntp/dist/ntpd/ntp.keys.html
  vendor/ntp/dist/ntpd/ntp.keys.man.in
  vendor/ntp/dist/ntpd/ntp.keys.mdoc.in
  vendor/ntp/dist/ntpd/ntp_config.c
  vendor/ntp/dist/ntpd/ntp_control.c
  vendor/ntp/dist/ntpd/ntp_crypto.c
  vendor/ntp/dist/ntpd/ntp_loopfilter.c
  vendor/ntp/dist/ntpd/ntp_proto.c
  vendor/ntp/dist/ntpd/ntp_request.c
  vendor/ntp/dist/ntpd/ntp_timer.c
  vendor/ntp/dist/ntpd/ntpd-opts.c
  vendor/ntp/dist/ntpd/ntpd-opts.h
  vendor/ntp/dist/ntpd/ntpd.1ntpdman
  vendor/ntp/dist/ntpd/ntpd.1ntpdmdoc
  vendor/ntp/dist/ntpd/ntpd.c
  vendor/ntp/dist/ntpd/ntpd.html
  vendor/ntp/dist/ntpd/ntpd.man.in
  vendor/ntp/dist/ntpd/ntpd.mdoc.in
  vendor/ntp/dist/ntpd/refclock_bancomm.c
  vendor/ntp/dist/ntpd/refclock_jupiter.c
  vendor/ntp/dist/ntpd/refclock_parse.c
  vendor/ntp/dist/ntpdate/Makefile.in
  vendor/ntp/dist/ntpdate/ntpdate.c
  vendor/ntp/dist/ntpdc/Makefile.in
  vendor/ntp/dist/ntpdc/invoke-ntpdc.texi
  vendor/ntp/dist/ntpdc/nl.pl
  vendor/ntp/dist/ntpdc/ntpdc-opts.c
  vendor/ntp/dist/ntpdc/ntpdc-opts.h
  vendor/ntp/dist/ntpdc/ntpdc.1ntpdcman
  vendor/ntp/dist/ntpdc/ntpdc.1ntpdcmdoc
  vendor/ntp/dist/ntpdc/ntpdc.html
  vendor/ntp/dist/ntpdc/ntpdc.man.in
  vendor/ntp/dist/ntpdc/ntpdc.mdoc.in
  vendor/ntp/dist/ntpdc/ntpdc_ops.c
  vendor/ntp/dist/ntpq/Makefile.in
  vendor/ntp/dist/ntpq/invoke-ntpq.texi
  vendor/ntp/dist/ntpq/ntpq-opts.c
  vendor/ntp/dist/ntpq/ntpq-opts.h
  vendor/ntp/dist/ntpq/ntpq.1ntpqman
  vendor/ntp/dist/ntpq/ntpq.1ntpqmdoc
  vendor/ntp/dist/ntpq/ntpq.html
  vendor/ntp/dist/ntpq/ntpq.man.in
  vendor/ntp/dist/ntpq/ntpq.mdoc.in
  vendor/ntp/dist/ntpsnmpd/Makefile.in
  vendor/ntp/dist/ntpsnmpd/invoke-ntpsnmpd.texi
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd-opts.c
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd-opts.h
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd.html
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd.man.in
  vendor/ntp/dist/ntpsnmpd/ntpsnmpd.mdoc.in
  vendor/ntp/dist/packageinfo.sh
  vendor/ntp/dist/parseutil/Makefile.in
  vendor/ntp/dist/ports/winnt/vs2005/libntp.vcproj
  vendor/ntp/dist/ports/winnt/vs2008/libntp/libntp.vcproj
  vendor/ntp/dist/ports/winnt/vs2013/libntp/libntp.vcxproj
  vendor/ntp/dist/ports/winnt/vs2013/libntp/libntp.vcxproj.filters
  vendor/ntp/dist/ports/winnt/vs2015/libntp/libntp.vcxproj
  vendor/ntp/dist/ports/winnt/vs2015/libntp/libntp.vcxproj.filters
  vendor/ntp/dist/scripts/Makefile.in
  vendor/ntp/dist/scripts/build/Makefile.in
  vendor/ntp/dist/scripts/build/check--help
  vendor/ntp/dist/scripts/calc_tickadj/Makefile.in
  vendor/ntp/dist/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  vendor/ntp/dist/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  vendor/ntp/dist/scripts/calc_tickadj/calc_tickadj.html
  vendor/ntp/dist/scripts/calc_tickadj/calc_tickadj.man.in
  vendor/ntp/dist/scripts/calc_tickadj/calc_tickadj.mdoc.in
  vendor/ntp/dist/scripts/calc_tickadj/invoke-calc_tickadj.texi
  vendor/ntp/dist/scripts/invoke-plot_summary.texi
  vendor/ntp/dist/scripts/invoke-summary.texi
  vendor/ntp/dist/scripts/lib/Makefile.in
  vendor/ntp/dist/scripts/ntp-wait/Makefile.in
  vendor/ntp/dist/scripts/ntp-wait/invoke-ntp-wait.texi
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait-opts
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait.1ntp-waitman
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait.html
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait.man.in
  vendor/ntp/dist/scripts/ntp-wait/ntp-wait.mdoc.in
  vendor/ntp/dist/scripts/ntpsweep/Makefile.in
  vendor/ntp/dist/scripts/ntpsweep/invoke-ntpsweep.texi
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep-opts
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep.1ntpsweepman
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep.html
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep.man.in
  vendor/ntp/dist/scripts/ntpsweep/ntpsweep.mdoc.in
  vendor/ntp/dist/scripts/ntptrace/Makefile.in
  vendor/ntp/dist/scripts/ntptrace/invoke-ntptrace.texi
  vendor/ntp/dist/scripts/ntptrace/ntptrace-opts
  vendor/ntp/dist/scripts/ntptrace/ntptrace.1ntptraceman
  vendor/ntp/dist/scripts/ntptrace/ntptrace.1ntptracemdoc
  vendor/ntp/dist/scripts/ntptrace/ntptrace.html
  vendor/ntp/dist/scripts/ntptrace/ntptrace.man.in
  vendor/ntp/dist/scripts/ntptrace/ntptrace.mdoc.in
  vendor/ntp/dist/scripts/plot_summary-opts
  vendor/ntp/dist/scripts/plot_summary.1plot_summaryman
  vendor/ntp/dist/scripts/plot_summary.1plot_summarymdoc
  vendor/ntp/dist/scripts/plot_summary.html
  vendor/ntp/dist/scripts/plot_summary.man.in
  vendor/ntp/dist/scripts/plot_summary.mdoc.in
  vendor/ntp/dist/scripts/summary-opts
  vendor/ntp/dist/scripts/summary.1summaryman
  vendor/ntp/dist/scripts/summary.1summarymdoc
  vendor/ntp/dist/scripts/summary.html
  vendor/ntp/dist/scripts/summary.man.in
  vendor/ntp/dist/scripts/summary.mdoc.in
  vendor/ntp/dist/scripts/update-leap/Makefile.in
  vendor/ntp/dist/scripts/update-leap/invoke-update-leap.texi
  vendor/ntp/dist/scripts/update-leap/update-leap-opts
  vendor/ntp/dist/scripts/update-leap/update-leap.1update-leapman
  vendor/ntp/dist/scripts/update-leap/update-leap.1update-leapmdoc
  vendor/ntp/dist/scripts/update-leap/update-leap.html
  vendor/ntp/dist/scripts/update-leap/update-leap.man.in
  vendor/ntp/dist/scripts/update-leap/update-leap.mdoc.in
  vendor/ntp/dist/sntp/COPYRIGHT
  vendor/ntp/dist/sntp/Makefile.in
  vendor/ntp/dist/sntp/aclocal.m4
  vendor/ntp/dist/sntp/config.h.in
  vendor/ntp/dist/sntp/configure
  vendor/ntp/dist/sntp/include/Makefile.in
  vendor/ntp/dist/sntp/include/version.def
  vendor/ntp/dist/sntp/include/version.texi
  vendor/ntp/dist/sntp/invoke-sntp.texi
  vendor/ntp/dist/sntp/libevent/Makefile.in
  vendor/ntp/dist/sntp/libevent/aclocal.m4
  vendor/ntp/dist/sntp/libevent/build-aux/ar-lib
  vendor/ntp/dist/sntp/libevent/build-aux/compile
  vendor/ntp/dist/sntp/libevent/build-aux/config.guess
  vendor/ntp/dist/sntp/libevent/build-aux/config.sub
  vendor/ntp/dist/sntp/libevent/build-aux/depcomp
  vendor/ntp/dist/sntp/libevent/build-aux/install-sh
  vendor/ntp/dist/sntp/libevent/build-aux/missing
  vendor/ntp/dist/sntp/libevent/build-aux/test-driver
  vendor/ntp/dist/sntp/libevent/build-aux/ylwrap
  vendor/ntp/dist/sntp/libevent/config.h.in
  vendor/ntp/dist/sntp/libevent/configure
  vendor/ntp/dist/sntp/libevent/evconfig-private.h
  vendor/ntp/dist/sntp/libevent/test/regress.gen.c
  vendor/ntp/dist/sntp/libevent/test/regress.gen.h
  vendor/ntp/dist/sntp/libopts/Makefile.in
  vendor/ntp/dist/sntp/libopts/autoopts/options.h
  vendor/ntp/dist/sntp/libopts/genshell.h
  vendor/ntp/dist/sntp/m4/ntp_libntp.m4
  vendor/ntp/dist/sntp/m4/version.m4
  vendor/ntp/dist/sntp/main.c
  vendor/ntp/dist/sntp/networking.c
  vendor/ntp/dist/sntp/scm-rev
  vendor/ntp/dist/sntp/scripts/Makefile.in
  vendor/ntp/dist/sntp/sntp-opts.c
  vendor/ntp/dist/sntp/sntp-opts.h
  vendor/ntp/dist/sntp/sntp.1sntpman
  vendor/ntp/dist/sntp/sntp.1sntpmdoc
  vendor/ntp/dist/sntp/sntp.html
  vendor/ntp/dist/sntp/sntp.man.in
  vendor/ntp/dist/sntp/sntp.mdoc.in
  vendor/ntp/dist/sntp/tests/Makefile.in
  vendor/ntp/dist/sntp/unity/Makefile.in
  vendor/ntp/dist/sntp/version.c
  vendor/ntp/dist/tests/Makefile.in
  vendor/ntp/dist/tests/bug-2803/Makefile.in
  vendor/ntp/dist/tests/libntp/Makefile.am
  vendor/ntp/dist/tests/libntp/Makefile.in
  vendor/ntp/dist/tests/ntpd/Makefile.in
  vendor/ntp/dist/tests/ntpq/Makefile.in
  vendor/ntp/dist/tests/sandbox/Makefile.in
  vendor/ntp/dist/tests/sec-2853/Makefile.in
  vendor/ntp/dist/util/Makefile.in
  vendor/ntp/dist/util/invoke-ntp-keygen.texi
  vendor/ntp/dist/util/ntp-keygen-opts.c
  vendor/ntp/dist/util/ntp-keygen-opts.h
  vendor/ntp/dist/util/ntp-keygen.1ntp-keygenman
  vendor/ntp/dist/util/ntp-keygen.1ntp-keygenmdoc
  vendor/ntp/dist/util/ntp-keygen.html
  vendor/ntp/dist/util/ntp-keygen.man.in
  vendor/ntp/dist/util/ntp-keygen.mdoc.in
  vendor/ntp/dist/util/ntptime.c

Modified: vendor/ntp/dist/COPYRIGHT
==============================================================================
--- vendor/ntp/dist/COPYRIGHT	Thu Mar  7 13:00:31 2019	(r344877)
+++ vendor/ntp/dist/COPYRIGHT	Thu Mar  7 13:01:16 2019	(r344878)
@@ -1,16 +1,15 @@
 This file is automatically generated from html/copyright.html
-
   Copyright Notice
-  
+
    jpg "Clone me," says Dolly sheepishly.
-   
+
    Last update: 2-Jan-2017 11:58 UTC
-     _________________________________________________________________
-   
-   The following copyright notice applies to all files collectively
-   called the Network Time Protocol Version 4 Distribution. Unless
-   specifically declared otherwise in an individual file, this entire
-   notice applies as if the text was explicitly included in the file.
+     __________________________________________________________________
+
+   The following copyright notice applies to all files collectively called
+   the Network Time Protocol Version 4 Distribution. Unless specifically
+   declared otherwise in an individual file, this entire notice applies as
+   if the text was explicitly included in the file.
 ***********************************************************************
 *                                                                     *
 * Copyright (c) University of Delaware 1992-2015                      *
@@ -62,13 +61,13 @@ This file is automatically generated from html/copyrig
 ***********************************************************************
 
    The following individuals contributed in part to the Network Time
-   Protocol Distribution Version 4 and are acknowledged as authors of
-   this work.
+   Protocol Distribution Version 4 and are acknowledged as authors of this
+   work.
     1. [1]Takao Abe <takao_abe@xurb.jp> Clock driver for JJY receivers
     2. [2]Mark Andrews <mark_andrews@isc.org> Leitch atomic clock
        controller
-    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial
-       line and PCI-bus devices
+    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial line
+       and PCI-bus devices
     4. [4]Viraj Bais <vbais@mailman1.intel.com> and [5]Clayton Kirkwood
        <kirkwood@striderfm.intel.com> port to WindowsNT 3.5
     5. [6]Michael Barone <michael,barone@lmco.com> GPSVME fixes
@@ -84,13 +83,12 @@ This file is automatically generated from html/copyrig
        <Jean-Francois.Boudreault@viagenie.qc.ca> IPv6 support
    12. [13]Reg Clemens <reg@dwf.com> Oncore driver (Current maintainer)
    13. [14]Steve Clift <clift@ml.csiro.au> OMEGA clock driver
-   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and
-       help with target configuration
+   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and help
+       with target configuration
    15. [16]Sven Dietrich <sven_dietrich@trimble.com> Palisade reference
        clock driver, NT adj. residuals, integrated Greg's Winnt port.
    16. [17]John A. Dundas III <dundas@salt.jpl.nasa.gov> Apple A/UX port
-   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux
-       port
+   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux port
    18. [19]Dennis Ferguson <dennis@mrbill.canet.ca> foundation code for
        NTP Version 2 as specified in RFC-1119
    19. [20]John Hay <jhay@icomtek.csir.co.za> IPv6 support and testing
@@ -122,9 +120,8 @@ This file is automatically generated from html/copyrig
        code for Version 3 as specified in RFC-1305
    36. [39]Danny Mayer <mayer@ntp.org>Network I/O, Windows Port, Code
        Maintenance
-   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation,
-       precision kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19,
-       22, 36
+   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation, precision
+       kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19, 22, 36
    38. [41]Wolfgang Moeller <moeller@gwdgv1.dnet.gwdg.de> VMS port
    39. [42]Jeffrey Mogul <mogul@pa.dec.com> ntptrace utility
    40. [43]Tom Moore <tmoore@fievel.daytonoh.ncr.com> i386 svr4 port
@@ -136,22 +133,18 @@ This file is automatically generated from html/copyrig
    44. [48]Rainer Pruy <Rainer.Pruy@informatik.uni-erlangen.de>
        monitoring/trap scripts, statistics file handling
    45. [49]Dirce Richards <dirce@zk3.dec.com> Digital UNIX V4.0 port
-   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for
-       NetInfo
+   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for NetInfo
    47. [51]Nick Sayer <mrapple@quack.kfu.com> SunOS streams modules
    48. [52]Jack Sasportas <jack@innovativeinternet.com> Saved a Lot of
        space on the stuff in the html/pic/ subdirectory
    49. [53]Ray Schnitzler <schnitz@unipress.com> Unixware1 port
    50. [54]Michael Shields <shields@tembel.org> USNO clock driver
-   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock
-       driver
+   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock driver
    52. [56]Harlan Stenn <harlan@pfcs.com> GNU automake/autoconfigure
        makeover, various other bits (see the ChangeLog)
    53. [57]Kenneth Stone <ken@sdd.hp.com> HP-UX port
-   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast
-       support
-   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock
-       driver
+   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast support
+   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock driver
    56. [60]Brian Utterback <brian.utterback@oracle.com> General codebase,
        Solaris issues
    57. [61]Loganaden Velvindron <loganaden@gmail.com> Sandboxing
@@ -160,7 +153,7 @@ This file is automatically generated from html/copyrig
        TrueTime clock driver
    59. [63]Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de> corrected and
        validated HTML documents according to the HTML DTD
-     _________________________________________________________________
+     __________________________________________________________________
 
 References
 

Modified: vendor/ntp/dist/ChangeLog
==============================================================================
--- vendor/ntp/dist/ChangeLog	Thu Mar  7 13:00:31 2019	(r344877)
+++ vendor/ntp/dist/ChangeLog	Thu Mar  7 13:01:16 2019	(r344878)
@@ -1,4 +1,49 @@
 ---
+(4.2.8p13) 2019/03/07 Released by Harlan Stenn <stenn@ntp.org>
+
+* [Sec 3565] Crafted null dereference attack in authenticated
+	     mode 6 packet <perlinger@ntp.org>
+  - reported by Magnus Stubman
+* [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger@ntp.org>
+  - applied patch by Ian Lepore
+* [Bug 3558] Crash and integer size bug <perlinger@ntp.org>
+  - isolate and fix linux/windows specific code issue
+* [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger@ntp.org>
+  - provide better function for incremental string formatting
+* [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3554] config revoke stores incorrect value <perlinger@ntp.org>
+  - original finding by Gerry Garvey, additional cleanup needed
+* [Bug 3549] Spurious initgroups() error message <perlinger@ntp.org>
+  - patch by Christous Zoulas
+* [Bug 3548] Signature not verified on windows system <perlinger@ntp.org>
+  - finding by Chen Jiabin, plus another one by me
+* [Bug 3541] patch to fix STA_NANO struct timex units <perlinger@ntp.org>
+  - applied patch by Maciej Szmigiero
+* [Bug 3540] Cannot set minsane to 0 anymore <perlinger@ntp.org>
+  - applied patch by Andre Charbonneau
+* [Bug 3539] work_fork build fails when droproot is not supported <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3538] Build fails for no-MMU targets <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3535] libparse won't handle GPS week rollover <perlinger@ntp.org>
+  - refactored handling of GPS era based on 'tos basedate' for
+    parse (TSIP) and JUPITER clocks
+* [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger@ntp.org>
+  - patch by Daniel J. Luke; this does not fix a potential linker
+    regression issue on MacOS.
+* [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
+  anomaly <perlinger@ntp.org>, reported by GGarvey.
+  - --enable-bug3527-fix support by HStenn
+* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3471] Check for openssl/[ch]mac.h.  <perlinger@ntp.org>
+  - added missing check, reported by Reinhard Max <perlinger@ntp.org>
+* [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+  - this is a variant of [bug 3558] and should be fixed with it
+* Implement --disable-signalled-io
+
+---
 (4.2.8p12) 2018/08/14 Released by Harlan Stenn <stenn@ntp.org>
 
 * [Sec 3505] CVE-2018-12327 - Arbitrary Code Execution Vulnerability

Modified: vendor/ntp/dist/CommitLog
==============================================================================
--- vendor/ntp/dist/CommitLog	Thu Mar  7 13:00:31 2019	(r344877)
+++ vendor/ntp/dist/CommitLog	Thu Mar  7 13:01:16 2019	(r344878)
@@ -1,363 +1,6898 @@
-ChangeSet@1.3729, 2017-02-01 07:39:35-05:00, stenn@deacon.udel.edu
+ChangeSet@1.3849, 2019-02-20 17:13:36-08:00, harlan@ntp-build.tal1.ntfo.org
+  Update NEWS file
+
+  NEWS@1.200 +3 -0
+    Update NEWS file
+
+ChangeSet@1.3848, 2019-02-20 09:44:58-08:00, harlan@ntp-build.tal1.ntfo.org
+  build system cleanups
+
+  build@1.50 +1 -1
+    build system cleanups
+
+  scripts/build/check--help@1.4 +2 -2
+    build system cleanups
+
+  sntp/libopts/autoopts/options.h@1.31 +1 -1
+    build system cleanups
+
+  sntp/libopts/genshell.h@1.31 +1 -1
+    build system cleanups
+
+ChangeSet@1.3847, 2019-02-18 22:26:26-08:00, harlan@ntp-build.tal1.ntfo.org
+  ChangeLog and NEWS description cleanups
+
+  ChangeLog@1.1971 +4 -4
+    ChangeLog and NEWS description cleanups
+
+  NEWS@1.199 +4 -2
+    ChangeLog and NEWS description cleanups
+
+ChangeSet@1.3844.1.4, 2019-02-18 20:10:25-08:00, harlan@ntp-build.tal1.ntfo.org
+  NEWS file update
+
+  NEWS@1.198 +49 -2
+    NEWS file update
+
+ChangeSet@1.3844.1.3, 2019-02-16 07:36:50+00:00, stenn@stenn.ntp.org
+  Improve messages around signalled IO handling in configure
+
+  sntp/m4/ntp_libntp.m4@1.38 +5 -0
+    Improve messages around signalled IO handling in configure
+
+ChangeSet@1.3844.1.2, 2019-02-15 13:27:05+00:00, stenn@stenn.ntp.org
+  Implement --disable-signalled-io
+
+  ChangeLog@1.1968.1.2 +1 -0
+    Implement --disable-signalled-io
+
+  sntp/m4/ntp_libntp.m4@1.37 +22 -2
+    Implement --disable-signalled-io
+
+ChangeSet@1.3844.1.1, 2019-01-17 04:16:52+00:00, stenn@psp-deb1.ntp.org
+  Cleanup
+
+  ChangeLog@1.1968.1.1 +0 -1
+    Cleanup
+
+ChangeSet@1.3845, 2019-01-16 21:42:59+01:00, perlinger@ntp.org
+  [Sec 3565] null pointer crash by remote attack
+
+  ChangeLog@1.1969 +3 -0
+    [Sec 3565] null pointer crash by remote attack
+
+  ntpd/ntp_control.c@1.233 +17 -9
+    [Sec 3565] null pointer crash by remote attack
+
+ChangeSet@1.3827.1.2, 2018-12-15 13:25:25+00:00, stenn@psp-deb1.ntp.org
+  bug3527 fixes
+
+  ChangeLog@1.1952.1.2 +3 -3
+    bug3527 fixes
+
+  configure.ac@1.614.1.1 +18 -0
+    bug3527 fixes
+
+  ntpd/ntp_request.c@1.129 +7 -4
+    bug3527 fixes
+
+  ntpdc/ntpdc_ops.c@1.85 +8 -3
+    bug3527 fixes
+
+ChangeSet@1.3827.15.1, 2018-12-12 07:37:12+01:00, perlinger@ntp.org
+  [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  ChangeLog@1.1952.15.1 +4 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  libntp/work_fork.c@1.20.2.1 +2 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+ChangeSet@1.3827.14.1, 2018-12-11 07:42:01+01:00, perlinger@ntp.org
+  [Bug 3558] Crash and integer size bug
+  [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+   - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  ChangeLog@1.1952.14.1 +6 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  configure.ac@1.615 +1 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - search for BANCOMM SDK lib
+
+  ntpd/refclock_bancomm.c@1.17 +96 -23
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+ChangeSet@1.3827.11.2, 2018-12-05 06:58:13+01:00, perlinger@ntp.org
+  Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+   - stricter buffer range checks
+
+  libntp/xsbprintf.c@1.2 +11 -13
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/run-sbprintf.c@1.2 +8 -4
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/sbprintf.c@1.2 +28 -0
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+ChangeSet@1.3827.10.2, 2018-12-03 02:29:24-05:00, stenn@psp-fb1.ntp.org
+  Update Changelog for latest fix for 3471
+
+  ChangeLog@1.1952.10.2 +6 -1
+    Update Changelog for latest fix for 3471
+
+ChangeSet@1.3827.13.1, 2018-12-02 09:05:37+01:00, perlinger@ntp.org
+  [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ChangeLog@1.1952.13.1 +4 -0
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ntpdate/ntpdate.c@1.102 +12 -9
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+ChangeSet@1.3827.12.1, 2018-12-02 08:17:05+01:00, perlinger@ntp.org
+  [Bug 3554] config revoke stores incorrect value
+   - plus some additional cleanup
+
+  ChangeLog@1.1952.12.1 +4 -0
+    [Bug 3554] config revoke stores incorrect value
+
+  include/ntpd.h@1.204 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+
+  ntpd/ntp_config.c@1.365.2.1 +12 -3
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value for shift; clamp values
+
+  ntpd/ntp_crypto.c@1.190.1.1 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - avoid possible integer truncation
+
+  ntpd/ntp_timer.c@1.97 +4 -4
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+     - avoid possible integer truncation
+
+ChangeSet@1.3827.11.1, 2018-12-01 12:10:51+01:00, perlinger@ntp.org
+  [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+   - provide better function for incremental string formatting
+
+  ChangeLog@1.1952.11.1 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better function for incremental string formatting
+
+  include/ntp_stdlib.h@1.87 +3 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better API for incremental string formatting
+
+  libntp/Makefile.am@1.82 +1 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.1 +77 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - implement new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.0 +0 -0
+
+  ntpd/ntp_loopfilter.c@1.192 +18 -14
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - use new API for incremental string formatting
+
+  ports/winnt/vs2005/libntp.vcproj@1.27 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2008/libntp/libntp.vcproj@1.58 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj@1.14 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj.filters@1.12 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.4 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.4 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  tests/libntp/Makefile.am@1.100 +12 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.1 +72 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.0 +0 -0
+
+  tests/libntp/sbprintf.c@1.1 +67 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/sbprintf.c@1.0 +0 -0
+
+ChangeSet@1.3827.10.1, 2018-11-30 06:34:35+01:00, perlinger@ntp.org
+  [Bug 3471] Check for openssl/[ch]mac.h
+   - added missing check in code
+
+  ChangeLog@1.1952.10.1 +1 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+  libntp/authreadkeys.c@1.33 +2 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+ChangeSet@1.3827.9.1, 2018-11-11 12:03:14+01:00, perlinger@ntp.org
+  [Bug 3549] Spurious initgroups() error message
+
+  ChangeLog@1.1952.9.1 +4 -0
+    [Bug 3549] Spurious initgroups() error message
+
+  ntpd/ntpd.c@1.177.2.1 +33 -17
+    [Bug 3549] Spurious initgroups() error message
+     - make 'set_user_group_ids()' idempotent: If we're already there, don't complain.
+
+ChangeSet@1.3827.8.1, 2018-11-11 11:07:23+01:00, perlinger@ntp.org
+  [Bug 3548] Signature not verified on windows system
+
+  ChangeLog@1.1952.8.1 +4 -0
+    [Bug 3548] Signature not verified on windows system
+
+  ntpd/ntp_crypto.c@1.191 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+  sntp/networking.c@1.70 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+ChangeSet@1.3827.7.1, 2018-11-11 09:56:34+01:00, perlinger@ntp.org
+  [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ChangeLog@1.1952.7.1 +4 -0
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpd/ntp_control.c@1.232 +9 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpdc/ntpdc_ops.c@1.83.1.1 +7 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  util/ntptime.c@1.28 +0 -4
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+ChangeSet@1.3827.6.1, 2018-10-27 11:00:56+02:00, perlinger@ntp.org
+  [Bug 3540] Cannot set minsane to 0 anymore
+
+  ChangeLog@1.1952.6.1 +4 -0
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+  ntpd/ntp_config.c@1.365.1.1 +2 -2
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+ChangeSet@1.3827.5.1, 2018-10-27 10:33:55+02:00, perlinger@ntp.org
+  [Bug 3539] work_fork build fails when droproot is not supported
+
+  ChangeLog@1.1952.5.1 +4 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+  libntp/work_fork.c@1.20.1.1 +2 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+ChangeSet@1.3827.4.1, 2018-10-27 10:23:05+02:00, perlinger@ntp.org
+  [Bug 3538] Build fails for no-MMU targets
+
+  ChangeLog@1.1952.4.1 +4 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+  ntpd/ntpd.c@1.177.1.1 +2 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+ChangeSet@1.3827.3.1, 2018-10-13 08:03:48+02:00, perlinger@ntp.org
+  [Bug 3535] libparse won't handle GPS week rollover
+
+  ChangeLog@1.1952.3.1 +5 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  include/ntp_calendar.h@1.20 +21 -3
+    [Bug 3535] libparse won't handle GPS week rollover
+     - GPS week era support
+
+  include/parse.h@1.15 +0 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+     - remove GPSWRAP definition to avoid lurking uses
+
+  libntp/calyearstart.c@1.7 +1 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  libntp/ntp_calendar.c@1.21 +38 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set GPS base week as first Sunday on or after base date
+
+  libparse/clk_trimtsip.c@1.15 +5 -9
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+  libparse/gpstolfp.c@1.14 +0 -5
+    [Bug 3535] libparse won't handle GPS week rollover
+     - don't try to expand weeks in the conversion
+
+  ntpd/ntp_config.c@1.366 +4 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set basedate based on build stamp if not set explicitely
+
+  ntpd/refclock_jupiter.c@1.32 +1 -56
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code instead of local copy
+
+  ntpd/refclock_parse.c@1.87 +1 -2
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+ChangeSet@1.3827.2.1, 2018-10-02 18:03:33+02:00, perlinger@ntp.org
+  [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  ChangeLog@1.1952.2.1 +5 -0
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  libntp/work_fork.c@1.21 +6 -3
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+     - make existence of 'set_user_group_ids()' depend on HAVE_DROPROOT
+
+ChangeSet@1.3827.1.1, 2018-10-02 17:38:18+02:00, perlinger@ntp.org
+  [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ChangeLog@1.1952.1.1 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpd/ntp_request.c@1.128 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpdc/ntpdc_ops.c@1.84 +4 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+ChangeSet@1.3828, 2018-09-12 22:52:00+02:00, perlinger@ntp.org
+  [Bug 3526] Incorrect poll interval in packet
+
+  ChangeLog@1.1953 +4 -0
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntp_proto.c@1.423 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntpd.c@1.178 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+  sntp/main.c@1.104 +2 -3
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+ChangeSet@1.3827, 2018-08-14 08:31:08-04:00, stenn@deacon.udel.edu
+  NTP_4_2_8P12
+  TAG: NTP_4_2_8P12
+
+  ChangeLog@1.1952 +1 -0
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.conf.texi@1.217 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.keys.texi@1.202 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntpd.texi@1.516 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5man@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5mdoc@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.html@1.200 +92 -105
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.man.in@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.mdoc.in@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5man@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5mdoc@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.html@1.199 +17 -29
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.man.in@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.mdoc.in@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.c@1.538 +7 -7
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.h@1.537 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdman@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdmdoc@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntpd.html@1.191 +101 -145
+    NTP_4_2_8P12
+
+  ntpd/ntpd.man.in@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.mdoc.in@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/invoke-ntpdc.texi@1.513 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.c@1.531 +7 -7
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.h@1.530 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.html@1.359 +57 -77
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/invoke-ntpq.texi@1.523 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.c@1.540 +7 -7
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.h@1.538 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqman@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqmdoc@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq.html@1.190 +105 -129
+    NTP_4_2_8P12
+
+  ntpq/ntpq.man.in@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.mdoc.in@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/invoke-ntpsnmpd.texi@1.515 +1 -1
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.c@1.533 +7 -7
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.html@1.185 +10 -14
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  packageinfo.sh@1.542 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjman@1.105 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.html@1.106 +1 -1
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.man.in@1.104 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.mdoc.in@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/invoke-calc_tickadj.texi@1.109 +1 -1
+    NTP_4_2_8P12
+
+  scripts/invoke-plot_summary.texi@1.127 +2 -2
+    NTP_4_2_8P12
+
+  scripts/invoke-summary.texi@1.126 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/invoke-ntp-wait.texi@1.336 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait-opts@1.72 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitman@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitmdoc@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.html@1.355 +31 -49
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.man.in@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/invoke-ntpsweep.texi@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepmdoc@1.112 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.html@1.127 +33 -44
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.mdoc.in@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/invoke-ntptrace.texi@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptraceman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptracemdoc@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.html@1.128 +27 -36
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.mdoc.in@1.114 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary-opts@1.75 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summaryman@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summarymdoc@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.html@1.130 +29 -47
+    NTP_4_2_8P12
+
+  scripts/plot_summary.man.in@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.mdoc.in@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.1summaryman@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.1summarymdoc@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.html@1.129 +27 -39
+    NTP_4_2_8P12
+
+  scripts/summary.man.in@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.mdoc.in@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/invoke-update-leap.texi@1.25 +1 -1
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap-opts@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapman@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapmdoc@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.html@1.27 +35 -59
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.man.in@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.mdoc.in@1.25 +2 -2
+    NTP_4_2_8P12
+
+  sntp/invoke-sntp.texi@1.515 +23 -27
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.c@1.534 +7 -7
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpman@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpmdoc@1.350 +2 -2
+    NTP_4_2_8P12
+
+  sntp/sntp.html@1.531 +106 -134
+    NTP_4_2_8P12
+
+  sntp/sntp.man.in@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.mdoc.in@1.350 +2 -2
+    NTP_4_2_8P12
+
+  util/invoke-ntp-keygen.texi@1.518 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.c@1.536 +7 -7
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.h@1.534 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenman@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenmdoc@1.346 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen.html@1.191 +148 -206
+    NTP_4_2_8P12
+
+  util/ntp-keygen.man.in@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.mdoc.in@1.346 +2 -2
+    NTP_4_2_8P12
+
+ChangeSet@1.3826, 2018-08-14 07:16:23-04:00, stenn@deacon.udel.edu
+  Trigger the release of ntp-4.2.8p12
+
+  packageinfo.sh@1.541 +1 -1
+    Trigger the release of ntp-4.2.8p12
+
+ChangeSet@1.3825, 2018-08-13 04:31:37+00:00, stenn@psp-deb1.ntp.org
+  NEWS update
+
+  NEWS@1.197 +1 -1
+    NEWS update
+
+ChangeSet@1.3812.1.10, 2018-08-04 10:31:58+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ChangeLog@1.1942.1.9 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  NEWS@1.192.1.2 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ntpd/ntp_proto.c@1.422 +46 -35
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+ChangeSet@1.3823, 2018-07-28 05:03:57+00:00, stenn@psp-deb1.ntp.org
+  3505 description updates
+
+  ChangeLog@1.1950 +2 -1
+    3505 description updates
+
+  NEWS@1.195 +2 -2
+    3505 description updates
+
+ChangeSet@1.3812.1.9, 2018-07-25 09:56:39+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ChangeLog@1.1942.1.8 +1 -0
+    updates
+
+  NEWS@1.192.1.1 +2 -2
+    updates
+
+  html/authentic.html@1.18 +219 -87
+    updates
+
+ChangeSet@1.3821, 2018-07-25 07:41:01+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ntpd/ntp.conf.html@1.199 +104 -91
+    updates
+
+  ntpd/ntp.keys.html@1.198 +28 -16
+    updates
+
+  ntpd/ntpd.html@1.190 +145 -101
+    updates
+
+  ntpdc/ntpdc.html@1.358 +75 -55
+    updates
+
+  ntpsnmpd/ntpsnmpd.html@1.184 +13 -9
+    updates
+
+  scripts/ntp-wait/ntp-wait.html@1.354 +47 -29
+    updates
+
+  scripts/ntpsweep/ntpsweep.html@1.126 +42 -31
+    updates
+
+  scripts/ntptrace/ntptrace.html@1.127 +34 -25
+    updates
+
+  scripts/plot_summary.html@1.129 +45 -27
+    updates
+
+  scripts/summary.html@1.128 +37 -25
+    updates
+
+  scripts/update-leap/update-leap.html@1.26 +132 -34
+    updates
+
+  sntp/sntp.html@1.530 +107 -83
+    updates
+
+ChangeSet@1.3820, 2018-07-25 07:38:42+00:00, stenn@psp-deb1.ntp.org
+  Bug 3509 tweaks
+
+  NEWS@1.193 +6 -1
+    Bug 3509 tweaks
+
+  sntp/m4/ntp_libntp.m4@1.36 +1 -1
+    Bug 3509 tweaks
+
+ChangeSet@1.3816.1.1, 2018-07-25 07:08:13+02:00, perlinger@ntp.org
+  [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ChangeLog@1.1946.1.1 +3 -0
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ntpd/ntpd.c@1.177 +20 -2
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  sntp/m4/ntp_libntp.m4@1.35 +22 -1
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+ChangeSet@1.3812.1.8, 2018-07-24 09:16:25+00:00, stenn@psp-deb1.ntp.org
+  Symmetric key range is 1-65535.  Update docs.
+
+  html/authentic.html@1.17 +3 -3
+    Symmetric key range is 1-65535.  Update docs.
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:07:11 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B4FA5152EA12;
 Thu,  7 Mar 2019 13:07:11 +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)
 server-signature RSA-PSS (4096 bits)
 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 52EAB83F72;
 Thu,  7 Mar 2019 13:07:11 +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 2D4C91C0E4;
 Thu,  7 Mar 2019 13:07:11 +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 x27D7BEE007345;
 Thu, 7 Mar 2019 13:07:11 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27D7B5d007344;
 Thu, 7 Mar 2019 13:07:11 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071307.x27D7B5d007344@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:07:11 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344879 - vendor/ntp/4.2.8p13
X-SVN-Group: vendor
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: vendor/ntp/4.2.8p13
X-SVN-Commit-Revision: 344879
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 52EAB83F72
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.955,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:07:11 -0000

Author: cy
Date: Thu Mar  7 13:07:10 2019
New Revision: 344879
URL: https://svnweb.freebsd.org/changeset/base/344879

Log:
  Tag ntp-4.2.8p13.

Added:
  vendor/ntp/4.2.8p13/
     - copied from r344878, vendor/ntp/dist/

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:10:35 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 126D5152EBE9;
 Thu,  7 Mar 2019 13:10:35 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 A731784402;
 Thu,  7 Mar 2019 13:10:34 +0000 (UTC) (envelope-from dab@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 9C5201C0F4;
 Thu,  7 Mar 2019 13:10:34 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27DAYN0007819;
 Thu, 7 Mar 2019 13:10:34 GMT (envelope-from dab@FreeBSD.org)
Received: (from dab@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DAY87007817;
 Thu, 7 Mar 2019 13:10:34 GMT (envelope-from dab@FreeBSD.org)
Message-Id: <201903071310.x27DAY87007817@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org
 using -f
From: David Bright <dab@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:10:34 +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: r344880 - stable/12/usr.sbin/newsyslog
X-SVN-Group: stable-12
X-SVN-Commit-Author: dab
X-SVN-Commit-Paths: stable/12/usr.sbin/newsyslog
X-SVN-Commit-Revision: 344880
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A731784402
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:10:35 -0000

Author: dab
Date: Thu Mar  7 13:10:34 2019
New Revision: 344880
URL: https://svnweb.freebsd.org/changeset/base/344880

Log:
  MFC r344470:
  
  Fix several Coverity-detected issues in newsyslog.
  
  - CID 1394815, CID 1305673: Dereference before null check - memory was
    allocated and the allocation checked for NULL with a call to errx()
    if it failed. Code below that was guaranteed that the pointer was
    non-NULL, but there was another check for NULL at the exit of the
    function (after the memory had already been referenced). Eliminate
    the useless NULL check.
  
  - CID 1007452: Resource leak - Storage intended to be allocated and
    returned to the caller was never freed. This was the result of a
    regression in the function signature introduced in r208648 (2010)
    (thanks for that find, @cem!). Fixed by altering the function
    signature and passing the allocated memory to the caller as
    intended. This also fixes PR158794.
  
  - CID 1008620: Logically dead code in newsyslog.c - This was a direct
    result of CID 1007452. Since the memory allocated as described there
    was not returned to the caller, a subsequent check for the memory
    having been allocated was dead code. Returning the memory
    re-animates the code that is the subject of this CID.
  
  - CID 1006131: Unused value - in parsing a configuration file, a
    pointer to the end of the last field was saved, but not used after
    that. Rewrite to use the pointer value. This could have been fixed
    by avoiding the assignment altogether, but this solutions more
    closely follows the pattern used in the preceding code.
  
  PR:             158794
  Reported by:    Coverity, Ken-ichi EZURA <k.ezura@gmail.com> (PR158794)
  
  Sponsored by:	Dell EMC Isilon

Modified:
  stable/12/usr.sbin/newsyslog/newsyslog.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.sbin/newsyslog/newsyslog.c
==============================================================================
--- stable/12/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:07:10 2019	(r344879)
+++ stable/12/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:10:34 2019	(r344880)
@@ -253,7 +253,7 @@ static const char *path_syslogpid = _PATH_SYSLOGPID;
 
 static struct cflist *get_worklist(char **files);
 static void parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-		    struct conf_entry *defconf_p, struct ilist *inclist);
+		    struct conf_entry **defconf, struct ilist *inclist);
 static void add_to_queue(const char *fname, struct ilist *inclist);
 static char *sob(char *p);
 static char *son(char *p);
@@ -841,7 +841,7 @@ get_worklist(char **files)
 
 		if (verbose)
 			printf("Processing %s\n", inc->file);
-		parse_file(f, filelist, globlist, defconf, &inclist);
+		parse_file(f, filelist, globlist, &defconf, &inclist);
 		(void) fclose(f);
 	}
 
@@ -858,7 +858,6 @@ get_worklist(char **files)
 		if (defconf != NULL)
 			free_entry(defconf);
 		return (filelist);
-		/* NOTREACHED */
 	}
 
 	/*
@@ -915,7 +914,7 @@ get_worklist(char **files)
 		 * for a "glob" entry which does match.
 		 */
 		gmatch = 0;
-		if (verbose > 2 && globlist != NULL)
+		if (verbose > 2)
 			printf("\t+ Checking globs for %s\n", *given);
 		STAILQ_FOREACH(ent, globlist, cf_nextp) {
 			fnres = fnmatch(ent->log, *given, FNM_PATHNAME);
@@ -1046,7 +1045,7 @@ expand_globs(struct cflist *work_p, struct cflist *glo
  */
 static void
 parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-    struct conf_entry *defconf_p, struct ilist *inclist)
+    struct conf_entry **defconf_p, struct ilist *inclist)
 {
 	char line[BUFSIZ], *parse, *q;
 	char *cp, *errline, *group;
@@ -1137,12 +1136,12 @@ parse_file(FILE *cf, struct cflist *work_p, struct cfl
 		working = init_entry(q, NULL);
 		if (strcasecmp(DEFAULT_MARKER, q) == 0) {
 			special = 1;
-			if (defconf_p != NULL) {
+			if (*defconf_p != NULL) {
 				warnx("Ignoring duplicate entry for %s!", q);
 				free_entry(working);
 				continue;
 			}
-			defconf_p = working;
+			*defconf_p = working;
 		}
 
 		q = parse = missing_field(sob(parse + 1), errline);
@@ -1357,7 +1356,8 @@ no_trimat:
 			q = NULL;
 		else {
 			q = parse = sob(parse + 1);	/* Optional field */
-			*(parse = son(parse)) = '\0';
+			parse = son(parse);
+			*parse = '\0';
 		}
 
 		working->sig = SIGHUP;
@@ -2010,7 +2010,6 @@ do_zipwork(struct zipwork_entry *zwork)
 	const char **args, *pgm_name, *pgm_path;
 	char *zresult;
 
-	command = NULL;
 	assert(zwork != NULL);
 	assert(zwork->zw_conf != NULL);
 	assert(zwork->zw_conf->compress > COMPRESS_NONE);
@@ -2114,8 +2113,7 @@ do_zipwork(struct zipwork_entry *zwork)
 	change_attrs(zresult, zwork->zw_conf);
 
 out:
-	if (command != NULL)
-		sbuf_delete(command);
+	sbuf_delete(command);
 	free(args);
 	free(zresult);
 }

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:10:49 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C595E152EC27;
 Thu,  7 Mar 2019 13:10:49 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6D9888453F;
 Thu,  7 Mar 2019 13:10:49 +0000 (UTC) (envelope-from dab@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 49B021C10D;
 Thu,  7 Mar 2019 13:10:49 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27DAnKO007893;
 Thu, 7 Mar 2019 13:10:49 GMT (envelope-from dab@FreeBSD.org)
Received: (from dab@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DAnd2007892;
 Thu, 7 Mar 2019 13:10:49 GMT (envelope-from dab@FreeBSD.org)
Message-Id: <201903071310.x27DAnd2007892@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org
 using -f
From: David Bright <dab@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:10:49 +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: r344881 - stable/11/usr.sbin/newsyslog
X-SVN-Group: stable-11
X-SVN-Commit-Author: dab
X-SVN-Commit-Paths: stable/11/usr.sbin/newsyslog
X-SVN-Commit-Revision: 344881
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6D9888453F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:10:50 -0000

Author: dab
Date: Thu Mar  7 13:10:48 2019
New Revision: 344881
URL: https://svnweb.freebsd.org/changeset/base/344881

Log:
  MFC r344470:
  
  Fix several Coverity-detected issues in newsyslog.
  
  - CID 1394815, CID 1305673: Dereference before null check - memory was
    allocated and the allocation checked for NULL with a call to errx()
    if it failed. Code below that was guaranteed that the pointer was
    non-NULL, but there was another check for NULL at the exit of the
    function (after the memory had already been referenced). Eliminate
    the useless NULL check.
  
  - CID 1007452: Resource leak - Storage intended to be allocated and
    returned to the caller was never freed. This was the result of a
    regression in the function signature introduced in r208648 (2010)
    (thanks for that find, @cem!). Fixed by altering the function
    signature and passing the allocated memory to the caller as
    intended. This also fixes PR158794.
  
  - CID 1008620: Logically dead code in newsyslog.c - This was a direct
    result of CID 1007452. Since the memory allocated as described there
    was not returned to the caller, a subsequent check for the memory
    having been allocated was dead code. Returning the memory
    re-animates the code that is the subject of this CID.
  
  - CID 1006131: Unused value - in parsing a configuration file, a
    pointer to the end of the last field was saved, but not used after
    that. Rewrite to use the pointer value. This could have been fixed
    by avoiding the assignment altogether, but this solutions more
    closely follows the pattern used in the preceding code.
  
  PR:             158794
  Reported by:    Coverity, Ken-ichi EZURA <k.ezura@gmail.com> (PR158794)
  
  Sponsored by:	Dell EMC Isilon

Modified:
  stable/11/usr.sbin/newsyslog/newsyslog.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/usr.sbin/newsyslog/newsyslog.c
==============================================================================
--- stable/11/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:10:34 2019	(r344880)
+++ stable/11/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:10:48 2019	(r344881)
@@ -260,7 +260,7 @@ static const char *path_syslogpid = _PATH_SYSLOGPID;
 
 static struct cflist *get_worklist(char **files);
 static void parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-		    struct conf_entry *defconf_p, struct ilist *inclist);
+		    struct conf_entry **defconf, struct ilist *inclist);
 static void add_to_queue(const char *fname, struct ilist *inclist);
 static char *sob(char *p);
 static char *son(char *p);
@@ -848,7 +848,7 @@ get_worklist(char **files)
 
 		if (verbose)
 			printf("Processing %s\n", inc->file);
-		parse_file(f, filelist, globlist, defconf, &inclist);
+		parse_file(f, filelist, globlist, &defconf, &inclist);
 		(void) fclose(f);
 	}
 
@@ -865,7 +865,6 @@ get_worklist(char **files)
 		if (defconf != NULL)
 			free_entry(defconf);
 		return (filelist);
-		/* NOTREACHED */
 	}
 
 	/*
@@ -922,7 +921,7 @@ get_worklist(char **files)
 		 * for a "glob" entry which does match.
 		 */
 		gmatch = 0;
-		if (verbose > 2 && globlist != NULL)
+		if (verbose > 2)
 			printf("\t+ Checking globs for %s\n", *given);
 		STAILQ_FOREACH(ent, globlist, cf_nextp) {
 			fnres = fnmatch(ent->log, *given, FNM_PATHNAME);
@@ -1053,7 +1052,7 @@ expand_globs(struct cflist *work_p, struct cflist *glo
  */
 static void
 parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-    struct conf_entry *defconf_p, struct ilist *inclist)
+    struct conf_entry **defconf_p, struct ilist *inclist)
 {
 	char line[BUFSIZ], *parse, *q;
 	char *cp, *errline, *group;
@@ -1144,12 +1143,12 @@ parse_file(FILE *cf, struct cflist *work_p, struct cfl
 		working = init_entry(q, NULL);
 		if (strcasecmp(DEFAULT_MARKER, q) == 0) {
 			special = 1;
-			if (defconf_p != NULL) {
+			if (*defconf_p != NULL) {
 				warnx("Ignoring duplicate entry for %s!", q);
 				free_entry(working);
 				continue;
 			}
-			defconf_p = working;
+			*defconf_p = working;
 		}
 
 		q = parse = missing_field(sob(parse + 1), errline);
@@ -1355,7 +1354,8 @@ no_trimat:
 			q = NULL;
 		else {
 			q = parse = sob(parse + 1);	/* Optional field */
-			*(parse = son(parse)) = '\0';
+			parse = son(parse);
+			*parse = '\0';
 		}
 
 		working->sig = SIGHUP;

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:11:03 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3741F152EC7A;
 Thu,  7 Mar 2019 13:11:03 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CF3E58479C;
 Thu,  7 Mar 2019 13:11:02 +0000 (UTC) (envelope-from dab@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 5C0AF1C129;
 Thu,  7 Mar 2019 13:11:01 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27DB18Z010233;
 Thu, 7 Mar 2019 13:11:01 GMT (envelope-from dab@FreeBSD.org)
Received: (from dab@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DB10I010232;
 Thu, 7 Mar 2019 13:11:01 GMT (envelope-from dab@FreeBSD.org)
Message-Id: <201903071311.x27DB10I010232@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org
 using -f
From: David Bright <dab@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:11:01 +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: r344882 - stable/10/usr.sbin/newsyslog
X-SVN-Group: stable-10
X-SVN-Commit-Author: dab
X-SVN-Commit-Paths: stable/10/usr.sbin/newsyslog
X-SVN-Commit-Revision: 344882
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CF3E58479C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:11:03 -0000

Author: dab
Date: Thu Mar  7 13:11:00 2019
New Revision: 344882
URL: https://svnweb.freebsd.org/changeset/base/344882

Log:
  MFC r344470:
  
  Fix several Coverity-detected issues in newsyslog.
  
  - CID 1394815, CID 1305673: Dereference before null check - memory was
    allocated and the allocation checked for NULL with a call to errx()
    if it failed. Code below that was guaranteed that the pointer was
    non-NULL, but there was another check for NULL at the exit of the
    function (after the memory had already been referenced). Eliminate
    the useless NULL check.
  
  - CID 1007452: Resource leak - Storage intended to be allocated and
    returned to the caller was never freed. This was the result of a
    regression in the function signature introduced in r208648 (2010)
    (thanks for that find, @cem!). Fixed by altering the function
    signature and passing the allocated memory to the caller as
    intended. This also fixes PR158794.
  
  - CID 1008620: Logically dead code in newsyslog.c - This was a direct
    result of CID 1007452. Since the memory allocated as described there
    was not returned to the caller, a subsequent check for the memory
    having been allocated was dead code. Returning the memory
    re-animates the code that is the subject of this CID.
  
  - CID 1006131: Unused value - in parsing a configuration file, a
    pointer to the end of the last field was saved, but not used after
    that. Rewrite to use the pointer value. This could have been fixed
    by avoiding the assignment altogether, but this solutions more
    closely follows the pattern used in the preceding code.
  
  PR:             158794
  Reported by:    Coverity, Ken-ichi EZURA <k.ezura@gmail.com> (PR158794)
  
  Sponsored by:	Dell EMC Isilon

Modified:
  stable/10/usr.sbin/newsyslog/newsyslog.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/usr.sbin/newsyslog/newsyslog.c
==============================================================================
--- stable/10/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:10:48 2019	(r344881)
+++ stable/10/usr.sbin/newsyslog/newsyslog.c	Thu Mar  7 13:11:00 2019	(r344882)
@@ -259,7 +259,7 @@ static const char *path_syslogpid = _PATH_SYSLOGPID;
 
 static struct cflist *get_worklist(char **files);
 static void parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-		    struct conf_entry *defconf_p, struct ilist *inclist);
+		    struct conf_entry **defconf, struct ilist *inclist);
 static void add_to_queue(const char *fname, struct ilist *inclist);
 static char *sob(char *p);
 static char *son(char *p);
@@ -850,7 +850,7 @@ get_worklist(char **files)
 
 		if (verbose)
 			printf("Processing %s\n", inc->file);
-		parse_file(f, filelist, globlist, defconf, &inclist);
+		parse_file(f, filelist, globlist, &defconf, &inclist);
 		(void) fclose(f);
 	}
 
@@ -867,7 +867,6 @@ get_worklist(char **files)
 		if (defconf != NULL)
 			free_entry(defconf);
 		return (filelist);
-		/* NOTREACHED */
 	}
 
 	/*
@@ -924,7 +923,7 @@ get_worklist(char **files)
 		 * for a "glob" entry which does match.
 		 */
 		gmatch = 0;
-		if (verbose > 2 && globlist != NULL)
+		if (verbose > 2)
 			printf("\t+ Checking globs for %s\n", *given);
 		STAILQ_FOREACH(ent, globlist, cf_nextp) {
 			fnres = fnmatch(ent->log, *given, FNM_PATHNAME);
@@ -1055,7 +1054,7 @@ expand_globs(struct cflist *work_p, struct cflist *glo
  */
 static void
 parse_file(FILE *cf, struct cflist *work_p, struct cflist *glob_p,
-    struct conf_entry *defconf_p, struct ilist *inclist)
+    struct conf_entry **defconf_p, struct ilist *inclist)
 {
 	char line[BUFSIZ], *parse, *q;
 	char *cp, *errline, *group;
@@ -1146,12 +1145,12 @@ parse_file(FILE *cf, struct cflist *work_p, struct cfl
 		working = init_entry(q, NULL);
 		if (strcasecmp(DEFAULT_MARKER, q) == 0) {
 			special = 1;
-			if (defconf_p != NULL) {
+			if (*defconf_p != NULL) {
 				warnx("Ignoring duplicate entry for %s!", q);
 				free_entry(working);
 				continue;
 			}
-			defconf_p = working;
+			*defconf_p = working;
 		}
 
 		q = parse = missing_field(sob(parse + 1), errline);
@@ -1369,7 +1368,8 @@ no_trimat:
 			q = NULL;
 		else {
 			q = parse = sob(parse + 1);	/* Optional field */
-			*(parse = son(parse)) = '\0';
+			parse = son(parse);
+			*parse = '\0';
 		}
 
 		working->sig = SIGHUP;

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:38:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58335152F9D1;
 Thu,  7 Mar 2019 13:38:22 +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)
 server-signature RSA-PSS (4096 bits)
 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 DF39F85D52;
 Thu,  7 Mar 2019 13:38:21 +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 CE8A21C61E;
 Thu,  7 Mar 2019 13:38:21 +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 x27DcL5E024694;
 Thu, 7 Mar 2019 13:38:21 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27Da1FS024490;
 Thu, 7 Mar 2019 13:36:01 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071336.x27Da1FS024490@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:36:01 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344883 - in head: contrib/ntp contrib/ntp/adjtimed
 contrib/ntp/clockstuff contrib/ntp/include contrib/ntp/include/isc
 contrib/ntp/kernel contrib/ntp/kernel/sys contrib/ntp/libntp contr...
X-SVN-Group: head
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in head: contrib/ntp contrib/ntp/adjtimed
 contrib/ntp/clockstuff contrib/ntp/include contrib/ntp/include/isc
 contrib/ntp/kernel contrib/ntp/kernel/sys contrib/ntp/libntp
 contrib/ntp/libparse contrib/n...
X-SVN-Commit-Revision: 344883
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DF39F85D52
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:38:22 -0000

Author: cy
Date: Thu Mar  7 13:36:00 2019
New Revision: 344883
URL: https://svnweb.freebsd.org/changeset/base/344883

Log:
  MFV r344878:
  
  4.2.8p12 --> 4.2.8p13
  
  MFC after:	immediately
  Security:	CVE-2019-8936
  		VuXML: c2576e14-36e2-11e9-9eda-206a8a720317
  Obtained from:	nwtime.org

Added:
  head/contrib/ntp/libntp/xsbprintf.c
     - copied unchanged from r344878, vendor/ntp/dist/libntp/xsbprintf.c
Modified:
  head/contrib/ntp/COPYRIGHT
  head/contrib/ntp/ChangeLog
  head/contrib/ntp/CommitLog
  head/contrib/ntp/Makefile.in
  head/contrib/ntp/NEWS
  head/contrib/ntp/aclocal.m4
  head/contrib/ntp/adjtimed/Makefile.in
  head/contrib/ntp/build
  head/contrib/ntp/clockstuff/Makefile.in
  head/contrib/ntp/config.h.in
  head/contrib/ntp/configure
  head/contrib/ntp/configure.ac
  head/contrib/ntp/include/Makefile.in
  head/contrib/ntp/include/isc/Makefile.in
  head/contrib/ntp/include/ntp_calendar.h
  head/contrib/ntp/include/ntp_stdlib.h
  head/contrib/ntp/include/ntpd.h
  head/contrib/ntp/include/parse.h
  head/contrib/ntp/kernel/Makefile.in
  head/contrib/ntp/kernel/sys/Makefile.in
  head/contrib/ntp/libntp/Makefile.am
  head/contrib/ntp/libntp/Makefile.in
  head/contrib/ntp/libntp/authreadkeys.c
  head/contrib/ntp/libntp/calyearstart.c
  head/contrib/ntp/libntp/ntp_calendar.c
  head/contrib/ntp/libntp/work_fork.c
  head/contrib/ntp/libparse/Makefile.in
  head/contrib/ntp/libparse/clk_trimtsip.c
  head/contrib/ntp/libparse/gpstolfp.c
  head/contrib/ntp/ntpd/Makefile.in
  head/contrib/ntp/ntpd/invoke-ntp.conf.texi
  head/contrib/ntp/ntpd/invoke-ntp.keys.texi
  head/contrib/ntp/ntpd/invoke-ntpd.texi
  head/contrib/ntp/ntpd/ntp.conf.5man
  head/contrib/ntp/ntpd/ntp.conf.5mdoc
  head/contrib/ntp/ntpd/ntp.conf.html
  head/contrib/ntp/ntpd/ntp.conf.man.in
  head/contrib/ntp/ntpd/ntp.conf.mdoc.in
  head/contrib/ntp/ntpd/ntp.keys.5man
  head/contrib/ntp/ntpd/ntp.keys.5mdoc
  head/contrib/ntp/ntpd/ntp.keys.html
  head/contrib/ntp/ntpd/ntp.keys.man.in
  head/contrib/ntp/ntpd/ntp.keys.mdoc.in
  head/contrib/ntp/ntpd/ntp_config.c
  head/contrib/ntp/ntpd/ntp_control.c
  head/contrib/ntp/ntpd/ntp_crypto.c
  head/contrib/ntp/ntpd/ntp_loopfilter.c
  head/contrib/ntp/ntpd/ntp_proto.c
  head/contrib/ntp/ntpd/ntp_request.c
  head/contrib/ntp/ntpd/ntp_timer.c
  head/contrib/ntp/ntpd/ntpd-opts.c
  head/contrib/ntp/ntpd/ntpd-opts.h
  head/contrib/ntp/ntpd/ntpd.1ntpdman
  head/contrib/ntp/ntpd/ntpd.1ntpdmdoc
  head/contrib/ntp/ntpd/ntpd.c
  head/contrib/ntp/ntpd/ntpd.html
  head/contrib/ntp/ntpd/ntpd.man.in
  head/contrib/ntp/ntpd/ntpd.mdoc.in
  head/contrib/ntp/ntpd/refclock_bancomm.c
  head/contrib/ntp/ntpd/refclock_jupiter.c
  head/contrib/ntp/ntpd/refclock_parse.c
  head/contrib/ntp/ntpdate/Makefile.in
  head/contrib/ntp/ntpdate/ntpdate.c
  head/contrib/ntp/ntpdc/Makefile.in
  head/contrib/ntp/ntpdc/invoke-ntpdc.texi
  head/contrib/ntp/ntpdc/nl.pl
  head/contrib/ntp/ntpdc/ntpdc-opts.c
  head/contrib/ntp/ntpdc/ntpdc-opts.h
  head/contrib/ntp/ntpdc/ntpdc.1ntpdcman
  head/contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
  head/contrib/ntp/ntpdc/ntpdc.html
  head/contrib/ntp/ntpdc/ntpdc.man.in
  head/contrib/ntp/ntpdc/ntpdc.mdoc.in
  head/contrib/ntp/ntpdc/ntpdc_ops.c
  head/contrib/ntp/ntpq/Makefile.in
  head/contrib/ntp/ntpq/invoke-ntpq.texi
  head/contrib/ntp/ntpq/ntpq-opts.c
  head/contrib/ntp/ntpq/ntpq-opts.h
  head/contrib/ntp/ntpq/ntpq.1ntpqman
  head/contrib/ntp/ntpq/ntpq.1ntpqmdoc
  head/contrib/ntp/ntpq/ntpq.html
  head/contrib/ntp/ntpq/ntpq.man.in
  head/contrib/ntp/ntpq/ntpq.mdoc.in
  head/contrib/ntp/ntpsnmpd/Makefile.in
  head/contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
  head/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
  head/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
  head/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  head/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  head/contrib/ntp/ntpsnmpd/ntpsnmpd.html
  head/contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
  head/contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
  head/contrib/ntp/packageinfo.sh
  head/contrib/ntp/parseutil/Makefile.in
  head/contrib/ntp/scripts/Makefile.in
  head/contrib/ntp/scripts/build/Makefile.in
  head/contrib/ntp/scripts/build/check--help
  head/contrib/ntp/scripts/calc_tickadj/Makefile.in
  head/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  head/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  head/contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
  head/contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
  head/contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
  head/contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
  head/contrib/ntp/scripts/invoke-plot_summary.texi
  head/contrib/ntp/scripts/invoke-summary.texi
  head/contrib/ntp/scripts/lib/Makefile.in
  head/contrib/ntp/scripts/ntp-wait/Makefile.in
  head/contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
  head/contrib/ntp/scripts/ntp-wait/ntp-wait-opts
  head/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
  head/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  head/contrib/ntp/scripts/ntp-wait/ntp-wait.html
  head/contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
  head/contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
  head/contrib/ntp/scripts/ntpsweep/Makefile.in
  head/contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
  head/contrib/ntp/scripts/ntpsweep/ntpsweep-opts
  head/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
  head/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  head/contrib/ntp/scripts/ntpsweep/ntpsweep.html
  head/contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
  head/contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
  head/contrib/ntp/scripts/ntptrace/Makefile.in
  head/contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
  head/contrib/ntp/scripts/ntptrace/ntptrace-opts
  head/contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
  head/contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
  head/contrib/ntp/scripts/ntptrace/ntptrace.html
  head/contrib/ntp/scripts/ntptrace/ntptrace.man.in
  head/contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
  head/contrib/ntp/scripts/plot_summary-opts
  head/contrib/ntp/scripts/plot_summary.1plot_summaryman
  head/contrib/ntp/scripts/plot_summary.1plot_summarymdoc
  head/contrib/ntp/scripts/plot_summary.html
  head/contrib/ntp/scripts/plot_summary.man.in
  head/contrib/ntp/scripts/plot_summary.mdoc.in
  head/contrib/ntp/scripts/summary-opts
  head/contrib/ntp/scripts/summary.1summaryman
  head/contrib/ntp/scripts/summary.1summarymdoc
  head/contrib/ntp/scripts/summary.html
  head/contrib/ntp/scripts/summary.man.in
  head/contrib/ntp/scripts/summary.mdoc.in
  head/contrib/ntp/scripts/update-leap/Makefile.in
  head/contrib/ntp/scripts/update-leap/invoke-update-leap.texi
  head/contrib/ntp/scripts/update-leap/update-leap-opts
  head/contrib/ntp/scripts/update-leap/update-leap.1update-leapman
  head/contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
  head/contrib/ntp/scripts/update-leap/update-leap.html
  head/contrib/ntp/scripts/update-leap/update-leap.man.in
  head/contrib/ntp/scripts/update-leap/update-leap.mdoc.in
  head/contrib/ntp/sntp/COPYRIGHT
  head/contrib/ntp/sntp/Makefile.in
  head/contrib/ntp/sntp/aclocal.m4
  head/contrib/ntp/sntp/config.h.in
  head/contrib/ntp/sntp/configure
  head/contrib/ntp/sntp/include/Makefile.in
  head/contrib/ntp/sntp/include/version.def
  head/contrib/ntp/sntp/include/version.texi
  head/contrib/ntp/sntp/invoke-sntp.texi
  head/contrib/ntp/sntp/libevent/Makefile.in
  head/contrib/ntp/sntp/libevent/aclocal.m4
  head/contrib/ntp/sntp/libevent/build-aux/ar-lib
  head/contrib/ntp/sntp/libevent/build-aux/compile
  head/contrib/ntp/sntp/libevent/build-aux/config.guess
  head/contrib/ntp/sntp/libevent/build-aux/config.sub
  head/contrib/ntp/sntp/libevent/build-aux/depcomp
  head/contrib/ntp/sntp/libevent/build-aux/install-sh
  head/contrib/ntp/sntp/libevent/build-aux/missing
  head/contrib/ntp/sntp/libevent/build-aux/test-driver
  head/contrib/ntp/sntp/libevent/build-aux/ylwrap
  head/contrib/ntp/sntp/libevent/config.h.in
  head/contrib/ntp/sntp/libevent/configure
  head/contrib/ntp/sntp/libevent/evconfig-private.h
  head/contrib/ntp/sntp/libevent/test/regress.gen.c
  head/contrib/ntp/sntp/libevent/test/regress.gen.h
  head/contrib/ntp/sntp/libopts/Makefile.in
  head/contrib/ntp/sntp/libopts/autoopts/options.h
  head/contrib/ntp/sntp/libopts/genshell.h
  head/contrib/ntp/sntp/m4/ntp_libntp.m4
  head/contrib/ntp/sntp/m4/version.m4
  head/contrib/ntp/sntp/main.c
  head/contrib/ntp/sntp/networking.c
  head/contrib/ntp/sntp/scm-rev
  head/contrib/ntp/sntp/scripts/Makefile.in
  head/contrib/ntp/sntp/sntp-opts.c
  head/contrib/ntp/sntp/sntp-opts.h
  head/contrib/ntp/sntp/sntp.1sntpman
  head/contrib/ntp/sntp/sntp.1sntpmdoc
  head/contrib/ntp/sntp/sntp.html
  head/contrib/ntp/sntp/sntp.man.in
  head/contrib/ntp/sntp/sntp.mdoc.in
  head/contrib/ntp/sntp/tests/Makefile.in
  head/contrib/ntp/sntp/unity/Makefile.in
  head/contrib/ntp/sntp/version.c
  head/contrib/ntp/util/Makefile.in
  head/contrib/ntp/util/invoke-ntp-keygen.texi
  head/contrib/ntp/util/ntp-keygen-opts.c
  head/contrib/ntp/util/ntp-keygen-opts.h
  head/contrib/ntp/util/ntp-keygen.1ntp-keygenman
  head/contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
  head/contrib/ntp/util/ntp-keygen.html
  head/contrib/ntp/util/ntp-keygen.man.in
  head/contrib/ntp/util/ntp-keygen.mdoc.in
  head/contrib/ntp/util/ntptime.c
  head/usr.sbin/ntp/libntp/Makefile
Directory Properties:
  head/contrib/ntp/   (props changed)

Modified: head/contrib/ntp/COPYRIGHT
==============================================================================
--- head/contrib/ntp/COPYRIGHT	Thu Mar  7 13:11:00 2019	(r344882)
+++ head/contrib/ntp/COPYRIGHT	Thu Mar  7 13:36:00 2019	(r344883)
@@ -1,16 +1,15 @@
 This file is automatically generated from html/copyright.html
-
   Copyright Notice
-  
+
    jpg "Clone me," says Dolly sheepishly.
-   
+
    Last update: 2-Jan-2017 11:58 UTC
-     _________________________________________________________________
-   
-   The following copyright notice applies to all files collectively
-   called the Network Time Protocol Version 4 Distribution. Unless
-   specifically declared otherwise in an individual file, this entire
-   notice applies as if the text was explicitly included in the file.
+     __________________________________________________________________
+
+   The following copyright notice applies to all files collectively called
+   the Network Time Protocol Version 4 Distribution. Unless specifically
+   declared otherwise in an individual file, this entire notice applies as
+   if the text was explicitly included in the file.
 ***********************************************************************
 *                                                                     *
 * Copyright (c) University of Delaware 1992-2015                      *
@@ -62,13 +61,13 @@ This file is automatically generated from html/copyrig
 ***********************************************************************
 
    The following individuals contributed in part to the Network Time
-   Protocol Distribution Version 4 and are acknowledged as authors of
-   this work.
+   Protocol Distribution Version 4 and are acknowledged as authors of this
+   work.
     1. [1]Takao Abe <takao_abe@xurb.jp> Clock driver for JJY receivers
     2. [2]Mark Andrews <mark_andrews@isc.org> Leitch atomic clock
        controller
-    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial
-       line and PCI-bus devices
+    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial line
+       and PCI-bus devices
     4. [4]Viraj Bais <vbais@mailman1.intel.com> and [5]Clayton Kirkwood
        <kirkwood@striderfm.intel.com> port to WindowsNT 3.5
     5. [6]Michael Barone <michael,barone@lmco.com> GPSVME fixes
@@ -84,13 +83,12 @@ This file is automatically generated from html/copyrig
        <Jean-Francois.Boudreault@viagenie.qc.ca> IPv6 support
    12. [13]Reg Clemens <reg@dwf.com> Oncore driver (Current maintainer)
    13. [14]Steve Clift <clift@ml.csiro.au> OMEGA clock driver
-   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and
-       help with target configuration
+   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and help
+       with target configuration
    15. [16]Sven Dietrich <sven_dietrich@trimble.com> Palisade reference
        clock driver, NT adj. residuals, integrated Greg's Winnt port.
    16. [17]John A. Dundas III <dundas@salt.jpl.nasa.gov> Apple A/UX port
-   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux
-       port
+   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux port
    18. [19]Dennis Ferguson <dennis@mrbill.canet.ca> foundation code for
        NTP Version 2 as specified in RFC-1119
    19. [20]John Hay <jhay@icomtek.csir.co.za> IPv6 support and testing
@@ -122,9 +120,8 @@ This file is automatically generated from html/copyrig
        code for Version 3 as specified in RFC-1305
    36. [39]Danny Mayer <mayer@ntp.org>Network I/O, Windows Port, Code
        Maintenance
-   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation,
-       precision kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19,
-       22, 36
+   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation, precision
+       kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19, 22, 36
    38. [41]Wolfgang Moeller <moeller@gwdgv1.dnet.gwdg.de> VMS port
    39. [42]Jeffrey Mogul <mogul@pa.dec.com> ntptrace utility
    40. [43]Tom Moore <tmoore@fievel.daytonoh.ncr.com> i386 svr4 port
@@ -136,22 +133,18 @@ This file is automatically generated from html/copyrig
    44. [48]Rainer Pruy <Rainer.Pruy@informatik.uni-erlangen.de>
        monitoring/trap scripts, statistics file handling
    45. [49]Dirce Richards <dirce@zk3.dec.com> Digital UNIX V4.0 port
-   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for
-       NetInfo
+   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for NetInfo
    47. [51]Nick Sayer <mrapple@quack.kfu.com> SunOS streams modules
    48. [52]Jack Sasportas <jack@innovativeinternet.com> Saved a Lot of
        space on the stuff in the html/pic/ subdirectory
    49. [53]Ray Schnitzler <schnitz@unipress.com> Unixware1 port
    50. [54]Michael Shields <shields@tembel.org> USNO clock driver
-   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock
-       driver
+   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock driver
    52. [56]Harlan Stenn <harlan@pfcs.com> GNU automake/autoconfigure
        makeover, various other bits (see the ChangeLog)
    53. [57]Kenneth Stone <ken@sdd.hp.com> HP-UX port
-   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast
-       support
-   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock
-       driver
+   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast support
+   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock driver
    56. [60]Brian Utterback <brian.utterback@oracle.com> General codebase,
        Solaris issues
    57. [61]Loganaden Velvindron <loganaden@gmail.com> Sandboxing
@@ -160,7 +153,7 @@ This file is automatically generated from html/copyrig
        TrueTime clock driver
    59. [63]Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de> corrected and
        validated HTML documents according to the HTML DTD
-     _________________________________________________________________
+     __________________________________________________________________
 
 References
 

Modified: head/contrib/ntp/ChangeLog
==============================================================================
--- head/contrib/ntp/ChangeLog	Thu Mar  7 13:11:00 2019	(r344882)
+++ head/contrib/ntp/ChangeLog	Thu Mar  7 13:36:00 2019	(r344883)
@@ -1,4 +1,49 @@
 ---
+(4.2.8p13) 2019/03/07 Released by Harlan Stenn <stenn@ntp.org>
+
+* [Sec 3565] Crafted null dereference attack in authenticated
+	     mode 6 packet <perlinger@ntp.org>
+  - reported by Magnus Stubman
+* [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger@ntp.org>
+  - applied patch by Ian Lepore
+* [Bug 3558] Crash and integer size bug <perlinger@ntp.org>
+  - isolate and fix linux/windows specific code issue
+* [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger@ntp.org>
+  - provide better function for incremental string formatting
+* [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3554] config revoke stores incorrect value <perlinger@ntp.org>
+  - original finding by Gerry Garvey, additional cleanup needed
+* [Bug 3549] Spurious initgroups() error message <perlinger@ntp.org>
+  - patch by Christous Zoulas
+* [Bug 3548] Signature not verified on windows system <perlinger@ntp.org>
+  - finding by Chen Jiabin, plus another one by me
+* [Bug 3541] patch to fix STA_NANO struct timex units <perlinger@ntp.org>
+  - applied patch by Maciej Szmigiero
+* [Bug 3540] Cannot set minsane to 0 anymore <perlinger@ntp.org>
+  - applied patch by Andre Charbonneau
+* [Bug 3539] work_fork build fails when droproot is not supported <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3538] Build fails for no-MMU targets <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3535] libparse won't handle GPS week rollover <perlinger@ntp.org>
+  - refactored handling of GPS era based on 'tos basedate' for
+    parse (TSIP) and JUPITER clocks
+* [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger@ntp.org>
+  - patch by Daniel J. Luke; this does not fix a potential linker
+    regression issue on MacOS.
+* [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
+  anomaly <perlinger@ntp.org>, reported by GGarvey.
+  - --enable-bug3527-fix support by HStenn
+* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3471] Check for openssl/[ch]mac.h.  <perlinger@ntp.org>
+  - added missing check, reported by Reinhard Max <perlinger@ntp.org>
+* [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+  - this is a variant of [bug 3558] and should be fixed with it
+* Implement --disable-signalled-io
+
+---
 (4.2.8p12) 2018/08/14 Released by Harlan Stenn <stenn@ntp.org>
 
 * [Sec 3505] CVE-2018-12327 - Arbitrary Code Execution Vulnerability

Modified: head/contrib/ntp/CommitLog
==============================================================================
--- head/contrib/ntp/CommitLog	Thu Mar  7 13:11:00 2019	(r344882)
+++ head/contrib/ntp/CommitLog	Thu Mar  7 13:36:00 2019	(r344883)
@@ -1,363 +1,6898 @@
-ChangeSet@1.3729, 2017-02-01 07:39:35-05:00, stenn@deacon.udel.edu
+ChangeSet@1.3849, 2019-02-20 17:13:36-08:00, harlan@ntp-build.tal1.ntfo.org
+  Update NEWS file
+
+  NEWS@1.200 +3 -0
+    Update NEWS file
+
+ChangeSet@1.3848, 2019-02-20 09:44:58-08:00, harlan@ntp-build.tal1.ntfo.org
+  build system cleanups
+
+  build@1.50 +1 -1
+    build system cleanups
+
+  scripts/build/check--help@1.4 +2 -2
+    build system cleanups
+
+  sntp/libopts/autoopts/options.h@1.31 +1 -1
+    build system cleanups
+
+  sntp/libopts/genshell.h@1.31 +1 -1
+    build system cleanups
+
+ChangeSet@1.3847, 2019-02-18 22:26:26-08:00, harlan@ntp-build.tal1.ntfo.org
+  ChangeLog and NEWS description cleanups
+
+  ChangeLog@1.1971 +4 -4
+    ChangeLog and NEWS description cleanups
+
+  NEWS@1.199 +4 -2
+    ChangeLog and NEWS description cleanups
+
+ChangeSet@1.3844.1.4, 2019-02-18 20:10:25-08:00, harlan@ntp-build.tal1.ntfo.org
+  NEWS file update
+
+  NEWS@1.198 +49 -2
+    NEWS file update
+
+ChangeSet@1.3844.1.3, 2019-02-16 07:36:50+00:00, stenn@stenn.ntp.org
+  Improve messages around signalled IO handling in configure
+
+  sntp/m4/ntp_libntp.m4@1.38 +5 -0
+    Improve messages around signalled IO handling in configure
+
+ChangeSet@1.3844.1.2, 2019-02-15 13:27:05+00:00, stenn@stenn.ntp.org
+  Implement --disable-signalled-io
+
+  ChangeLog@1.1968.1.2 +1 -0
+    Implement --disable-signalled-io
+
+  sntp/m4/ntp_libntp.m4@1.37 +22 -2
+    Implement --disable-signalled-io
+
+ChangeSet@1.3844.1.1, 2019-01-17 04:16:52+00:00, stenn@psp-deb1.ntp.org
+  Cleanup
+
+  ChangeLog@1.1968.1.1 +0 -1
+    Cleanup
+
+ChangeSet@1.3845, 2019-01-16 21:42:59+01:00, perlinger@ntp.org
+  [Sec 3565] null pointer crash by remote attack
+
+  ChangeLog@1.1969 +3 -0
+    [Sec 3565] null pointer crash by remote attack
+
+  ntpd/ntp_control.c@1.233 +17 -9
+    [Sec 3565] null pointer crash by remote attack
+
+ChangeSet@1.3827.1.2, 2018-12-15 13:25:25+00:00, stenn@psp-deb1.ntp.org
+  bug3527 fixes
+
+  ChangeLog@1.1952.1.2 +3 -3
+    bug3527 fixes
+
+  configure.ac@1.614.1.1 +18 -0
+    bug3527 fixes
+
+  ntpd/ntp_request.c@1.129 +7 -4
+    bug3527 fixes
+
+  ntpdc/ntpdc_ops.c@1.85 +8 -3
+    bug3527 fixes
+
+ChangeSet@1.3827.15.1, 2018-12-12 07:37:12+01:00, perlinger@ntp.org
+  [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  ChangeLog@1.1952.15.1 +4 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  libntp/work_fork.c@1.20.2.1 +2 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+ChangeSet@1.3827.14.1, 2018-12-11 07:42:01+01:00, perlinger@ntp.org
+  [Bug 3558] Crash and integer size bug
+  [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+   - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  ChangeLog@1.1952.14.1 +6 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  configure.ac@1.615 +1 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - search for BANCOMM SDK lib
+
+  ntpd/refclock_bancomm.c@1.17 +96 -23
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+ChangeSet@1.3827.11.2, 2018-12-05 06:58:13+01:00, perlinger@ntp.org
+  Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+   - stricter buffer range checks
+
+  libntp/xsbprintf.c@1.2 +11 -13
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/run-sbprintf.c@1.2 +8 -4
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/sbprintf.c@1.2 +28 -0
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+ChangeSet@1.3827.10.2, 2018-12-03 02:29:24-05:00, stenn@psp-fb1.ntp.org
+  Update Changelog for latest fix for 3471
+
+  ChangeLog@1.1952.10.2 +6 -1
+    Update Changelog for latest fix for 3471
+
+ChangeSet@1.3827.13.1, 2018-12-02 09:05:37+01:00, perlinger@ntp.org
+  [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ChangeLog@1.1952.13.1 +4 -0
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ntpdate/ntpdate.c@1.102 +12 -9
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+ChangeSet@1.3827.12.1, 2018-12-02 08:17:05+01:00, perlinger@ntp.org
+  [Bug 3554] config revoke stores incorrect value
+   - plus some additional cleanup
+
+  ChangeLog@1.1952.12.1 +4 -0
+    [Bug 3554] config revoke stores incorrect value
+
+  include/ntpd.h@1.204 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+
+  ntpd/ntp_config.c@1.365.2.1 +12 -3
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value for shift; clamp values
+
+  ntpd/ntp_crypto.c@1.190.1.1 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - avoid possible integer truncation
+
+  ntpd/ntp_timer.c@1.97 +4 -4
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+     - avoid possible integer truncation
+
+ChangeSet@1.3827.11.1, 2018-12-01 12:10:51+01:00, perlinger@ntp.org
+  [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+   - provide better function for incremental string formatting
+
+  ChangeLog@1.1952.11.1 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better function for incremental string formatting
+
+  include/ntp_stdlib.h@1.87 +3 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better API for incremental string formatting
+
+  libntp/Makefile.am@1.82 +1 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.1 +77 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - implement new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.0 +0 -0
+
+  ntpd/ntp_loopfilter.c@1.192 +18 -14
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - use new API for incremental string formatting
+
+  ports/winnt/vs2005/libntp.vcproj@1.27 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2008/libntp/libntp.vcproj@1.58 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj@1.14 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj.filters@1.12 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.4 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.4 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  tests/libntp/Makefile.am@1.100 +12 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.1 +72 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.0 +0 -0
+
+  tests/libntp/sbprintf.c@1.1 +67 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/sbprintf.c@1.0 +0 -0
+
+ChangeSet@1.3827.10.1, 2018-11-30 06:34:35+01:00, perlinger@ntp.org
+  [Bug 3471] Check for openssl/[ch]mac.h
+   - added missing check in code
+
+  ChangeLog@1.1952.10.1 +1 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+  libntp/authreadkeys.c@1.33 +2 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+ChangeSet@1.3827.9.1, 2018-11-11 12:03:14+01:00, perlinger@ntp.org
+  [Bug 3549] Spurious initgroups() error message
+
+  ChangeLog@1.1952.9.1 +4 -0
+    [Bug 3549] Spurious initgroups() error message
+
+  ntpd/ntpd.c@1.177.2.1 +33 -17
+    [Bug 3549] Spurious initgroups() error message
+     - make 'set_user_group_ids()' idempotent: If we're already there, don't complain.
+
+ChangeSet@1.3827.8.1, 2018-11-11 11:07:23+01:00, perlinger@ntp.org
+  [Bug 3548] Signature not verified on windows system
+
+  ChangeLog@1.1952.8.1 +4 -0
+    [Bug 3548] Signature not verified on windows system
+
+  ntpd/ntp_crypto.c@1.191 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+  sntp/networking.c@1.70 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+ChangeSet@1.3827.7.1, 2018-11-11 09:56:34+01:00, perlinger@ntp.org
+  [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ChangeLog@1.1952.7.1 +4 -0
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpd/ntp_control.c@1.232 +9 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpdc/ntpdc_ops.c@1.83.1.1 +7 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  util/ntptime.c@1.28 +0 -4
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+ChangeSet@1.3827.6.1, 2018-10-27 11:00:56+02:00, perlinger@ntp.org
+  [Bug 3540] Cannot set minsane to 0 anymore
+
+  ChangeLog@1.1952.6.1 +4 -0
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+  ntpd/ntp_config.c@1.365.1.1 +2 -2
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+ChangeSet@1.3827.5.1, 2018-10-27 10:33:55+02:00, perlinger@ntp.org
+  [Bug 3539] work_fork build fails when droproot is not supported
+
+  ChangeLog@1.1952.5.1 +4 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+  libntp/work_fork.c@1.20.1.1 +2 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+ChangeSet@1.3827.4.1, 2018-10-27 10:23:05+02:00, perlinger@ntp.org
+  [Bug 3538] Build fails for no-MMU targets
+
+  ChangeLog@1.1952.4.1 +4 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+  ntpd/ntpd.c@1.177.1.1 +2 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+ChangeSet@1.3827.3.1, 2018-10-13 08:03:48+02:00, perlinger@ntp.org
+  [Bug 3535] libparse won't handle GPS week rollover
+
+  ChangeLog@1.1952.3.1 +5 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  include/ntp_calendar.h@1.20 +21 -3
+    [Bug 3535] libparse won't handle GPS week rollover
+     - GPS week era support
+
+  include/parse.h@1.15 +0 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+     - remove GPSWRAP definition to avoid lurking uses
+
+  libntp/calyearstart.c@1.7 +1 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  libntp/ntp_calendar.c@1.21 +38 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set GPS base week as first Sunday on or after base date
+
+  libparse/clk_trimtsip.c@1.15 +5 -9
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+  libparse/gpstolfp.c@1.14 +0 -5
+    [Bug 3535] libparse won't handle GPS week rollover
+     - don't try to expand weeks in the conversion
+
+  ntpd/ntp_config.c@1.366 +4 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set basedate based on build stamp if not set explicitely
+
+  ntpd/refclock_jupiter.c@1.32 +1 -56
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code instead of local copy
+
+  ntpd/refclock_parse.c@1.87 +1 -2
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+ChangeSet@1.3827.2.1, 2018-10-02 18:03:33+02:00, perlinger@ntp.org
+  [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  ChangeLog@1.1952.2.1 +5 -0
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  libntp/work_fork.c@1.21 +6 -3
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+     - make existence of 'set_user_group_ids()' depend on HAVE_DROPROOT
+
+ChangeSet@1.3827.1.1, 2018-10-02 17:38:18+02:00, perlinger@ntp.org
+  [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ChangeLog@1.1952.1.1 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpd/ntp_request.c@1.128 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpdc/ntpdc_ops.c@1.84 +4 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+ChangeSet@1.3828, 2018-09-12 22:52:00+02:00, perlinger@ntp.org
+  [Bug 3526] Incorrect poll interval in packet
+
+  ChangeLog@1.1953 +4 -0
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntp_proto.c@1.423 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntpd.c@1.178 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+  sntp/main.c@1.104 +2 -3
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+ChangeSet@1.3827, 2018-08-14 08:31:08-04:00, stenn@deacon.udel.edu
+  NTP_4_2_8P12
+  TAG: NTP_4_2_8P12
+
+  ChangeLog@1.1952 +1 -0
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.conf.texi@1.217 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.keys.texi@1.202 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntpd.texi@1.516 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5man@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5mdoc@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.html@1.200 +92 -105
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.man.in@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.mdoc.in@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5man@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5mdoc@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.html@1.199 +17 -29
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.man.in@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.mdoc.in@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.c@1.538 +7 -7
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.h@1.537 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdman@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdmdoc@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntpd.html@1.191 +101 -145
+    NTP_4_2_8P12
+
+  ntpd/ntpd.man.in@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.mdoc.in@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/invoke-ntpdc.texi@1.513 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.c@1.531 +7 -7
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.h@1.530 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.html@1.359 +57 -77
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/invoke-ntpq.texi@1.523 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.c@1.540 +7 -7
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.h@1.538 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqman@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqmdoc@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq.html@1.190 +105 -129
+    NTP_4_2_8P12
+
+  ntpq/ntpq.man.in@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.mdoc.in@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/invoke-ntpsnmpd.texi@1.515 +1 -1
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.c@1.533 +7 -7
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.html@1.185 +10 -14
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  packageinfo.sh@1.542 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjman@1.105 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.html@1.106 +1 -1
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.man.in@1.104 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.mdoc.in@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/invoke-calc_tickadj.texi@1.109 +1 -1
+    NTP_4_2_8P12
+
+  scripts/invoke-plot_summary.texi@1.127 +2 -2
+    NTP_4_2_8P12
+
+  scripts/invoke-summary.texi@1.126 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/invoke-ntp-wait.texi@1.336 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait-opts@1.72 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitman@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitmdoc@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.html@1.355 +31 -49
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.man.in@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/invoke-ntpsweep.texi@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepmdoc@1.112 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.html@1.127 +33 -44
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.mdoc.in@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/invoke-ntptrace.texi@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptraceman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptracemdoc@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.html@1.128 +27 -36
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.mdoc.in@1.114 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary-opts@1.75 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summaryman@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summarymdoc@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.html@1.130 +29 -47
+    NTP_4_2_8P12
+
+  scripts/plot_summary.man.in@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.mdoc.in@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.1summaryman@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.1summarymdoc@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.html@1.129 +27 -39
+    NTP_4_2_8P12
+
+  scripts/summary.man.in@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.mdoc.in@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/invoke-update-leap.texi@1.25 +1 -1
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap-opts@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapman@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapmdoc@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.html@1.27 +35 -59
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.man.in@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.mdoc.in@1.25 +2 -2
+    NTP_4_2_8P12
+
+  sntp/invoke-sntp.texi@1.515 +23 -27
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.c@1.534 +7 -7
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpman@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpmdoc@1.350 +2 -2
+    NTP_4_2_8P12
+
+  sntp/sntp.html@1.531 +106 -134
+    NTP_4_2_8P12
+
+  sntp/sntp.man.in@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.mdoc.in@1.350 +2 -2
+    NTP_4_2_8P12
+
+  util/invoke-ntp-keygen.texi@1.518 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.c@1.536 +7 -7
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.h@1.534 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenman@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenmdoc@1.346 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen.html@1.191 +148 -206
+    NTP_4_2_8P12
+
+  util/ntp-keygen.man.in@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.mdoc.in@1.346 +2 -2
+    NTP_4_2_8P12
+
+ChangeSet@1.3826, 2018-08-14 07:16:23-04:00, stenn@deacon.udel.edu
+  Trigger the release of ntp-4.2.8p12
+
+  packageinfo.sh@1.541 +1 -1
+    Trigger the release of ntp-4.2.8p12
+
+ChangeSet@1.3825, 2018-08-13 04:31:37+00:00, stenn@psp-deb1.ntp.org
+  NEWS update
+
+  NEWS@1.197 +1 -1
+    NEWS update
+
+ChangeSet@1.3812.1.10, 2018-08-04 10:31:58+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ChangeLog@1.1942.1.9 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  NEWS@1.192.1.2 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ntpd/ntp_proto.c@1.422 +46 -35
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+ChangeSet@1.3823, 2018-07-28 05:03:57+00:00, stenn@psp-deb1.ntp.org
+  3505 description updates
+
+  ChangeLog@1.1950 +2 -1
+    3505 description updates
+
+  NEWS@1.195 +2 -2
+    3505 description updates
+
+ChangeSet@1.3812.1.9, 2018-07-25 09:56:39+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ChangeLog@1.1942.1.8 +1 -0
+    updates
+
+  NEWS@1.192.1.1 +2 -2
+    updates
+
+  html/authentic.html@1.18 +219 -87
+    updates
+
+ChangeSet@1.3821, 2018-07-25 07:41:01+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ntpd/ntp.conf.html@1.199 +104 -91
+    updates
+
+  ntpd/ntp.keys.html@1.198 +28 -16
+    updates
+
+  ntpd/ntpd.html@1.190 +145 -101
+    updates
+
+  ntpdc/ntpdc.html@1.358 +75 -55
+    updates
+
+  ntpsnmpd/ntpsnmpd.html@1.184 +13 -9
+    updates
+
+  scripts/ntp-wait/ntp-wait.html@1.354 +47 -29
+    updates
+
+  scripts/ntpsweep/ntpsweep.html@1.126 +42 -31
+    updates
+
+  scripts/ntptrace/ntptrace.html@1.127 +34 -25
+    updates
+
+  scripts/plot_summary.html@1.129 +45 -27
+    updates
+
+  scripts/summary.html@1.128 +37 -25
+    updates
+
+  scripts/update-leap/update-leap.html@1.26 +132 -34
+    updates
+
+  sntp/sntp.html@1.530 +107 -83
+    updates
+
+ChangeSet@1.3820, 2018-07-25 07:38:42+00:00, stenn@psp-deb1.ntp.org
+  Bug 3509 tweaks
+
+  NEWS@1.193 +6 -1
+    Bug 3509 tweaks
+
+  sntp/m4/ntp_libntp.m4@1.36 +1 -1
+    Bug 3509 tweaks
+
+ChangeSet@1.3816.1.1, 2018-07-25 07:08:13+02:00, perlinger@ntp.org
+  [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ChangeLog@1.1946.1.1 +3 -0
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ntpd/ntpd.c@1.177 +20 -2
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  sntp/m4/ntp_libntp.m4@1.35 +22 -1
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+ChangeSet@1.3812.1.8, 2018-07-24 09:16:25+00:00, stenn@psp-deb1.ntp.org
+  Symmetric key range is 1-65535.  Update docs.
+
+  html/authentic.html@1.17 +3 -3
+    Symmetric key range is 1-65535.  Update docs.
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:47:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1931F152FEB3;
 Thu,  7 Mar 2019 13:47:58 +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)
 server-signature RSA-PSS (4096 bits)
 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 B6B3186643;
 Thu,  7 Mar 2019 13:47:57 +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 A9E291C7C7;
 Thu,  7 Mar 2019 13:47:57 +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 x27DlvEl030363;
 Thu, 7 Mar 2019 13:47:57 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DjbR1030127;
 Thu, 7 Mar 2019 13:45:37 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071345.x27DjbR1030127@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:45:37 +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: r344884 - in stable: 11/contrib/ntp
 11/contrib/ntp/adjtimed 11/contrib/ntp/clockstuff 11/contrib/ntp/include
 11/contrib/ntp/include/isc 11/contrib/ntp/kernel 11/contrib/ntp/kernel/sys
 1...
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ntp 11/contrib/ntp/adjtimed
 11/contrib/ntp/clockstuff 11/contrib/ntp/include 11/contrib/ntp/include/isc
 11/contrib/ntp/kernel 11/contrib/ntp/kernel/sys 11/contrib/ntp/libntp 11/c...
X-SVN-Commit-Revision: 344884
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B6B3186643
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.964,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:47:58 -0000

Author: cy
Date: Thu Mar  7 13:45:36 2019
New Revision: 344884
URL: https://svnweb.freebsd.org/changeset/base/344884

Log:
  MFC r344883:
  
  (MFV r344878:)
  
  4.2.8p12 --> 4.2.8p13
  
  Security:       CVE-2019-8936
                  VuXML: c2576e14-36e2-11e9-9eda-206a8a720317
  Obtained from:  nwtime.org

Added:
  stable/11/contrib/ntp/libntp/xsbprintf.c
     - copied unchanged from r344883, head/contrib/ntp/libntp/xsbprintf.c
Modified:
  stable/11/contrib/ntp/COPYRIGHT
  stable/11/contrib/ntp/ChangeLog
  stable/11/contrib/ntp/CommitLog
  stable/11/contrib/ntp/Makefile.in
  stable/11/contrib/ntp/NEWS
  stable/11/contrib/ntp/aclocal.m4
  stable/11/contrib/ntp/adjtimed/Makefile.in
  stable/11/contrib/ntp/build
  stable/11/contrib/ntp/clockstuff/Makefile.in
  stable/11/contrib/ntp/config.h.in
  stable/11/contrib/ntp/configure
  stable/11/contrib/ntp/configure.ac
  stable/11/contrib/ntp/include/Makefile.in
  stable/11/contrib/ntp/include/isc/Makefile.in
  stable/11/contrib/ntp/include/ntp_calendar.h
  stable/11/contrib/ntp/include/ntp_stdlib.h
  stable/11/contrib/ntp/include/ntpd.h
  stable/11/contrib/ntp/include/parse.h
  stable/11/contrib/ntp/kernel/Makefile.in
  stable/11/contrib/ntp/kernel/sys/Makefile.in
  stable/11/contrib/ntp/libntp/Makefile.am
  stable/11/contrib/ntp/libntp/Makefile.in
  stable/11/contrib/ntp/libntp/authreadkeys.c
  stable/11/contrib/ntp/libntp/calyearstart.c
  stable/11/contrib/ntp/libntp/ntp_calendar.c
  stable/11/contrib/ntp/libntp/work_fork.c
  stable/11/contrib/ntp/libparse/Makefile.in
  stable/11/contrib/ntp/libparse/clk_trimtsip.c
  stable/11/contrib/ntp/libparse/gpstolfp.c
  stable/11/contrib/ntp/ntpd/Makefile.in
  stable/11/contrib/ntp/ntpd/invoke-ntp.conf.texi
  stable/11/contrib/ntp/ntpd/invoke-ntp.keys.texi
  stable/11/contrib/ntp/ntpd/invoke-ntpd.texi
  stable/11/contrib/ntp/ntpd/ntp.conf.5man
  stable/11/contrib/ntp/ntpd/ntp.conf.5mdoc
  stable/11/contrib/ntp/ntpd/ntp.conf.html
  stable/11/contrib/ntp/ntpd/ntp.conf.man.in
  stable/11/contrib/ntp/ntpd/ntp.conf.mdoc.in
  stable/11/contrib/ntp/ntpd/ntp.keys.5man
  stable/11/contrib/ntp/ntpd/ntp.keys.5mdoc
  stable/11/contrib/ntp/ntpd/ntp.keys.html
  stable/11/contrib/ntp/ntpd/ntp.keys.man.in
  stable/11/contrib/ntp/ntpd/ntp.keys.mdoc.in
  stable/11/contrib/ntp/ntpd/ntp_config.c
  stable/11/contrib/ntp/ntpd/ntp_control.c
  stable/11/contrib/ntp/ntpd/ntp_crypto.c
  stable/11/contrib/ntp/ntpd/ntp_loopfilter.c
  stable/11/contrib/ntp/ntpd/ntp_proto.c
  stable/11/contrib/ntp/ntpd/ntp_request.c
  stable/11/contrib/ntp/ntpd/ntp_timer.c
  stable/11/contrib/ntp/ntpd/ntpd-opts.c
  stable/11/contrib/ntp/ntpd/ntpd-opts.h
  stable/11/contrib/ntp/ntpd/ntpd.1ntpdman
  stable/11/contrib/ntp/ntpd/ntpd.1ntpdmdoc
  stable/11/contrib/ntp/ntpd/ntpd.c
  stable/11/contrib/ntp/ntpd/ntpd.html
  stable/11/contrib/ntp/ntpd/ntpd.man.in
  stable/11/contrib/ntp/ntpd/ntpd.mdoc.in
  stable/11/contrib/ntp/ntpd/refclock_bancomm.c
  stable/11/contrib/ntp/ntpd/refclock_jupiter.c
  stable/11/contrib/ntp/ntpd/refclock_parse.c
  stable/11/contrib/ntp/ntpdate/Makefile.in
  stable/11/contrib/ntp/ntpdate/ntpdate.c
  stable/11/contrib/ntp/ntpdc/Makefile.in
  stable/11/contrib/ntp/ntpdc/invoke-ntpdc.texi
  stable/11/contrib/ntp/ntpdc/nl.pl
  stable/11/contrib/ntp/ntpdc/ntpdc-opts.c
  stable/11/contrib/ntp/ntpdc/ntpdc-opts.h
  stable/11/contrib/ntp/ntpdc/ntpdc.1ntpdcman
  stable/11/contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
  stable/11/contrib/ntp/ntpdc/ntpdc.html
  stable/11/contrib/ntp/ntpdc/ntpdc.man.in
  stable/11/contrib/ntp/ntpdc/ntpdc.mdoc.in
  stable/11/contrib/ntp/ntpdc/ntpdc_ops.c
  stable/11/contrib/ntp/ntpq/Makefile.in
  stable/11/contrib/ntp/ntpq/invoke-ntpq.texi
  stable/11/contrib/ntp/ntpq/ntpq-opts.c
  stable/11/contrib/ntp/ntpq/ntpq-opts.h
  stable/11/contrib/ntp/ntpq/ntpq.1ntpqman
  stable/11/contrib/ntp/ntpq/ntpq.1ntpqmdoc
  stable/11/contrib/ntp/ntpq/ntpq.html
  stable/11/contrib/ntp/ntpq/ntpq.man.in
  stable/11/contrib/ntp/ntpq/ntpq.mdoc.in
  stable/11/contrib/ntp/ntpsnmpd/Makefile.in
  stable/11/contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.html
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
  stable/11/contrib/ntp/packageinfo.sh
  stable/11/contrib/ntp/parseutil/Makefile.in
  stable/11/contrib/ntp/scripts/Makefile.in
  stable/11/contrib/ntp/scripts/build/Makefile.in
  stable/11/contrib/ntp/scripts/build/check--help
  stable/11/contrib/ntp/scripts/calc_tickadj/Makefile.in
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
  stable/11/contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
  stable/11/contrib/ntp/scripts/invoke-plot_summary.texi
  stable/11/contrib/ntp/scripts/invoke-summary.texi
  stable/11/contrib/ntp/scripts/lib/Makefile.in
  stable/11/contrib/ntp/scripts/ntp-wait/Makefile.in
  stable/11/contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait-opts
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.html
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
  stable/11/contrib/ntp/scripts/ntpsweep/Makefile.in
  stable/11/contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep-opts
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.html
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
  stable/11/contrib/ntp/scripts/ntptrace/Makefile.in
  stable/11/contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace-opts
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.html
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.man.in
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
  stable/11/contrib/ntp/scripts/plot_summary-opts
  stable/11/contrib/ntp/scripts/plot_summary.1plot_summaryman
  stable/11/contrib/ntp/scripts/plot_summary.1plot_summarymdoc
  stable/11/contrib/ntp/scripts/plot_summary.html
  stable/11/contrib/ntp/scripts/plot_summary.man.in
  stable/11/contrib/ntp/scripts/plot_summary.mdoc.in
  stable/11/contrib/ntp/scripts/summary-opts
  stable/11/contrib/ntp/scripts/summary.1summaryman
  stable/11/contrib/ntp/scripts/summary.1summarymdoc
  stable/11/contrib/ntp/scripts/summary.html
  stable/11/contrib/ntp/scripts/summary.man.in
  stable/11/contrib/ntp/scripts/summary.mdoc.in
  stable/11/contrib/ntp/scripts/update-leap/Makefile.in
  stable/11/contrib/ntp/scripts/update-leap/invoke-update-leap.texi
  stable/11/contrib/ntp/scripts/update-leap/update-leap-opts
  stable/11/contrib/ntp/scripts/update-leap/update-leap.1update-leapman
  stable/11/contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
  stable/11/contrib/ntp/scripts/update-leap/update-leap.html
  stable/11/contrib/ntp/scripts/update-leap/update-leap.man.in
  stable/11/contrib/ntp/scripts/update-leap/update-leap.mdoc.in
  stable/11/contrib/ntp/sntp/COPYRIGHT
  stable/11/contrib/ntp/sntp/Makefile.in
  stable/11/contrib/ntp/sntp/aclocal.m4
  stable/11/contrib/ntp/sntp/config.h.in
  stable/11/contrib/ntp/sntp/configure
  stable/11/contrib/ntp/sntp/include/Makefile.in
  stable/11/contrib/ntp/sntp/include/version.def
  stable/11/contrib/ntp/sntp/include/version.texi
  stable/11/contrib/ntp/sntp/invoke-sntp.texi
  stable/11/contrib/ntp/sntp/libevent/Makefile.in
  stable/11/contrib/ntp/sntp/libevent/aclocal.m4
  stable/11/contrib/ntp/sntp/libevent/build-aux/ar-lib
  stable/11/contrib/ntp/sntp/libevent/build-aux/compile
  stable/11/contrib/ntp/sntp/libevent/build-aux/config.guess
  stable/11/contrib/ntp/sntp/libevent/build-aux/config.sub
  stable/11/contrib/ntp/sntp/libevent/build-aux/depcomp
  stable/11/contrib/ntp/sntp/libevent/build-aux/install-sh
  stable/11/contrib/ntp/sntp/libevent/build-aux/missing
  stable/11/contrib/ntp/sntp/libevent/build-aux/test-driver
  stable/11/contrib/ntp/sntp/libevent/build-aux/ylwrap
  stable/11/contrib/ntp/sntp/libevent/config.h.in
  stable/11/contrib/ntp/sntp/libevent/configure
  stable/11/contrib/ntp/sntp/libevent/evconfig-private.h
  stable/11/contrib/ntp/sntp/libevent/test/regress.gen.c
  stable/11/contrib/ntp/sntp/libevent/test/regress.gen.h
  stable/11/contrib/ntp/sntp/libopts/Makefile.in
  stable/11/contrib/ntp/sntp/libopts/autoopts/options.h
  stable/11/contrib/ntp/sntp/libopts/genshell.h
  stable/11/contrib/ntp/sntp/m4/ntp_libntp.m4
  stable/11/contrib/ntp/sntp/m4/version.m4
  stable/11/contrib/ntp/sntp/main.c
  stable/11/contrib/ntp/sntp/networking.c
  stable/11/contrib/ntp/sntp/scm-rev
  stable/11/contrib/ntp/sntp/scripts/Makefile.in
  stable/11/contrib/ntp/sntp/sntp-opts.c
  stable/11/contrib/ntp/sntp/sntp-opts.h
  stable/11/contrib/ntp/sntp/sntp.1sntpman
  stable/11/contrib/ntp/sntp/sntp.1sntpmdoc
  stable/11/contrib/ntp/sntp/sntp.html
  stable/11/contrib/ntp/sntp/sntp.man.in
  stable/11/contrib/ntp/sntp/sntp.mdoc.in
  stable/11/contrib/ntp/sntp/tests/Makefile.in
  stable/11/contrib/ntp/sntp/unity/Makefile.in
  stable/11/contrib/ntp/sntp/version.c
  stable/11/contrib/ntp/util/Makefile.in
  stable/11/contrib/ntp/util/invoke-ntp-keygen.texi
  stable/11/contrib/ntp/util/ntp-keygen-opts.c
  stable/11/contrib/ntp/util/ntp-keygen-opts.h
  stable/11/contrib/ntp/util/ntp-keygen.1ntp-keygenman
  stable/11/contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
  stable/11/contrib/ntp/util/ntp-keygen.html
  stable/11/contrib/ntp/util/ntp-keygen.man.in
  stable/11/contrib/ntp/util/ntp-keygen.mdoc.in
  stable/11/contrib/ntp/util/ntptime.c
  stable/11/usr.sbin/ntp/libntp/Makefile
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Added:
  stable/12/contrib/ntp/libntp/xsbprintf.c
     - copied unchanged from r344883, head/contrib/ntp/libntp/xsbprintf.c
Modified:
  stable/12/contrib/ntp/COPYRIGHT
  stable/12/contrib/ntp/ChangeLog
  stable/12/contrib/ntp/CommitLog
  stable/12/contrib/ntp/Makefile.in
  stable/12/contrib/ntp/NEWS
  stable/12/contrib/ntp/aclocal.m4
  stable/12/contrib/ntp/adjtimed/Makefile.in
  stable/12/contrib/ntp/build
  stable/12/contrib/ntp/clockstuff/Makefile.in
  stable/12/contrib/ntp/config.h.in
  stable/12/contrib/ntp/configure
  stable/12/contrib/ntp/configure.ac
  stable/12/contrib/ntp/include/Makefile.in
  stable/12/contrib/ntp/include/isc/Makefile.in
  stable/12/contrib/ntp/include/ntp_calendar.h
  stable/12/contrib/ntp/include/ntp_stdlib.h
  stable/12/contrib/ntp/include/ntpd.h
  stable/12/contrib/ntp/include/parse.h
  stable/12/contrib/ntp/kernel/Makefile.in
  stable/12/contrib/ntp/kernel/sys/Makefile.in
  stable/12/contrib/ntp/libntp/Makefile.am
  stable/12/contrib/ntp/libntp/Makefile.in
  stable/12/contrib/ntp/libntp/authreadkeys.c
  stable/12/contrib/ntp/libntp/calyearstart.c
  stable/12/contrib/ntp/libntp/ntp_calendar.c
  stable/12/contrib/ntp/libntp/work_fork.c
  stable/12/contrib/ntp/libparse/Makefile.in
  stable/12/contrib/ntp/libparse/clk_trimtsip.c
  stable/12/contrib/ntp/libparse/gpstolfp.c
  stable/12/contrib/ntp/ntpd/Makefile.in
  stable/12/contrib/ntp/ntpd/invoke-ntp.conf.texi
  stable/12/contrib/ntp/ntpd/invoke-ntp.keys.texi
  stable/12/contrib/ntp/ntpd/invoke-ntpd.texi
  stable/12/contrib/ntp/ntpd/ntp.conf.5man
  stable/12/contrib/ntp/ntpd/ntp.conf.5mdoc
  stable/12/contrib/ntp/ntpd/ntp.conf.html
  stable/12/contrib/ntp/ntpd/ntp.conf.man.in
  stable/12/contrib/ntp/ntpd/ntp.conf.mdoc.in
  stable/12/contrib/ntp/ntpd/ntp.keys.5man
  stable/12/contrib/ntp/ntpd/ntp.keys.5mdoc
  stable/12/contrib/ntp/ntpd/ntp.keys.html
  stable/12/contrib/ntp/ntpd/ntp.keys.man.in
  stable/12/contrib/ntp/ntpd/ntp.keys.mdoc.in
  stable/12/contrib/ntp/ntpd/ntp_config.c
  stable/12/contrib/ntp/ntpd/ntp_control.c
  stable/12/contrib/ntp/ntpd/ntp_crypto.c
  stable/12/contrib/ntp/ntpd/ntp_loopfilter.c
  stable/12/contrib/ntp/ntpd/ntp_proto.c
  stable/12/contrib/ntp/ntpd/ntp_request.c
  stable/12/contrib/ntp/ntpd/ntp_timer.c
  stable/12/contrib/ntp/ntpd/ntpd-opts.c
  stable/12/contrib/ntp/ntpd/ntpd-opts.h
  stable/12/contrib/ntp/ntpd/ntpd.1ntpdman
  stable/12/contrib/ntp/ntpd/ntpd.1ntpdmdoc
  stable/12/contrib/ntp/ntpd/ntpd.c
  stable/12/contrib/ntp/ntpd/ntpd.html
  stable/12/contrib/ntp/ntpd/ntpd.man.in
  stable/12/contrib/ntp/ntpd/ntpd.mdoc.in
  stable/12/contrib/ntp/ntpd/refclock_bancomm.c
  stable/12/contrib/ntp/ntpd/refclock_jupiter.c
  stable/12/contrib/ntp/ntpd/refclock_parse.c
  stable/12/contrib/ntp/ntpdate/Makefile.in
  stable/12/contrib/ntp/ntpdate/ntpdate.c
  stable/12/contrib/ntp/ntpdc/Makefile.in
  stable/12/contrib/ntp/ntpdc/invoke-ntpdc.texi
  stable/12/contrib/ntp/ntpdc/nl.pl
  stable/12/contrib/ntp/ntpdc/ntpdc-opts.c
  stable/12/contrib/ntp/ntpdc/ntpdc-opts.h
  stable/12/contrib/ntp/ntpdc/ntpdc.1ntpdcman
  stable/12/contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
  stable/12/contrib/ntp/ntpdc/ntpdc.html
  stable/12/contrib/ntp/ntpdc/ntpdc.man.in
  stable/12/contrib/ntp/ntpdc/ntpdc.mdoc.in
  stable/12/contrib/ntp/ntpdc/ntpdc_ops.c
  stable/12/contrib/ntp/ntpq/Makefile.in
  stable/12/contrib/ntp/ntpq/invoke-ntpq.texi
  stable/12/contrib/ntp/ntpq/ntpq-opts.c
  stable/12/contrib/ntp/ntpq/ntpq-opts.h
  stable/12/contrib/ntp/ntpq/ntpq.1ntpqman
  stable/12/contrib/ntp/ntpq/ntpq.1ntpqmdoc
  stable/12/contrib/ntp/ntpq/ntpq.html
  stable/12/contrib/ntp/ntpq/ntpq.man.in
  stable/12/contrib/ntp/ntpq/ntpq.mdoc.in
  stable/12/contrib/ntp/ntpsnmpd/Makefile.in
  stable/12/contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.html
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
  stable/12/contrib/ntp/packageinfo.sh
  stable/12/contrib/ntp/parseutil/Makefile.in
  stable/12/contrib/ntp/scripts/Makefile.in
  stable/12/contrib/ntp/scripts/build/Makefile.in
  stable/12/contrib/ntp/scripts/build/check--help
  stable/12/contrib/ntp/scripts/calc_tickadj/Makefile.in
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
  stable/12/contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
  stable/12/contrib/ntp/scripts/invoke-plot_summary.texi
  stable/12/contrib/ntp/scripts/invoke-summary.texi
  stable/12/contrib/ntp/scripts/lib/Makefile.in
  stable/12/contrib/ntp/scripts/ntp-wait/Makefile.in
  stable/12/contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait-opts
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.html
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
  stable/12/contrib/ntp/scripts/ntpsweep/Makefile.in
  stable/12/contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep-opts
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.html
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
  stable/12/contrib/ntp/scripts/ntptrace/Makefile.in
  stable/12/contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace-opts
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.html
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.man.in
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
  stable/12/contrib/ntp/scripts/plot_summary-opts
  stable/12/contrib/ntp/scripts/plot_summary.1plot_summaryman
  stable/12/contrib/ntp/scripts/plot_summary.1plot_summarymdoc
  stable/12/contrib/ntp/scripts/plot_summary.html
  stable/12/contrib/ntp/scripts/plot_summary.man.in
  stable/12/contrib/ntp/scripts/plot_summary.mdoc.in
  stable/12/contrib/ntp/scripts/summary-opts
  stable/12/contrib/ntp/scripts/summary.1summaryman
  stable/12/contrib/ntp/scripts/summary.1summarymdoc
  stable/12/contrib/ntp/scripts/summary.html
  stable/12/contrib/ntp/scripts/summary.man.in
  stable/12/contrib/ntp/scripts/summary.mdoc.in
  stable/12/contrib/ntp/scripts/update-leap/Makefile.in
  stable/12/contrib/ntp/scripts/update-leap/invoke-update-leap.texi
  stable/12/contrib/ntp/scripts/update-leap/update-leap-opts
  stable/12/contrib/ntp/scripts/update-leap/update-leap.1update-leapman
  stable/12/contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
  stable/12/contrib/ntp/scripts/update-leap/update-leap.html
  stable/12/contrib/ntp/scripts/update-leap/update-leap.man.in
  stable/12/contrib/ntp/scripts/update-leap/update-leap.mdoc.in
  stable/12/contrib/ntp/sntp/COPYRIGHT
  stable/12/contrib/ntp/sntp/Makefile.in
  stable/12/contrib/ntp/sntp/aclocal.m4
  stable/12/contrib/ntp/sntp/config.h.in
  stable/12/contrib/ntp/sntp/configure
  stable/12/contrib/ntp/sntp/include/Makefile.in
  stable/12/contrib/ntp/sntp/include/version.def
  stable/12/contrib/ntp/sntp/include/version.texi
  stable/12/contrib/ntp/sntp/invoke-sntp.texi
  stable/12/contrib/ntp/sntp/libevent/Makefile.in
  stable/12/contrib/ntp/sntp/libevent/aclocal.m4
  stable/12/contrib/ntp/sntp/libevent/build-aux/ar-lib
  stable/12/contrib/ntp/sntp/libevent/build-aux/compile
  stable/12/contrib/ntp/sntp/libevent/build-aux/config.guess
  stable/12/contrib/ntp/sntp/libevent/build-aux/config.sub
  stable/12/contrib/ntp/sntp/libevent/build-aux/depcomp
  stable/12/contrib/ntp/sntp/libevent/build-aux/install-sh
  stable/12/contrib/ntp/sntp/libevent/build-aux/missing
  stable/12/contrib/ntp/sntp/libevent/build-aux/test-driver
  stable/12/contrib/ntp/sntp/libevent/build-aux/ylwrap
  stable/12/contrib/ntp/sntp/libevent/config.h.in
  stable/12/contrib/ntp/sntp/libevent/configure
  stable/12/contrib/ntp/sntp/libevent/evconfig-private.h
  stable/12/contrib/ntp/sntp/libevent/test/regress.gen.c
  stable/12/contrib/ntp/sntp/libevent/test/regress.gen.h
  stable/12/contrib/ntp/sntp/libopts/Makefile.in
  stable/12/contrib/ntp/sntp/libopts/autoopts/options.h
  stable/12/contrib/ntp/sntp/libopts/genshell.h
  stable/12/contrib/ntp/sntp/m4/ntp_libntp.m4
  stable/12/contrib/ntp/sntp/m4/version.m4
  stable/12/contrib/ntp/sntp/main.c
  stable/12/contrib/ntp/sntp/networking.c
  stable/12/contrib/ntp/sntp/scm-rev
  stable/12/contrib/ntp/sntp/scripts/Makefile.in
  stable/12/contrib/ntp/sntp/sntp-opts.c
  stable/12/contrib/ntp/sntp/sntp-opts.h
  stable/12/contrib/ntp/sntp/sntp.1sntpman
  stable/12/contrib/ntp/sntp/sntp.1sntpmdoc
  stable/12/contrib/ntp/sntp/sntp.html
  stable/12/contrib/ntp/sntp/sntp.man.in
  stable/12/contrib/ntp/sntp/sntp.mdoc.in
  stable/12/contrib/ntp/sntp/tests/Makefile.in
  stable/12/contrib/ntp/sntp/unity/Makefile.in
  stable/12/contrib/ntp/sntp/version.c
  stable/12/contrib/ntp/util/Makefile.in
  stable/12/contrib/ntp/util/invoke-ntp-keygen.texi
  stable/12/contrib/ntp/util/ntp-keygen-opts.c
  stable/12/contrib/ntp/util/ntp-keygen-opts.h
  stable/12/contrib/ntp/util/ntp-keygen.1ntp-keygenman
  stable/12/contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
  stable/12/contrib/ntp/util/ntp-keygen.html
  stable/12/contrib/ntp/util/ntp-keygen.man.in
  stable/12/contrib/ntp/util/ntp-keygen.mdoc.in
  stable/12/contrib/ntp/util/ntptime.c
  stable/12/usr.sbin/ntp/libntp/Makefile
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/contrib/ntp/COPYRIGHT
==============================================================================
--- stable/11/contrib/ntp/COPYRIGHT	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/11/contrib/ntp/COPYRIGHT	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,16 +1,15 @@
 This file is automatically generated from html/copyright.html
-
   Copyright Notice
-  
+
    jpg "Clone me," says Dolly sheepishly.
-   
+
    Last update: 2-Jan-2017 11:58 UTC
-     _________________________________________________________________
-   
-   The following copyright notice applies to all files collectively
-   called the Network Time Protocol Version 4 Distribution. Unless
-   specifically declared otherwise in an individual file, this entire
-   notice applies as if the text was explicitly included in the file.
+     __________________________________________________________________
+
+   The following copyright notice applies to all files collectively called
+   the Network Time Protocol Version 4 Distribution. Unless specifically
+   declared otherwise in an individual file, this entire notice applies as
+   if the text was explicitly included in the file.
 ***********************************************************************
 *                                                                     *
 * Copyright (c) University of Delaware 1992-2015                      *
@@ -62,13 +61,13 @@ This file is automatically generated from html/copyrig
 ***********************************************************************
 
    The following individuals contributed in part to the Network Time
-   Protocol Distribution Version 4 and are acknowledged as authors of
-   this work.
+   Protocol Distribution Version 4 and are acknowledged as authors of this
+   work.
     1. [1]Takao Abe <takao_abe@xurb.jp> Clock driver for JJY receivers
     2. [2]Mark Andrews <mark_andrews@isc.org> Leitch atomic clock
        controller
-    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial
-       line and PCI-bus devices
+    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial line
+       and PCI-bus devices
     4. [4]Viraj Bais <vbais@mailman1.intel.com> and [5]Clayton Kirkwood
        <kirkwood@striderfm.intel.com> port to WindowsNT 3.5
     5. [6]Michael Barone <michael,barone@lmco.com> GPSVME fixes
@@ -84,13 +83,12 @@ This file is automatically generated from html/copyrig
        <Jean-Francois.Boudreault@viagenie.qc.ca> IPv6 support
    12. [13]Reg Clemens <reg@dwf.com> Oncore driver (Current maintainer)
    13. [14]Steve Clift <clift@ml.csiro.au> OMEGA clock driver
-   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and
-       help with target configuration
+   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and help
+       with target configuration
    15. [16]Sven Dietrich <sven_dietrich@trimble.com> Palisade reference
        clock driver, NT adj. residuals, integrated Greg's Winnt port.
    16. [17]John A. Dundas III <dundas@salt.jpl.nasa.gov> Apple A/UX port
-   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux
-       port
+   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux port
    18. [19]Dennis Ferguson <dennis@mrbill.canet.ca> foundation code for
        NTP Version 2 as specified in RFC-1119
    19. [20]John Hay <jhay@icomtek.csir.co.za> IPv6 support and testing
@@ -122,9 +120,8 @@ This file is automatically generated from html/copyrig
        code for Version 3 as specified in RFC-1305
    36. [39]Danny Mayer <mayer@ntp.org>Network I/O, Windows Port, Code
        Maintenance
-   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation,
-       precision kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19,
-       22, 36
+   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation, precision
+       kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19, 22, 36
    38. [41]Wolfgang Moeller <moeller@gwdgv1.dnet.gwdg.de> VMS port
    39. [42]Jeffrey Mogul <mogul@pa.dec.com> ntptrace utility
    40. [43]Tom Moore <tmoore@fievel.daytonoh.ncr.com> i386 svr4 port
@@ -136,22 +133,18 @@ This file is automatically generated from html/copyrig
    44. [48]Rainer Pruy <Rainer.Pruy@informatik.uni-erlangen.de>
        monitoring/trap scripts, statistics file handling
    45. [49]Dirce Richards <dirce@zk3.dec.com> Digital UNIX V4.0 port
-   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for
-       NetInfo
+   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for NetInfo
    47. [51]Nick Sayer <mrapple@quack.kfu.com> SunOS streams modules
    48. [52]Jack Sasportas <jack@innovativeinternet.com> Saved a Lot of
        space on the stuff in the html/pic/ subdirectory
    49. [53]Ray Schnitzler <schnitz@unipress.com> Unixware1 port
    50. [54]Michael Shields <shields@tembel.org> USNO clock driver
-   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock
-       driver
+   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock driver
    52. [56]Harlan Stenn <harlan@pfcs.com> GNU automake/autoconfigure
        makeover, various other bits (see the ChangeLog)
    53. [57]Kenneth Stone <ken@sdd.hp.com> HP-UX port
-   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast
-       support
-   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock
-       driver
+   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast support
+   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock driver
    56. [60]Brian Utterback <brian.utterback@oracle.com> General codebase,
        Solaris issues
    57. [61]Loganaden Velvindron <loganaden@gmail.com> Sandboxing
@@ -160,7 +153,7 @@ This file is automatically generated from html/copyrig
        TrueTime clock driver
    59. [63]Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de> corrected and
        validated HTML documents according to the HTML DTD
-     _________________________________________________________________
+     __________________________________________________________________
 
 References
 

Modified: stable/11/contrib/ntp/ChangeLog
==============================================================================
--- stable/11/contrib/ntp/ChangeLog	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/11/contrib/ntp/ChangeLog	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,4 +1,49 @@
 ---
+(4.2.8p13) 2019/03/07 Released by Harlan Stenn <stenn@ntp.org>
+
+* [Sec 3565] Crafted null dereference attack in authenticated
+	     mode 6 packet <perlinger@ntp.org>
+  - reported by Magnus Stubman
+* [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger@ntp.org>
+  - applied patch by Ian Lepore
+* [Bug 3558] Crash and integer size bug <perlinger@ntp.org>
+  - isolate and fix linux/windows specific code issue
+* [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger@ntp.org>
+  - provide better function for incremental string formatting
+* [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3554] config revoke stores incorrect value <perlinger@ntp.org>
+  - original finding by Gerry Garvey, additional cleanup needed
+* [Bug 3549] Spurious initgroups() error message <perlinger@ntp.org>
+  - patch by Christous Zoulas
+* [Bug 3548] Signature not verified on windows system <perlinger@ntp.org>
+  - finding by Chen Jiabin, plus another one by me
+* [Bug 3541] patch to fix STA_NANO struct timex units <perlinger@ntp.org>
+  - applied patch by Maciej Szmigiero
+* [Bug 3540] Cannot set minsane to 0 anymore <perlinger@ntp.org>
+  - applied patch by Andre Charbonneau
+* [Bug 3539] work_fork build fails when droproot is not supported <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3538] Build fails for no-MMU targets <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3535] libparse won't handle GPS week rollover <perlinger@ntp.org>
+  - refactored handling of GPS era based on 'tos basedate' for
+    parse (TSIP) and JUPITER clocks
+* [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger@ntp.org>
+  - patch by Daniel J. Luke; this does not fix a potential linker
+    regression issue on MacOS.
+* [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
+  anomaly <perlinger@ntp.org>, reported by GGarvey.
+  - --enable-bug3527-fix support by HStenn
+* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3471] Check for openssl/[ch]mac.h.  <perlinger@ntp.org>
+  - added missing check, reported by Reinhard Max <perlinger@ntp.org>
+* [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+  - this is a variant of [bug 3558] and should be fixed with it
+* Implement --disable-signalled-io
+
+---
 (4.2.8p12) 2018/08/14 Released by Harlan Stenn <stenn@ntp.org>
 
 * [Sec 3505] CVE-2018-12327 - Arbitrary Code Execution Vulnerability

Modified: stable/11/contrib/ntp/CommitLog
==============================================================================
--- stable/11/contrib/ntp/CommitLog	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/11/contrib/ntp/CommitLog	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,363 +1,6898 @@
-ChangeSet@1.3729, 2017-02-01 07:39:35-05:00, stenn@deacon.udel.edu
+ChangeSet@1.3849, 2019-02-20 17:13:36-08:00, harlan@ntp-build.tal1.ntfo.org
+  Update NEWS file
+
+  NEWS@1.200 +3 -0
+    Update NEWS file
+
+ChangeSet@1.3848, 2019-02-20 09:44:58-08:00, harlan@ntp-build.tal1.ntfo.org
+  build system cleanups
+
+  build@1.50 +1 -1
+    build system cleanups
+
+  scripts/build/check--help@1.4 +2 -2
+    build system cleanups
+
+  sntp/libopts/autoopts/options.h@1.31 +1 -1
+    build system cleanups
+
+  sntp/libopts/genshell.h@1.31 +1 -1
+    build system cleanups
+
+ChangeSet@1.3847, 2019-02-18 22:26:26-08:00, harlan@ntp-build.tal1.ntfo.org
+  ChangeLog and NEWS description cleanups
+
+  ChangeLog@1.1971 +4 -4
+    ChangeLog and NEWS description cleanups
+
+  NEWS@1.199 +4 -2
+    ChangeLog and NEWS description cleanups
+
+ChangeSet@1.3844.1.4, 2019-02-18 20:10:25-08:00, harlan@ntp-build.tal1.ntfo.org
+  NEWS file update
+
+  NEWS@1.198 +49 -2
+    NEWS file update
+
+ChangeSet@1.3844.1.3, 2019-02-16 07:36:50+00:00, stenn@stenn.ntp.org
+  Improve messages around signalled IO handling in configure
+
+  sntp/m4/ntp_libntp.m4@1.38 +5 -0
+    Improve messages around signalled IO handling in configure
+
+ChangeSet@1.3844.1.2, 2019-02-15 13:27:05+00:00, stenn@stenn.ntp.org
+  Implement --disable-signalled-io
+
+  ChangeLog@1.1968.1.2 +1 -0
+    Implement --disable-signalled-io
+
+  sntp/m4/ntp_libntp.m4@1.37 +22 -2
+    Implement --disable-signalled-io
+
+ChangeSet@1.3844.1.1, 2019-01-17 04:16:52+00:00, stenn@psp-deb1.ntp.org
+  Cleanup
+
+  ChangeLog@1.1968.1.1 +0 -1
+    Cleanup
+
+ChangeSet@1.3845, 2019-01-16 21:42:59+01:00, perlinger@ntp.org
+  [Sec 3565] null pointer crash by remote attack
+
+  ChangeLog@1.1969 +3 -0
+    [Sec 3565] null pointer crash by remote attack
+
+  ntpd/ntp_control.c@1.233 +17 -9
+    [Sec 3565] null pointer crash by remote attack
+
+ChangeSet@1.3827.1.2, 2018-12-15 13:25:25+00:00, stenn@psp-deb1.ntp.org
+  bug3527 fixes
+
+  ChangeLog@1.1952.1.2 +3 -3
+    bug3527 fixes
+
+  configure.ac@1.614.1.1 +18 -0
+    bug3527 fixes
+
+  ntpd/ntp_request.c@1.129 +7 -4
+    bug3527 fixes
+
+  ntpdc/ntpdc_ops.c@1.85 +8 -3
+    bug3527 fixes
+
+ChangeSet@1.3827.15.1, 2018-12-12 07:37:12+01:00, perlinger@ntp.org
+  [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  ChangeLog@1.1952.15.1 +4 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  libntp/work_fork.c@1.20.2.1 +2 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+ChangeSet@1.3827.14.1, 2018-12-11 07:42:01+01:00, perlinger@ntp.org
+  [Bug 3558] Crash and integer size bug
+  [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+   - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  ChangeLog@1.1952.14.1 +6 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  configure.ac@1.615 +1 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - search for BANCOMM SDK lib
+
+  ntpd/refclock_bancomm.c@1.17 +96 -23
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+ChangeSet@1.3827.11.2, 2018-12-05 06:58:13+01:00, perlinger@ntp.org
+  Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+   - stricter buffer range checks
+
+  libntp/xsbprintf.c@1.2 +11 -13
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/run-sbprintf.c@1.2 +8 -4
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/sbprintf.c@1.2 +28 -0
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+ChangeSet@1.3827.10.2, 2018-12-03 02:29:24-05:00, stenn@psp-fb1.ntp.org
+  Update Changelog for latest fix for 3471
+
+  ChangeLog@1.1952.10.2 +6 -1
+    Update Changelog for latest fix for 3471
+
+ChangeSet@1.3827.13.1, 2018-12-02 09:05:37+01:00, perlinger@ntp.org
+  [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ChangeLog@1.1952.13.1 +4 -0
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ntpdate/ntpdate.c@1.102 +12 -9
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+ChangeSet@1.3827.12.1, 2018-12-02 08:17:05+01:00, perlinger@ntp.org
+  [Bug 3554] config revoke stores incorrect value
+   - plus some additional cleanup
+
+  ChangeLog@1.1952.12.1 +4 -0
+    [Bug 3554] config revoke stores incorrect value
+
+  include/ntpd.h@1.204 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+
+  ntpd/ntp_config.c@1.365.2.1 +12 -3
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value for shift; clamp values
+
+  ntpd/ntp_crypto.c@1.190.1.1 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - avoid possible integer truncation
+
+  ntpd/ntp_timer.c@1.97 +4 -4
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+     - avoid possible integer truncation
+
+ChangeSet@1.3827.11.1, 2018-12-01 12:10:51+01:00, perlinger@ntp.org
+  [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+   - provide better function for incremental string formatting
+
+  ChangeLog@1.1952.11.1 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better function for incremental string formatting
+
+  include/ntp_stdlib.h@1.87 +3 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better API for incremental string formatting
+
+  libntp/Makefile.am@1.82 +1 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.1 +77 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - implement new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.0 +0 -0
+
+  ntpd/ntp_loopfilter.c@1.192 +18 -14
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - use new API for incremental string formatting
+
+  ports/winnt/vs2005/libntp.vcproj@1.27 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2008/libntp/libntp.vcproj@1.58 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj@1.14 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj.filters@1.12 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.4 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.4 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  tests/libntp/Makefile.am@1.100 +12 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.1 +72 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.0 +0 -0
+
+  tests/libntp/sbprintf.c@1.1 +67 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/sbprintf.c@1.0 +0 -0
+
+ChangeSet@1.3827.10.1, 2018-11-30 06:34:35+01:00, perlinger@ntp.org
+  [Bug 3471] Check for openssl/[ch]mac.h
+   - added missing check in code
+
+  ChangeLog@1.1952.10.1 +1 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+  libntp/authreadkeys.c@1.33 +2 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+ChangeSet@1.3827.9.1, 2018-11-11 12:03:14+01:00, perlinger@ntp.org
+  [Bug 3549] Spurious initgroups() error message
+
+  ChangeLog@1.1952.9.1 +4 -0
+    [Bug 3549] Spurious initgroups() error message
+
+  ntpd/ntpd.c@1.177.2.1 +33 -17
+    [Bug 3549] Spurious initgroups() error message
+     - make 'set_user_group_ids()' idempotent: If we're already there, don't complain.
+
+ChangeSet@1.3827.8.1, 2018-11-11 11:07:23+01:00, perlinger@ntp.org
+  [Bug 3548] Signature not verified on windows system
+
+  ChangeLog@1.1952.8.1 +4 -0
+    [Bug 3548] Signature not verified on windows system
+
+  ntpd/ntp_crypto.c@1.191 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+  sntp/networking.c@1.70 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+ChangeSet@1.3827.7.1, 2018-11-11 09:56:34+01:00, perlinger@ntp.org
+  [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ChangeLog@1.1952.7.1 +4 -0
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpd/ntp_control.c@1.232 +9 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpdc/ntpdc_ops.c@1.83.1.1 +7 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  util/ntptime.c@1.28 +0 -4
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+ChangeSet@1.3827.6.1, 2018-10-27 11:00:56+02:00, perlinger@ntp.org
+  [Bug 3540] Cannot set minsane to 0 anymore
+
+  ChangeLog@1.1952.6.1 +4 -0
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+  ntpd/ntp_config.c@1.365.1.1 +2 -2
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+ChangeSet@1.3827.5.1, 2018-10-27 10:33:55+02:00, perlinger@ntp.org
+  [Bug 3539] work_fork build fails when droproot is not supported
+
+  ChangeLog@1.1952.5.1 +4 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+  libntp/work_fork.c@1.20.1.1 +2 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+ChangeSet@1.3827.4.1, 2018-10-27 10:23:05+02:00, perlinger@ntp.org
+  [Bug 3538] Build fails for no-MMU targets
+
+  ChangeLog@1.1952.4.1 +4 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+  ntpd/ntpd.c@1.177.1.1 +2 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+ChangeSet@1.3827.3.1, 2018-10-13 08:03:48+02:00, perlinger@ntp.org
+  [Bug 3535] libparse won't handle GPS week rollover
+
+  ChangeLog@1.1952.3.1 +5 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  include/ntp_calendar.h@1.20 +21 -3
+    [Bug 3535] libparse won't handle GPS week rollover
+     - GPS week era support
+
+  include/parse.h@1.15 +0 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+     - remove GPSWRAP definition to avoid lurking uses
+
+  libntp/calyearstart.c@1.7 +1 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  libntp/ntp_calendar.c@1.21 +38 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set GPS base week as first Sunday on or after base date
+
+  libparse/clk_trimtsip.c@1.15 +5 -9
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+  libparse/gpstolfp.c@1.14 +0 -5
+    [Bug 3535] libparse won't handle GPS week rollover
+     - don't try to expand weeks in the conversion
+
+  ntpd/ntp_config.c@1.366 +4 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set basedate based on build stamp if not set explicitely
+
+  ntpd/refclock_jupiter.c@1.32 +1 -56
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code instead of local copy
+
+  ntpd/refclock_parse.c@1.87 +1 -2
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+ChangeSet@1.3827.2.1, 2018-10-02 18:03:33+02:00, perlinger@ntp.org
+  [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  ChangeLog@1.1952.2.1 +5 -0
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  libntp/work_fork.c@1.21 +6 -3
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+     - make existence of 'set_user_group_ids()' depend on HAVE_DROPROOT
+
+ChangeSet@1.3827.1.1, 2018-10-02 17:38:18+02:00, perlinger@ntp.org
+  [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ChangeLog@1.1952.1.1 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpd/ntp_request.c@1.128 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpdc/ntpdc_ops.c@1.84 +4 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+ChangeSet@1.3828, 2018-09-12 22:52:00+02:00, perlinger@ntp.org
+  [Bug 3526] Incorrect poll interval in packet
+
+  ChangeLog@1.1953 +4 -0
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntp_proto.c@1.423 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntpd.c@1.178 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+  sntp/main.c@1.104 +2 -3
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+ChangeSet@1.3827, 2018-08-14 08:31:08-04:00, stenn@deacon.udel.edu
+  NTP_4_2_8P12
+  TAG: NTP_4_2_8P12
+
+  ChangeLog@1.1952 +1 -0
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.conf.texi@1.217 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.keys.texi@1.202 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntpd.texi@1.516 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5man@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5mdoc@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.html@1.200 +92 -105
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.man.in@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.mdoc.in@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5man@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5mdoc@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.html@1.199 +17 -29
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.man.in@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.mdoc.in@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.c@1.538 +7 -7
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.h@1.537 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdman@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdmdoc@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntpd.html@1.191 +101 -145
+    NTP_4_2_8P12
+
+  ntpd/ntpd.man.in@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.mdoc.in@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/invoke-ntpdc.texi@1.513 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.c@1.531 +7 -7
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.h@1.530 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.html@1.359 +57 -77
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/invoke-ntpq.texi@1.523 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.c@1.540 +7 -7
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.h@1.538 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqman@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqmdoc@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq.html@1.190 +105 -129
+    NTP_4_2_8P12
+
+  ntpq/ntpq.man.in@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.mdoc.in@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/invoke-ntpsnmpd.texi@1.515 +1 -1
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.c@1.533 +7 -7
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.html@1.185 +10 -14
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  packageinfo.sh@1.542 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjman@1.105 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.html@1.106 +1 -1
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.man.in@1.104 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.mdoc.in@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/invoke-calc_tickadj.texi@1.109 +1 -1
+    NTP_4_2_8P12
+
+  scripts/invoke-plot_summary.texi@1.127 +2 -2
+    NTP_4_2_8P12
+
+  scripts/invoke-summary.texi@1.126 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/invoke-ntp-wait.texi@1.336 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait-opts@1.72 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitman@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitmdoc@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.html@1.355 +31 -49
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.man.in@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/invoke-ntpsweep.texi@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepmdoc@1.112 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.html@1.127 +33 -44
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.mdoc.in@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/invoke-ntptrace.texi@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptraceman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptracemdoc@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.html@1.128 +27 -36
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.mdoc.in@1.114 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary-opts@1.75 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summaryman@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summarymdoc@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.html@1.130 +29 -47
+    NTP_4_2_8P12
+
+  scripts/plot_summary.man.in@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.mdoc.in@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.1summaryman@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.1summarymdoc@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.html@1.129 +27 -39
+    NTP_4_2_8P12
+
+  scripts/summary.man.in@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.mdoc.in@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/invoke-update-leap.texi@1.25 +1 -1
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap-opts@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapman@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapmdoc@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.html@1.27 +35 -59
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.man.in@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.mdoc.in@1.25 +2 -2
+    NTP_4_2_8P12
+
+  sntp/invoke-sntp.texi@1.515 +23 -27
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.c@1.534 +7 -7
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpman@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpmdoc@1.350 +2 -2
+    NTP_4_2_8P12
+
+  sntp/sntp.html@1.531 +106 -134
+    NTP_4_2_8P12
+
+  sntp/sntp.man.in@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.mdoc.in@1.350 +2 -2
+    NTP_4_2_8P12
+
+  util/invoke-ntp-keygen.texi@1.518 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.c@1.536 +7 -7
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.h@1.534 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenman@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenmdoc@1.346 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen.html@1.191 +148 -206
+    NTP_4_2_8P12
+
+  util/ntp-keygen.man.in@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.mdoc.in@1.346 +2 -2
+    NTP_4_2_8P12
+
+ChangeSet@1.3826, 2018-08-14 07:16:23-04:00, stenn@deacon.udel.edu
+  Trigger the release of ntp-4.2.8p12
+
+  packageinfo.sh@1.541 +1 -1
+    Trigger the release of ntp-4.2.8p12
+
+ChangeSet@1.3825, 2018-08-13 04:31:37+00:00, stenn@psp-deb1.ntp.org
+  NEWS update
+
+  NEWS@1.197 +1 -1
+    NEWS update
+
+ChangeSet@1.3812.1.10, 2018-08-04 10:31:58+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ChangeLog@1.1942.1.9 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  NEWS@1.192.1.2 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ntpd/ntp_proto.c@1.422 +46 -35
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+ChangeSet@1.3823, 2018-07-28 05:03:57+00:00, stenn@psp-deb1.ntp.org
+  3505 description updates
+
+  ChangeLog@1.1950 +2 -1
+    3505 description updates
+
+  NEWS@1.195 +2 -2
+    3505 description updates
+
+ChangeSet@1.3812.1.9, 2018-07-25 09:56:39+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ChangeLog@1.1942.1.8 +1 -0
+    updates
+
+  NEWS@1.192.1.1 +2 -2
+    updates
+
+  html/authentic.html@1.18 +219 -87
+    updates
+
+ChangeSet@1.3821, 2018-07-25 07:41:01+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ntpd/ntp.conf.html@1.199 +104 -91
+    updates
+
+  ntpd/ntp.keys.html@1.198 +28 -16
+    updates
+
+  ntpd/ntpd.html@1.190 +145 -101
+    updates
+
+  ntpdc/ntpdc.html@1.358 +75 -55
+    updates
+
+  ntpsnmpd/ntpsnmpd.html@1.184 +13 -9
+    updates
+
+  scripts/ntp-wait/ntp-wait.html@1.354 +47 -29
+    updates
+
+  scripts/ntpsweep/ntpsweep.html@1.126 +42 -31
+    updates
+
+  scripts/ntptrace/ntptrace.html@1.127 +34 -25
+    updates
+
+  scripts/plot_summary.html@1.129 +45 -27
+    updates
+
+  scripts/summary.html@1.128 +37 -25
+    updates
+
+  scripts/update-leap/update-leap.html@1.26 +132 -34
+    updates
+
+  sntp/sntp.html@1.530 +107 -83
+    updates
+
+ChangeSet@1.3820, 2018-07-25 07:38:42+00:00, stenn@psp-deb1.ntp.org
+  Bug 3509 tweaks
+
+  NEWS@1.193 +6 -1
+    Bug 3509 tweaks
+
+  sntp/m4/ntp_libntp.m4@1.36 +1 -1
+    Bug 3509 tweaks
+
+ChangeSet@1.3816.1.1, 2018-07-25 07:08:13+02:00, perlinger@ntp.org
+  [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ChangeLog@1.1946.1.1 +3 -0
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ntpd/ntpd.c@1.177 +20 -2
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  sntp/m4/ntp_libntp.m4@1.35 +22 -1
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+ChangeSet@1.3812.1.8, 2018-07-24 09:16:25+00:00, stenn@psp-deb1.ntp.org
+  Symmetric key range is 1-65535.  Update docs.
+
+  html/authentic.html@1.17 +3 -3
+    Symmetric key range is 1-65535.  Update docs.
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:50:19 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC2001530021;
 Thu,  7 Mar 2019 13:50:18 +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)
 server-signature RSA-PSS (4096 bits)
 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 8AC4B868BE;
 Thu,  7 Mar 2019 13:50:18 +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 636C41C7CE;
 Thu,  7 Mar 2019 13:50:18 +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 x27DoISp030639;
 Thu, 7 Mar 2019 13:50:18 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DlvTr030370;
 Thu, 7 Mar 2019 13:47:57 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071347.x27DlvTr030370@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:47:57 +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: r344884 - in stable: 11/contrib/ntp
 11/contrib/ntp/adjtimed 11/contrib/ntp/clockstuff 11/contrib/ntp/include
 11/contrib/ntp/include/isc 11/contrib/ntp/kernel 11/contrib/ntp/kernel/sys
 1...
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ntp 11/contrib/ntp/adjtimed
 11/contrib/ntp/clockstuff 11/contrib/ntp/include 11/contrib/ntp/include/isc
 11/contrib/ntp/kernel 11/contrib/ntp/kernel/sys 11/contrib/ntp/libntp 11/c...
X-SVN-Commit-Revision: 344884
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 8AC4B868BE
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.964,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:50:19 -0000

Author: cy
Date: Thu Mar  7 13:45:36 2019
New Revision: 344884
URL: https://svnweb.freebsd.org/changeset/base/344884

Log:
  MFC r344883:
  
  (MFV r344878:)
  
  4.2.8p12 --> 4.2.8p13
  
  Security:       CVE-2019-8936
                  VuXML: c2576e14-36e2-11e9-9eda-206a8a720317
  Obtained from:  nwtime.org

Added:
  stable/12/contrib/ntp/libntp/xsbprintf.c
     - copied unchanged from r344883, head/contrib/ntp/libntp/xsbprintf.c
Modified:
  stable/12/contrib/ntp/COPYRIGHT
  stable/12/contrib/ntp/ChangeLog
  stable/12/contrib/ntp/CommitLog
  stable/12/contrib/ntp/Makefile.in
  stable/12/contrib/ntp/NEWS
  stable/12/contrib/ntp/aclocal.m4
  stable/12/contrib/ntp/adjtimed/Makefile.in
  stable/12/contrib/ntp/build
  stable/12/contrib/ntp/clockstuff/Makefile.in
  stable/12/contrib/ntp/config.h.in
  stable/12/contrib/ntp/configure
  stable/12/contrib/ntp/configure.ac
  stable/12/contrib/ntp/include/Makefile.in
  stable/12/contrib/ntp/include/isc/Makefile.in
  stable/12/contrib/ntp/include/ntp_calendar.h
  stable/12/contrib/ntp/include/ntp_stdlib.h
  stable/12/contrib/ntp/include/ntpd.h
  stable/12/contrib/ntp/include/parse.h
  stable/12/contrib/ntp/kernel/Makefile.in
  stable/12/contrib/ntp/kernel/sys/Makefile.in
  stable/12/contrib/ntp/libntp/Makefile.am
  stable/12/contrib/ntp/libntp/Makefile.in
  stable/12/contrib/ntp/libntp/authreadkeys.c
  stable/12/contrib/ntp/libntp/calyearstart.c
  stable/12/contrib/ntp/libntp/ntp_calendar.c
  stable/12/contrib/ntp/libntp/work_fork.c
  stable/12/contrib/ntp/libparse/Makefile.in
  stable/12/contrib/ntp/libparse/clk_trimtsip.c
  stable/12/contrib/ntp/libparse/gpstolfp.c
  stable/12/contrib/ntp/ntpd/Makefile.in
  stable/12/contrib/ntp/ntpd/invoke-ntp.conf.texi
  stable/12/contrib/ntp/ntpd/invoke-ntp.keys.texi
  stable/12/contrib/ntp/ntpd/invoke-ntpd.texi
  stable/12/contrib/ntp/ntpd/ntp.conf.5man
  stable/12/contrib/ntp/ntpd/ntp.conf.5mdoc
  stable/12/contrib/ntp/ntpd/ntp.conf.html
  stable/12/contrib/ntp/ntpd/ntp.conf.man.in
  stable/12/contrib/ntp/ntpd/ntp.conf.mdoc.in
  stable/12/contrib/ntp/ntpd/ntp.keys.5man
  stable/12/contrib/ntp/ntpd/ntp.keys.5mdoc
  stable/12/contrib/ntp/ntpd/ntp.keys.html
  stable/12/contrib/ntp/ntpd/ntp.keys.man.in
  stable/12/contrib/ntp/ntpd/ntp.keys.mdoc.in
  stable/12/contrib/ntp/ntpd/ntp_config.c
  stable/12/contrib/ntp/ntpd/ntp_control.c
  stable/12/contrib/ntp/ntpd/ntp_crypto.c
  stable/12/contrib/ntp/ntpd/ntp_loopfilter.c
  stable/12/contrib/ntp/ntpd/ntp_proto.c
  stable/12/contrib/ntp/ntpd/ntp_request.c
  stable/12/contrib/ntp/ntpd/ntp_timer.c
  stable/12/contrib/ntp/ntpd/ntpd-opts.c
  stable/12/contrib/ntp/ntpd/ntpd-opts.h
  stable/12/contrib/ntp/ntpd/ntpd.1ntpdman
  stable/12/contrib/ntp/ntpd/ntpd.1ntpdmdoc
  stable/12/contrib/ntp/ntpd/ntpd.c
  stable/12/contrib/ntp/ntpd/ntpd.html
  stable/12/contrib/ntp/ntpd/ntpd.man.in
  stable/12/contrib/ntp/ntpd/ntpd.mdoc.in
  stable/12/contrib/ntp/ntpd/refclock_bancomm.c
  stable/12/contrib/ntp/ntpd/refclock_jupiter.c
  stable/12/contrib/ntp/ntpd/refclock_parse.c
  stable/12/contrib/ntp/ntpdate/Makefile.in
  stable/12/contrib/ntp/ntpdate/ntpdate.c
  stable/12/contrib/ntp/ntpdc/Makefile.in
  stable/12/contrib/ntp/ntpdc/invoke-ntpdc.texi
  stable/12/contrib/ntp/ntpdc/nl.pl
  stable/12/contrib/ntp/ntpdc/ntpdc-opts.c
  stable/12/contrib/ntp/ntpdc/ntpdc-opts.h
  stable/12/contrib/ntp/ntpdc/ntpdc.1ntpdcman
  stable/12/contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
  stable/12/contrib/ntp/ntpdc/ntpdc.html
  stable/12/contrib/ntp/ntpdc/ntpdc.man.in
  stable/12/contrib/ntp/ntpdc/ntpdc.mdoc.in
  stable/12/contrib/ntp/ntpdc/ntpdc_ops.c
  stable/12/contrib/ntp/ntpq/Makefile.in
  stable/12/contrib/ntp/ntpq/invoke-ntpq.texi
  stable/12/contrib/ntp/ntpq/ntpq-opts.c
  stable/12/contrib/ntp/ntpq/ntpq-opts.h
  stable/12/contrib/ntp/ntpq/ntpq.1ntpqman
  stable/12/contrib/ntp/ntpq/ntpq.1ntpqmdoc
  stable/12/contrib/ntp/ntpq/ntpq.html
  stable/12/contrib/ntp/ntpq/ntpq.man.in
  stable/12/contrib/ntp/ntpq/ntpq.mdoc.in
  stable/12/contrib/ntp/ntpsnmpd/Makefile.in
  stable/12/contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.html
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
  stable/12/contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
  stable/12/contrib/ntp/packageinfo.sh
  stable/12/contrib/ntp/parseutil/Makefile.in
  stable/12/contrib/ntp/scripts/Makefile.in
  stable/12/contrib/ntp/scripts/build/Makefile.in
  stable/12/contrib/ntp/scripts/build/check--help
  stable/12/contrib/ntp/scripts/calc_tickadj/Makefile.in
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
  stable/12/contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
  stable/12/contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
  stable/12/contrib/ntp/scripts/invoke-plot_summary.texi
  stable/12/contrib/ntp/scripts/invoke-summary.texi
  stable/12/contrib/ntp/scripts/lib/Makefile.in
  stable/12/contrib/ntp/scripts/ntp-wait/Makefile.in
  stable/12/contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait-opts
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.html
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
  stable/12/contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
  stable/12/contrib/ntp/scripts/ntpsweep/Makefile.in
  stable/12/contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep-opts
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.html
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
  stable/12/contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
  stable/12/contrib/ntp/scripts/ntptrace/Makefile.in
  stable/12/contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace-opts
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.html
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.man.in
  stable/12/contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
  stable/12/contrib/ntp/scripts/plot_summary-opts
  stable/12/contrib/ntp/scripts/plot_summary.1plot_summaryman
  stable/12/contrib/ntp/scripts/plot_summary.1plot_summarymdoc
  stable/12/contrib/ntp/scripts/plot_summary.html
  stable/12/contrib/ntp/scripts/plot_summary.man.in
  stable/12/contrib/ntp/scripts/plot_summary.mdoc.in
  stable/12/contrib/ntp/scripts/summary-opts
  stable/12/contrib/ntp/scripts/summary.1summaryman
  stable/12/contrib/ntp/scripts/summary.1summarymdoc
  stable/12/contrib/ntp/scripts/summary.html
  stable/12/contrib/ntp/scripts/summary.man.in
  stable/12/contrib/ntp/scripts/summary.mdoc.in
  stable/12/contrib/ntp/scripts/update-leap/Makefile.in
  stable/12/contrib/ntp/scripts/update-leap/invoke-update-leap.texi
  stable/12/contrib/ntp/scripts/update-leap/update-leap-opts
  stable/12/contrib/ntp/scripts/update-leap/update-leap.1update-leapman
  stable/12/contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
  stable/12/contrib/ntp/scripts/update-leap/update-leap.html
  stable/12/contrib/ntp/scripts/update-leap/update-leap.man.in
  stable/12/contrib/ntp/scripts/update-leap/update-leap.mdoc.in
  stable/12/contrib/ntp/sntp/COPYRIGHT
  stable/12/contrib/ntp/sntp/Makefile.in
  stable/12/contrib/ntp/sntp/aclocal.m4
  stable/12/contrib/ntp/sntp/config.h.in
  stable/12/contrib/ntp/sntp/configure
  stable/12/contrib/ntp/sntp/include/Makefile.in
  stable/12/contrib/ntp/sntp/include/version.def
  stable/12/contrib/ntp/sntp/include/version.texi
  stable/12/contrib/ntp/sntp/invoke-sntp.texi
  stable/12/contrib/ntp/sntp/libevent/Makefile.in
  stable/12/contrib/ntp/sntp/libevent/aclocal.m4
  stable/12/contrib/ntp/sntp/libevent/build-aux/ar-lib
  stable/12/contrib/ntp/sntp/libevent/build-aux/compile
  stable/12/contrib/ntp/sntp/libevent/build-aux/config.guess
  stable/12/contrib/ntp/sntp/libevent/build-aux/config.sub
  stable/12/contrib/ntp/sntp/libevent/build-aux/depcomp
  stable/12/contrib/ntp/sntp/libevent/build-aux/install-sh
  stable/12/contrib/ntp/sntp/libevent/build-aux/missing
  stable/12/contrib/ntp/sntp/libevent/build-aux/test-driver
  stable/12/contrib/ntp/sntp/libevent/build-aux/ylwrap
  stable/12/contrib/ntp/sntp/libevent/config.h.in
  stable/12/contrib/ntp/sntp/libevent/configure
  stable/12/contrib/ntp/sntp/libevent/evconfig-private.h
  stable/12/contrib/ntp/sntp/libevent/test/regress.gen.c
  stable/12/contrib/ntp/sntp/libevent/test/regress.gen.h
  stable/12/contrib/ntp/sntp/libopts/Makefile.in
  stable/12/contrib/ntp/sntp/libopts/autoopts/options.h
  stable/12/contrib/ntp/sntp/libopts/genshell.h
  stable/12/contrib/ntp/sntp/m4/ntp_libntp.m4
  stable/12/contrib/ntp/sntp/m4/version.m4
  stable/12/contrib/ntp/sntp/main.c
  stable/12/contrib/ntp/sntp/networking.c
  stable/12/contrib/ntp/sntp/scm-rev
  stable/12/contrib/ntp/sntp/scripts/Makefile.in
  stable/12/contrib/ntp/sntp/sntp-opts.c
  stable/12/contrib/ntp/sntp/sntp-opts.h
  stable/12/contrib/ntp/sntp/sntp.1sntpman
  stable/12/contrib/ntp/sntp/sntp.1sntpmdoc
  stable/12/contrib/ntp/sntp/sntp.html
  stable/12/contrib/ntp/sntp/sntp.man.in
  stable/12/contrib/ntp/sntp/sntp.mdoc.in
  stable/12/contrib/ntp/sntp/tests/Makefile.in
  stable/12/contrib/ntp/sntp/unity/Makefile.in
  stable/12/contrib/ntp/sntp/version.c
  stable/12/contrib/ntp/util/Makefile.in
  stable/12/contrib/ntp/util/invoke-ntp-keygen.texi
  stable/12/contrib/ntp/util/ntp-keygen-opts.c
  stable/12/contrib/ntp/util/ntp-keygen-opts.h
  stable/12/contrib/ntp/util/ntp-keygen.1ntp-keygenman
  stable/12/contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
  stable/12/contrib/ntp/util/ntp-keygen.html
  stable/12/contrib/ntp/util/ntp-keygen.man.in
  stable/12/contrib/ntp/util/ntp-keygen.mdoc.in
  stable/12/contrib/ntp/util/ntptime.c
  stable/12/usr.sbin/ntp/libntp/Makefile
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Added:
  stable/11/contrib/ntp/libntp/xsbprintf.c
     - copied unchanged from r344883, head/contrib/ntp/libntp/xsbprintf.c
Modified:
  stable/11/contrib/ntp/COPYRIGHT
  stable/11/contrib/ntp/ChangeLog
  stable/11/contrib/ntp/CommitLog
  stable/11/contrib/ntp/Makefile.in
  stable/11/contrib/ntp/NEWS
  stable/11/contrib/ntp/aclocal.m4
  stable/11/contrib/ntp/adjtimed/Makefile.in
  stable/11/contrib/ntp/build
  stable/11/contrib/ntp/clockstuff/Makefile.in
  stable/11/contrib/ntp/config.h.in
  stable/11/contrib/ntp/configure
  stable/11/contrib/ntp/configure.ac
  stable/11/contrib/ntp/include/Makefile.in
  stable/11/contrib/ntp/include/isc/Makefile.in
  stable/11/contrib/ntp/include/ntp_calendar.h
  stable/11/contrib/ntp/include/ntp_stdlib.h
  stable/11/contrib/ntp/include/ntpd.h
  stable/11/contrib/ntp/include/parse.h
  stable/11/contrib/ntp/kernel/Makefile.in
  stable/11/contrib/ntp/kernel/sys/Makefile.in
  stable/11/contrib/ntp/libntp/Makefile.am
  stable/11/contrib/ntp/libntp/Makefile.in
  stable/11/contrib/ntp/libntp/authreadkeys.c
  stable/11/contrib/ntp/libntp/calyearstart.c
  stable/11/contrib/ntp/libntp/ntp_calendar.c
  stable/11/contrib/ntp/libntp/work_fork.c
  stable/11/contrib/ntp/libparse/Makefile.in
  stable/11/contrib/ntp/libparse/clk_trimtsip.c
  stable/11/contrib/ntp/libparse/gpstolfp.c
  stable/11/contrib/ntp/ntpd/Makefile.in
  stable/11/contrib/ntp/ntpd/invoke-ntp.conf.texi
  stable/11/contrib/ntp/ntpd/invoke-ntp.keys.texi
  stable/11/contrib/ntp/ntpd/invoke-ntpd.texi
  stable/11/contrib/ntp/ntpd/ntp.conf.5man
  stable/11/contrib/ntp/ntpd/ntp.conf.5mdoc
  stable/11/contrib/ntp/ntpd/ntp.conf.html
  stable/11/contrib/ntp/ntpd/ntp.conf.man.in
  stable/11/contrib/ntp/ntpd/ntp.conf.mdoc.in
  stable/11/contrib/ntp/ntpd/ntp.keys.5man
  stable/11/contrib/ntp/ntpd/ntp.keys.5mdoc
  stable/11/contrib/ntp/ntpd/ntp.keys.html
  stable/11/contrib/ntp/ntpd/ntp.keys.man.in
  stable/11/contrib/ntp/ntpd/ntp.keys.mdoc.in
  stable/11/contrib/ntp/ntpd/ntp_config.c
  stable/11/contrib/ntp/ntpd/ntp_control.c
  stable/11/contrib/ntp/ntpd/ntp_crypto.c
  stable/11/contrib/ntp/ntpd/ntp_loopfilter.c
  stable/11/contrib/ntp/ntpd/ntp_proto.c
  stable/11/contrib/ntp/ntpd/ntp_request.c
  stable/11/contrib/ntp/ntpd/ntp_timer.c
  stable/11/contrib/ntp/ntpd/ntpd-opts.c
  stable/11/contrib/ntp/ntpd/ntpd-opts.h
  stable/11/contrib/ntp/ntpd/ntpd.1ntpdman
  stable/11/contrib/ntp/ntpd/ntpd.1ntpdmdoc
  stable/11/contrib/ntp/ntpd/ntpd.c
  stable/11/contrib/ntp/ntpd/ntpd.html
  stable/11/contrib/ntp/ntpd/ntpd.man.in
  stable/11/contrib/ntp/ntpd/ntpd.mdoc.in
  stable/11/contrib/ntp/ntpd/refclock_bancomm.c
  stable/11/contrib/ntp/ntpd/refclock_jupiter.c
  stable/11/contrib/ntp/ntpd/refclock_parse.c
  stable/11/contrib/ntp/ntpdate/Makefile.in
  stable/11/contrib/ntp/ntpdate/ntpdate.c
  stable/11/contrib/ntp/ntpdc/Makefile.in
  stable/11/contrib/ntp/ntpdc/invoke-ntpdc.texi
  stable/11/contrib/ntp/ntpdc/nl.pl
  stable/11/contrib/ntp/ntpdc/ntpdc-opts.c
  stable/11/contrib/ntp/ntpdc/ntpdc-opts.h
  stable/11/contrib/ntp/ntpdc/ntpdc.1ntpdcman
  stable/11/contrib/ntp/ntpdc/ntpdc.1ntpdcmdoc
  stable/11/contrib/ntp/ntpdc/ntpdc.html
  stable/11/contrib/ntp/ntpdc/ntpdc.man.in
  stable/11/contrib/ntp/ntpdc/ntpdc.mdoc.in
  stable/11/contrib/ntp/ntpdc/ntpdc_ops.c
  stable/11/contrib/ntp/ntpq/Makefile.in
  stable/11/contrib/ntp/ntpq/invoke-ntpq.texi
  stable/11/contrib/ntp/ntpq/ntpq-opts.c
  stable/11/contrib/ntp/ntpq/ntpq-opts.h
  stable/11/contrib/ntp/ntpq/ntpq.1ntpqman
  stable/11/contrib/ntp/ntpq/ntpq.1ntpqmdoc
  stable/11/contrib/ntp/ntpq/ntpq.html
  stable/11/contrib/ntp/ntpq/ntpq.man.in
  stable/11/contrib/ntp/ntpq/ntpq.mdoc.in
  stable/11/contrib/ntp/ntpsnmpd/Makefile.in
  stable/11/contrib/ntp/ntpsnmpd/invoke-ntpsnmpd.texi
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.c
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd-opts.h
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdman
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.html
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.man.in
  stable/11/contrib/ntp/ntpsnmpd/ntpsnmpd.mdoc.in
  stable/11/contrib/ntp/packageinfo.sh
  stable/11/contrib/ntp/parseutil/Makefile.in
  stable/11/contrib/ntp/scripts/Makefile.in
  stable/11/contrib/ntp/scripts/build/Makefile.in
  stable/11/contrib/ntp/scripts/build/check--help
  stable/11/contrib/ntp/scripts/calc_tickadj/Makefile.in
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjman
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.html
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.man.in
  stable/11/contrib/ntp/scripts/calc_tickadj/calc_tickadj.mdoc.in
  stable/11/contrib/ntp/scripts/calc_tickadj/invoke-calc_tickadj.texi
  stable/11/contrib/ntp/scripts/invoke-plot_summary.texi
  stable/11/contrib/ntp/scripts/invoke-summary.texi
  stable/11/contrib/ntp/scripts/lib/Makefile.in
  stable/11/contrib/ntp/scripts/ntp-wait/Makefile.in
  stable/11/contrib/ntp/scripts/ntp-wait/invoke-ntp-wait.texi
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait-opts
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitman
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.1ntp-waitmdoc
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.html
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.man.in
  stable/11/contrib/ntp/scripts/ntp-wait/ntp-wait.mdoc.in
  stable/11/contrib/ntp/scripts/ntpsweep/Makefile.in
  stable/11/contrib/ntp/scripts/ntpsweep/invoke-ntpsweep.texi
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep-opts
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepman
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.1ntpsweepmdoc
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.html
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.man.in
  stable/11/contrib/ntp/scripts/ntpsweep/ntpsweep.mdoc.in
  stable/11/contrib/ntp/scripts/ntptrace/Makefile.in
  stable/11/contrib/ntp/scripts/ntptrace/invoke-ntptrace.texi
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace-opts
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.1ntptraceman
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.1ntptracemdoc
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.html
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.man.in
  stable/11/contrib/ntp/scripts/ntptrace/ntptrace.mdoc.in
  stable/11/contrib/ntp/scripts/plot_summary-opts
  stable/11/contrib/ntp/scripts/plot_summary.1plot_summaryman
  stable/11/contrib/ntp/scripts/plot_summary.1plot_summarymdoc
  stable/11/contrib/ntp/scripts/plot_summary.html
  stable/11/contrib/ntp/scripts/plot_summary.man.in
  stable/11/contrib/ntp/scripts/plot_summary.mdoc.in
  stable/11/contrib/ntp/scripts/summary-opts
  stable/11/contrib/ntp/scripts/summary.1summaryman
  stable/11/contrib/ntp/scripts/summary.1summarymdoc
  stable/11/contrib/ntp/scripts/summary.html
  stable/11/contrib/ntp/scripts/summary.man.in
  stable/11/contrib/ntp/scripts/summary.mdoc.in
  stable/11/contrib/ntp/scripts/update-leap/Makefile.in
  stable/11/contrib/ntp/scripts/update-leap/invoke-update-leap.texi
  stable/11/contrib/ntp/scripts/update-leap/update-leap-opts
  stable/11/contrib/ntp/scripts/update-leap/update-leap.1update-leapman
  stable/11/contrib/ntp/scripts/update-leap/update-leap.1update-leapmdoc
  stable/11/contrib/ntp/scripts/update-leap/update-leap.html
  stable/11/contrib/ntp/scripts/update-leap/update-leap.man.in
  stable/11/contrib/ntp/scripts/update-leap/update-leap.mdoc.in
  stable/11/contrib/ntp/sntp/COPYRIGHT
  stable/11/contrib/ntp/sntp/Makefile.in
  stable/11/contrib/ntp/sntp/aclocal.m4
  stable/11/contrib/ntp/sntp/config.h.in
  stable/11/contrib/ntp/sntp/configure
  stable/11/contrib/ntp/sntp/include/Makefile.in
  stable/11/contrib/ntp/sntp/include/version.def
  stable/11/contrib/ntp/sntp/include/version.texi
  stable/11/contrib/ntp/sntp/invoke-sntp.texi
  stable/11/contrib/ntp/sntp/libevent/Makefile.in
  stable/11/contrib/ntp/sntp/libevent/aclocal.m4
  stable/11/contrib/ntp/sntp/libevent/build-aux/ar-lib
  stable/11/contrib/ntp/sntp/libevent/build-aux/compile
  stable/11/contrib/ntp/sntp/libevent/build-aux/config.guess
  stable/11/contrib/ntp/sntp/libevent/build-aux/config.sub
  stable/11/contrib/ntp/sntp/libevent/build-aux/depcomp
  stable/11/contrib/ntp/sntp/libevent/build-aux/install-sh
  stable/11/contrib/ntp/sntp/libevent/build-aux/missing
  stable/11/contrib/ntp/sntp/libevent/build-aux/test-driver
  stable/11/contrib/ntp/sntp/libevent/build-aux/ylwrap
  stable/11/contrib/ntp/sntp/libevent/config.h.in
  stable/11/contrib/ntp/sntp/libevent/configure
  stable/11/contrib/ntp/sntp/libevent/evconfig-private.h
  stable/11/contrib/ntp/sntp/libevent/test/regress.gen.c
  stable/11/contrib/ntp/sntp/libevent/test/regress.gen.h
  stable/11/contrib/ntp/sntp/libopts/Makefile.in
  stable/11/contrib/ntp/sntp/libopts/autoopts/options.h
  stable/11/contrib/ntp/sntp/libopts/genshell.h
  stable/11/contrib/ntp/sntp/m4/ntp_libntp.m4
  stable/11/contrib/ntp/sntp/m4/version.m4
  stable/11/contrib/ntp/sntp/main.c
  stable/11/contrib/ntp/sntp/networking.c
  stable/11/contrib/ntp/sntp/scm-rev
  stable/11/contrib/ntp/sntp/scripts/Makefile.in
  stable/11/contrib/ntp/sntp/sntp-opts.c
  stable/11/contrib/ntp/sntp/sntp-opts.h
  stable/11/contrib/ntp/sntp/sntp.1sntpman
  stable/11/contrib/ntp/sntp/sntp.1sntpmdoc
  stable/11/contrib/ntp/sntp/sntp.html
  stable/11/contrib/ntp/sntp/sntp.man.in
  stable/11/contrib/ntp/sntp/sntp.mdoc.in
  stable/11/contrib/ntp/sntp/tests/Makefile.in
  stable/11/contrib/ntp/sntp/unity/Makefile.in
  stable/11/contrib/ntp/sntp/version.c
  stable/11/contrib/ntp/util/Makefile.in
  stable/11/contrib/ntp/util/invoke-ntp-keygen.texi
  stable/11/contrib/ntp/util/ntp-keygen-opts.c
  stable/11/contrib/ntp/util/ntp-keygen-opts.h
  stable/11/contrib/ntp/util/ntp-keygen.1ntp-keygenman
  stable/11/contrib/ntp/util/ntp-keygen.1ntp-keygenmdoc
  stable/11/contrib/ntp/util/ntp-keygen.html
  stable/11/contrib/ntp/util/ntp-keygen.man.in
  stable/11/contrib/ntp/util/ntp-keygen.mdoc.in
  stable/11/contrib/ntp/util/ntptime.c
  stable/11/usr.sbin/ntp/libntp/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/contrib/ntp/COPYRIGHT
==============================================================================
--- stable/12/contrib/ntp/COPYRIGHT	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/12/contrib/ntp/COPYRIGHT	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,16 +1,15 @@
 This file is automatically generated from html/copyright.html
-
   Copyright Notice
-  
+
    jpg "Clone me," says Dolly sheepishly.
-   
+
    Last update: 2-Jan-2017 11:58 UTC
-     _________________________________________________________________
-   
-   The following copyright notice applies to all files collectively
-   called the Network Time Protocol Version 4 Distribution. Unless
-   specifically declared otherwise in an individual file, this entire
-   notice applies as if the text was explicitly included in the file.
+     __________________________________________________________________
+
+   The following copyright notice applies to all files collectively called
+   the Network Time Protocol Version 4 Distribution. Unless specifically
+   declared otherwise in an individual file, this entire notice applies as
+   if the text was explicitly included in the file.
 ***********************************************************************
 *                                                                     *
 * Copyright (c) University of Delaware 1992-2015                      *
@@ -62,13 +61,13 @@ This file is automatically generated from html/copyrig
 ***********************************************************************
 
    The following individuals contributed in part to the Network Time
-   Protocol Distribution Version 4 and are acknowledged as authors of
-   this work.
+   Protocol Distribution Version 4 and are acknowledged as authors of this
+   work.
     1. [1]Takao Abe <takao_abe@xurb.jp> Clock driver for JJY receivers
     2. [2]Mark Andrews <mark_andrews@isc.org> Leitch atomic clock
        controller
-    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial
-       line and PCI-bus devices
+    3. [3]Bernd Altmeier <altmeier@atlsoft.de> hopf Elektronik serial line
+       and PCI-bus devices
     4. [4]Viraj Bais <vbais@mailman1.intel.com> and [5]Clayton Kirkwood
        <kirkwood@striderfm.intel.com> port to WindowsNT 3.5
     5. [6]Michael Barone <michael,barone@lmco.com> GPSVME fixes
@@ -84,13 +83,12 @@ This file is automatically generated from html/copyrig
        <Jean-Francois.Boudreault@viagenie.qc.ca> IPv6 support
    12. [13]Reg Clemens <reg@dwf.com> Oncore driver (Current maintainer)
    13. [14]Steve Clift <clift@ml.csiro.au> OMEGA clock driver
-   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and
-       help with target configuration
+   14. [15]Casey Crellin <casey@csc.co.za> vxWorks (Tornado) port and help
+       with target configuration
    15. [16]Sven Dietrich <sven_dietrich@trimble.com> Palisade reference
        clock driver, NT adj. residuals, integrated Greg's Winnt port.
    16. [17]John A. Dundas III <dundas@salt.jpl.nasa.gov> Apple A/UX port
-   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux
-       port
+   17. [18]Torsten Duwe <duwe@immd4.informatik.uni-erlangen.de> Linux port
    18. [19]Dennis Ferguson <dennis@mrbill.canet.ca> foundation code for
        NTP Version 2 as specified in RFC-1119
    19. [20]John Hay <jhay@icomtek.csir.co.za> IPv6 support and testing
@@ -122,9 +120,8 @@ This file is automatically generated from html/copyrig
        code for Version 3 as specified in RFC-1305
    36. [39]Danny Mayer <mayer@ntp.org>Network I/O, Windows Port, Code
        Maintenance
-   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation,
-       precision kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19,
-       22, 36
+   37. [40]David L. Mills <mills@udel.edu> Version 4 foundation, precision
+       kernel; clock drivers: 1, 3, 4, 6, 7, 11, 13, 18, 19, 22, 36
    38. [41]Wolfgang Moeller <moeller@gwdgv1.dnet.gwdg.de> VMS port
    39. [42]Jeffrey Mogul <mogul@pa.dec.com> ntptrace utility
    40. [43]Tom Moore <tmoore@fievel.daytonoh.ncr.com> i386 svr4 port
@@ -136,22 +133,18 @@ This file is automatically generated from html/copyrig
    44. [48]Rainer Pruy <Rainer.Pruy@informatik.uni-erlangen.de>
        monitoring/trap scripts, statistics file handling
    45. [49]Dirce Richards <dirce@zk3.dec.com> Digital UNIX V4.0 port
-   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for
-       NetInfo
+   46. [50]Wilfredo Sánchez <wsanchez@apple.com> added support for NetInfo
    47. [51]Nick Sayer <mrapple@quack.kfu.com> SunOS streams modules
    48. [52]Jack Sasportas <jack@innovativeinternet.com> Saved a Lot of
        space on the stuff in the html/pic/ subdirectory
    49. [53]Ray Schnitzler <schnitz@unipress.com> Unixware1 port
    50. [54]Michael Shields <shields@tembel.org> USNO clock driver
-   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock
-       driver
+   51. [55]Jeff Steinman <jss@pebbles.jpl.nasa.gov> Datum PTS clock driver
    52. [56]Harlan Stenn <harlan@pfcs.com> GNU automake/autoconfigure
        makeover, various other bits (see the ChangeLog)
    53. [57]Kenneth Stone <ken@sdd.hp.com> HP-UX port
-   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast
-       support
-   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock
-       driver
+   54. [58]Ajit Thyagarajan <ajit@ee.udel.edu>IP multicast/anycast support
+   55. [59]Tomoaki TSURUOKA <tsuruoka@nc.fukuoka-u.ac.jp>TRAK clock driver
    56. [60]Brian Utterback <brian.utterback@oracle.com> General codebase,
        Solaris issues
    57. [61]Loganaden Velvindron <loganaden@gmail.com> Sandboxing
@@ -160,7 +153,7 @@ This file is automatically generated from html/copyrig
        TrueTime clock driver
    59. [63]Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de> corrected and
        validated HTML documents according to the HTML DTD
-     _________________________________________________________________
+     __________________________________________________________________
 
 References
 

Modified: stable/12/contrib/ntp/ChangeLog
==============================================================================
--- stable/12/contrib/ntp/ChangeLog	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/12/contrib/ntp/ChangeLog	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,4 +1,49 @@
 ---
+(4.2.8p13) 2019/03/07 Released by Harlan Stenn <stenn@ntp.org>
+
+* [Sec 3565] Crafted null dereference attack in authenticated
+	     mode 6 packet <perlinger@ntp.org>
+  - reported by Magnus Stubman
+* [Bug 3560] Fix build when HAVE_DROPROOT is not defined <perlinger@ntp.org>
+  - applied patch by Ian Lepore
+* [Bug 3558] Crash and integer size bug <perlinger@ntp.org>
+  - isolate and fix linux/windows specific code issue
+* [Bug 3556] ntp_loopfilter.c snprintf compilation warnings <perlinger@ntp.org>
+  - provide better function for incremental string formatting
+* [Bug 3555] Tidy up print alignment of debug output from ntpdate <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3554] config revoke stores incorrect value <perlinger@ntp.org>
+  - original finding by Gerry Garvey, additional cleanup needed
+* [Bug 3549] Spurious initgroups() error message <perlinger@ntp.org>
+  - patch by Christous Zoulas
+* [Bug 3548] Signature not verified on windows system <perlinger@ntp.org>
+  - finding by Chen Jiabin, plus another one by me
+* [Bug 3541] patch to fix STA_NANO struct timex units <perlinger@ntp.org>
+  - applied patch by Maciej Szmigiero
+* [Bug 3540] Cannot set minsane to 0 anymore <perlinger@ntp.org>
+  - applied patch by Andre Charbonneau
+* [Bug 3539] work_fork build fails when droproot is not supported <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3538] Build fails for no-MMU targets <perlinger@ntp.org>
+  - applied patch by Baruch Siach
+* [Bug 3535] libparse won't handle GPS week rollover <perlinger@ntp.org>
+  - refactored handling of GPS era based on 'tos basedate' for
+    parse (TSIP) and JUPITER clocks
+* [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra) <perlinger@ntp.org>
+  - patch by Daniel J. Luke; this does not fix a potential linker
+    regression issue on MacOS.
+* [Bug 3527 - Backward Incompatible] mode7 clockinfo fudgeval2 packet
+  anomaly <perlinger@ntp.org>, reported by GGarvey.
+  - --enable-bug3527-fix support by HStenn
+* [Bug 3526] Incorrect poll interval in packet <perlinger@ntp.org>
+  - applied patch by Gerry Garvey
+* [Bug 3471] Check for openssl/[ch]mac.h.  <perlinger@ntp.org>
+  - added missing check, reported by Reinhard Max <perlinger@ntp.org>
+* [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+  - this is a variant of [bug 3558] and should be fixed with it
+* Implement --disable-signalled-io
+
+---
 (4.2.8p12) 2018/08/14 Released by Harlan Stenn <stenn@ntp.org>
 
 * [Sec 3505] CVE-2018-12327 - Arbitrary Code Execution Vulnerability

Modified: stable/12/contrib/ntp/CommitLog
==============================================================================
--- stable/12/contrib/ntp/CommitLog	Thu Mar  7 13:36:00 2019	(r344883)
+++ stable/12/contrib/ntp/CommitLog	Thu Mar  7 13:45:36 2019	(r344884)
@@ -1,363 +1,6898 @@
-ChangeSet@1.3729, 2017-02-01 07:39:35-05:00, stenn@deacon.udel.edu
+ChangeSet@1.3849, 2019-02-20 17:13:36-08:00, harlan@ntp-build.tal1.ntfo.org
+  Update NEWS file
+
+  NEWS@1.200 +3 -0
+    Update NEWS file
+
+ChangeSet@1.3848, 2019-02-20 09:44:58-08:00, harlan@ntp-build.tal1.ntfo.org
+  build system cleanups
+
+  build@1.50 +1 -1
+    build system cleanups
+
+  scripts/build/check--help@1.4 +2 -2
+    build system cleanups
+
+  sntp/libopts/autoopts/options.h@1.31 +1 -1
+    build system cleanups
+
+  sntp/libopts/genshell.h@1.31 +1 -1
+    build system cleanups
+
+ChangeSet@1.3847, 2019-02-18 22:26:26-08:00, harlan@ntp-build.tal1.ntfo.org
+  ChangeLog and NEWS description cleanups
+
+  ChangeLog@1.1971 +4 -4
+    ChangeLog and NEWS description cleanups
+
+  NEWS@1.199 +4 -2
+    ChangeLog and NEWS description cleanups
+
+ChangeSet@1.3844.1.4, 2019-02-18 20:10:25-08:00, harlan@ntp-build.tal1.ntfo.org
+  NEWS file update
+
+  NEWS@1.198 +49 -2
+    NEWS file update
+
+ChangeSet@1.3844.1.3, 2019-02-16 07:36:50+00:00, stenn@stenn.ntp.org
+  Improve messages around signalled IO handling in configure
+
+  sntp/m4/ntp_libntp.m4@1.38 +5 -0
+    Improve messages around signalled IO handling in configure
+
+ChangeSet@1.3844.1.2, 2019-02-15 13:27:05+00:00, stenn@stenn.ntp.org
+  Implement --disable-signalled-io
+
+  ChangeLog@1.1968.1.2 +1 -0
+    Implement --disable-signalled-io
+
+  sntp/m4/ntp_libntp.m4@1.37 +22 -2
+    Implement --disable-signalled-io
+
+ChangeSet@1.3844.1.1, 2019-01-17 04:16:52+00:00, stenn@psp-deb1.ntp.org
+  Cleanup
+
+  ChangeLog@1.1968.1.1 +0 -1
+    Cleanup
+
+ChangeSet@1.3845, 2019-01-16 21:42:59+01:00, perlinger@ntp.org
+  [Sec 3565] null pointer crash by remote attack
+
+  ChangeLog@1.1969 +3 -0
+    [Sec 3565] null pointer crash by remote attack
+
+  ntpd/ntp_control.c@1.233 +17 -9
+    [Sec 3565] null pointer crash by remote attack
+
+ChangeSet@1.3827.1.2, 2018-12-15 13:25:25+00:00, stenn@psp-deb1.ntp.org
+  bug3527 fixes
+
+  ChangeLog@1.1952.1.2 +3 -3
+    bug3527 fixes
+
+  configure.ac@1.614.1.1 +18 -0
+    bug3527 fixes
+
+  ntpd/ntp_request.c@1.129 +7 -4
+    bug3527 fixes
+
+  ntpdc/ntpdc_ops.c@1.85 +8 -3
+    bug3527 fixes
+
+ChangeSet@1.3827.15.1, 2018-12-12 07:37:12+01:00, perlinger@ntp.org
+  [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  ChangeLog@1.1952.15.1 +4 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+  libntp/work_fork.c@1.20.2.1 +2 -0
+    [Bug 3560] Fix build when HAVE_DROPROOT is not defined
+
+ChangeSet@1.3827.14.1, 2018-12-11 07:42:01+01:00, perlinger@ntp.org
+  [Bug 3558] Crash and integer size bug
+  [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+   - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  ChangeLog@1.1952.14.1 +6 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+  configure.ac@1.615 +1 -0
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - search for BANCOMM SDK lib
+
+  ntpd/refclock_bancomm.c@1.17 +96 -23
+    [Bug 3558] Crash and integer size bug
+    [Bug 1674] runtime crashes and sync problems affecting both x86 and x86_64
+     - isolate & fix LP64/LLP64 problem with BANCOMM SDK
+
+ChangeSet@1.3827.11.2, 2018-12-05 06:58:13+01:00, perlinger@ntp.org
+  Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+   - stricter buffer range checks
+
+  libntp/xsbprintf.c@1.2 +11 -13
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/run-sbprintf.c@1.2 +8 -4
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+  tests/libntp/sbprintf.c@1.2 +28 -0
+    Bug 3556 - ntp_loopfilter.c snprintf compilation warnings
+     - stricter buffer range checks
+
+ChangeSet@1.3827.10.2, 2018-12-03 02:29:24-05:00, stenn@psp-fb1.ntp.org
+  Update Changelog for latest fix for 3471
+
+  ChangeLog@1.1952.10.2 +6 -1
+    Update Changelog for latest fix for 3471
+
+ChangeSet@1.3827.13.1, 2018-12-02 09:05:37+01:00, perlinger@ntp.org
+  [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ChangeLog@1.1952.13.1 +4 -0
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+  ntpdate/ntpdate.c@1.102 +12 -9
+    [Bug 3555] Tidy up print alignment of debug output from ntpdate
+
+ChangeSet@1.3827.12.1, 2018-12-02 08:17:05+01:00, perlinger@ntp.org
+  [Bug 3554] config revoke stores incorrect value
+   - plus some additional cleanup
+
+  ChangeLog@1.1952.12.1 +4 -0
+    [Bug 3554] config revoke stores incorrect value
+
+  include/ntpd.h@1.204 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+
+  ntpd/ntp_config.c@1.365.2.1 +12 -3
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value for shift; clamp values
+
+  ntpd/ntp_crypto.c@1.190.1.1 +2 -2
+    [Bug 3554] config revoke stores incorrect value
+     - avoid possible integer truncation
+
+  ntpd/ntp_timer.c@1.97 +4 -4
+    [Bug 3554] config revoke stores incorrect value
+     - sys_{revoke,automax} hold positive log2 value -- unsigned char is enough.
+     - avoid possible integer truncation
+
+ChangeSet@1.3827.11.1, 2018-12-01 12:10:51+01:00, perlinger@ntp.org
+  [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+   - provide better function for incremental string formatting
+
+  ChangeLog@1.1952.11.1 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better function for incremental string formatting
+
+  include/ntp_stdlib.h@1.87 +3 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - provide better API for incremental string formatting
+
+  libntp/Makefile.am@1.82 +1 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.1 +77 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - implement new API for incremental string formatting
+
+  libntp/xsbprintf.c@1.0 +0 -0
+
+  ntpd/ntp_loopfilter.c@1.192 +18 -14
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - use new API for incremental string formatting
+
+  ports/winnt/vs2005/libntp.vcproj@1.27 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2008/libntp/libntp.vcproj@1.58 +4 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj@1.14 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2013/libntp/libntp.vcxproj.filters@1.12 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj@1.4 +3 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  ports/winnt/vs2015/libntp/libntp.vcxproj.filters@1.4 +5 -2
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add source of new API for incremental string formatting
+
+  tests/libntp/Makefile.am@1.100 +12 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.1 +72 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/run-sbprintf.c@1.0 +0 -0
+
+  tests/libntp/sbprintf.c@1.1 +67 -0
+    [Bug 3556] ntp_loopfilter.c snprintf compilation warnings
+     - add string buffer formatting tests
+
+  tests/libntp/sbprintf.c@1.0 +0 -0
+
+ChangeSet@1.3827.10.1, 2018-11-30 06:34:35+01:00, perlinger@ntp.org
+  [Bug 3471] Check for openssl/[ch]mac.h
+   - added missing check in code
+
+  ChangeLog@1.1952.10.1 +1 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+  libntp/authreadkeys.c@1.33 +2 -0
+    [Bug 3471] Check for openssl/[ch]mac.h
+     - added missing check in code
+
+ChangeSet@1.3827.9.1, 2018-11-11 12:03:14+01:00, perlinger@ntp.org
+  [Bug 3549] Spurious initgroups() error message
+
+  ChangeLog@1.1952.9.1 +4 -0
+    [Bug 3549] Spurious initgroups() error message
+
+  ntpd/ntpd.c@1.177.2.1 +33 -17
+    [Bug 3549] Spurious initgroups() error message
+     - make 'set_user_group_ids()' idempotent: If we're already there, don't complain.
+
+ChangeSet@1.3827.8.1, 2018-11-11 11:07:23+01:00, perlinger@ntp.org
+  [Bug 3548] Signature not verified on windows system
+
+  ChangeLog@1.1952.8.1 +4 -0
+    [Bug 3548] Signature not verified on windows system
+
+  ntpd/ntp_crypto.c@1.191 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+  sntp/networking.c@1.70 +2 -1
+    [Bug 3548] Signature not verified on windows system
+     - ntohl() can be a macro
+
+ChangeSet@1.3827.7.1, 2018-11-11 09:56:34+01:00, perlinger@ntp.org
+  [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ChangeLog@1.1952.7.1 +4 -0
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpd/ntp_control.c@1.232 +9 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  ntpdc/ntpdc_ops.c@1.83.1.1 +7 -7
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+  util/ntptime.c@1.28 +0 -4
+    [Bug 3541] patch to fix STA_NANO struct timex units
+
+ChangeSet@1.3827.6.1, 2018-10-27 11:00:56+02:00, perlinger@ntp.org
+  [Bug 3540] Cannot set minsane to 0 anymore
+
+  ChangeLog@1.1952.6.1 +4 -0
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+  ntpd/ntp_config.c@1.365.1.1 +2 -2
+    [Bug 3540] Cannot set minsane to 0 anymore
+
+ChangeSet@1.3827.5.1, 2018-10-27 10:33:55+02:00, perlinger@ntp.org
+  [Bug 3539] work_fork build fails when droproot is not supported
+
+  ChangeLog@1.1952.5.1 +4 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+  libntp/work_fork.c@1.20.1.1 +2 -0
+    [Bug 3539] work_fork build fails when droproot is not supported
+
+ChangeSet@1.3827.4.1, 2018-10-27 10:23:05+02:00, perlinger@ntp.org
+  [Bug 3538] Build fails for no-MMU targets
+
+  ChangeLog@1.1952.4.1 +4 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+  ntpd/ntpd.c@1.177.1.1 +2 -0
+    [Bug 3538] Build fails for no-MMU targets
+
+ChangeSet@1.3827.3.1, 2018-10-13 08:03:48+02:00, perlinger@ntp.org
+  [Bug 3535] libparse won't handle GPS week rollover
+
+  ChangeLog@1.1952.3.1 +5 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  include/ntp_calendar.h@1.20 +21 -3
+    [Bug 3535] libparse won't handle GPS week rollover
+     - GPS week era support
+
+  include/parse.h@1.15 +0 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+     - remove GPSWRAP definition to avoid lurking uses
+
+  libntp/calyearstart.c@1.7 +1 -1
+    [Bug 3535] libparse won't handle GPS week rollover
+
+  libntp/ntp_calendar.c@1.21 +38 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set GPS base week as first Sunday on or after base date
+
+  libparse/clk_trimtsip.c@1.15 +5 -9
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+  libparse/gpstolfp.c@1.14 +0 -5
+    [Bug 3535] libparse won't handle GPS week rollover
+     - don't try to expand weeks in the conversion
+
+  ntpd/ntp_config.c@1.366 +4 -0
+    [Bug 3535] libparse won't handle GPS week rollover
+     - set basedate based on build stamp if not set explicitely
+
+  ntpd/refclock_jupiter.c@1.32 +1 -56
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code instead of local copy
+
+  ntpd/refclock_parse.c@1.87 +1 -2
+    [Bug 3535] libparse won't handle GPS week rollover
+     - use centralized week expansion code
+
+ChangeSet@1.3827.2.1, 2018-10-02 18:03:33+02:00, perlinger@ntp.org
+  [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  ChangeLog@1.1952.2.1 +5 -0
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+
+  libntp/work_fork.c@1.21 +6 -3
+    [Bug 3529] Build failures on Mac OS X 10.13 (High Sierra)
+     - make existence of 'set_user_group_ids()' depend on HAVE_DROPROOT
+
+ChangeSet@1.3827.1.1, 2018-10-02 17:38:18+02:00, perlinger@ntp.org
+  [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ChangeLog@1.1952.1.1 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpd/ntp_request.c@1.128 +5 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+  ntpdc/ntpdc_ops.c@1.84 +4 -0
+    [Bug 3527] fudgeval2 anomaly in mode7 clock info packet
+
+ChangeSet@1.3828, 2018-09-12 22:52:00+02:00, perlinger@ntp.org
+  [Bug 3526] Incorrect poll interval in packet
+
+  ChangeLog@1.1953 +4 -0
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntp_proto.c@1.423 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+
+  ntpd/ntpd.c@1.178 +4 -4
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+  sntp/main.c@1.104 +2 -3
+    [Bug 3526] Incorrect poll interval in packet
+     (side kick: fix function prototypes. C is not C++.)
+
+ChangeSet@1.3827, 2018-08-14 08:31:08-04:00, stenn@deacon.udel.edu
+  NTP_4_2_8P12
+  TAG: NTP_4_2_8P12
+
+  ChangeLog@1.1952 +1 -0
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.conf.texi@1.217 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntp.keys.texi@1.202 +1 -1
+    NTP_4_2_8P12
+
+  ntpd/invoke-ntpd.texi@1.516 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5man@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.5mdoc@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.html@1.200 +92 -105
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.man.in@1.251 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.conf.mdoc.in@1.251 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5man@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.5mdoc@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.html@1.199 +17 -29
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.man.in@1.236 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntp.keys.mdoc.in@1.236 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.c@1.538 +7 -7
+    NTP_4_2_8P12
+
+  ntpd/ntpd-opts.h@1.537 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdman@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.1ntpdmdoc@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpd/ntpd.html@1.191 +101 -145
+    NTP_4_2_8P12
+
+  ntpd/ntpd.man.in@1.345 +3 -3
+    NTP_4_2_8P12
+
+  ntpd/ntpd.mdoc.in@1.345 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/invoke-ntpdc.texi@1.513 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.c@1.531 +7 -7
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc-opts.h@1.530 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.1ntpdcmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.html@1.359 +57 -77
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpdc/ntpdc.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/invoke-ntpq.texi@1.523 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.c@1.540 +7 -7
+    NTP_4_2_8P12
+
+  ntpq/ntpq-opts.h@1.538 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqman@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.1ntpqmdoc@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpq/ntpq.html@1.190 +105 -129
+    NTP_4_2_8P12
+
+  ntpq/ntpq.man.in@1.351 +3 -3
+    NTP_4_2_8P12
+
+  ntpq/ntpq.mdoc.in@1.351 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/invoke-ntpsnmpd.texi@1.515 +1 -1
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.c@1.533 +7 -7
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdman@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.1ntpsnmpdmdoc@1.344 +2 -2
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.html@1.185 +10 -14
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.man.in@1.344 +3 -3
+    NTP_4_2_8P12
+
+  ntpsnmpd/ntpsnmpd.mdoc.in@1.344 +2 -2
+    NTP_4_2_8P12
+
+  packageinfo.sh@1.542 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjman@1.105 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.1calc_tickadjmdoc@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.html@1.106 +1 -1
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.man.in@1.104 +3 -3
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/calc_tickadj.mdoc.in@1.106 +2 -2
+    NTP_4_2_8P12
+
+  scripts/calc_tickadj/invoke-calc_tickadj.texi@1.109 +1 -1
+    NTP_4_2_8P12
+
+  scripts/invoke-plot_summary.texi@1.127 +2 -2
+    NTP_4_2_8P12
+
+  scripts/invoke-summary.texi@1.126 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/invoke-ntp-wait.texi@1.336 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait-opts@1.72 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitman@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.1ntp-waitmdoc@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.html@1.355 +31 -49
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.man.in@1.333 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntp-wait/ntp-wait.mdoc.in@1.334 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/invoke-ntpsweep.texi@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.1ntpsweepmdoc@1.112 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.html@1.127 +33 -44
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntpsweep/ntpsweep.mdoc.in@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/invoke-ntptrace.texi@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptraceman@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.1ntptracemdoc@1.113 +2 -2
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.html@1.128 +27 -36
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.man.in@1.112 +3 -3
+    NTP_4_2_8P12
+
+  scripts/ntptrace/ntptrace.mdoc.in@1.114 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary-opts@1.75 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summaryman@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.1plot_summarymdoc@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/plot_summary.html@1.130 +29 -47
+    NTP_4_2_8P12
+
+  scripts/plot_summary.man.in@1.125 +3 -3
+    NTP_4_2_8P12
+
+  scripts/plot_summary.mdoc.in@1.125 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary-opts@1.74 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.1summaryman@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.1summarymdoc@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/summary.html@1.129 +27 -39
+    NTP_4_2_8P12
+
+  scripts/summary.man.in@1.124 +3 -3
+    NTP_4_2_8P12
+
+  scripts/summary.mdoc.in@1.124 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/invoke-update-leap.texi@1.25 +1 -1
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap-opts@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapman@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.1update-leapmdoc@1.25 +2 -2
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.html@1.27 +35 -59
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.man.in@1.25 +3 -3
+    NTP_4_2_8P12
+
+  scripts/update-leap/update-leap.mdoc.in@1.25 +2 -2
+    NTP_4_2_8P12
+
+  sntp/invoke-sntp.texi@1.515 +23 -27
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.c@1.534 +7 -7
+    NTP_4_2_8P12
+
+  sntp/sntp-opts.h@1.532 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpman@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.1sntpmdoc@1.350 +2 -2
+    NTP_4_2_8P12
+
+  sntp/sntp.html@1.531 +106 -134
+    NTP_4_2_8P12
+
+  sntp/sntp.man.in@1.350 +3 -3
+    NTP_4_2_8P12
+
+  sntp/sntp.mdoc.in@1.350 +2 -2
+    NTP_4_2_8P12
+
+  util/invoke-ntp-keygen.texi@1.518 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.c@1.536 +7 -7
+    NTP_4_2_8P12
+
+  util/ntp-keygen-opts.h@1.534 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenman@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.1ntp-keygenmdoc@1.346 +2 -2
+    NTP_4_2_8P12
+
+  util/ntp-keygen.html@1.191 +148 -206
+    NTP_4_2_8P12
+
+  util/ntp-keygen.man.in@1.346 +3 -3
+    NTP_4_2_8P12
+
+  util/ntp-keygen.mdoc.in@1.346 +2 -2
+    NTP_4_2_8P12
+
+ChangeSet@1.3826, 2018-08-14 07:16:23-04:00, stenn@deacon.udel.edu
+  Trigger the release of ntp-4.2.8p12
+
+  packageinfo.sh@1.541 +1 -1
+    Trigger the release of ntp-4.2.8p12
+
+ChangeSet@1.3825, 2018-08-13 04:31:37+00:00, stenn@psp-deb1.ntp.org
+  NEWS update
+
+  NEWS@1.197 +1 -1
+    NEWS update
+
+ChangeSet@1.3812.1.10, 2018-08-04 10:31:58+00:00, stenn@psp-deb1.ntp.org
+  [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ChangeLog@1.1942.1.9 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  NEWS@1.192.1.2 +1 -0
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+  ntpd/ntp_proto.c@1.422 +46 -35
+    [Bug 3521] Fix a logic bug in the INVALIDNAK checks
+
+ChangeSet@1.3823, 2018-07-28 05:03:57+00:00, stenn@psp-deb1.ntp.org
+  3505 description updates
+
+  ChangeLog@1.1950 +2 -1
+    3505 description updates
+
+  NEWS@1.195 +2 -2
+    3505 description updates
+
+ChangeSet@1.3812.1.9, 2018-07-25 09:56:39+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ChangeLog@1.1942.1.8 +1 -0
+    updates
+
+  NEWS@1.192.1.1 +2 -2
+    updates
+
+  html/authentic.html@1.18 +219 -87
+    updates
+
+ChangeSet@1.3821, 2018-07-25 07:41:01+00:00, stenn@psp-deb1.ntp.org
+  updates
+
+  ntpd/ntp.conf.html@1.199 +104 -91
+    updates
+
+  ntpd/ntp.keys.html@1.198 +28 -16
+    updates
+
+  ntpd/ntpd.html@1.190 +145 -101
+    updates
+
+  ntpdc/ntpdc.html@1.358 +75 -55
+    updates
+
+  ntpsnmpd/ntpsnmpd.html@1.184 +13 -9
+    updates
+
+  scripts/ntp-wait/ntp-wait.html@1.354 +47 -29
+    updates
+
+  scripts/ntpsweep/ntpsweep.html@1.126 +42 -31
+    updates
+
+  scripts/ntptrace/ntptrace.html@1.127 +34 -25
+    updates
+
+  scripts/plot_summary.html@1.129 +45 -27
+    updates
+
+  scripts/summary.html@1.128 +37 -25
+    updates
+
+  scripts/update-leap/update-leap.html@1.26 +132 -34
+    updates
+
+  sntp/sntp.html@1.530 +107 -83
+    updates
+
+ChangeSet@1.3820, 2018-07-25 07:38:42+00:00, stenn@psp-deb1.ntp.org
+  Bug 3509 tweaks
+
+  NEWS@1.193 +6 -1
+    Bug 3509 tweaks
+
+  sntp/m4/ntp_libntp.m4@1.36 +1 -1
+    Bug 3509 tweaks
+
+ChangeSet@1.3816.1.1, 2018-07-25 07:08:13+02:00, perlinger@ntp.org
+  [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ChangeLog@1.1946.1.1 +3 -0
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  ntpd/ntpd.c@1.177 +20 -2
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+  sntp/m4/ntp_libntp.m4@1.35 +22 -1
+    [Bug 3509] Add support for running as non-root on FreeBSD, Darwin, other TrustedBSD platforms
+
+ChangeSet@1.3812.1.8, 2018-07-24 09:16:25+00:00, stenn@psp-deb1.ntp.org
+  Symmetric key range is 1-65535.  Update docs.
+
+  html/authentic.html@1.17 +3 -3
+    Symmetric key range is 1-65535.  Update docs.
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:51:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EAB7E1530200;
 Thu,  7 Mar 2019 13:51:19 +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)
 server-signature RSA-PSS (4096 bits)
 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 9031C86A9E;
 Thu,  7 Mar 2019 13:51:19 +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 8615A1C92A;
 Thu,  7 Mar 2019 13:51:19 +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 x27DpJHC030731;
 Thu, 7 Mar 2019 13:51:19 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DpIdt030726;
 Thu, 7 Mar 2019 13:51:18 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903071351.x27DpIdt030726@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:51:18 +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: r344885 - in stable/12/sbin: fsck_ffs fsdb
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/12/sbin: fsck_ffs fsdb
X-SVN-Commit-Revision: 344885
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9031C86A9E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:51:20 -0000

Author: kib
Date: Thu Mar  7 13:51:18 2019
New Revision: 344885
URL: https://svnweb.freebsd.org/changeset/base/344885

Log:
  MFC r339941 (by mckusick):
  In preparation for adding inode check-hashes, change the fsck_ffs
  inodirty() function to have a pointer to the inode being dirtied.
  No functional change (as for now the parameter is ununsed).

Modified:
  stable/12/sbin/fsck_ffs/dir.c
  stable/12/sbin/fsck_ffs/fsck.h
  stable/12/sbin/fsck_ffs/inode.c
  stable/12/sbin/fsck_ffs/pass1.c
  stable/12/sbin/fsck_ffs/pass2.c
  stable/12/sbin/fsdb/fsdb.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sbin/fsck_ffs/dir.c
==============================================================================
--- stable/12/sbin/fsck_ffs/dir.c	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsck_ffs/dir.c	Thu Mar  7 13:51:18 2019	(r344885)
@@ -323,7 +323,7 @@ adjust(struct inodesc *idesc, int lcnt)
 		if (preen || reply("ADJUST") == 1) {
 			if (bkgrdflag == 0) {
 				DIP_SET(dp, di_nlink, DIP(dp, di_nlink) - lcnt);
-				inodirty();
+				inodirty(dp);
 			} else {
 				cmd.value = idesc->id_number;
 				cmd.size = -lcnt;
@@ -449,7 +449,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name)
 			pfatal("SORRY. CANNOT CREATE lost+found DIRECTORY\n\n");
 			return (0);
 		}
-		inodirty();
+		inodirty(dp);
 		idesc.id_type = ADDR;
 		idesc.id_func = pass4check;
 		idesc.id_number = oldlfdir;
@@ -474,7 +474,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name)
 			(void)makeentry(orphan, lfdir, "..");
 		dp = ginode(lfdir);
 		DIP_SET(dp, di_nlink, DIP(dp, di_nlink) + 1);
-		inodirty();
+		inodirty(dp);
 		inoinfo(lfdir)->ino_linkcnt++;
 		pwarn("DIR I=%lu CONNECTED. ", (u_long)orphan);
 		if (parentdir != (ino_t)-1) {
@@ -535,7 +535,7 @@ makeentry(ino_t parent, ino_t ino, const char *name)
 	dp = ginode(parent);
 	if (DIP(dp, di_size) % DIRBLKSIZ) {
 		DIP_SET(dp, di_size, roundup(DIP(dp, di_size), DIRBLKSIZ));
-		inodirty();
+		inodirty(dp);
 	}
 	if ((ckinode(dp, &idesc) & ALTERED) != 0)
 		return (1);
@@ -591,7 +591,7 @@ expanddir(union dinode *dp, char *name)
 	else if (reply("EXPAND") == 0)
 		goto bad;
 	dirty(bp);
-	inodirty();
+	inodirty(dp);
 	return (1);
 bad:
 	DIP_SET(dp, di_db[lastbn], DIP(dp, di_db[lastbn + 1]));
@@ -632,7 +632,7 @@ allocdir(ino_t parent, ino_t request, int mode)
 		memmove(cp, &emptydir, sizeof emptydir);
 	dirty(bp);
 	DIP_SET(dp, di_nlink, 2);
-	inodirty();
+	inodirty(dp);
 	if (ino == UFS_ROOTINO) {
 		inoinfo(ino)->ino_linkcnt = DIP(dp, di_nlink);
 		cacheino(dp, ino);
@@ -653,7 +653,7 @@ allocdir(ino_t parent, ino_t request, int mode)
 	}
 	dp = ginode(parent);
 	DIP_SET(dp, di_nlink, DIP(dp, di_nlink) + 1);
-	inodirty();
+	inodirty(dp);
 	return (ino);
 }
 
@@ -668,7 +668,7 @@ freedir(ino_t ino, ino_t parent)
 	if (ino != parent) {
 		dp = ginode(parent);
 		DIP_SET(dp, di_nlink, DIP(dp, di_nlink) - 1);
-		inodirty();
+		inodirty(dp);
 	}
 	freeino(ino);
 }

Modified: stable/12/sbin/fsck_ffs/fsck.h
==============================================================================
--- stable/12/sbin/fsck_ffs/fsck.h	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsck_ffs/fsck.h	Thu Mar  7 13:51:18 2019	(r344885)
@@ -450,7 +450,7 @@ union dinode   *ginode(ino_t inumber);
 void		infohandler(int sig);
 void		alarmhandler(int sig);
 void		inocleanup(void);
-void		inodirty(void);
+void		inodirty(union dinode *);
 struct inostat *inoinfo(ino_t inum);
 void		IOstats(char *what);
 int		linkup(ino_t orphan, ino_t parentdir, char *name);

Modified: stable/12/sbin/fsck_ffs/inode.c
==============================================================================
--- stable/12/sbin/fsck_ffs/inode.c	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsck_ffs/inode.c	Thu Mar  7 13:51:18 2019	(r344885)
@@ -102,7 +102,7 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 
 				}
 			}
@@ -142,7 +142,7 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 					break;
 				}
 			}
@@ -221,7 +221,7 @@ iblock(struct inodesc *idesc, long ilevel, off_t isize
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 					bp->b_flags &= ~B_INUSE;
 					return(STOP);
 				}
@@ -519,7 +519,7 @@ inocleanup(void)
 }
 
 void
-inodirty(void)
+inodirty(union dinode *dp)
 {
 
 	dirty(pbp);
@@ -544,7 +544,7 @@ clri(struct inodesc *idesc, const char *type, int flag
 			(void)ckinode(dp, idesc);
 			inoinfo(idesc->id_number)->ino_state = USTATE;
 			clearinode(dp);
-			inodirty();
+			inodirty(dp);
 		} else {
 			cmd.value = idesc->id_number;
 			cmd.size = -DIP(dp, di_nlink);
@@ -711,7 +711,7 @@ allocino(ino_t request, int type)
 	DIP_SET(dp, di_size, sblock.fs_fsize);
 	DIP_SET(dp, di_blocks, btodb(sblock.fs_fsize));
 	n_files++;
-	inodirty();
+	inodirty(dp);
 	inoinfo(ino)->ino_type = IFTODT(type);
 	return (ino);
 }
@@ -732,7 +732,7 @@ freeino(ino_t ino)
 	dp = ginode(ino);
 	(void)ckinode(dp, &idesc);
 	clearinode(dp);
-	inodirty();
+	inodirty(dp);
 	inoinfo(ino)->ino_state = USTATE;
 	n_files--;
 }

Modified: stable/12/sbin/fsck_ffs/pass1.c
==============================================================================
--- stable/12/sbin/fsck_ffs/pass1.c	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsck_ffs/pass1.c	Thu Mar  7 13:51:18 2019	(r344885)
@@ -271,7 +271,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 			if (reply("CLEAR") == 1) {
 				dp = ginode(inumber);
 				clearinode(dp);
-				inodirty();
+				inodirty(dp);
 			}
 		}
 		inoinfo(inumber)->ino_state = USTATE;
@@ -294,7 +294,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		dp = ginode(inumber);
 		DIP_SET(dp, di_size, sblock.fs_fsize);
 		DIP_SET(dp, di_mode, IFREG|0600);
-		inodirty();
+		inodirty(dp);
 	}
 	if ((mode == IFBLK || mode == IFCHR || mode == IFIFO ||
 	     mode == IFSOCK) && DIP(dp, di_size) != 0) {
@@ -412,7 +412,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		if (bkgrdflag == 0) {
 			dp = ginode(inumber);
 			DIP_SET(dp, di_blocks, idesc->id_entryno);
-			inodirty();
+			inodirty(dp);
 		} else {
 			cmd.value = idesc->id_number;
 			cmd.size = idesc->id_entryno - DIP(dp, di_blocks);
@@ -472,7 +472,7 @@ unknown:
 		inoinfo(inumber)->ino_state = USTATE;
 		dp = ginode(inumber);
 		clearinode(dp);
-		inodirty();
+		inodirty(dp);
 	}
 	return (1);
 }

Modified: stable/12/sbin/fsck_ffs/pass2.c
==============================================================================
--- stable/12/sbin/fsck_ffs/pass2.c	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsck_ffs/pass2.c	Thu Mar  7 13:51:18 2019	(r344885)
@@ -114,7 +114,7 @@ pass2(void)
 		dp = ginode(UFS_ROOTINO);
 		DIP_SET(dp, di_mode, DIP(dp, di_mode) & ~IFMT);
 		DIP_SET(dp, di_mode, DIP(dp, di_mode) | IFDIR);
-		inodirty();
+		inodirty(dp);
 		break;
 
 	case DSTATE:
@@ -160,7 +160,7 @@ pass2(void)
 			if (reply("FIX") == 1) {
 				dp = ginode(inp->i_number);
 				DIP_SET(dp, di_size, inp->i_isize);
-				inodirty();
+				inodirty(dp);
 			}
 		} else if ((inp->i_isize & (DIRBLKSIZ - 1)) != 0) {
 			getpathname(pathbuf, inp->i_number, inp->i_number);
@@ -179,7 +179,7 @@ pass2(void)
 				dp = ginode(inp->i_number);
 				DIP_SET(dp, di_size,
 				    roundup(inp->i_isize, DIRBLKSIZ));
-				inodirty();
+				inodirty(dp);
 			}
 		}
 		dp = &dino;

Modified: stable/12/sbin/fsdb/fsdb.c
==============================================================================
--- stable/12/sbin/fsdb/fsdb.c	Thu Mar  7 13:45:36 2019	(r344884)
+++ stable/12/sbin/fsdb/fsdb.c	Thu Mar  7 13:51:18 2019	(r344885)
@@ -342,7 +342,7 @@ CMDFUNCSTART(zapi)
     GETINUM(1,inum);
     dp = ginode(inum);
     clearinode(dp);
-    inodirty();
+    inodirty(dp);
     if (curinode)			/* re-set after potential change */
 	curinode = ginode(curinum);
     return 0;
@@ -372,7 +372,7 @@ CMDFUNCSTART(uplink)
     DIP_SET(curinode, di_nlink, DIP(curinode, di_nlink) + 1);
     printf("inode %ju link count now %d\n",
 	(uintmax_t)curinum, DIP(curinode, di_nlink));
-    inodirty();
+    inodirty(curinode);
     return 0;
 }
 
@@ -383,7 +383,7 @@ CMDFUNCSTART(downlink)
     DIP_SET(curinode, di_nlink, DIP(curinode, di_nlink) - 1);
     printf("inode %ju link count now %d\n",
 	(uintmax_t)curinum, DIP(curinode, di_nlink));
-    inodirty();
+    inodirty(curinode);
     return 0;
 }
 
@@ -921,7 +921,7 @@ CMDFUNCSTART(newtype)
     }
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) & ~IFMT);
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) | type);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -942,7 +942,7 @@ CMDFUNCSTART(chlen)
     }
     
     DIP_SET(curinode, di_size, len);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -964,7 +964,7 @@ CMDFUNCSTART(chmode)
     
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) & ~07777);
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) | modebits);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -989,7 +989,7 @@ CMDFUNCSTART(chaflags)
 	return(1);
     }
     DIP_SET(curinode, di_flags, flags);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1014,7 +1014,7 @@ CMDFUNCSTART(chgen)
 	return(1);
     }
     DIP_SET(curinode, di_gen, gen);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1064,7 +1064,7 @@ CMDFUNCSTART(linkcount)
     }
     
     DIP_SET(curinode, di_nlink, lcnt);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1091,7 +1091,7 @@ CMDFUNCSTART(chowner)
     }
     
     DIP_SET(curinode, di_uid, uid);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1117,7 +1117,7 @@ CMDFUNCSTART(chgroup)
     }
     
     DIP_SET(curinode, di_gid, gid);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1186,7 +1186,7 @@ CMDFUNCSTART(chbtime)
 	return 1;
     curinode->dp2.di_birthtime = _time_to_time64(secs);
     curinode->dp2.di_birthnsec = nsecs;
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1203,7 +1203,7 @@ CMDFUNCSTART(chmtime)
     else
 	curinode->dp2.di_mtime = _time_to_time64(secs);
     DIP_SET(curinode, di_mtimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1220,7 +1220,7 @@ CMDFUNCSTART(chatime)
     else
 	curinode->dp2.di_atime = _time_to_time64(secs);
     DIP_SET(curinode, di_atimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1237,7 +1237,7 @@ CMDFUNCSTART(chctime)
     else
 	curinode->dp2.di_ctime = _time_to_time64(secs);
     DIP_SET(curinode, di_ctimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:52:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DFCAA1530261;
 Thu,  7 Mar 2019 13:52:20 +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)
 server-signature RSA-PSS (4096 bits)
 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 8514E86DD0;
 Thu,  7 Mar 2019 13:52:20 +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 7AB461C978;
 Thu,  7 Mar 2019 13:52:20 +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 x27DqKnH034977;
 Thu, 7 Mar 2019 13:52:20 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DqKNT034976;
 Thu, 7 Mar 2019 13:52:20 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903071352.x27DqKNT034976@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:52:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-svnadmin@freebsd.org
Subject: svn commit: r344886 - svnadmin/conf
X-SVN-Group: svnadmin
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: svnadmin/conf
X-SVN-Commit-Revision: 344886
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 8514E86DD0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.957,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:52:21 -0000

Author: cy
Date: Thu Mar  7 13:52:20 2019
New Revision: 344886
URL: https://svnweb.freebsd.org/changeset/base/344886

Log:
  That's enough fun and frivolity for one day.
  Remove my temporary sizelimit.

Modified:
  svnadmin/conf/sizelimit.conf

Modified: svnadmin/conf/sizelimit.conf
==============================================================================
--- svnadmin/conf/sizelimit.conf	Thu Mar  7 13:51:18 2019	(r344885)
+++ svnadmin/conf/sizelimit.conf	Thu Mar  7 13:52:20 2019	(r344886)
@@ -16,7 +16,6 @@
 # First field is username, second field is the raised limit required.
 achim
 bapt
-cy
 davidcs
 dim	20480000
 imp

From owner-svn-src-all@freebsd.org  Thu Mar  7 13:54:01 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F167715303C5;
 Thu,  7 Mar 2019 13:54:00 +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)
 server-signature RSA-PSS (4096 bits)
 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 988F686F70;
 Thu,  7 Mar 2019 13:54:00 +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 8B87C1C989;
 Thu,  7 Mar 2019 13:54:00 +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 x27Ds0Ee036020;
 Thu, 7 Mar 2019 13:54:00 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27DrxCn036010;
 Thu, 7 Mar 2019 13:53:59 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903071353.x27DrxCn036010@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Thu, 7 Mar 2019 13:53:59 +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: r344887 - in stable/11/sbin: fsck_ffs fsdb
X-SVN-Group: stable-11
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: in stable/11/sbin: fsck_ffs fsdb
X-SVN-Commit-Revision: 344887
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 988F686F70
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.960,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 13:54:01 -0000

Author: kib
Date: Thu Mar  7 13:53:59 2019
New Revision: 344887
URL: https://svnweb.freebsd.org/changeset/base/344887

Log:
  MFC r339941 (by mckusick):
  In preparation for adding inode check-hashes, change the fsck_ffs
  inodirty() function to have a pointer to the inode being dirtied.
  No functional change (as for now the parameter is ununsed).
  
  Also for stable/11 UFS_NDADDR was renamed to NDADDR.

Modified:
  stable/11/sbin/fsck_ffs/dir.c
  stable/11/sbin/fsck_ffs/fsck.h
  stable/11/sbin/fsck_ffs/inode.c
  stable/11/sbin/fsck_ffs/pass1.c
  stable/11/sbin/fsck_ffs/pass2.c
  stable/11/sbin/fsdb/fsdb.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sbin/fsck_ffs/dir.c
==============================================================================
--- stable/11/sbin/fsck_ffs/dir.c	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsck_ffs/dir.c	Thu Mar  7 13:53:59 2019	(r344887)
@@ -321,7 +321,7 @@ adjust(struct inodesc *idesc, int lcnt)
 		if (preen || reply("ADJUST") == 1) {
 			if (bkgrdflag == 0) {
 				DIP_SET(dp, di_nlink, DIP(dp, di_nlink) - lcnt);
-				inodirty();
+				inodirty(dp);
 			} else {
 				cmd.value = idesc->id_number;
 				cmd.size = -lcnt;
@@ -446,7 +446,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name)
 			pfatal("SORRY. CANNOT CREATE lost+found DIRECTORY\n\n");
 			return (0);
 		}
-		inodirty();
+		inodirty(dp);
 		idesc.id_type = ADDR;
 		idesc.id_func = pass4check;
 		idesc.id_number = oldlfdir;
@@ -471,7 +471,7 @@ linkup(ino_t orphan, ino_t parentdir, char *name)
 			(void)makeentry(orphan, lfdir, "..");
 		dp = ginode(lfdir);
 		DIP_SET(dp, di_nlink, DIP(dp, di_nlink) + 1);
-		inodirty();
+		inodirty(dp);
 		inoinfo(lfdir)->ino_linkcnt++;
 		pwarn("DIR I=%lu CONNECTED. ", (u_long)orphan);
 		if (parentdir != (ino_t)-1) {
@@ -532,7 +532,7 @@ makeentry(ino_t parent, ino_t ino, const char *name)
 	dp = ginode(parent);
 	if (DIP(dp, di_size) % DIRBLKSIZ) {
 		DIP_SET(dp, di_size, roundup(DIP(dp, di_size), DIRBLKSIZ));
-		inodirty();
+		inodirty(dp);
 	}
 	if ((ckinode(dp, &idesc) & ALTERED) != 0)
 		return (1);
@@ -588,7 +588,7 @@ expanddir(union dinode *dp, char *name)
 	else if (reply("EXPAND") == 0)
 		goto bad;
 	dirty(bp);
-	inodirty();
+	inodirty(dp);
 	return (1);
 bad:
 	DIP_SET(dp, di_db[lastbn], DIP(dp, di_db[lastbn + 1]));
@@ -629,7 +629,7 @@ allocdir(ino_t parent, ino_t request, int mode)
 		memmove(cp, &emptydir, sizeof emptydir);
 	dirty(bp);
 	DIP_SET(dp, di_nlink, 2);
-	inodirty();
+	inodirty(dp);
 	if (ino == ROOTINO) {
 		inoinfo(ino)->ino_linkcnt = DIP(dp, di_nlink);
 		cacheino(dp, ino);
@@ -650,7 +650,7 @@ allocdir(ino_t parent, ino_t request, int mode)
 	}
 	dp = ginode(parent);
 	DIP_SET(dp, di_nlink, DIP(dp, di_nlink) + 1);
-	inodirty();
+	inodirty(dp);
 	return (ino);
 }
 
@@ -665,7 +665,7 @@ freedir(ino_t ino, ino_t parent)
 	if (ino != parent) {
 		dp = ginode(parent);
 		DIP_SET(dp, di_nlink, DIP(dp, di_nlink) - 1);
-		inodirty();
+		inodirty(dp);
 	}
 	freeino(ino);
 }

Modified: stable/11/sbin/fsck_ffs/fsck.h
==============================================================================
--- stable/11/sbin/fsck_ffs/fsck.h	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsck_ffs/fsck.h	Thu Mar  7 13:53:59 2019	(r344887)
@@ -446,7 +446,7 @@ union dinode   *ginode(ino_t inumber);
 void		infohandler(int sig);
 void		alarmhandler(int sig);
 void		inocleanup(void);
-void		inodirty(void);
+void		inodirty(union dinode *);
 struct inostat *inoinfo(ino_t inum);
 void		IOstats(char *what);
 int		linkup(ino_t orphan, ino_t parentdir, char *name);

Modified: stable/11/sbin/fsck_ffs/inode.c
==============================================================================
--- stable/11/sbin/fsck_ffs/inode.c	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsck_ffs/inode.c	Thu Mar  7 13:53:59 2019	(r344887)
@@ -100,7 +100,7 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 
 				}
 			}
@@ -140,7 +140,7 @@ ckinode(union dinode *dp, struct inodesc *idesc)
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 					break;
 				}
 			}
@@ -219,7 +219,7 @@ iblock(struct inodesc *idesc, long ilevel, off_t isize
 					printf(
 					    "YOU MUST RERUN FSCK AFTERWARDS\n");
 					rerun = 1;
-					inodirty();
+					inodirty(dp);
 					bp->b_flags &= ~B_INUSE;
 					return(STOP);
 				}
@@ -517,7 +517,7 @@ inocleanup(void)
 }
 
 void
-inodirty(void)
+inodirty(union dinode *dp)
 {
 
 	dirty(pbp);
@@ -542,7 +542,7 @@ clri(struct inodesc *idesc, const char *type, int flag
 			(void)ckinode(dp, idesc);
 			inoinfo(idesc->id_number)->ino_state = USTATE;
 			clearinode(dp);
-			inodirty();
+			inodirty(dp);
 		} else {
 			cmd.value = idesc->id_number;
 			cmd.size = -DIP(dp, di_nlink);
@@ -709,7 +709,7 @@ allocino(ino_t request, int type)
 	DIP_SET(dp, di_size, sblock.fs_fsize);
 	DIP_SET(dp, di_blocks, btodb(sblock.fs_fsize));
 	n_files++;
-	inodirty();
+	inodirty(dp);
 	inoinfo(ino)->ino_type = IFTODT(type);
 	return (ino);
 }
@@ -730,7 +730,7 @@ freeino(ino_t ino)
 	dp = ginode(ino);
 	(void)ckinode(dp, &idesc);
 	clearinode(dp);
-	inodirty();
+	inodirty(dp);
 	inoinfo(ino)->ino_state = USTATE;
 	n_files--;
 }

Modified: stable/11/sbin/fsck_ffs/pass1.c
==============================================================================
--- stable/11/sbin/fsck_ffs/pass1.c	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsck_ffs/pass1.c	Thu Mar  7 13:53:59 2019	(r344887)
@@ -269,7 +269,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 			if (reply("CLEAR") == 1) {
 				dp = ginode(inumber);
 				clearinode(dp);
-				inodirty();
+				inodirty(dp);
 			}
 		}
 		inoinfo(inumber)->ino_state = USTATE;
@@ -292,7 +292,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		dp = ginode(inumber);
 		DIP_SET(dp, di_size, sblock.fs_fsize);
 		DIP_SET(dp, di_mode, IFREG|0600);
-		inodirty();
+		inodirty(dp);
 	}
 	if ((mode == IFBLK || mode == IFCHR || mode == IFIFO ||
 	     mode == IFSOCK) && DIP(dp, di_size) != 0) {
@@ -410,7 +410,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 		if (bkgrdflag == 0) {
 			dp = ginode(inumber);
 			DIP_SET(dp, di_blocks, idesc->id_entryno);
-			inodirty();
+			inodirty(dp);
 		} else {
 			cmd.value = idesc->id_number;
 			cmd.size = idesc->id_entryno - DIP(dp, di_blocks);
@@ -436,7 +436,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
 	 * the last allocated block to avoid having it reference a hole
 	 * at its end.
 	 */
-	if (DIP(dp, di_size) > UFS_NDADDR * sblock.fs_bsize &&
+	if (DIP(dp, di_size) > NDADDR * sblock.fs_bsize &&
 	    idesc->id_lballoc < lblkno(&sblock, DIP(dp, di_size) - 1)) {
 		fixsize = lblktosize(&sblock, idesc->id_lballoc + 1);
 		pwarn("INODE %lu: FILE SIZE %ju BEYOND END OF ALLOCATED FILE, "
@@ -470,7 +470,7 @@ unknown:
 		inoinfo(inumber)->ino_state = USTATE;
 		dp = ginode(inumber);
 		clearinode(dp);
-		inodirty();
+		inodirty(dp);
 	}
 	return (1);
 }

Modified: stable/11/sbin/fsck_ffs/pass2.c
==============================================================================
--- stable/11/sbin/fsck_ffs/pass2.c	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsck_ffs/pass2.c	Thu Mar  7 13:53:59 2019	(r344887)
@@ -110,7 +110,7 @@ pass2(void)
 		dp = ginode(ROOTINO);
 		DIP_SET(dp, di_mode, DIP(dp, di_mode) & ~IFMT);
 		DIP_SET(dp, di_mode, DIP(dp, di_mode) | IFDIR);
-		inodirty();
+		inodirty(dp);
 		break;
 
 	case DSTATE:
@@ -156,7 +156,7 @@ pass2(void)
 			if (reply("FIX") == 1) {
 				dp = ginode(inp->i_number);
 				DIP_SET(dp, di_size, inp->i_isize);
-				inodirty();
+				inodirty(dp);
 			}
 		} else if ((inp->i_isize & (DIRBLKSIZ - 1)) != 0) {
 			getpathname(pathbuf, inp->i_number, inp->i_number);
@@ -175,7 +175,7 @@ pass2(void)
 				dp = ginode(inp->i_number);
 				DIP_SET(dp, di_size,
 				    roundup(inp->i_isize, DIRBLKSIZ));
-				inodirty();
+				inodirty(dp);
 			}
 		}
 		dp = &dino;

Modified: stable/11/sbin/fsdb/fsdb.c
==============================================================================
--- stable/11/sbin/fsdb/fsdb.c	Thu Mar  7 13:52:20 2019	(r344886)
+++ stable/11/sbin/fsdb/fsdb.c	Thu Mar  7 13:53:59 2019	(r344887)
@@ -342,7 +342,7 @@ CMDFUNCSTART(zapi)
     GETINUM(1,inum);
     dp = ginode(inum);
     clearinode(dp);
-    inodirty();
+    inodirty(dp);
     if (curinode)			/* re-set after potential change */
 	curinode = ginode(curinum);
     return 0;
@@ -372,7 +372,7 @@ CMDFUNCSTART(uplink)
     DIP_SET(curinode, di_nlink, DIP(curinode, di_nlink) + 1);
     printf("inode %ju link count now %d\n",
 	(uintmax_t)curinum, DIP(curinode, di_nlink));
-    inodirty();
+    inodirty(curinode);
     return 0;
 }
 
@@ -383,7 +383,7 @@ CMDFUNCSTART(downlink)
     DIP_SET(curinode, di_nlink, DIP(curinode, di_nlink) - 1);
     printf("inode %ju link count now %d\n",
 	(uintmax_t)curinum, DIP(curinode, di_nlink));
-    inodirty();
+    inodirty(curinode);
     return 0;
 }
 
@@ -917,7 +917,7 @@ CMDFUNCSTART(newtype)
     }
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) & ~IFMT);
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) | type);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -938,7 +938,7 @@ CMDFUNCSTART(chlen)
     }
     
     DIP_SET(curinode, di_size, len);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -960,7 +960,7 @@ CMDFUNCSTART(chmode)
     
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) & ~07777);
     DIP_SET(curinode, di_mode, DIP(curinode, di_mode) | modebits);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -985,7 +985,7 @@ CMDFUNCSTART(chaflags)
 	return(1);
     }
     DIP_SET(curinode, di_flags, flags);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1010,7 +1010,7 @@ CMDFUNCSTART(chgen)
 	return(1);
     }
     DIP_SET(curinode, di_gen, gen);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1060,7 +1060,7 @@ CMDFUNCSTART(linkcount)
     }
     
     DIP_SET(curinode, di_nlink, lcnt);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1087,7 +1087,7 @@ CMDFUNCSTART(chowner)
     }
     
     DIP_SET(curinode, di_uid, uid);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1113,7 +1113,7 @@ CMDFUNCSTART(chgroup)
     }
     
     DIP_SET(curinode, di_gid, gid);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return rval;
 }
@@ -1182,7 +1182,7 @@ CMDFUNCSTART(chbtime)
 	return 1;
     curinode->dp2.di_birthtime = _time_to_time64(secs);
     curinode->dp2.di_birthnsec = nsecs;
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1199,7 +1199,7 @@ CMDFUNCSTART(chmtime)
     else
 	curinode->dp2.di_mtime = _time_to_time64(secs);
     DIP_SET(curinode, di_mtimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1216,7 +1216,7 @@ CMDFUNCSTART(chatime)
     else
 	curinode->dp2.di_atime = _time_to_time64(secs);
     DIP_SET(curinode, di_atimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }
@@ -1233,7 +1233,7 @@ CMDFUNCSTART(chctime)
     else
 	curinode->dp2.di_ctime = _time_to_time64(secs);
     DIP_SET(curinode, di_ctimensec, nsecs);
-    inodirty();
+    inodirty(curinode);
     printactive(0);
     return 0;
 }

From owner-svn-src-all@freebsd.org  Thu Mar  7 15:30:50 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 212D31532D2D;
 Thu,  7 Mar 2019 15:30:50 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 937948AE15;
 Thu,  7 Mar 2019 15:30:49 +0000 (UTC) (envelope-from dab@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 894AB1D92D;
 Thu,  7 Mar 2019 15:30:49 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27FUncU084990;
 Thu, 7 Mar 2019 15:30:49 GMT (envelope-from dab@FreeBSD.org)
Received: (from dab@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27FUnVt084988;
 Thu, 7 Mar 2019 15:30:49 GMT (envelope-from dab@FreeBSD.org)
Message-Id: <201903071530.x27FUnVt084988@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org
 using -f
From: David Bright <dab@FreeBSD.org>
Date: Thu, 7 Mar 2019 15:30: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: r344888 - stable/12/sys/dev/asmc
X-SVN-Group: stable-12
X-SVN-Commit-Author: dab
X-SVN-Commit-Paths: stable/12/sys/dev/asmc
X-SVN-Commit-Revision: 344888
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 937948AE15
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 15:30:50 -0000

Author: dab
Date: Thu Mar  7 15:30:48 2019
New Revision: 344888
URL: https://svnweb.freebsd.org/changeset/base/344888

Log:
  MFC r344553:
  
  asmc: Add support for Mac mini 2,1
  
  PR:		235798
  Submitted by:	Trev <fbsdbugs4@sentry.org>
  Reported by:	Trev <fbsdbugs4@sentry.org>

Modified:
  stable/12/sys/dev/asmc/asmc.c
  stable/12/sys/dev/asmc/asmcvar.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/asmc/asmc.c
==============================================================================
--- stable/12/sys/dev/asmc/asmc.c	Thu Mar  7 13:53:59 2019	(r344887)
+++ stable/12/sys/dev/asmc/asmc.c	Thu Mar  7 15:30:48 2019	(r344888)
@@ -259,6 +259,15 @@ struct asmc_model asmc_models[] = {
 	  ASMC_MM_TEMPS, ASMC_MM_TEMPNAMES, ASMC_MM_TEMPDESCS
 	},
 
+        /* The Mac Mini 2,1 has no SMS */
+        {
+          "Macmini2,1", "Apple SMC Mac Mini 2,1",
+          ASMC_SMS_FUNCS_DISABLED,
+          ASMC_FAN_FUNCS,
+          ASMC_LIGHT_FUNCS_DISABLED,
+          ASMC_MM21_TEMPS, ASMC_MM21_TEMPNAMES, ASMC_MM21_TEMPDESCS
+        },
+
 	/* The Mac Mini 3,1 has no SMS */
 	{
 	  "Macmini3,1", "Apple SMC Mac Mini 3,1",

Modified: stable/12/sys/dev/asmc/asmcvar.h
==============================================================================
--- stable/12/sys/dev/asmc/asmcvar.h	Thu Mar  7 13:53:59 2019	(r344887)
+++ stable/12/sys/dev/asmc/asmcvar.h	Thu Mar  7 15:30:48 2019	(r344888)
@@ -341,6 +341,24 @@ struct asmc_softc {
 #define ASMC_MM_TEMPDESCS	{ "Northbridge Point 1", \
 				  "Northbridge Point 2" }
 
+#define ASMC_MM21_TEMPS		{ "TA0P", "TC0D", \
+				  "TC0H", "TC0P", \
+				  "TC1P", "TN0P", \
+				  "TN1P", NULL }
+
+#define ASMC_MM21_TEMPNAMES	{ "ambient_air", "cpu_die", \
+				  "cpu_heatsink", "cpu_proximity1", \
+				  "cpu_proximity2", "northbridge_proximity1", \
+				  "northbridge_proximity2", }
+
+#define ASMC_MM21_TEMPDESCS	{ "Ambient Air Temperature" \
+				  "CPU Die Core Temperature", \
+				  "CPU Heatsink Temperature", \
+				  "CPU Proximity 1 Temperature", \
+				  "CPU Proximity 2 Temperature", \
+				  "Northbridge Proximity 1 Temperature", \
+				  "Northbridge Proximity 2 Temperature", }
+
 #define ASMC_MM31_TEMPS		{ "TC0D", "TC0H", \
 				  "TC0P", "TH0P", \
 				  "TN0D", "TN0P", \

From owner-svn-src-all@freebsd.org  Thu Mar  7 15:31:33 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 26BAE1532EB9;
 Thu,  7 Mar 2019 15:31:33 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B6C628AFE3;
 Thu,  7 Mar 2019 15:31:32 +0000 (UTC) (envelope-from dab@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 AD47F1DA81;
 Thu,  7 Mar 2019 15:31:32 +0000 (UTC) (envelope-from dab@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27FVWn9088286;
 Thu, 7 Mar 2019 15:31:32 GMT (envelope-from dab@FreeBSD.org)
Received: (from dab@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27FVWRr088284;
 Thu, 7 Mar 2019 15:31:32 GMT (envelope-from dab@FreeBSD.org)
Message-Id: <201903071531.x27FVWRr088284@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dab set sender to dab@FreeBSD.org
 using -f
From: David Bright <dab@FreeBSD.org>
Date: Thu, 7 Mar 2019 15:31: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: r344889 - stable/11/sys/dev/asmc
X-SVN-Group: stable-11
X-SVN-Commit-Author: dab
X-SVN-Commit-Paths: stable/11/sys/dev/asmc
X-SVN-Commit-Revision: 344889
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B6C628AFE3
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 15:31:33 -0000

Author: dab
Date: Thu Mar  7 15:31:32 2019
New Revision: 344889
URL: https://svnweb.freebsd.org/changeset/base/344889

Log:
  MFC r344553:
  
  asmc: Add support for Mac mini 2,1
  
  PR:             235798
  Submitted by:   Trev <fbsdbugs4@sentry.org>
  Reported by:    Trev <fbsdbugs4@sentry.org>

Modified:
  stable/11/sys/dev/asmc/asmc.c
  stable/11/sys/dev/asmc/asmcvar.h
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/asmc/asmc.c
==============================================================================
--- stable/11/sys/dev/asmc/asmc.c	Thu Mar  7 15:30:48 2019	(r344888)
+++ stable/11/sys/dev/asmc/asmc.c	Thu Mar  7 15:31:32 2019	(r344889)
@@ -262,6 +262,15 @@ struct asmc_model asmc_models[] = {
 	  ASMC_MM_TEMPS, ASMC_MM_TEMPNAMES, ASMC_MM_TEMPDESCS
 	},
 
+        /* The Mac Mini 2,1 has no SMS */
+        {
+          "Macmini2,1", "Apple SMC Mac Mini 2,1",
+          ASMC_SMS_FUNCS_DISABLED,
+          ASMC_FAN_FUNCS,
+          ASMC_LIGHT_FUNCS_DISABLED,
+          ASMC_MM21_TEMPS, ASMC_MM21_TEMPNAMES, ASMC_MM21_TEMPDESCS
+        },
+
 	/* The Mac Mini 3,1 has no SMS */
 	{
 	  "Macmini3,1", "Apple SMC Mac Mini 3,1",

Modified: stable/11/sys/dev/asmc/asmcvar.h
==============================================================================
--- stable/11/sys/dev/asmc/asmcvar.h	Thu Mar  7 15:30:48 2019	(r344888)
+++ stable/11/sys/dev/asmc/asmcvar.h	Thu Mar  7 15:31:32 2019	(r344889)
@@ -339,6 +339,24 @@ struct asmc_softc {
 #define ASMC_MM_TEMPDESCS	{ "Northbridge Point 1", \
 				  "Northbridge Point 2" }
 
+#define ASMC_MM21_TEMPS		{ "TA0P", "TC0D", \
+				  "TC0H", "TC0P", \
+				  "TC1P", "TN0P", \
+				  "TN1P", NULL }
+
+#define ASMC_MM21_TEMPNAMES	{ "ambient_air", "cpu_die", \
+				  "cpu_heatsink", "cpu_proximity1", \
+				  "cpu_proximity2", "northbridge_proximity1", \
+				  "northbridge_proximity2", }
+
+#define ASMC_MM21_TEMPDESCS	{ "Ambient Air Temperature" \
+				  "CPU Die Core Temperature", \
+				  "CPU Heatsink Temperature", \
+				  "CPU Proximity 1 Temperature", \
+				  "CPU Proximity 2 Temperature", \
+				  "Northbridge Proximity 1 Temperature", \
+				  "Northbridge Proximity 2 Temperature", }
+
 #define ASMC_MM31_TEMPS		{ "TC0D", "TC0H", \
 				  "TC0P", "TH0P", \
 				  "TN0D", "TN0P", \

From owner-svn-src-all@freebsd.org  Thu Mar  7 16:54:15 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CA98A1508996;
 Thu,  7 Mar 2019 16:54:15 +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 6FB298EA8E;
 Thu,  7 Mar 2019 16:54:15 +0000 (UTC)
 (envelope-from brooks@spindle.one-eyed-alien.net)
Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001)
 id 0CC143C475F; Thu,  7 Mar 2019 16:54:07 +0000 (UTC)
Date: Thu, 7 Mar 2019 16:54:07 +0000
From: Brooks Davis <brooks@freebsd.org>
To: Matt Macy <mmacy@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344869 - head/sys/gnu/gcov
Message-ID: <20190307165406.GB78397@spindle.one-eyed-alien.net>
References: <201903070353.x273rmV6013479@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
 protocol="application/pgp-signature"; boundary="/04w6evG8XlLl3ft"
Content-Disposition: inline
In-Reply-To: <201903070353.x273rmV6013479@repo.freebsd.org>
User-Agent: Mutt/1.9.4 (2018-02-28)
X-Rspamd-Queue-Id: 6FB298EA8E
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.97 / 15.00]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 16:54:16 -0000


--/04w6evG8XlLl3ft
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Mar 07, 2019 at 03:53:48AM +0000, Matt Macy wrote:
> Author: mmacy
> Date: Thu Mar  7 03:53:48 2019
> New Revision: 344869
> URL: https://svnweb.freebsd.org/changeset/base/344869
>=20
> Log:
>   add GPL text in addition to SPDX tags as requested by core
>  =20
>   MFC after:	1 week
>=20
> Modified:
>   head/sys/gnu/gcov/gcc_4_7.c
>   head/sys/gnu/gcov/gcov_fs.c
>=20
> Modified: head/sys/gnu/gcov/gcc_4_7.c
> =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
> --- head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 03:50:34 2019	(r344868)
> +++ head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 03:53:48 2019	(r344869)
> @@ -1,4 +1,18 @@
>  // SPDX-License-Identifier: GPL-2.0
> +// This program is free software; you can redistribute it and/or
> +// modify it under the terms of the GNU General Public License
> +// as published by the Free Software Foundation; either version 2
> +// of the License, or (at your option) any later version.

My apologies.  I provided the wrong text here (I forgot about this
feature of the default boilerplate) and this last line should be:

// of the License.

I'll commit a correction later today if you don't beat me to it.

Sorry for the error,
Brooks

--/04w6evG8XlLl3ft
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJcgUyuAAoJEKzQXbSebgfAQxMIAIs+Dssm7izLnq0u3MfcxaRh
vS93F12Rnkt4m4eE4wlG8iNEmNpt+eJJv8rBobjjYZiwdpv5CGDMVcoFvjy+o3bS
vWiDH+VCV2284s69L/udczCgBDOmgtkRU+LplRWQNH2ontojgOSFM2kKoFvVca3/
txjkLpwjlJCA9vHV+mE0p4gcPHKtH1MXBKJjJsbQ/8mfmeATAOfuIfx+RnKL52dL
y8AJJVTTMujfXPCw98iuQTr9WFbhw7J5JTcfsf461UEcqPv4xestGdo3gHZN3yzN
iP6o2Zenli9dGJLW4fN6e6X49s8fA+KGVjJUI7xZuEyPtRcj0lubkVdnYuZUE6c=
=SQNr
-----END PGP SIGNATURE-----

--/04w6evG8XlLl3ft--

From owner-svn-src-all@freebsd.org  Thu Mar  7 18:24:18 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05716150EFDD;
 Thu,  7 Mar 2019 18:24:18 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9629D6C125;
 Thu,  7 Mar 2019 18:24:17 +0000 (UTC) (envelope-from cem@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 8B7C31F82A;
 Thu,  7 Mar 2019 18:24:17 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27IOHZd081150;
 Thu, 7 Mar 2019 18:24:17 GMT (envelope-from cem@FreeBSD.org)
Received: (from cem@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27IOHWf081148;
 Thu, 7 Mar 2019 18:24:17 GMT (envelope-from cem@FreeBSD.org)
Message-Id: <201903071824.x27IOHWf081148@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org
 using -f
From: Conrad Meyer <cem@FreeBSD.org>
Date: Thu, 7 Mar 2019 18:24:17 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344891 - in head/usr.bin/seq: . tests
X-SVN-Group: head
X-SVN-Commit-Author: cem
X-SVN-Commit-Paths: in head/usr.bin/seq: . tests
X-SVN-Commit-Revision: 344891
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9629D6C125
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 18:24:18 -0000

Author: cem
Date: Thu Mar  7 18:24:16 2019
New Revision: 344891
URL: https://svnweb.freebsd.org/changeset/base/344891

Log:
  seq(1): Require user-provided format strings to contain a conversion
  
  This matches GNU seq, for example.
  
  For users that are looking for similar functionality, 'jot -b foo N' will
  print 'foo' N times.  See jot(1).
  
  PR:		236347
  Reported by:	<y AT maya.st>
  Sponsored by:	Dell EMC Isilon

Modified:
  head/usr.bin/seq/seq.c
  head/usr.bin/seq/tests/seq_test.sh

Modified: head/usr.bin/seq/seq.c
==============================================================================
--- head/usr.bin/seq/seq.c	Thu Mar  7 18:12:34 2019	(r344890)
+++ head/usr.bin/seq/seq.c	Thu Mar  7 18:24:16 2019	(r344891)
@@ -310,7 +310,8 @@ valid_format(const char *fmt)
 		}
 	}
 
-	return (conversions <= 1);
+	/* PR 236347 -- user format strings must have a conversion */
+	return (conversions == 1);
 }
 
 /*

Modified: head/usr.bin/seq/tests/seq_test.sh
==============================================================================
--- head/usr.bin/seq/tests/seq_test.sh	Thu Mar  7 18:12:34 2019	(r344890)
+++ head/usr.bin/seq/tests/seq_test.sh	Thu Mar  7 18:24:16 2019	(r344891)
@@ -1,4 +1,4 @@
-# Copyright (c) 2018 Conrad Meyer <cem@FreeBSD.org>
+# Copyright (c) 2019 Conrad Meyer <cem@FreeBSD.org>
 # All rights reserved.
 #
 # Redistribution and use in source and binary forms, with or without
@@ -34,7 +34,22 @@ float_rounding_body()
 	atf_check -o inline:'1\n1.1\n1.2\n' seq 1 0.1 1.2
 }
 
+atf_test_case format_includes_conversion
+format_includes_conversion_head()
+{
+	atf_set "descr" "Check for correct user-provided format strings"
+}
+format_includes_conversion_body()
+{
+	# PR 236347
+	atf_check -s exit:1 -o empty -e match:"invalid format string" \
+	    seq -f foo 3
+	atf_check -s exit:0 -o inline:'foo1\nfoo2\n' -e empty \
+	    seq -f foo%g 2
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case float_rounding
+	atf_add_test_case format_includes_conversion
 }

From owner-svn-src-all@freebsd.org  Thu Mar  7 18:36:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7BFED1510811;
 Thu,  7 Mar 2019 18:36:57 +0000 (UTC)
 (envelope-from cse.cem@gmail.com)
Received: from mail-it1-f182.google.com (mail-it1-f182.google.com
 [209.85.166.182])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 0DB946C95E;
 Thu,  7 Mar 2019 18:36:56 +0000 (UTC)
 (envelope-from cse.cem@gmail.com)
Received: by mail-it1-f182.google.com with SMTP id v2so16822195ith.3;
 Thu, 07 Mar 2019 10:36:56 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:reply-to
 :from:date:message-id:subject:to:cc;
 bh=UIQZ/q2Pl7hRAvWk+qP1TVxN4/48jCUARDD1aUkz9/I=;
 b=f9av+Y8si+/13dS8p5gwNUMgW8TojgeOFhzGCLazJGfw4gXqAtzE3oVo+o3Uq+HRri
 Ar9/1OrCvuXSbW1GR1VFXXN4IvQKSSUo+iYUZ1RN7NUQM1aKGC4uO85VTCP2MmGPJK0J
 VYDd63AP492IT0pZARnXVboJgI3cj/C3LqJoBjnNCzNEx3fPAZW/RxICwDFq44+Gydje
 qA/JuifiXFpOIaoyS520JBrDWUh56D8uXQAsemAhbAi4ngaOh9/AAINHwKjc2xX857ud
 UleEhLCt25OteNfNGwZFOnqDvcIPN0mvVsOYo6kFaLUo0OOQa3k7CMaTNMjZ6QWhHEGE
 ExXg==
X-Gm-Message-State: APjAAAVqZWTcUYXb4AwbOq0xfJ0xR+p7tPrdDPPvq20WeuC1VjW7bgVc
 jw/dt7eut6IVoSn3BZxGfwZHwE3/
X-Google-Smtp-Source: APXvYqwFSalgsOZwGw9CVpVx9axdZ7Dw5PhA+EjIlkYgm2yWaTBOafQUKOWZDzdxZMoUAm4qho+Afw==
X-Received: by 2002:a24:eb0e:: with SMTP id h14mr6097260itj.100.1551983810349; 
 Thu, 07 Mar 2019 10:36:50 -0800 (PST)
Received: from mail-it1-f180.google.com (mail-it1-f180.google.com.
 [209.85.166.180])
 by smtp.gmail.com with ESMTPSA id 203sm2801534itv.6.2019.03.07.10.36.50
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 07 Mar 2019 10:36:50 -0800 (PST)
Received: by mail-it1-f180.google.com with SMTP id f186so4491521ita.0;
 Thu, 07 Mar 2019 10:36:50 -0800 (PST)
X-Received: by 2002:a24:e4d:: with SMTP id 74mr5814119ite.32.1551983809937;
 Thu, 07 Mar 2019 10:36:49 -0800 (PST)
MIME-Version: 1.0
References: <201903062256.x26Munf3054948@repo.freebsd.org>
 <20190307105959.GJ2492@kib.kiev.ua>
In-Reply-To: <20190307105959.GJ2492@kib.kiev.ua>
Reply-To: cem@freebsd.org
From: Conrad Meyer <cem@freebsd.org>
Date: Thu, 7 Mar 2019 10:36:39 -0800
X-Gmail-Original-Message-ID: <CAG6CVpUi4Of24OH5MHcd-vj1+5GkiE-WZeMbj2__KQbiCOouMQ@mail.gmail.com>
Message-ID: <CAG6CVpUi4Of24OH5MHcd-vj1+5GkiE-WZeMbj2__KQbiCOouMQ@mail.gmail.com>
Subject: Re: svn commit: r344857 - head/sys/fs/fuse
To: Konstantin Belousov <kostikbel@gmail.com>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 0DB946C95E
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.96)[-0.955,0]; TAGGED_FROM(0.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 18:36:57 -0000

Hi Konstantin,

On Thu, Mar 7, 2019 at 3:00 AM Konstantin Belousov <kostikbel@gmail.com> wrote:
>
> On Wed, Mar 06, 2019 at 10:56:49PM +0000, Conrad Meyer wrote:
> >   FUSE: Prevent trivial panic
> >
> >   When open(2) was invoked against a FUSE filesystem with an unexpected flags
> >   value (no O_RDONLY / O_RDWR / O_WRONLY), an assertion fired, causing panic.
>
> Did you miss O_EXEC ?

Nope.

> O_RDONLY is defined as zero, and we interpret the
> flags as having O_RDONLY if no other flags were passed.

The commit message probably could have been more clear.  The check
that we actually perform (and guard against with this change) is
((flags & (FREAD | FWRITE)) == 0).  FREAD is non-zero.  Alan has
empirically demonstrated that O_EXEC at the open(2) layer does not
translate into a FREAD flag at the VOP_OPEN() layer.

> VFS guarantees that one of the O_EXEC/FREAD/FWRITE flag is always
> there.  If it does not, it is bug.  See the code at the start of
> kern_openat().

Sure.  FUSE is not prepared to handle (flags & (O_EXEC|FREAD|FWRITE))
== O_EXEC at this time.  This revision just changes that
(user-inducible) scenario into an error, instead of a panic.

Like the commit message says, it is not intended to be the correct
long-term solution.

Best,
Conrad

From owner-svn-src-all@freebsd.org  Thu Mar  7 18:57:44 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4E7311511459;
 Thu,  7 Mar 2019 18:57:44 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 EDF766D9E9;
 Thu,  7 Mar 2019 18:57:43 +0000 (UTC)
 (envelope-from manu@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 DD6E41FD76;
 Thu,  7 Mar 2019 18:57:43 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27Ivhqh001637;
 Thu, 7 Mar 2019 18:57:43 GMT (envelope-from manu@FreeBSD.org)
Received: (from manu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27Ivh4u001636;
 Thu, 7 Mar 2019 18:57:43 GMT (envelope-from manu@FreeBSD.org)
Message-Id: <201903071857.x27Ivh4u001636@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: manu set sender to
 manu@FreeBSD.org using -f
From: Emmanuel Vadot <manu@FreeBSD.org>
Date: Thu, 7 Mar 2019 18:57:43 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344892 - head/stand/common
X-SVN-Group: head
X-SVN-Commit-Author: manu
X-SVN-Commit-Paths: head/stand/common
X-SVN-Commit-Revision: 344892
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: EDF766D9E9
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.966,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 18:57:44 -0000

Author: manu
Date: Thu Mar  7 18:57:43 2019
New Revision: 344892
URL: https://svnweb.freebsd.org/changeset/base/344892

Log:
  stand/common/module: Apply style(9)

Modified:
  head/stand/common/module.c

Modified: head/stand/common/module.c
==============================================================================
--- head/stand/common/module.c	Thu Mar  7 18:24:16 2019	(r344891)
+++ head/stand/common/module.c	Thu Mar  7 18:57:43 2019	(r344892)
@@ -102,105 +102,105 @@ COMMAND_SET(load, "load", "load a kernel or module", c
 static int
 command_load(int argc, char *argv[])
 {
-    struct preloaded_file *fp;
-    char	*typestr;
-    char	*prefix;
-    char	*skip;
-    int		dflag, dofile, dokld, ch, error;
+	struct preloaded_file *fp;
+	char	*typestr;
+	char	*prefix;
+	char	*skip;
+	int		dflag, dofile, dokld, ch, error;
 
-    dflag = dokld = dofile = 0;
-    optind = 1;
-    optreset = 1;
-    typestr = NULL;
-    if (argc == 1) {
-	command_errmsg = "no filename specified";
-	return (CMD_CRIT);
-    }
-    prefix = skip = NULL;
-    while ((ch = getopt(argc, argv, "dkp:s:t:")) != -1) {
-	switch(ch) {
-	case 'd':
-	    dflag++;
-	    break;
-	case 'k':
-	    dokld = 1;
-	    break;
-	case 'p':
-	    prefix = optarg;
-	    break;
-	case 's':
-	    skip = optarg;
-	    break;
-	case 't':
-	    typestr = optarg;
-	    dofile = 1;
-	    break;
-	case '?':
-	default:
-	    /* getopt has already reported an error */
-	    return (CMD_OK);
+	dflag = dokld = dofile = 0;
+	optind = 1;
+	optreset = 1;
+	typestr = NULL;
+	if (argc == 1) {
+		command_errmsg = "no filename specified";
+		return (CMD_CRIT);
 	}
-    }
-    argv += (optind - 1);
-    argc -= (optind - 1);
-
-    /*
-     * Request to load a raw file?
-     */
-    if (dofile) {
-	if ((argc != 2) || (typestr == NULL) || (*typestr == 0)) {
-	    command_errmsg = "invalid load type";
-	    return (CMD_CRIT);
+	prefix = skip = NULL;
+	while ((ch = getopt(argc, argv, "dkp:s:t:")) != -1) {
+		switch(ch) {
+		case 'd':
+			dflag++;
+			break;
+		case 'k':
+			dokld = 1;
+			break;
+		case 'p':
+			prefix = optarg;
+			break;
+		case 's':
+			skip = optarg;
+			break;
+		case 't':
+			typestr = optarg;
+			dofile = 1;
+			break;
+		case '?':
+		default:
+			/* getopt has already reported an error */
+			return (CMD_OK);
+		}
 	}
+	argv += (optind - 1);
+	argc -= (optind - 1);
 
+	/*
+	 * Request to load a raw file?
+	 */
+	if (dofile) {
+		if ((argc != 2) || (typestr == NULL) || (*typestr == 0)) {
+			command_errmsg = "invalid load type";
+			return (CMD_CRIT);
+		}
+
 #ifdef LOADER_VERIEXEC
-	if (strncmp(typestr, "manifest", 8) == 0) {
-	    if (dflag > 0)
-		ve_debug_set(dflag);
-	    return (load_manifest(argv[1], prefix, skip, NULL));
-	}
+		if (strncmp(typestr, "manifest", 8) == 0) {
+			if (dflag > 0)
+				ve_debug_set(dflag);
+			return (load_manifest(argv[1], prefix, skip, NULL));
+		}
 #endif
 
-	fp = file_findfile(argv[1], typestr);
-	if (fp) {
-		snprintf(command_errbuf, sizeof(command_errbuf),
-		    "warning: file '%s' already loaded", argv[1]);
-		return (CMD_WARN);
-	}
+		fp = file_findfile(argv[1], typestr);
+		if (fp) {
+			snprintf(command_errbuf, sizeof(command_errbuf),
+			  "warning: file '%s' already loaded", argv[1]);
+			return (CMD_WARN);
+		}
 
-	if (file_loadraw(argv[1], typestr, 1) != NULL)
-		return (CMD_OK);
+		if (file_loadraw(argv[1], typestr, 1) != NULL)
+			return (CMD_OK);
 
-	/* Failing to load mfs_root is never going to end well! */
-	if (strcmp("mfs_root", typestr) == 0)
-		return (CMD_FATAL);
+		/* Failing to load mfs_root is never going to end well! */
+		if (strcmp("mfs_root", typestr) == 0)
+			return (CMD_FATAL);
 
-	return (CMD_ERROR);
-    }
-    /*
-     * Do we have explicit KLD load ?
-     */
-    if (dokld || file_havepath(argv[1])) {
-	error = mod_loadkld(argv[1], argc - 2, argv + 2);
-	if (error == EEXIST) {
-	    snprintf(command_errbuf, sizeof(command_errbuf),
-		"warning: KLD '%s' already loaded", argv[1]);
-	    return (CMD_WARN);
+		return (CMD_ERROR);
 	}
+	/*
+	 * Do we have explicit KLD load ?
+	 */
+	if (dokld || file_havepath(argv[1])) {
+		error = mod_loadkld(argv[1], argc - 2, argv + 2);
+		if (error == EEXIST) {
+			snprintf(command_errbuf, sizeof(command_errbuf),
+			  "warning: KLD '%s' already loaded", argv[1]);
+			return (CMD_WARN);
+		}
 	
-	return (error == 0 ? CMD_OK : CMD_CRIT);
-    }
-    /*
-     * Looks like a request for a module.
-     */
-    error = mod_load(argv[1], NULL, argc - 2, argv + 2);
-    if (error == EEXIST) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "warning: module '%s' already loaded", argv[1]);
-	return (CMD_WARN);
-    }
+		return (error == 0 ? CMD_OK : CMD_CRIT);
+	}
+	/*
+	 * Looks like a request for a module.
+	 */
+	error = mod_load(argv[1], NULL, argc - 2, argv + 2);
+	if (error == EEXIST) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "warning: module '%s' already loaded", argv[1]);
+		return (CMD_WARN);
+	}
 
-    return (error == 0 ? CMD_OK : CMD_CRIT);
+	return (error == 0 ? CMD_OK : CMD_CRIT);
 }
 
 #ifdef LOADER_GELI_SUPPORT
@@ -209,53 +209,53 @@ COMMAND_SET(load_geli, "load_geli", "load a geli key",
 static int
 command_load_geli(int argc, char *argv[])
 {
-    char	typestr[80];
-    char	*cp;
-    int		ch, num;
+	char	typestr[80];
+	char	*cp;
+	int		ch, num;
 
-    if (argc < 3) {
-	    command_errmsg = "usage is [-n key#] <prov> <file>";
-	    return(CMD_ERROR);
-    }
+	if (argc < 3) {
+		command_errmsg = "usage is [-n key#] <prov> <file>";
+		return(CMD_ERROR);
+	}
 
-    num = 0;
-    optind = 1;
-    optreset = 1;
-    while ((ch = getopt(argc, argv, "n:")) != -1) {
-	switch(ch) {
-	case 'n':
-	    num = strtol(optarg, &cp, 0);
-	    if (cp == optarg) {
-		    snprintf(command_errbuf, sizeof(command_errbuf),
-			"bad key index '%s'", optarg);
-		    return(CMD_ERROR);
-	    }
-	    break;
-	case '?':
-	default:
-	    /* getopt has already reported an error */
-	    return(CMD_OK);
+	num = 0;
+	optind = 1;
+	optreset = 1;
+	while ((ch = getopt(argc, argv, "n:")) != -1) {
+		switch(ch) {
+		case 'n':
+			num = strtol(optarg, &cp, 0);
+			if (cp == optarg) {
+				snprintf(command_errbuf, sizeof(command_errbuf),
+				  "bad key index '%s'", optarg);
+				return(CMD_ERROR);
+			}
+			break;
+		case '?':
+		default:
+			/* getopt has already reported an error */
+			return(CMD_OK);
+		}
 	}
-    }
-    argv += (optind - 1);
-    argc -= (optind - 1);
-    sprintf(typestr, "%s:geli_keyfile%d", argv[1], num);
-    return (file_loadraw(argv[2], typestr, 1) ? CMD_OK : CMD_ERROR);
+	argv += (optind - 1);
+	argc -= (optind - 1);
+	sprintf(typestr, "%s:geli_keyfile%d", argv[1], num);
+	return (file_loadraw(argv[2], typestr, 1) ? CMD_OK : CMD_ERROR);
 }
 #endif
 
 void
 unload(void)
 {
-    struct preloaded_file *fp;
+	struct preloaded_file *fp;
 
-    while (preloaded_files != NULL) {
-	fp = preloaded_files;
-	preloaded_files = preloaded_files->f_next;
-	file_discard(fp);
-    }
-    loadaddr = 0;
-    unsetenv("kernelname");
+	while (preloaded_files != NULL) {
+		fp = preloaded_files;
+		preloaded_files = preloaded_files->f_next;
+		file_discard(fp);
+	}
+	loadaddr = 0;
+	unsetenv("kernelname");
 }
 
 COMMAND_SET(unload, "unload", "unload all modules", command_unload);
@@ -263,8 +263,8 @@ COMMAND_SET(unload, "unload", "unload all modules", co
 static int
 command_unload(int argc, char *argv[])
 {
-    unload();
-    return(CMD_OK);
+	unload();
+	return(CMD_OK);
 }
 
 COMMAND_SET(lsmod, "lsmod", "list loaded modules", command_lsmod);
@@ -272,66 +272,66 @@ COMMAND_SET(lsmod, "lsmod", "list loaded modules", com
 static int
 command_lsmod(int argc, char *argv[])
 {
-    struct preloaded_file	*fp;
-    struct kernel_module	*mp;
-    struct file_metadata	*md;
-    char			lbuf[80];
-    int				ch, verbose, ret = 0;
+	struct preloaded_file	*fp;
+	struct kernel_module	*mp;
+	struct file_metadata	*md;
+	char			lbuf[80];
+	int				ch, verbose, ret = 0;
 
-    verbose = 0;
-    optind = 1;
-    optreset = 1;
-    while ((ch = getopt(argc, argv, "v")) != -1) {
-	switch(ch) {
-	case 'v':
-	    verbose = 1;
-	    break;
-	case '?':
-	default:
-	    /* getopt has already reported an error */
-	    return(CMD_OK);
+	verbose = 0;
+	optind = 1;
+	optreset = 1;
+	while ((ch = getopt(argc, argv, "v")) != -1) {
+		switch(ch) {
+		case 'v':
+			verbose = 1;
+			break;
+		case '?':
+		default:
+			/* getopt has already reported an error */
+			return(CMD_OK);
+		}
 	}
-    }
 
-    pager_open();
-    for (fp = preloaded_files; fp; fp = fp->f_next) {
-	snprintf(lbuf, sizeof(lbuf), " %p: ", (void *) fp->f_addr);
-	pager_output(lbuf);
-	pager_output(fp->f_name);
-	snprintf(lbuf, sizeof(lbuf), " (%s, 0x%lx)\n", fp->f_type,
-	    (long)fp->f_size);
-	if (pager_output(lbuf))
-	    break;
-	if (fp->f_args != NULL) {
-	    pager_output("    args: ");
-	    pager_output(fp->f_args);
-	    if (pager_output("\n"))
-		    break;
-	}
-	if (fp->f_modules) {
-	    pager_output("  modules: ");
-	    for (mp = fp->f_modules; mp; mp = mp->m_next) {
-		snprintf(lbuf, sizeof(lbuf), "%s.%d ", mp->m_name,
-		    mp->m_version);
+	pager_open();
+	for (fp = preloaded_files; fp; fp = fp->f_next) {
+		snprintf(lbuf, sizeof(lbuf), " %p: ", (void *) fp->f_addr);
 		pager_output(lbuf);
-	    }
-	    if (pager_output("\n"))
-		    break;
-	    	}
-	if (verbose) {
-	    /* XXX could add some formatting smarts here to display some better */
-	    for (md = fp->f_metadata; md != NULL; md = md->md_next) {
-		snprintf(lbuf, sizeof(lbuf), "      0x%04x, 0x%lx\n",
-		    md->md_type, (long) md->md_size);
+		pager_output(fp->f_name);
+		snprintf(lbuf, sizeof(lbuf), " (%s, 0x%lx)\n", fp->f_type,
+		  (long)fp->f_size);
 		if (pager_output(lbuf))
 			break;
-	    }
+		if (fp->f_args != NULL) {
+			pager_output("    args: ");
+			pager_output(fp->f_args);
+			if (pager_output("\n"))
+				break;
+		}
+		if (fp->f_modules) {
+			pager_output("  modules: ");
+			for (mp = fp->f_modules; mp; mp = mp->m_next) {
+				snprintf(lbuf, sizeof(lbuf), "%s.%d ", mp->m_name,
+				  mp->m_version);
+				pager_output(lbuf);
+			}
+			if (pager_output("\n"))
+				break;
+		}
+		if (verbose) {
+			/* XXX could add some formatting smarts here to display some better */
+			for (md = fp->f_metadata; md != NULL; md = md->md_next) {
+				snprintf(lbuf, sizeof(lbuf), "      0x%04x, 0x%lx\n",
+				  md->md_type, (long) md->md_size);
+				if (pager_output(lbuf))
+					break;
+			}
+		}
+		if (ret)
+			break;
 	}
-	if (ret)
-	    break;
-    }
-    pager_close();
-    return(CMD_OK);
+	pager_close();
+	return(CMD_OK);
 }
 
 /*
@@ -340,86 +340,86 @@ command_lsmod(int argc, char *argv[])
 int
 file_load(char *filename, vm_offset_t dest, struct preloaded_file **result)
 {
-    static int last_file_format = 0;
-    struct preloaded_file *fp;
-    int error;
-    int i;
+	static int last_file_format = 0;
+	struct preloaded_file *fp;
+	int error;
+	int i;
 
-    if (archsw.arch_loadaddr != NULL)
-	dest = archsw.arch_loadaddr(LOAD_RAW, filename, dest);
+	if (archsw.arch_loadaddr != NULL)
+		dest = archsw.arch_loadaddr(LOAD_RAW, filename, dest);
 
-    error = EFTYPE;
-    for (i = last_file_format, fp = NULL;
-	file_formats[i] && fp == NULL; i++) {
-	error = (file_formats[i]->l_load)(filename, dest, &fp);
-	if (error == 0) {
-	    fp->f_loader = last_file_format = i; /* remember the loader */
-	    *result = fp;
-	    break;
-	} else if (last_file_format == i && i != 0) {
-	    /* Restart from the beginning */
-	    i = -1;
-	    last_file_format = 0;
-	    fp = NULL;
-	    continue;
+	error = EFTYPE;
+	for (i = last_file_format, fp = NULL;
+	     file_formats[i] && fp == NULL; i++) {
+		error = (file_formats[i]->l_load)(filename, dest, &fp);
+		if (error == 0) {
+			fp->f_loader = last_file_format = i; /* remember the loader */
+			*result = fp;
+			break;
+		} else if (last_file_format == i && i != 0) {
+			/* Restart from the beginning */
+			i = -1;
+			last_file_format = 0;
+			fp = NULL;
+			continue;
+		}
+		if (error == EFTYPE)
+			continue;		/* Unknown to this handler? */
+		if (error) {
+			snprintf(command_errbuf, sizeof(command_errbuf),
+			  "can't load file '%s': %s", filename, strerror(error));
+			break;
+		}
 	}
-	if (error == EFTYPE)
-	    continue;		/* Unknown to this handler? */
-	if (error) {
-	    snprintf(command_errbuf, sizeof(command_errbuf),
-		"can't load file '%s': %s", filename, strerror(error));
-	    break;
-	}
-    }
-    return (error);
+	return (error);
 }
 
 static int
 file_load_dependencies(struct preloaded_file *base_file)
 {
-    struct file_metadata *md;
-    struct preloaded_file *fp;
-    struct mod_depend *verinfo;
-    struct kernel_module *mp;
-    char *dmodname;
-    int error;
+	struct file_metadata *md;
+	struct preloaded_file *fp;
+	struct mod_depend *verinfo;
+	struct kernel_module *mp;
+	char *dmodname;
+	int error;
 
-    md = file_findmetadata(base_file, MODINFOMD_DEPLIST);
-    if (md == NULL)
-	return (0);
-    error = 0;
-    do {
-	verinfo = (struct mod_depend*)md->md_data;
-	dmodname = (char *)(verinfo + 1);
-	if (file_findmodule(NULL, dmodname, verinfo) == NULL) {
-	    printf("loading required module '%s'\n", dmodname);
-	    error = mod_load(dmodname, verinfo, 0, NULL);
-	    if (error)
-		break;
-	    /*
-	     * If module loaded via kld name which isn't listed
-	     * in the linker.hints file, we should check if it have
-	     * required version.
-	     */
-	    mp = file_findmodule(NULL, dmodname, verinfo);
-	    if (mp == NULL) {
-		snprintf(command_errbuf, sizeof(command_errbuf),
-		    "module '%s' exists but with wrong version", dmodname);
-		error = ENOENT;
-		break;
-	    }
+	md = file_findmetadata(base_file, MODINFOMD_DEPLIST);
+	if (md == NULL)
+		return (0);
+	error = 0;
+	do {
+		verinfo = (struct mod_depend*)md->md_data;
+		dmodname = (char *)(verinfo + 1);
+		if (file_findmodule(NULL, dmodname, verinfo) == NULL) {
+			printf("loading required module '%s'\n", dmodname);
+			error = mod_load(dmodname, verinfo, 0, NULL);
+			if (error)
+				break;
+			/*
+			 * If module loaded via kld name which isn't listed
+			 * in the linker.hints file, we should check if it have
+			 * required version.
+			 */
+			mp = file_findmodule(NULL, dmodname, verinfo);
+			if (mp == NULL) {
+				snprintf(command_errbuf, sizeof(command_errbuf),
+				  "module '%s' exists but with wrong version", dmodname);
+				error = ENOENT;
+				break;
+			}
+		}
+		md = metadata_next(md, MODINFOMD_DEPLIST);
+	} while (md);
+	if (!error)
+		return (0);
+	/* Load failed; discard everything */
+	while (base_file != NULL) {
+		fp = base_file;
+		base_file = base_file->f_next;
+		file_discard(fp);
 	}
-	md = metadata_next(md, MODINFOMD_DEPLIST);
-    } while (md);
-    if (!error)
-	return (0);
-    /* Load failed; discard everything */
-    while (base_file != NULL) {
-        fp = base_file;
-        base_file = base_file->f_next;
-        file_discard(fp);
-    }
-    return (error);
+	return (error);
 }
 
 /*
@@ -429,82 +429,82 @@ file_load_dependencies(struct preloaded_file *base_fil
 struct preloaded_file *
 file_loadraw(const char *fname, char *type, int insert)
 {
-    struct preloaded_file	*fp;
-    char			*name;
-    int				fd, got;
-    vm_offset_t			laddr;
+	struct preloaded_file	*fp;
+	char			*name;
+	int				fd, got;
+	vm_offset_t			laddr;
 
-    /* We can't load first */
-    if ((file_findfile(NULL, NULL)) == NULL) {
-	command_errmsg = "can't load file before kernel";
-	return(NULL);
-    }
+	/* We can't load first */
+	if ((file_findfile(NULL, NULL)) == NULL) {
+		command_errmsg = "can't load file before kernel";
+		return(NULL);
+	}
 
-    /* locate the file on the load path */
-    name = file_search(fname, NULL);
-    if (name == NULL) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "can't find '%s'", fname);
-	return(NULL);
-    }
+	/* locate the file on the load path */
+	name = file_search(fname, NULL);
+	if (name == NULL) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "can't find '%s'", fname);
+		return(NULL);
+	}
 
-    if ((fd = open(name, O_RDONLY)) < 0) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "can't open '%s': %s", name, strerror(errno));
-	free(name);
-	return(NULL);
-    }
+	if ((fd = open(name, O_RDONLY)) < 0) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "can't open '%s': %s", name, strerror(errno));
+		free(name);
+		return(NULL);
+	}
 
 #ifdef LOADER_VERIEXEC
-    if (verify_file(fd, name, 0, VE_MUST) < 0) {
-	sprintf(command_errbuf, "can't verify '%s'", name);
-	free(name);
-	close(fd);
-	return(NULL);
-    }
+	if (verify_file(fd, name, 0, VE_MUST) < 0) {
+		sprintf(command_errbuf, "can't verify '%s'", name);
+		free(name);
+		close(fd);
+		return(NULL);
+	}
 #endif
 
-    if (archsw.arch_loadaddr != NULL)
-	loadaddr = archsw.arch_loadaddr(LOAD_RAW, name, loadaddr);
+	if (archsw.arch_loadaddr != NULL)
+		loadaddr = archsw.arch_loadaddr(LOAD_RAW, name, loadaddr);
 
-    printf("%s ", name);
+	printf("%s ", name);
 
-    laddr = loadaddr;
-    for (;;) {
-	/* read in 4k chunks; size is not really important */
-	got = archsw.arch_readin(fd, laddr, 4096);
-	if (got == 0)				/* end of file */
-	    break;
-	if (got < 0) {				/* error */
-	    snprintf(command_errbuf, sizeof(command_errbuf),
-		"error reading '%s': %s", name, strerror(errno));
-	    free(name);
-	    close(fd);
-	    return(NULL);
+	laddr = loadaddr;
+	for (;;) {
+		/* read in 4k chunks; size is not really important */
+		got = archsw.arch_readin(fd, laddr, 4096);
+		if (got == 0)				/* end of file */
+			break;
+		if (got < 0) {				/* error */
+			snprintf(command_errbuf, sizeof(command_errbuf),
+			  "error reading '%s': %s", name, strerror(errno));
+			free(name);
+			close(fd);
+			return(NULL);
+		}
+		laddr += got;
 	}
-	laddr += got;
-    }
 
-    printf("size=%#jx\n", (uintmax_t)(laddr - loadaddr));
+	printf("size=%#jx\n", (uintmax_t)(laddr - loadaddr));
 
-    /* Looks OK so far; create & populate control structure */
-    fp = file_alloc();
-    fp->f_name = strdup(name);
-    fp->f_type = strdup(type);
-    fp->f_args = NULL;
-    fp->f_metadata = NULL;
-    fp->f_loader = -1;
-    fp->f_addr = loadaddr;
-    fp->f_size = laddr - loadaddr;
+	/* Looks OK so far; create & populate control structure */
+	fp = file_alloc();
+	fp->f_name = strdup(name);
+	fp->f_type = strdup(type);
+	fp->f_args = NULL;
+	fp->f_metadata = NULL;
+	fp->f_loader = -1;
+	fp->f_addr = loadaddr;
+	fp->f_size = laddr - loadaddr;
 
-    /* recognise space consumption */
-    loadaddr = laddr;
+	/* recognise space consumption */
+	loadaddr = laddr;
 
-    /* Add to the list of loaded files */
-    if (insert != 0)
-    	file_insert_tail(fp);
-    close(fd);
-    return(fp);
+	/* Add to the list of loaded files */
+	if (insert != 0)
+		file_insert_tail(fp);
+	close(fd);
+	return(fp);
 }
 
 /*
@@ -515,35 +515,35 @@ file_loadraw(const char *fname, char *type, int insert
 int
 mod_load(char *modname, struct mod_depend *verinfo, int argc, char *argv[])
 {
-    struct kernel_module	*mp;
-    int				err;
-    char			*filename;
+	struct kernel_module	*mp;
+	int				err;
+	char			*filename;
 
-    if (file_havepath(modname)) {
-	printf("Warning: mod_load() called instead of mod_loadkld() for module '%s'\n", modname);
-	return (mod_loadkld(modname, argc, argv));
-    }
-    /* see if module is already loaded */
-    mp = file_findmodule(NULL, modname, verinfo);
-    if (mp) {
+	if (file_havepath(modname)) {
+		printf("Warning: mod_load() called instead of mod_loadkld() for module '%s'\n", modname);
+		return (mod_loadkld(modname, argc, argv));
+	}
+	/* see if module is already loaded */
+	mp = file_findmodule(NULL, modname, verinfo);
+	if (mp) {
 #ifdef moduleargs
-	if (mp->m_args)
-	    free(mp->m_args);
-	mp->m_args = unargv(argc, argv);
+		if (mp->m_args)
+			free(mp->m_args);
+		mp->m_args = unargv(argc, argv);
 #endif
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "warning: module '%s' already loaded", mp->m_name);
-	return (0);
-    }
-    /* locate file with the module on the search path */
-    filename = mod_searchmodule(modname, verinfo);
-    if (filename == NULL) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "can't find '%s'", modname);
-	return (ENOENT);
-    }
-    err = mod_loadkld(filename, argc, argv);
-    return (err);
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "warning: module '%s' already loaded", mp->m_name);
+		return (0);
+	}
+	/* locate file with the module on the search path */
+	filename = mod_searchmodule(modname, verinfo);
+	if (filename == NULL) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "can't find '%s'", modname);
+		return (ENOENT);
+	}
+	err = mod_loadkld(filename, argc, argv);
+	return (err);
 }
 
 /*
@@ -553,57 +553,57 @@ mod_load(char *modname, struct mod_depend *verinfo, in
 int
 mod_loadkld(const char *kldname, int argc, char *argv[])
 {
-    struct preloaded_file	*fp, *last_file;
-    int				err;
-    char			*filename;
+	struct preloaded_file	*fp, *last_file;
+	int				err;
+	char			*filename;
 
-    /*
-     * Get fully qualified KLD name
-     */
-    filename = file_search(kldname, kld_ext_list);
-    if (filename == NULL) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "can't find '%s'", kldname);
-	return (ENOENT);
-    }
-    /*
-     * Check if KLD already loaded
-     */
-    fp = file_findfile(filename, NULL);
-    if (fp) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "warning: KLD '%s' already loaded", filename);
-	free(filename);
-	return (0);
-    }
-    for (last_file = preloaded_files;
-	 last_file != NULL && last_file->f_next != NULL;
-	 last_file = last_file->f_next)
-	;
+	/*
+	 * Get fully qualified KLD name
+	 */
+	filename = file_search(kldname, kld_ext_list);
+	if (filename == NULL) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "can't find '%s'", kldname);
+		return (ENOENT);
+	}
+	/*
+	 * Check if KLD already loaded
+	 */
+	fp = file_findfile(filename, NULL);
+	if (fp) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "warning: KLD '%s' already loaded", filename);
+		free(filename);
+		return (0);
+	}
+	for (last_file = preloaded_files;
+	     last_file != NULL && last_file->f_next != NULL;
+	     last_file = last_file->f_next)
+		;
 
-    do {
-	err = file_load(filename, loadaddr, &fp);
-	if (err)
-	    break;
-	fp->f_args = unargv(argc, argv);
-	loadaddr = fp->f_addr + fp->f_size;
-	file_insert_tail(fp);		/* Add to the list of loaded files */
-	if (file_load_dependencies(fp) != 0) {
-	    err = ENOENT;
-	    last_file->f_next = NULL;
-	    loadaddr = last_file->f_addr + last_file->f_size;
-	    fp = NULL;
-	    break;
+	do {
+		err = file_load(filename, loadaddr, &fp);
+		if (err)
+			break;
+		fp->f_args = unargv(argc, argv);
+		loadaddr = fp->f_addr + fp->f_size;
+		file_insert_tail(fp);		/* Add to the list of loaded files */
+		if (file_load_dependencies(fp) != 0) {
+			err = ENOENT;
+			last_file->f_next = NULL;
+			loadaddr = last_file->f_addr + last_file->f_size;
+			fp = NULL;
+			break;
+		}
+	} while(0);
+	if (err == EFTYPE) {
+		snprintf(command_errbuf, sizeof(command_errbuf),
+		  "don't know how to load module '%s'", filename);
 	}
-    } while(0);
-    if (err == EFTYPE) {
-	snprintf(command_errbuf, sizeof(command_errbuf),
-	    "don't know how to load module '%s'", filename);
-    }
-    if (err && fp)
-	file_discard(fp);
-    free(filename);
-    return (err);
+	if (err && fp)
+		file_discard(fp);
+	free(filename);
+	return (err);
 }
 
 /*
@@ -613,14 +613,14 @@ mod_loadkld(const char *kldname, int argc, char *argv[
 struct preloaded_file *
 file_findfile(const char *name, const char *type)
 {
-    struct preloaded_file *fp;
+	struct preloaded_file *fp;
 
-    for (fp = preloaded_files; fp != NULL; fp = fp->f_next) {
-	if (((name == NULL) || !strcmp(name, fp->f_name)) &&
-	    ((type == NULL) || !strcmp(type, fp->f_type)))
-	    break;
-    }
-    return (fp);
+	for (fp = preloaded_files; fp != NULL; fp = fp->f_next) {
+		if (((name == NULL) || !strcmp(name, fp->f_name)) &&
+		  ((type == NULL) || !strcmp(type, fp->f_type)))
+			break;
+	}
+	return (fp);
 }
 
 /*
@@ -631,35 +631,35 @@ struct kernel_module *
 file_findmodule(struct preloaded_file *fp, char *modname,
 	struct mod_depend *verinfo)
 {
-    struct kernel_module *mp, *best;
-    int bestver, mver;
+	struct kernel_module *mp, *best;
+	int bestver, mver;
 
-    if (fp == NULL) {
-	for (fp = preloaded_files; fp; fp = fp->f_next) {
-	    mp = file_findmodule(fp, modname, verinfo);
-	    if (mp)
-		return (mp);
+	if (fp == NULL) {
+		for (fp = preloaded_files; fp; fp = fp->f_next) {
+			mp = file_findmodule(fp, modname, verinfo);
+			if (mp)
+				return (mp);
+		}
+		return (NULL);
 	}
-	return (NULL);
-    }
-    best = NULL;
-    bestver = 0;
-    for (mp = fp->f_modules; mp; mp = mp->m_next) {
-        if (strcmp(modname, mp->m_name) == 0) {
-	    if (verinfo == NULL)
-		return (mp);
-	    mver = mp->m_version;
-	    if (mver == verinfo->md_ver_preferred)
-		return (mp);
-	    if (mver >= verinfo->md_ver_minimum &&
-		mver <= verinfo->md_ver_maximum &&
-		mver > bestver) {
-		best = mp;
-		bestver = mver;
-	    }
+	best = NULL;
+	bestver = 0;
+	for (mp = fp->f_modules; mp; mp = mp->m_next) {
+		if (strcmp(modname, mp->m_name) == 0) {
+			if (verinfo == NULL)
+				return (mp);
+			mver = mp->m_version;
+			if (mver == verinfo->md_ver_preferred)
+				return (mp);
+			if (mver >= verinfo->md_ver_minimum &&
+			  mver <= verinfo->md_ver_maximum &&
+			  mver > bestver) {
+				best = mp;
+				bestver = mver;
+			}
+		}
 	}
-    }
-    return (best);
+	return (best);
 }
 /*
  * Make a copy of (size) bytes of data from (p), and associate them as
@@ -668,14 +668,14 @@ file_findmodule(struct preloaded_file *fp, char *modna
 void
 file_addmetadata(struct preloaded_file *fp, int type, size_t size, void *p)
 {
-    struct file_metadata	*md;
+	struct file_metadata	*md;
 
-    md = malloc(sizeof(struct file_metadata) - sizeof(md->md_data) + size);
-    md->md_size = size;
-    md->md_type = type;
-    bcopy(p, md->md_data, size);
-    md->md_next = fp->f_metadata;
-    fp->f_metadata = md;
+	md = malloc(sizeof(struct file_metadata) - sizeof(md->md_data) + size);
+	md->md_size = size;
+	md->md_type = type;
+	bcopy(p, md->md_data, size);
+	md->md_next = fp->f_metadata;
+	fp->f_metadata = md;
 }
 
 /*
@@ -684,12 +684,12 @@ file_addmetadata(struct preloaded_file *fp, int type, 
 struct file_metadata *
 file_findmetadata(struct preloaded_file *fp, int type)
 {
-    struct file_metadata *md;
+	struct file_metadata *md;
 
-    for (md = fp->f_metadata; md != NULL; md = md->md_next)

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Thu Mar  7 19:16:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 364D71511BA2;
 Thu,  7 Mar 2019 19:16:22 +0000 (UTC)
 (envelope-from manu@bidouilliste.com)
Received: from mail.blih.net (mail.blih.net [212.83.177.182])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client CN "mail.blih.net", Issuer "mail.blih.net" (not verified))
 by mx1.freebsd.org (Postfix) with ESMTPS id 580DF6E415;
 Thu,  7 Mar 2019 19:16:20 +0000 (UTC)
 (envelope-from manu@bidouilliste.com)
Received: from mail.blih.net (mail.blih.net [212.83.177.182])
 by mail.blih.net (OpenSMTPD) with ESMTP id 3e3ecc7c;
 Thu, 7 Mar 2019 20:09:38 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=bidouilliste.com; h=date
 :from:to:cc:subject:message-id:in-reply-to:references
 :mime-version:content-type:content-transfer-encoding; s=mail;
 bh=7RVoJPWzgoV+Ps0Q9yoYAUpIY2U=; b=jmnG5Z2WlbJfRJaCI6ZZnNYDpm5c
 WOf1EuG8beYPkAIstxUUmEk1tiznoRpBVu0yVqgX2sSUKkMa+oQ5yPyxwIhRMYDw
 YKS9Mh922MV2CcUxf6Df/7QGHDZqUV8ZUWcwm5yQMmSwXWeROa6zttSOaQ9g2Qlg
 MTeYxZ8tn89QHLs=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=bidouilliste.com; h=date
 :from:to:cc:subject:message-id:in-reply-to:references
 :mime-version:content-type:content-transfer-encoding; q=dns; s=
 mail; b=UAr9bzGaDHI5Cd5NN8qmWZx1PrIoSF5aMXXA91htRUZzvfICxo6C+loW
 hGPa90t+knK1JMeQKvzRBALUyzTye7sv8x+EZfVAWxYeOT7FAuUXdznrvHR3Egnn
 i5kEvRSakoVaFLP5w9beyyjogaYR0nOOxwPyp7FFx8qH4Rrpwao=
Received: from skull.home.blih.net (ip-9.net-89-3-105.rev.numericable.fr
 [89.3.105.9]) by mail.blih.net (OpenSMTPD) with ESMTPSA id 91c2a4e5
 TLS version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO;
 Thu, 7 Mar 2019 20:09:37 +0100 (CET)
Date: Thu, 7 Mar 2019 20:09:37 +0100
From: Emmanuel Vadot <manu@bidouilliste.com>
To: Emmanuel Vadot <manu@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344892 - head/stand/common
Message-Id: <20190307200937.d89d8fdd6113b4b4f10f8546@bidouilliste.com>
In-Reply-To: <201903071857.x27Ivh4u001636@repo.freebsd.org>
References: <201903071857.x27Ivh4u001636@repo.freebsd.org>
X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd13.0)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-Rspamd-Queue-Id: 580DF6E415
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.96 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.96)[-0.959,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 19:16:22 -0000

On Thu, 7 Mar 2019 18:57:43 +0000 (UTC)
Emmanuel Vadot <manu@FreeBSD.org> wrote:

> Author: manu
> Date: Thu Mar  7 18:57:43 2019
> New Revision: 344892
> URL: https://svnweb.freebsd.org/changeset/base/344892
> 
> Log:
>   stand/common/module: Apply style(9)
> 
> Modified:
>   head/stand/common/module.c
> 

 ian@ pointed out to me on irc there is still a lot of style(9)
problems, this was a emacs-auto-generated style.
 As I'm working on this file I applied style(9) in a crude way for now,
I'll do a full style(9) soon but the code burnt my eyes when I started
to read it.

-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>

From owner-svn-src-all@freebsd.org  Thu Mar  7 19:28:48 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 425FC15223C1;
 Thu,  7 Mar 2019 19:28:48 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 D5BE36EE4C;
 Thu,  7 Mar 2019 19:28:47 +0000 (UTC)
 (envelope-from manu@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 CAE1520299;
 Thu,  7 Mar 2019 19:28:47 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27JSlQY018169;
 Thu, 7 Mar 2019 19:28:47 GMT (envelope-from manu@FreeBSD.org)
Received: (from manu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27JSldR018168;
 Thu, 7 Mar 2019 19:28:47 GMT (envelope-from manu@FreeBSD.org)
Message-Id: <201903071928.x27JSldR018168@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: manu set sender to
 manu@FreeBSD.org using -f
From: Emmanuel Vadot <manu@FreeBSD.org>
Date: Thu, 7 Mar 2019 19:28:47 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344893 - head/sys/arm/allwinner/clkng
X-SVN-Group: head
X-SVN-Commit-Author: manu
X-SVN-Commit-Paths: head/sys/arm/allwinner/clkng
X-SVN-Commit-Revision: 344893
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: D5BE36EE4C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 19:28:48 -0000

Author: manu
Date: Thu Mar  7 19:28:47 2019
New Revision: 344893
URL: https://svnweb.freebsd.org/changeset/base/344893

Log:
  arm: allwinner: Fix NM clock recalc
  
  If the NM clock is using a fractional divider the formula isn't the same.

Modified:
  head/sys/arm/allwinner/clkng/aw_clk_nm.c

Modified: head/sys/arm/allwinner/clkng/aw_clk_nm.c
==============================================================================
--- head/sys/arm/allwinner/clkng/aw_clk_nm.c	Thu Mar  7 18:57:43 2019	(r344892)
+++ head/sys/arm/allwinner/clkng/aw_clk_nm.c	Thu Mar  7 19:28:47 2019	(r344893)
@@ -300,7 +300,11 @@ aw_clk_nm_recalc(struct clknode *clk, uint64_t *freq)
 		else
 			prediv = 1;
 
-		*freq = *freq / prediv / n / m;
+		/* For FRAC NM the formula is freq_parent * n / m */
+		if (sc->flags & AW_CLK_HAS_FRAC)
+			*freq = *freq * n / m;
+		else
+			*freq = *freq / prediv / n / m;
 	}
 
 	return (0);

From owner-svn-src-all@freebsd.org  Thu Mar  7 19:30:39 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C041152247F;
 Thu,  7 Mar 2019 19:30:39 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9CA986EFF1;
 Thu,  7 Mar 2019 19:30:38 +0000 (UTC)
 (envelope-from manu@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 4FF56202A2;
 Thu,  7 Mar 2019 19:30:38 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27JUchP019044;
 Thu, 7 Mar 2019 19:30:38 GMT (envelope-from manu@FreeBSD.org)
Received: (from manu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27JUbdo019039;
 Thu, 7 Mar 2019 19:30:37 GMT (envelope-from manu@FreeBSD.org)
Message-Id: <201903071930.x27JUbdo019039@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: manu set sender to
 manu@FreeBSD.org using -f
From: Emmanuel Vadot <manu@FreeBSD.org>
Date: Thu, 7 Mar 2019 19:30:37 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344894 - in head/sys: arm/allwinner/clkng conf
X-SVN-Group: head
X-SVN-Commit-Author: manu
X-SVN-Commit-Paths: in head/sys: arm/allwinner/clkng conf
X-SVN-Commit-Revision: 344894
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9CA986EFF1
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.964,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 19:30:39 -0000

Author: manu
Date: Thu Mar  7 19:30:37 2019
New Revision: 344894
URL: https://svnweb.freebsd.org/changeset/base/344894

Log:
  arm64: allwinner: Add CCU DE2
  
  The Display Engine 2 have it's own Clock and Control Unit, add support
  for it.

Added:
  head/sys/arm/allwinner/clkng/ccu_de2.c   (contents, props changed)
Modified:
  head/sys/arm/allwinner/clkng/ccu_a64.c
  head/sys/conf/files.arm64

Modified: head/sys/arm/allwinner/clkng/ccu_a64.c
==============================================================================
--- head/sys/arm/allwinner/clkng/ccu_a64.c	Thu Mar  7 19:28:47 2019	(r344893)
+++ head/sys/arm/allwinner/clkng/ccu_a64.c	Thu Mar  7 19:30:37 2019	(r344894)
@@ -289,6 +289,15 @@ NM_CLK_WITH_FRAC(pll_video0_clk,
     AW_CLK_HAS_LOCK,				/* flags */
     270000000, 297000000,			/* freq0, freq1 */
     24, 25);					/* mode sel, freq sel */
+static const char *pll_video0_2x_parents[] = {"pll_video0"};
+FIXED_CLK(pll_video0_2x_clk,
+    CLK_PLL_VIDEO0_2X,			/* id */
+    "pll_video0-2x",			/* name */
+    pll_video0_2x_parents,		/* parent */
+    0,					/* freq */
+    2,					/* mult */
+    1,					/* div */
+    0);					/* flags */
 
 static const char *pll_ve_parents[] = {"osc24M"};
 NM_CLK_WITH_FRAC(pll_ve_clk,
@@ -750,6 +759,7 @@ static struct aw_ccung_clk a64_ccu_clks[] = {
 	{ .type = AW_CLK_FIXED, .clk.fixed = &pll_audio_2x_clk},
 	{ .type = AW_CLK_FIXED, .clk.fixed = &pll_audio_4x_clk},
 	{ .type = AW_CLK_FIXED, .clk.fixed = &pll_audio_8x_clk},
+	{ .type = AW_CLK_FIXED, .clk.fixed = &pll_video0_2x_clk},
 };
 
 static struct aw_clk_init a64_init_clks[] = {

Added: head/sys/arm/allwinner/clkng/ccu_de2.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sys/arm/allwinner/clkng/ccu_de2.c	Thu Mar  7 19:30:37 2019	(r344894)
@@ -0,0 +1,167 @@
+/*-
+ * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ *
+ * Copyright (c) 2018 Emmanuel Vadot <manu@freebsd.org>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/bus.h>
+#include <sys/rman.h>
+#include <sys/kernel.h>
+#include <sys/module.h>
+#include <machine/bus.h>
+
+#include <dev/fdt/simplebus.h>
+
+#include <dev/ofw/ofw_bus.h>
+#include <dev/ofw/ofw_bus_subr.h>
+
+#include "opt_soc.h"
+
+#include <dev/extres/clk/clk_div.h>
+#include <dev/extres/clk/clk_fixed.h>
+#include <dev/extres/clk/clk_mux.h>
+
+#include <arm/allwinner/clkng/aw_ccung.h>
+
+#include <gnu/dts/include/dt-bindings/clock/sun8i-de2.h>
+#include <gnu/dts/include/dt-bindings/reset/sun8i-de2.h>
+
+/* Non exported clocks */
+#define	CLK_MIXER0_DIV	3
+#define	CLK_MIXER1_DIV	4
+#define	CLK_WB_DIV	5
+
+static struct aw_ccung_reset de2_ccu_resets[] = {
+	CCU_RESET(RST_MIXER0, 0x08, 0)
+	CCU_RESET(RST_MIXER1, 0x08, 1)
+	CCU_RESET(RST_WB, 0x08, 2)
+};
+
+static struct aw_ccung_gate de2_ccu_gates[] = {
+	CCU_GATE(CLK_BUS_MIXER0, "mixer0", "mixer0-div", 0x00, 0)
+	CCU_GATE(CLK_BUS_MIXER1, "mixer1", "mixer1-div", 0x00, 1)
+	CCU_GATE(CLK_BUS_WB, "wb", "wb-div", 0x00, 2)
+
+	CCU_GATE(CLK_MIXER0, "bus-mixer0", "bus-de", 0x04, 0)
+	CCU_GATE(CLK_MIXER1, "bus-mixer1", "bus-de", 0x04, 1)
+	CCU_GATE(CLK_WB, "bus-wb", "bus-de", 0x04, 2)
+};
+
+static const char *div_parents[] = {"de"};
+
+NM_CLK(mixer0_div_clk,
+    CLK_MIXER0_DIV,			/* id */
+    "mixer0-div", div_parents,		/* names, parents */
+    0x0C,				/* offset */
+    0, 0, 1, AW_CLK_FACTOR_FIXED,	/* N factor (fake)*/
+    0, 4, 0, 0,				/* M flags */
+    0, 0,				/* mux */
+    0,					/* gate */
+    AW_CLK_SCALE_CHANGE);	/* flags */
+
+NM_CLK(mixer1_div_clk,
+    CLK_MIXER1_DIV,			/* id */
+    "mixer1-div", div_parents,		/* names, parents */
+    0x0C,				/* offset */
+    0, 0, 1, AW_CLK_FACTOR_FIXED,	/* N factor (fake)*/
+    4, 4, 0, 0,				/* M flags */
+    0, 0,				/* mux */
+    0,					/* gate */
+    AW_CLK_SCALE_CHANGE);	/* flags */
+
+NM_CLK(wb_div_clk,
+    CLK_WB_DIV,				/* id */
+    "wb-div", div_parents,		/* names, parents */
+    0x0C,				/* offset */
+    0, 0, 1, AW_CLK_FACTOR_FIXED,	/* N factor (fake)*/
+    8, 4, 0, 0,				/* M flags */
+    0, 0,				/* mux */
+    0,					/* gate */
+    AW_CLK_SCALE_CHANGE);	/* flags */
+
+static struct aw_ccung_clk de2_ccu_clks[] = {
+	{ .type = AW_CLK_NM, .clk.nm = &mixer0_div_clk},
+	{ .type = AW_CLK_NM, .clk.nm = &mixer1_div_clk},
+	{ .type = AW_CLK_NM, .clk.nm = &wb_div_clk},
+};
+
+static struct ofw_compat_data compat_data[] = {
+	{"allwinner,sun50i-a64-de2-clk", 1},
+	{"allwinner,sun50i-h5-de2-clk", 1},
+	{NULL,             0}
+};
+
+static int
+ccu_de2_probe(device_t dev)
+{
+
+	if (!ofw_bus_status_okay(dev))
+		return (ENXIO);
+
+	if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0)
+		return (ENXIO);
+
+	device_set_desc(dev, "Allwinner DE2 Clock Control Unit");
+	return (BUS_PROBE_DEFAULT);
+}
+
+static int
+ccu_de2_attach(device_t dev)
+{
+	struct aw_ccung_softc *sc;
+
+	sc = device_get_softc(dev);
+
+	sc->resets = de2_ccu_resets;
+	sc->nresets = nitems(de2_ccu_resets);
+	sc->gates = de2_ccu_gates;
+	sc->ngates = nitems(de2_ccu_gates);
+	sc->clks = de2_ccu_clks;
+	sc->nclks = nitems(de2_ccu_clks);
+
+	return (aw_ccung_attach(dev));
+}
+
+static device_method_t ccu_de2_methods[] = {
+	/* Device interface */
+	DEVMETHOD(device_probe,		ccu_de2_probe),
+	DEVMETHOD(device_attach,	ccu_de2_attach),
+
+	DEVMETHOD_END
+};
+
+static devclass_t ccu_de2ng_devclass;
+
+DEFINE_CLASS_1(ccu_de2, ccu_de2_driver, ccu_de2_methods,
+  sizeof(struct aw_ccung_softc), aw_ccung_driver);
+
+EARLY_DRIVER_MODULE(ccu_de2, simplebus, ccu_de2_driver,
+    ccu_de2ng_devclass, 0, 0, BUS_PASS_BUS + BUS_PASS_ORDER_LAST);

Modified: head/sys/conf/files.arm64
==============================================================================
--- head/sys/conf/files.arm64	Thu Mar  7 19:28:47 2019	(r344893)
+++ head/sys/conf/files.arm64	Thu Mar  7 19:30:37 2019	(r344894)
@@ -51,6 +51,7 @@ arm/allwinner/clkng/aw_clk_prediv_mux.c	optional	aw_cc
 arm/allwinner/clkng/ccu_a64.c		optional	soc_allwinner_a64 aw_ccu fdt
 arm/allwinner/clkng/ccu_h3.c		optional	soc_allwinner_h5 aw_ccu fdt
 arm/allwinner/clkng/ccu_sun8i_r.c	optional	aw_ccu fdt
+arm/allwinner/clkng/ccu_de2.c		optional	aw_ccu fdt
 
 # Allwinner padconf files
 arm/allwinner/a64/a64_padconf.c	optional	soc_allwinner_a64 fdt

From owner-svn-src-all@freebsd.org  Thu Mar  7 19:32:02 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 350B215226D5;
 Thu,  7 Mar 2019 19:32:02 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 CDC8D6F4B6;
 Thu,  7 Mar 2019 19:32:01 +0000 (UTC)
 (envelope-from manu@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 C1F742031C;
 Thu,  7 Mar 2019 19:32:01 +0000 (UTC)
 (envelope-from manu@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27JW1MI023039;
 Thu, 7 Mar 2019 19:32:01 GMT (envelope-from manu@FreeBSD.org)
Received: (from manu@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27JW1SQ023038;
 Thu, 7 Mar 2019 19:32:01 GMT (envelope-from manu@FreeBSD.org)
Message-Id: <201903071932.x27JW1SQ023038@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: manu set sender to
 manu@FreeBSD.org using -f
From: Emmanuel Vadot <manu@FreeBSD.org>
Date: Thu, 7 Mar 2019 19:32:01 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344895 - head/sys/arm/allwinner/clkng
X-SVN-Group: head
X-SVN-Commit-Author: manu
X-SVN-Commit-Paths: head/sys/arm/allwinner/clkng
X-SVN-Commit-Revision: 344895
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: CDC8D6F4B6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.963,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 19:32:02 -0000

Author: manu
Date: Thu Mar  7 19:32:01 2019
New Revision: 344895
URL: https://svnweb.freebsd.org/changeset/base/344895

Log:
  arm64: allwinner: a64: Add TCON clock
  
  The tcon clock need a mux table for it's parent, for now just
  list the parents twice.

Modified:
  head/sys/arm/allwinner/clkng/ccu_a64.c

Modified: head/sys/arm/allwinner/clkng/ccu_a64.c
==============================================================================
--- head/sys/arm/allwinner/clkng/ccu_a64.c	Thu Mar  7 19:30:37 2019	(r344894)
+++ head/sys/arm/allwinner/clkng/ccu_a64.c	Thu Mar  7 19:32:01 2019	(r344895)
@@ -640,6 +640,15 @@ NM_CLK(de_clk,
     AW_CLK_HAS_MUX | AW_CLK_HAS_GATE);		/* flags */
 
 /* TCON0/1 Needs mux table */
+static const char *tcon1_parents[] = {"pll_video0", "pll_video0", "pll_video1"};
+NM_CLK(tcon1_clk,
+  CLK_TCON1, "tcon1", tcon1_parents,
+  0x11C,
+  0, 0, 1, AW_CLK_FACTOR_FIXED,
+  0, 4, 0, 0,
+  24, 2,
+  31,
+  AW_CLK_HAS_MUX | AW_CLK_HAS_GATE);
 
 static const char *deinterlace_parents[] = {"pll_periph0", "pll_periph1"};
 NM_CLK(deinterlace_clk,
@@ -736,6 +745,7 @@ static struct aw_ccung_clk a64_ccu_clks[] = {
 	{ .type = AW_CLK_NM, .clk.nm = &spdif_clk},
 	{ .type = AW_CLK_NM, .clk.nm = &dram_clk},
 	{ .type = AW_CLK_NM, .clk.nm = &de_clk},
+	{ .type = AW_CLK_NM, .clk.nm = &tcon1_clk},
 	{ .type = AW_CLK_NM, .clk.nm = &deinterlace_clk},
 	{ .type = AW_CLK_NM, .clk.nm = &csi_sclk_clk},
 	{ .type = AW_CLK_NM, .clk.nm = &csi_mclk_clk},

From owner-svn-src-all@freebsd.org  Thu Mar  7 19:33:41 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 144641522990;
 Thu,  7 Mar 2019 19:33:41 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 AD7766F783;
 Thu,  7 Mar 2019 19:33:40 +0000 (UTC) (envelope-from dim@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 9AE9520458;
 Thu,  7 Mar 2019 19:33:40 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27JXe98023273;
 Thu, 7 Mar 2019 19:33:40 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27JXdMW023266;
 Thu, 7 Mar 2019 19:33:39 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903071933.x27JXdMW023266@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Thu, 7 Mar 2019 19:33:39 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344896 - in head/contrib/llvm/tools/clang:
 include/clang/AST include/clang/Basic lib/AST lib/CodeGen lib/Sema
X-SVN-Group: head
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in head/contrib/llvm/tools/clang: include/clang/AST
 include/clang/Basic lib/AST lib/CodeGen lib/Sema
X-SVN-Commit-Revision: 344896
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: AD7766F783
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.965,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 19:33:41 -0000

Author: dim
Date: Thu Mar  7 19:33:39 2019
New Revision: 344896
URL: https://svnweb.freebsd.org/changeset/base/344896

Log:
  Pull in r354937 from upstream clang trunk (by Jörg Sonnenberger):
  
    Fix inline assembler constraint validation
  
    The current constraint logic is both too lax and too strict. It fails
    for input outside the [INT_MIN..INT_MAX] range, but it also
    implicitly accepts 0 as value when it should not. Adjust logic to
    handle both correctly.
  
    Differential Revision: https://reviews.llvm.org/D58649
  
  Pull in r355491 from upstream clang trunk (by Hans Wennborg):
  
    Inline asm constraints: allow ICE-like pointers for the "n"
    constraint (PR40890)
  
    Apparently GCC allows this, and there's code relying on it (see bug).
  
    The idea is to allow expression that would have been allowed if they
    were cast to int. So I based the code on how such a cast would be
    done (the CK_PointerToIntegral case in
    IntExprEvaluator::VisitCastExpr()).
  
    Differential Revision: https://reviews.llvm.org/D58821
  
  These should fix assertions and errors when using the inline assembly
  "n" constraint in certain ways.
  
  In case of devel/valgrind, a pointer was used as the input for the
  constraint, which lead to "Assertion failed: (isInt() && "Invalid
  accessor"), function getInt".
  
  In case of math/secp256k1, a very large integer value was used as input
  for the constraint, which lead to "error: value '4624529908474429119'
  out of range for constraint 'n'".
  
  PR:             236216, 236194
  MFC after:      1 month
  X-MFC-With:     r344779

Modified:
  head/contrib/llvm/tools/clang/include/clang/AST/APValue.h
  head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h
  head/contrib/llvm/tools/clang/lib/AST/APValue.cpp
  head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp
  head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp
  head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp

Modified: head/contrib/llvm/tools/clang/include/clang/AST/APValue.h
==============================================================================
--- head/contrib/llvm/tools/clang/include/clang/AST/APValue.h	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/include/clang/AST/APValue.h	Thu Mar  7 19:33:39 2019	(r344896)
@@ -257,6 +257,12 @@ class APValue { (public)
     return const_cast<APValue*>(this)->getInt();
   }
 
+  /// Try to convert this value to an integral constant. This works if it's an
+  /// integer, null pointer, or offset from a null pointer. Returns true on
+  /// success.
+  bool toIntegralConstant(APSInt &Result, QualType SrcTy,
+                          const ASTContext &Ctx) const;
+
   APFloat &getFloat() {
     assert(isFloat() && "Invalid accessor");
     return *(APFloat*)(char*)Data.buffer;

Modified: head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h
==============================================================================
--- head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h	Thu Mar  7 19:33:39 2019	(r344896)
@@ -807,6 +807,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
     struct {
       int Min;
       int Max;
+      bool isConstrained;
     } ImmRange;
     llvm::SmallSet<int, 4> ImmSet;
 
@@ -817,6 +818,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
         : Flags(0), TiedOperand(-1), ConstraintStr(ConstraintStr.str()),
           Name(Name.str()) {
       ImmRange.Min = ImmRange.Max = 0;
+      ImmRange.isConstrained = false;
     }
 
     const std::string &getConstraintStr() const { return ConstraintStr; }
@@ -845,8 +847,9 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
       return (Flags & CI_ImmediateConstant) != 0;
     }
     bool isValidAsmImmediate(const llvm::APInt &Value) const {
-      return (Value.sge(ImmRange.Min) && Value.sle(ImmRange.Max)) ||
-             ImmSet.count(Value.getZExtValue()) != 0;
+      if (!ImmSet.empty())
+        return ImmSet.count(Value.getZExtValue()) != 0;
+      return !ImmRange.isConstrained || (Value.sge(ImmRange.Min) && Value.sle(ImmRange.Max));
     }
 
     void setIsReadWrite() { Flags |= CI_ReadWrite; }
@@ -858,6 +861,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
       Flags |= CI_ImmediateConstant;
       ImmRange.Min = Min;
       ImmRange.Max = Max;
+      ImmRange.isConstrained = true;
     }
     void setRequiresImmediate(llvm::ArrayRef<int> Exacts) {
       Flags |= CI_ImmediateConstant;
@@ -870,8 +874,6 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
     }
     void setRequiresImmediate() {
       Flags |= CI_ImmediateConstant;
-      ImmRange.Min = INT_MIN;
-      ImmRange.Max = INT_MAX;
     }
 
     /// Indicate that this is an input operand that is tied to

Modified: head/contrib/llvm/tools/clang/lib/AST/APValue.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/AST/APValue.cpp	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/lib/AST/APValue.cpp	Thu Mar  7 19:33:39 2019	(r344896)
@@ -600,6 +600,26 @@ std::string APValue::getAsString(ASTContext &Ctx, Qual
   return Result;
 }
 
+bool APValue::toIntegralConstant(APSInt &Result, QualType SrcTy,
+                                 const ASTContext &Ctx) const {
+  if (isInt()) {
+    Result = getInt();
+    return true;
+  }
+
+  if (isLValue() && isNullPointer()) {
+    Result = Ctx.MakeIntValue(Ctx.getTargetNullPointerValue(SrcTy), SrcTy);
+    return true;
+  }
+
+  if (isLValue() && !getLValueBase()) {
+    Result = Ctx.MakeIntValue(getLValueOffset().getQuantity(), SrcTy);
+    return true;
+  }
+
+  return false;
+}
+
 const APValue::LValueBase APValue::getLValueBase() const {
   assert(isLValue() && "Invalid accessor");
   return ((const LV*)(const void*)Data.buffer)->Base;

Modified: head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp	Thu Mar  7 19:33:39 2019	(r344896)
@@ -9821,13 +9821,12 @@ bool IntExprEvaluator::VisitCastExpr(const CastExpr *E
       return true;
     }
 
-    uint64_t V;
-    if (LV.isNullPointer())
-      V = Info.Ctx.getTargetNullPointerValue(SrcType);
-    else
-      V = LV.getLValueOffset().getQuantity();
+    APSInt AsInt;
+    APValue V;
+    LV.moveInto(V);
+    if (!V.toIntegralConstant(AsInt, SrcType, Info.Ctx))
+      llvm_unreachable("Can't cast this!");
 
-    APSInt AsInt = Info.Ctx.MakeIntValue(V, SrcType);
     return Success(HandleIntToIntCast(Info, E, DestType, SrcType, AsInt), E);
   }
 

Modified: head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp	Thu Mar  7 19:33:39 2019	(r344896)
@@ -1821,8 +1821,15 @@ llvm::Value* CodeGenFunction::EmitAsmInput(
   // (immediate or symbolic), try to emit it as such.
   if (!Info.allowsRegister() && !Info.allowsMemory()) {
     if (Info.requiresImmediateConstant()) {
-      llvm::APSInt AsmConst = InputExpr->EvaluateKnownConstInt(getContext());
-      return llvm::ConstantInt::get(getLLVMContext(), AsmConst);
+      Expr::EvalResult EVResult;
+      InputExpr->EvaluateAsRValue(EVResult, getContext(), true);
+
+      llvm::APSInt IntResult;
+      if (!EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(),
+                                           getContext()))
+        llvm_unreachable("Invalid immediate constant!");
+
+      return llvm::ConstantInt::get(getLLVMContext(), IntResult);
     }
 
     Expr::EvalResult Result;

Modified: head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp
==============================================================================
--- head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp	Thu Mar  7 19:32:01 2019	(r344895)
+++ head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp	Thu Mar  7 19:33:39 2019	(r344896)
@@ -383,11 +383,20 @@ StmtResult Sema::ActOnGCCAsmStmt(SourceLocation AsmLoc
           return StmtError(
               Diag(InputExpr->getBeginLoc(), diag::err_asm_immediate_expected)
               << Info.getConstraintStr() << InputExpr->getSourceRange());
-        llvm::APSInt Result = EVResult.Val.getInt();
-        if (!Info.isValidAsmImmediate(Result))
+
+        // For compatibility with GCC, we also allow pointers that would be
+        // integral constant expressions if they were cast to int.
+        llvm::APSInt IntResult;
+        if (!EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(),
+                                             Context))
+          return StmtError(
+              Diag(InputExpr->getBeginLoc(), diag::err_asm_immediate_expected)
+              << Info.getConstraintStr() << InputExpr->getSourceRange());
+
+        if (!Info.isValidAsmImmediate(IntResult))
           return StmtError(Diag(InputExpr->getBeginLoc(),
                                 diag::err_invalid_asm_value_for_constraint)
-                           << Result.toString(10) << Info.getConstraintStr()
+                           << IntResult.toString(10) << Info.getConstraintStr()
                            << InputExpr->getSourceRange());
       }
 

From owner-svn-src-all@freebsd.org  Thu Mar  7 20:12:51 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 72BAE152423C;
 Thu,  7 Mar 2019 20:12: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)
 server-signature RSA-PSS (4096 bits)
 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 1B25270F20;
 Thu,  7 Mar 2019 20:12: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 107E720B1A;
 Thu,  7 Mar 2019 20:12:51 +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 x27KCouL044389;
 Thu, 7 Mar 2019 20:12:50 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27KCoUx044387;
 Thu, 7 Mar 2019 20:12:50 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903072012.x27KCoUx044387@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Thu, 7 Mar 2019 20:12: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: r344897 - stable/12/crypto/openssh
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12/crypto/openssh
X-SVN-Commit-Revision: 344897
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1B25270F20
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 20:12:51 -0000

Author: emaste
Date: Thu Mar  7 20:12:50 2019
New Revision: 344897
URL: https://svnweb.freebsd.org/changeset/base/344897

Log:
  MFC r344449: scp: validate filenames provided by server against wildcard
  
  ... in client
  
  OpenSSH-portable commits:
  
  check in scp client that filenames sent during remote->local directory
  copies satisfy the wildcard specified by the user.
  
  This checking provides some protection against a malicious server
  sending unexpected filenames, but it comes at a risk of rejecting wanted
  files due to differences between client and server wildcard expansion rules.
  
  For this reason, this also adds a new -T flag to disable the check.
  
  reported by Harry Sintonen
  fix approach suggested by markus@;
  has been in snaps for ~1wk courtesy deraadt@
  
  OpenBSD-Commit-ID: 00f44b50d2be8e321973f3c6d014260f8f7a8eda
  
  Minor patch conflict (getopt) resolved.
  
  Obtained from: OpenSSH-portable 391ffc4b9d31fa1f4ad566499fef9176ff8a07dc
  
  scp: add -T to usage();
  
  OpenBSD-Commit-ID: a7ae14d9436c64e1bd05022329187ea3a0ce1899
  
  Obtained from: OpenSSH-portable 2c21b75a7be6ebdcbceaebb43157c48dbb36f3d8
  
  PR:		234965
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/crypto/openssh/scp.1
  stable/12/crypto/openssh/scp.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/crypto/openssh/scp.1
==============================================================================
--- stable/12/crypto/openssh/scp.1	Thu Mar  7 19:33:39 2019	(r344896)
+++ stable/12/crypto/openssh/scp.1	Thu Mar  7 20:12:50 2019	(r344897)
@@ -18,7 +18,7 @@
 .Nd secure copy (remote file copy program)
 .Sh SYNOPSIS
 .Nm scp
-.Op Fl 346BCpqrv
+.Op Fl 346BCpqrTv
 .Op Fl c Ar cipher
 .Op Fl F Ar ssh_config
 .Op Fl i Ar identity_file
@@ -207,6 +207,16 @@ to use for the encrypted connection.
 The program must understand
 .Xr ssh 1
 options.
+.It Fl T
+Disable strict filename checking.
+By default when copying files from a remote host to a local directory
+.Nm
+checks that the received filenames match those requested on the command-line
+to prevent the remote end from sending unexpected or unwanted files.
+Because of differences in how various operating systems and shells interpret
+filename wildcards, these checks may cause wanted files to be rejected.
+This option disables these checks at the expense of fully trusting that
+the server will not send unexpected filenames.
 .It Fl v
 Verbose mode.
 Causes

Modified: stable/12/crypto/openssh/scp.c
==============================================================================
--- stable/12/crypto/openssh/scp.c	Thu Mar  7 19:33:39 2019	(r344896)
+++ stable/12/crypto/openssh/scp.c	Thu Mar  7 20:12:50 2019	(r344897)
@@ -1,4 +1,4 @@
-/* $OpenBSD: scp.c,v 1.197 2018/06/01 04:31:48 dtucker Exp $ */
+/* $OpenBSD: scp.c,v 1.203 2019/01/27 07:14:11 jmc Exp $ */
 /*
  * scp - secure remote copy.  This is basically patched BSD rcp which
  * uses ssh to do the data transfer (instead of using rcmd).
@@ -94,6 +94,7 @@
 #include <dirent.h>
 #include <errno.h>
 #include <fcntl.h>
+#include <fnmatch.h>
 #include <limits.h>
 #include <locale.h>
 #include <pwd.h>
@@ -375,14 +376,14 @@ void verifydir(char *);
 struct passwd *pwd;
 uid_t userid;
 int errs, remin, remout;
-int pflag, iamremote, iamrecursive, targetshouldbedirectory;
+int Tflag, pflag, iamremote, iamrecursive, targetshouldbedirectory;
 
 #define	CMDNEEDS	64
 char cmd[CMDNEEDS];		/* must hold "rcp -r -p -d\0" */
 
 int response(void);
 void rsource(char *, struct stat *);
-void sink(int, char *[]);
+void sink(int, char *[], const char *);
 void source(int, char *[]);
 void tolocal(int, char *[]);
 void toremote(int, char *[]);
@@ -421,8 +422,9 @@ main(int argc, char **argv)
 	addargs(&args, "-oRemoteCommand=none");
 	addargs(&args, "-oRequestTTY=no");
 
-	fflag = tflag = 0;
-	while ((ch = getopt(argc, argv, "dfl:prtvBCc:i:P:q12346S:o:F:")) != -1)
+	fflag = Tflag = tflag = 0;
+	while ((ch = getopt(argc, argv,
+	    "dfl:prtTvBCc:i:P:q12346S:o:F:")) != -1) {
 		switch (ch) {
 		/* User-visible flags. */
 		case '1':
@@ -501,9 +503,13 @@ main(int argc, char **argv)
 			setmode(0, O_BINARY);
 #endif
 			break;
+		case 'T':
+			Tflag = 1;
+			break;
 		default:
 			usage();
 		}
+	}
 	argc -= optind;
 	argv += optind;
 
@@ -534,7 +540,7 @@ main(int argc, char **argv)
 	}
 	if (tflag) {
 		/* Receive data. */
-		sink(argc, argv);
+		sink(argc, argv, NULL);
 		exit(errs != 0);
 	}
 	if (argc < 2)
@@ -791,7 +797,7 @@ tolocal(int argc, char **argv)
 			continue;
 		}
 		free(bp);
-		sink(1, argv + argc - 1);
+		sink(1, argv + argc - 1, src);
 		(void) close(remin);
 		remin = remout = -1;
 	}
@@ -967,7 +973,7 @@ rsource(char *name, struct stat *statp)
 	 (sizeof(type) != 4 && sizeof(type) != 8))
 
 void
-sink(int argc, char **argv)
+sink(int argc, char **argv, const char *src)
 {
 	static BUF buffer;
 	struct stat stb;
@@ -983,6 +989,7 @@ sink(int argc, char **argv)
 	unsigned long long ull;
 	int setimes, targisdir, wrerrno = 0;
 	char ch, *cp, *np, *targ, *why, *vect[1], buf[2048], visbuf[2048];
+	char *src_copy = NULL, *restrict_pattern = NULL;
 	struct timeval tv[2];
 
 #define	atime	tv[0]
@@ -1007,6 +1014,17 @@ sink(int argc, char **argv)
 	(void) atomicio(vwrite, remout, "", 1);
 	if (stat(targ, &stb) == 0 && S_ISDIR(stb.st_mode))
 		targisdir = 1;
+	if (src != NULL && !iamrecursive && !Tflag) {
+		/*
+		 * Prepare to try to restrict incoming filenames to match
+		 * the requested destination file glob.
+		 */
+		if ((src_copy = strdup(src)) == NULL)
+			fatal("strdup failed");
+		if ((restrict_pattern = strrchr(src_copy, '/')) != NULL) {
+			*restrict_pattern++ = '\0';
+		}
+	}
 	for (first = 1;; first = 0) {
 		cp = buf;
 		if (atomicio(read, remin, cp, 1) != 1)
@@ -1111,6 +1129,9 @@ sink(int argc, char **argv)
 			run_err("error: unexpected filename: %s", cp);
 			exit(1);
 		}
+		if (restrict_pattern != NULL &&
+		    fnmatch(restrict_pattern, cp, 0) != 0)
+			SCREWUP("filename does not match request");
 		if (targisdir) {
 			static char *namebuf;
 			static size_t cursize;
@@ -1148,7 +1169,7 @@ sink(int argc, char **argv)
 					goto bad;
 			}
 			vect[0] = xstrdup(np);
-			sink(1, vect);
+			sink(1, vect, src);
 			if (setimes) {
 				setimes = 0;
 				if (utimes(vect[0], tv) < 0)
@@ -1316,7 +1337,7 @@ void
 usage(void)
 {
 	(void) fprintf(stderr,
-	    "usage: scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]\n"
+	    "usage: scp [-346BCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file]\n"
 	    "           [-l limit] [-o ssh_option] [-P port] [-S program] source ... target\n");
 	exit(1);
 }

From owner-svn-src-all@freebsd.org  Thu Mar  7 20:40:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D19141524C16;
 Thu,  7 Mar 2019 20:40:40 +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)
 server-signature RSA-PSS (4096 bits)
 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 74B6471AC9;
 Thu,  7 Mar 2019 20:40:40 +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 6981B20E9A;
 Thu,  7 Mar 2019 20:40:40 +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 x27KeeuL055176;
 Thu, 7 Mar 2019 20:40:40 GMT (envelope-from kib@FreeBSD.org)
Received: (from kib@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27KeeDI055175;
 Thu, 7 Mar 2019 20:40:40 GMT (envelope-from kib@FreeBSD.org)
Message-Id: <201903072040.x27KeeDI055175@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org
 using -f
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Thu, 7 Mar 2019 20:40:40 +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: r344898 - stable/12/share/mk
X-SVN-Group: stable-12
X-SVN-Commit-Author: kib
X-SVN-Commit-Paths: stable/12/share/mk
X-SVN-Commit-Revision: 344898
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 74B6471AC9
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 20:40:41 -0000

Author: kib
Date: Thu Mar  7 20:40:39 2019
New Revision: 344898
URL: https://svnweb.freebsd.org/changeset/base/344898

Log:
  Disable WITH_RETPOLINE on stable/12.
  
  It is known that clang 7 generates broken ifunc calls when retpoline is
  enabled. Since libc uses ifuncs, mark WITH_RETPOLINE as always broken
  and disabled. To be removed after clang 8 MFC.
  
  This is a direct commit to the branch.
  
  Reported by:	many
  Tested by:	Nikola Mihaylov <c.source.code@gmail.com>
  Reviewed by:	emaste
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/share/mk/src.opts.mk

Modified: stable/12/share/mk/src.opts.mk
==============================================================================
--- stable/12/share/mk/src.opts.mk	Thu Mar  7 20:12:50 2019	(r344897)
+++ stable/12/share/mk/src.opts.mk	Thu Mar  7 20:40:39 2019	(r344898)
@@ -365,6 +365,9 @@ BROKEN_OPTIONS+=LOADER_UBOOT
 BROKEN_OPTIONS+=LOADER_GELI LOADER_LUA
 .endif
 
+# clang 7.0
+BROKEN_OPTIONS+=RETPOLINE
+
 .if ${__T:Mmips64*}
 # profiling won't work on MIPS64 because there is only assembly for o32
 BROKEN_OPTIONS+=PROFILE

From owner-svn-src-all@freebsd.org  Thu Mar  7 20:43:59 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 99B201524FB5;
 Thu,  7 Mar 2019 20:43:59 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id ED65071F74;
 Thu,  7 Mar 2019 20:43:58 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x27Khtqb092244;
 Thu, 7 Mar 2019 12:43:55 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x27KhtYw092243;
 Thu, 7 Mar 2019 12:43:55 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903072043.x27KhtYw092243@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344898 - stable/12/share/mk
In-Reply-To: <201903072040.x27KeeDI055175@repo.freebsd.org>
To: Konstantin Belousov <kib@freebsd.org>
Date: Thu, 7 Mar 2019 12:43:55 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: ED65071F74
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.98 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.98)[-0.977,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 20:43:59 -0000

> Author: kib
> Date: Thu Mar  7 20:40:39 2019
> New Revision: 344898
> URL: https://svnweb.freebsd.org/changeset/base/344898
> 
> Log:
>   Disable WITH_RETPOLINE on stable/12.
>   
>   It is known that clang 7 generates broken ifunc calls when retpoline is
>   enabled. Since libc uses ifuncs, mark WITH_RETPOLINE as always broken
>   and disabled. To be removed after clang 8 MFC.
>   
>   This is a direct commit to the branch.
>   
>   Reported by:	many
>   Tested by:	Nikola Mihaylov <c.source.code@gmail.com>
>   Reviewed by:	emaste
>   Sponsored by:	The FreeBSD Foundation

Would an UPDATING entry be warranted?

> Modified:
>   stable/12/share/mk/src.opts.mk
> 
> Modified: stable/12/share/mk/src.opts.mk
> ==============================================================================
> --- stable/12/share/mk/src.opts.mk	Thu Mar  7 20:12:50 2019	(r344897)
> +++ stable/12/share/mk/src.opts.mk	Thu Mar  7 20:40:39 2019	(r344898)
> @@ -365,6 +365,9 @@ BROKEN_OPTIONS+=LOADER_UBOOT
>  BROKEN_OPTIONS+=LOADER_GELI LOADER_LUA
>  .endif
>  
> +# clang 7.0
> +BROKEN_OPTIONS+=RETPOLINE
> +
>  .if ${__T:Mmips64*}
>  # profiling won't work on MIPS64 because there is only assembly for o32
>  BROKEN_OPTIONS+=PROFILE
> 
> 

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Thu Mar  7 20:47:56 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A5741525201;
 Thu,  7 Mar 2019 20:47:56 +0000 (UTC)
 (envelope-from carpeddiem@gmail.com)
Received: from mail-it1-f173.google.com (mail-it1-f173.google.com
 [209.85.166.173])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id B243C72380;
 Thu,  7 Mar 2019 20:47:55 +0000 (UTC)
 (envelope-from carpeddiem@gmail.com)
Received: by mail-it1-f173.google.com with SMTP id w18so17492286itj.4;
 Thu, 07 Mar 2019 12:47:55 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=2tcJOOgLpLTidIqZ1g4QZswn4XSYPuQ9TWuscGFFOo0=;
 b=Uoeqv14P4maAU7b5YiKe8HqML/6CH5rxjtLtJw2yi82BNz0KeDtmyFqnDS3GJdu/hb
 EoQcJmvlhzq5vTh6egO6uH2w61m7CJVHXUP1iELSGxV1ntZu9c4p+S4akkeYmDpGOJyh
 wpwmmfng7qpxPaNXNFlGqP4rNFV0EPSgTDVQrd9JapFI7o2dA0m6kJkXczQAtpCobXkZ
 08DOoPI56SYGv6ghRBpKE6eq2/EFI727HrEro2c7gtnuWFG6hMSzHSuqMdlZJznAobw7
 XAVmnQU2p1jcpDOGawEiGQPhQF4syTCCwhui8J0P3C6x/xJrSNpgF1vgGjdEzZjcRFmx
 jHTQ==
X-Gm-Message-State: APjAAAX9yMVLW8ZxjwJTKQLM4lb3Zg5+vGp92/VKwz8hHezb+mupSEXk
 042qnZcPJsi1qZb8SKEx1BYc3mTWQsne+Yh1j1SsfA==
X-Google-Smtp-Source: APXvYqyyJFw86ZwLC3kGQNrrMIjsi1PLfPyRhKmE4wwnMfXxT9AFhOz9+IPgdDirozmacEsayLuba6zfXa9wXF+kbN0=
X-Received: by 2002:a24:b501:: with SMTP id v1mr6453918ite.174.1551991669065; 
 Thu, 07 Mar 2019 12:47:49 -0800 (PST)
MIME-Version: 1.0
References: <201903072040.x27KeeDI055175@repo.freebsd.org>
 <5c81829b.1c69fb81.838b7.dda4SMTPIN_ADDED_BROKEN@mx.google.com>
In-Reply-To: <5c81829b.1c69fb81.838b7.dda4SMTPIN_ADDED_BROKEN@mx.google.com>
From: Ed Maste <emaste@freebsd.org>
Date: Thu, 7 Mar 2019 15:47:35 -0500
Message-ID: <CAPyFy2CN4a58yK20wXaJH29u0Gy6YY0EmqNy_3kjgA3y9yqmyg@mail.gmail.com>
Subject: Re: svn commit: r344898 - stable/12/share/mk
To: "Rodney W. Grimes" <rgrimes@freebsd.org>
Cc: Konstantin Belousov <kib@freebsd.org>,
 src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, 
 svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: B243C72380
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 spf=pass (mx1.freebsd.org: domain of carpeddiem@gmail.com designates
 209.85.166.173 as permitted sender) smtp.mailfrom=carpeddiem@gmail.com
X-Spamd-Result: default: False [-5.74 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[];
 TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain];
 RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[freebsd.org];
 RCPT_COUNT_FIVE(0.00)[6]; NEURAL_HAM_LONG(-1.00)[-1.000,0];
 IP_SCORE(-2.83)[ip: (-8.18), ipnet: 209.85.128.0/17(-3.84), asn: 15169(-2.05),
 country: US(-0.07)]; 
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 NEURAL_HAM_SHORT(-0.90)[-0.902,0];
 RCVD_IN_DNSWL_NONE(0.00)[173.166.85.209.list.dnswl.org : 127.0.5.0];
 FORGED_SENDER(0.30)[emaste@freebsd.org,carpeddiem@gmail.com];
 MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US];
 FROM_NEQ_ENVFROM(0.00)[emaste@freebsd.org,carpeddiem@gmail.com];
 RCVD_COUNT_TWO(0.00)[2]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 20:47:56 -0000

On Thu, 7 Mar 2019 at 15:44, Rodney W. Grimes <freebsd@gndrsh.dnsmgr.net> wrote:
>
> Would an UPDATING entry be warranted?

I promised kib I will write one - will do so shortly.

From owner-svn-src-all@freebsd.org  Thu Mar  7 20:48:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E09C6152526F;
 Thu,  7 Mar 2019 20:48:41 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 565F6724D7;
 Thu,  7 Mar 2019 20:48:41 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x27KmcTF092285;
 Thu, 7 Mar 2019 12:48:38 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x27KmcWV092284;
 Thu, 7 Mar 2019 12:48:38 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903072048.x27KmcWV092284@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344898 - stable/12/share/mk
In-Reply-To: <CAPyFy2CN4a58yK20wXaJH29u0Gy6YY0EmqNy_3kjgA3y9yqmyg@mail.gmail.com>
To: Ed Maste <emaste@freebsd.org>
Date: Thu, 7 Mar 2019 12:48:38 -0800 (PST)
CC: "Rodney W. Grimes" <rgrimes@freebsd.org>,
 Konstantin Belousov <kib@freebsd.org>,
 src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: 565F6724D7
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.98 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.98)[-0.975,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 20:48:42 -0000

> On Thu, 7 Mar 2019 at 15:44, Rodney W. Grimes <freebsd@gndrsh.dnsmgr.net> wrote:
> >
> > Would an UPDATING entry be warranted?
> 
> I promised kib I will write one - will do so shortly.

Thank you,
-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Thu Mar  7 21:30:27 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9920C1526660;
 Thu,  7 Mar 2019 21:30:27 +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)
 server-signature RSA-PSS (4096 bits)
 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 3832573A71;
 Thu,  7 Mar 2019 21:30:27 +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 2DC79217BC;
 Thu,  7 Mar 2019 21:30:27 +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 x27LUQ9d081721;
 Thu, 7 Mar 2019 21:30:26 GMT (envelope-from emaste@FreeBSD.org)
Received: (from emaste@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27LUQNJ081720;
 Thu, 7 Mar 2019 21:30:26 GMT (envelope-from emaste@FreeBSD.org)
Message-Id: <201903072130.x27LUQNJ081720@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: emaste set sender to
 emaste@FreeBSD.org using -f
From: Ed Maste <emaste@FreeBSD.org>
Date: Thu, 7 Mar 2019 21:30:26 +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: r344899 - stable/12
X-SVN-Group: stable-12
X-SVN-Commit-Author: emaste
X-SVN-Commit-Paths: stable/12
X-SVN-Commit-Revision: 344899
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3832573A71
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 21:30:27 -0000

Author: emaste
Date: Thu Mar  7 21:30:26 2019
New Revision: 344899
URL: https://svnweb.freebsd.org/changeset/base/344899

Log:
  Add UPDATING entry for r344898 - RETPOLINE BROKEN_OPTIONS
  
  Sponsored by:	The FreeBSD Foundation

Modified:
  stable/12/UPDATING

Modified: stable/12/UPDATING
==============================================================================
--- stable/12/UPDATING	Thu Mar  7 20:40:39 2019	(r344898)
+++ stable/12/UPDATING	Thu Mar  7 21:30:26 2019	(r344899)
@@ -16,6 +16,11 @@ from older versions of FreeBSD, try WITHOUT_CLANG and 
 the tip of head, and then rebuild without this option. The bootstrap process
 from older version of current across the gcc/clang cutover is a bit fragile.
 
+20190307:
+	The RETPOLINE option produces non-functional ifunc-using binaries
+	with Clang 7.0.1, and has been forced off (via BROKEN_OPTIONS).
+	Once Clang 8 is merged it may be enabled again.
+
 20190216:
 	Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to
 	7.0.1.  Please see the 20141231 entry below for information about

From owner-svn-src-all@freebsd.org  Thu Mar  7 22:20:21 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD02D1527ED5;
 Thu,  7 Mar 2019 22:20:21 +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)
 server-signature RSA-PSS (4096 bits)
 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 60520758A6;
 Thu,  7 Mar 2019 22:20:21 +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 5429E2207C;
 Thu,  7 Mar 2019 22:20:21 +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 x27MKLTC007912;
 Thu, 7 Mar 2019 22:20:21 GMT (envelope-from brooks@FreeBSD.org)
Received: (from brooks@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27MKK86007910;
 Thu, 7 Mar 2019 22:20:20 GMT (envelope-from brooks@FreeBSD.org)
Message-Id: <201903072220.x27MKK86007910@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: brooks set sender to
 brooks@FreeBSD.org using -f
From: Brooks Davis <brooks@FreeBSD.org>
Date: Thu, 7 Mar 2019 22:20:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344900 - head/sys/gnu/gcov
X-SVN-Group: head
X-SVN-Commit-Author: brooks
X-SVN-Commit-Paths: head/sys/gnu/gcov
X-SVN-Commit-Revision: 344900
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 60520758A6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 22:20:21 -0000

Author: brooks
Date: Thu Mar  7 22:20:20 2019
New Revision: 344900
URL: https://svnweb.freebsd.org/changeset/base/344900

Log:
  Correct license boilerplate, to match the SPDX tag.
  
  The GPL-2.0 tag is a deprecated tag which means that same thing as
  GPL-2.0-only.

Modified:
  head/sys/gnu/gcov/gcc_4_7.c
  head/sys/gnu/gcov/gcov_fs.c

Modified: head/sys/gnu/gcov/gcc_4_7.c
==============================================================================
--- head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 21:30:26 2019	(r344899)
+++ head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 22:20:20 2019	(r344900)
@@ -2,7 +2,7 @@
 // This program is free software; you can redistribute it and/or
 // modify it under the terms of the GNU General Public License
 // as published by the Free Software Foundation; either version 2
-// of the License, or (at your option) any later version.
+// of the License.
 //
 // This program is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of

Modified: head/sys/gnu/gcov/gcov_fs.c
==============================================================================
--- head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 21:30:26 2019	(r344899)
+++ head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 22:20:20 2019	(r344900)
@@ -2,7 +2,7 @@
 // This program is free software; you can redistribute it and/or
 // modify it under the terms of the GNU General Public License
 // as published by the Free Software Foundation; either version 2
-// of the License, or (at your option) any later version.
+// of the License.
 //
 // This program is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of

From owner-svn-src-all@freebsd.org  Thu Mar  7 22:34:46 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F81D15285DB;
 Thu,  7 Mar 2019 22:34:46 +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)
 server-signature RSA-PSS (4096 bits)
 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 3024E762B4;
 Thu,  7 Mar 2019 22:34: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 142F0223BD;
 Thu,  7 Mar 2019 22:34: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 x27MYjw9017946;
 Thu, 7 Mar 2019 22:34:45 GMT (envelope-from brooks@FreeBSD.org)
Received: (from brooks@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27MYjhk017945;
 Thu, 7 Mar 2019 22:34:45 GMT (envelope-from brooks@FreeBSD.org)
Message-Id: <201903072234.x27MYjhk017945@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: brooks set sender to
 brooks@FreeBSD.org using -f
From: Brooks Davis <brooks@FreeBSD.org>
Date: Thu, 7 Mar 2019 22:34:45 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344901 - head/sys/gnu/gcov
X-SVN-Group: head
X-SVN-Commit-Author: brooks
X-SVN-Commit-Paths: head/sys/gnu/gcov
X-SVN-Commit-Revision: 344901
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3024E762B4
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 22:34:46 -0000

Author: brooks
Date: Thu Mar  7 22:34:45 2019
New Revision: 344901
URL: https://svnweb.freebsd.org/changeset/base/344901

Log:
  Correct my previous correction to the license.  It now matches the text
  in https://spdx.org/licenses/GPL-2.0.html

Modified:
  head/sys/gnu/gcov/gcc_4_7.c
  head/sys/gnu/gcov/gcov_fs.c

Modified: head/sys/gnu/gcov/gcc_4_7.c
==============================================================================
--- head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 22:20:20 2019	(r344900)
+++ head/sys/gnu/gcov/gcc_4_7.c	Thu Mar  7 22:34:45 2019	(r344901)
@@ -1,8 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 // This program is free software; you can redistribute it and/or
 // modify it under the terms of the GNU General Public License
-// as published by the Free Software Foundation; either version 2
-// of the License.
+// as published by the Free Software Foundation; version 2.
 //
 // This program is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of

Modified: head/sys/gnu/gcov/gcov_fs.c
==============================================================================
--- head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 22:20:20 2019	(r344900)
+++ head/sys/gnu/gcov/gcov_fs.c	Thu Mar  7 22:34:45 2019	(r344901)
@@ -1,8 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 // This program is free software; you can redistribute it and/or
 // modify it under the terms of the GNU General Public License
-// as published by the Free Software Foundation; either version 2
-// of the License.
+// as published by the Free Software Foundation; version 2.
 //
 // This program is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of

From owner-svn-src-all@freebsd.org  Thu Mar  7 22:52:00 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EF4C71528BFB;
 Thu,  7 Mar 2019 22:51:59 +0000 (UTC)
 (envelope-from jilles@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 67B3F76BD0;
 Thu,  7 Mar 2019 22:51:59 +0000 (UTC)
 (envelope-from jilles@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 59CCE22712;
 Thu,  7 Mar 2019 22:51:59 +0000 (UTC)
 (envelope-from jilles@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27Mpx1S026060;
 Thu, 7 Mar 2019 22:51:59 GMT (envelope-from jilles@FreeBSD.org)
Received: (from jilles@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27MpxT5026059;
 Thu, 7 Mar 2019 22:51:59 GMT (envelope-from jilles@FreeBSD.org)
Message-Id: <201903072251.x27MpxT5026059@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jilles set sender to
 jilles@FreeBSD.org using -f
From: Jilles Tjoelker <jilles@FreeBSD.org>
Date: Thu, 7 Mar 2019 22:51:59 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344902 - head/bin/sh/tests/expansion
X-SVN-Group: head
X-SVN-Commit-Author: jilles
X-SVN-Commit-Paths: head/bin/sh/tests/expansion
X-SVN-Commit-Revision: 344902
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 67B3F76BD0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 22:52:00 -0000

Author: jilles
Date: Thu Mar  7 22:51:58 2019
New Revision: 344902
URL: https://svnweb.freebsd.org/changeset/base/344902

Log:
  sh/tests: Improve failure messages of expansion/arith15.0

Modified:
  head/bin/sh/tests/expansion/arith15.0

Modified: head/bin/sh/tests/expansion/arith15.0
==============================================================================
--- head/bin/sh/tests/expansion/arith15.0	Thu Mar  7 22:34:45 2019	(r344901)
+++ head/bin/sh/tests/expansion/arith15.0	Thu Mar  7 22:51:58 2019	(r344902)
@@ -12,9 +12,9 @@ check() {
 XXX=-9223372036854775808
 check "XXX"		-9223372036854775808
 check "XXX - 1" 	9223372036854775807
-check $(($XXX - 1))	9223372036854775807
-check $(($XXX - 2))	9223372036854775806
-check $((0x8000000000000000 == 0x7fffffffffffffff)) \
+check "$XXX - 1"	9223372036854775807
+check "$XXX - 2"	9223372036854775806
+check "0x8000000000000000 == 0x7fffffffffffffff" \
 			0
 
 exit $((failures != 0))

From owner-svn-src-all@freebsd.org  Thu Mar  7 22:56:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0BBD51528FA1;
 Thu,  7 Mar 2019 22:56:40 +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)
 server-signature RSA-PSS (4096 bits)
 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 A319976FE6;
 Thu,  7 Mar 2019 22:56:39 +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 969FA2273F;
 Thu,  7 Mar 2019 22:56:39 +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 x27MudxL028552;
 Thu, 7 Mar 2019 22:56:39 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27MudTK028551;
 Thu, 7 Mar 2019 22:56:39 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903072256.x27MudTK028551@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Thu, 7 Mar 2019 22:56:39 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344903 -
 head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Commit-Revision: 344903
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A319976FE6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 22:56:40 -0000

Author: mav
Date: Thu Mar  7 22:56:39 2019
New Revision: 344903
URL: https://svnweb.freebsd.org/changeset/base/344903

Log:
  Improve entropy for ZFS taskqueue selection.
  
  I just found that at least on Skylake CPUs cpu_ticks() never returns odd
  values, only even, and possibly has even bigger step (176/2?), that makes
  its lower bits very bad entropy source, leaving half of taskqueues unused.
  Switch to sbinuptime(), closer to upstreams, mitigates the problem by the
  rate conversion working as kind of hash function.  In case that is somehow
  not enough (timer rate is too low or too divisible) mix in curcpu.
  
  MFC after:	1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Thu Mar  7 22:51:58 2019	(r344902)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c	Thu Mar  7 22:56:39 2019	(r344903)
@@ -1070,7 +1070,8 @@ spa_taskq_dispatch_ent(spa_t *spa, zio_type_t t, zio_t
 		tq = tqs->stqs_taskq[0];
 	} else {
 #ifdef _KERNEL
-		tq = tqs->stqs_taskq[cpu_ticks() % tqs->stqs_count];
+		tq = tqs->stqs_taskq[(u_int)(sbinuptime() + curcpu) %
+		    tqs->stqs_count];
 #else
 		tq = tqs->stqs_taskq[gethrtime() % tqs->stqs_count];
 #endif

From owner-svn-src-all@freebsd.org  Thu Mar  7 23:03:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A188C152938C;
 Thu,  7 Mar 2019 23:03:40 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 43FB0774F0;
 Thu,  7 Mar 2019 23:03:40 +0000 (UTC) (envelope-from bz@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 3539B228E3;
 Thu,  7 Mar 2019 23:03:40 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x27N3ek4033762;
 Thu, 7 Mar 2019 23:03:40 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x27N3dqr033758;
 Thu, 7 Mar 2019 23:03:39 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903072303.x27N3dqr033758@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Thu, 7 Mar 2019 23:03:39 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344904 - head/sys/netinet6
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: head/sys/netinet6
X-SVN-Commit-Revision: 344904
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 43FB0774F0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.948,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Mar 2019 23:03:40 -0000

Author: bz
Date: Thu Mar  7 23:03:39 2019
New Revision: 344904
URL: https://svnweb.freebsd.org/changeset/base/344904

Log:
  Update for IETF draft-ietf-6man-ipv6only-flag.
  
  When we roam between networks and our link-state goes down, automatically remove
  the IPv6-Only flag from the interface.  Otherwise we might switch from an
  IPv6-only to and IPv4-only network and the flag would stay and we would prevent
  IPv4 from working.
  
  While the actual function call to clear the flag is under EXPERIMENTAL,
  the eventhandler is not as we might want to re-use it for other
  functionality on link-down event (such was re-calculate default routers
  for example if there is more than one).
  
  Reviewed by:	hrs
  Differential Revision:	https://reviews.freebsd.org/D19487

Modified:
  head/sys/netinet6/nd6.c
  head/sys/netinet6/nd6.h
  head/sys/netinet6/nd6_rtr.c

Modified: head/sys/netinet6/nd6.c
==============================================================================
--- head/sys/netinet6/nd6.c	Thu Mar  7 22:56:39 2019	(r344903)
+++ head/sys/netinet6/nd6.c	Thu Mar  7 23:03:39 2019	(r344904)
@@ -113,7 +113,7 @@ VNET_DEFINE(int, nd6_debug) = 1;
 VNET_DEFINE(int, nd6_debug) = 0;
 #endif
 
-static eventhandler_tag lle_event_eh, iflladdr_event_eh;
+static eventhandler_tag lle_event_eh, iflladdr_event_eh, ifnet_link_event_eh;
 
 VNET_DEFINE(struct nd_drhead, nd_defrouter);
 VNET_DEFINE(struct nd_prhead, nd_prefix);
@@ -233,6 +233,8 @@ nd6_init(void)
 		    NULL, EVENTHANDLER_PRI_ANY);
 		iflladdr_event_eh = EVENTHANDLER_REGISTER(iflladdr_event,
 		    nd6_iflladdr, NULL, EVENTHANDLER_PRI_ANY);
+		ifnet_link_event_eh = EVENTHANDLER_REGISTER(ifnet_link_event,
+		    nd6_ifnet_link_event, NULL, EVENTHANDLER_PRI_ANY);
 	}
 }
 
@@ -244,6 +246,7 @@ nd6_destroy()
 	callout_drain(&V_nd6_slowtimo_ch);
 	callout_drain(&V_nd6_timer_ch);
 	if (IS_DEFAULT_VNET(curvnet)) {
+		EVENTHANDLER_DEREGISTER(ifnet_link_event, ifnet_link_event_eh);
 		EVENTHANDLER_DEREGISTER(lle_event, lle_event_eh);
 		EVENTHANDLER_DEREGISTER(iflladdr_event, iflladdr_event_eh);
 	}

Modified: head/sys/netinet6/nd6.h
==============================================================================
--- head/sys/netinet6/nd6.h	Thu Mar  7 22:56:39 2019	(r344903)
+++ head/sys/netinet6/nd6.h	Thu Mar  7 23:03:39 2019	(r344904)
@@ -476,6 +476,7 @@ void nd6_dad_stop(struct ifaddr *);
 /* nd6_rtr.c */
 void nd6_rs_input(struct mbuf *, int, int);
 void nd6_ra_input(struct mbuf *, int, int);
+void nd6_ifnet_link_event(void *, struct ifnet *, int);
 void defrouter_reset(void);
 void defrouter_select_fib(int fibnum);
 void defrouter_select(void);

Modified: head/sys/netinet6/nd6_rtr.c
==============================================================================
--- head/sys/netinet6/nd6_rtr.c	Thu Mar  7 22:56:39 2019	(r344903)
+++ head/sys/netinet6/nd6_rtr.c	Thu Mar  7 23:03:39 2019	(r344904)
@@ -285,7 +285,32 @@ defrtr_ipv6_only_ifp(struct ifnet *ifp)
 	/* Send notification of flag change. */
 #endif
 }
+
+static void
+defrtr_ipv6_only_ipf_down(struct ifnet *ifp)
+{
+
+	IF_AFDATA_WLOCK(ifp);
+	ND_IFINFO(ifp)->flags &= ~ND6_IFF_IPV6_ONLY;
+	IF_AFDATA_WUNLOCK(ifp);
+}
 #endif	/* EXPERIMENTAL */
+
+void
+nd6_ifnet_link_event(void *arg __unused, struct ifnet *ifp, int linkstate)
+{
+
+	/*
+	 * XXX-BZ we might want to trigger re-evaluation of our default router
+	 * availability. E.g., on link down the default router might be
+	 * unreachable but a different interface might still have connectivity.
+	 */
+
+#ifdef EXPERIMENTAL
+	if (linkstate == LINK_STATE_DOWN)
+		defrtr_ipv6_only_ipf_down(ifp);
+#endif
+}
 
 /*
  * Receive Router Advertisement Message.

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:20:39 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A9182152C31C;
 Fri,  8 Mar 2019 00:20:39 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 4C88C81AD1;
 Fri,  8 Mar 2019 00:20:39 +0000 (UTC) (envelope-from jhb@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 426792359B;
 Fri,  8 Mar 2019 00:20:39 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x280KdWe070901;
 Fri, 8 Mar 2019 00:20:39 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280KbkJ070892;
 Fri, 8 Mar 2019 00:20:37 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903080020.x280KbkJ070892@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:20:37 +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: r344905 - in stable: 11/sys/amd64/amd64 11/sys/arm/arm
 11/sys/arm64/arm64 11/sys/i386/i386 11/sys/kern 11/sys/mips/mips
 11/sys/powerpc/powerpc 11/sys/sys 12/sys/amd64/amd64 12/sys/arm/a...
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/amd64/amd64 11/sys/arm/arm
 11/sys/arm64/arm64 11/sys/i386/i386 11/sys/kern 11/sys/mips/mips
 11/sys/powerpc/powerpc 11/sys/sys 12/sys/amd64/amd64 12/sys/arm/arm
 12/sys/arm64/arm64 12/...
X-SVN-Commit-Revision: 344905
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4C88C81AD1
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:20:39 -0000

Author: jhb
Date: Fri Mar  8 00:20:37 2019
New Revision: 344905
URL: https://svnweb.freebsd.org/changeset/base/344905

Log:
  MFC 340020: Don't enter DDB for fatal traps before panic by default.
  
  Add a new 'debugger_on_trap' knob separate from 'debugger_on_panic'
  and make the calls to kdb_trap() in MD fatal trap handlers prior to
  calling panic() conditional on this new knob instead of
  'debugger_on_panic'.  Disable the new knob by default.  Developers who
  wish to recover from a fatal fault by adjusting saved register state
  and retrying the faulting instruction can still do so by enabling the
  new knob.  However, for the more common case this makes the user
  experience for panics due to a fatal fault match the user experience
  for other panics, e.g. 'c' in DDB will generate a crash dump and
  reboot the system rather than being stuck in an infinite loop of fatal
  fault messages and DDB prompts.

Modified:
  stable/12/sys/amd64/amd64/trap.c
  stable/12/sys/arm/arm/trap-v4.c
  stable/12/sys/arm/arm/trap-v6.c
  stable/12/sys/arm64/arm64/trap.c
  stable/12/sys/i386/i386/trap.c
  stable/12/sys/kern/kern_shutdown.c
  stable/12/sys/mips/mips/trap.c
  stable/12/sys/powerpc/powerpc/trap.c
  stable/12/sys/sys/kdb.h
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/amd64/amd64/trap.c
  stable/11/sys/arm/arm/trap-v4.c
  stable/11/sys/arm/arm/trap-v6.c
  stable/11/sys/arm64/arm64/trap.c
  stable/11/sys/i386/i386/trap.c
  stable/11/sys/kern/kern_shutdown.c
  stable/11/sys/mips/mips/trap.c
  stable/11/sys/powerpc/powerpc/trap.c
  stable/11/sys/sys/kdb.h
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/amd64/amd64/trap.c
==============================================================================
--- stable/12/sys/amd64/amd64/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/amd64/amd64/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -933,7 +933,7 @@ trap_fatal(frame, eva)
 	    curproc->p_pid, curthread->td_name);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(type, 0, frame);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/12/sys/arm/arm/trap-v4.c
==============================================================================
--- stable/12/sys/arm/arm/trap-v4.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/arm/arm/trap-v4.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -456,7 +456,7 @@ dab_fatal(struct trapframe *tf, u_int fsr, u_int far, 
 	printf(", pc =%08x\n\n", tf->tf_pc);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(fsr, 0, tf);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/12/sys/arm/arm/trap-v6.c
==============================================================================
--- stable/12/sys/arm/arm/trap-v6.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/arm/arm/trap-v6.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -599,7 +599,7 @@ abort_fatal(struct trapframe *tf, u_int idx, u_int fsr
 	printf(", pc =%08x\n\n", tf->tf_pc);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		kdb_trap(fsr, 0, tf);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/12/sys/arm64/arm64/trap.c
==============================================================================
--- stable/12/sys/arm64/arm64/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/arm64/arm64/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -256,7 +256,7 @@ no_pmap_fault:
 			printf(" esr:         %.8lx\n", esr);
 
 #ifdef KDB
-			if (debugger_on_panic) {
+			if (debugger_on_trap) {
 				kdb_why = KDB_WHY_TRAP;
 				handled = kdb_trap(ESR_ELx_EXCEPTION(esr), 0,
 				    frame);

Modified: stable/12/sys/i386/i386/trap.c
==============================================================================
--- stable/12/sys/i386/i386/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/i386/i386/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -977,7 +977,7 @@ trap_fatal(frame, eva)
 	    curproc->p_pid, curthread->td_name);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		frame->tf_err = eva;	/* smuggle fault address to ddb */
 		handled = kdb_trap(type, 0, frame);

Modified: stable/12/sys/kern/kern_shutdown.c
==============================================================================
--- stable/12/sys/kern/kern_shutdown.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/kern/kern_shutdown.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -115,13 +115,18 @@ SYSCTL_INT(_kern, OID_AUTO, panic_reboot_wait_time, CT
 
 #ifdef KDB
 #ifdef KDB_UNATTENDED
-int debugger_on_panic = 0;
+static int debugger_on_panic = 0;
 #else
-int debugger_on_panic = 1;
+static int debugger_on_panic = 1;
 #endif
 SYSCTL_INT(_debug, OID_AUTO, debugger_on_panic,
     CTLFLAG_RWTUN | CTLFLAG_SECURE,
     &debugger_on_panic, 0, "Run debugger on kernel panic");
+
+int debugger_on_trap = 0;
+SYSCTL_INT(_debug, OID_AUTO, debugger_on_trap,
+    CTLFLAG_RWTUN | CTLFLAG_SECURE,
+    &debugger_on_trap, 0, "Run debugger on kernel trap before panic");
 
 #ifdef KDB_TRACE
 static int trace_on_panic = 1;

Modified: stable/12/sys/mips/mips/trap.c
==============================================================================
--- stable/12/sys/mips/mips/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/mips/mips/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -1100,7 +1100,7 @@ err:
 #endif
 
 #ifdef KDB
-		if (debugger_on_panic) {
+		if (debugger_on_trap) {
 			kdb_why = KDB_WHY_TRAP;
 			kdb_trap(type, 0, trapframe);
 			kdb_why = KDB_WHY_UNSET;

Modified: stable/12/sys/powerpc/powerpc/trap.c
==============================================================================
--- stable/12/sys/powerpc/powerpc/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/powerpc/powerpc/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -455,7 +455,7 @@ trap_fatal(struct trapframe *frame)
 
 	printtrap(frame->exc, frame, 1, (frame->srr1 & PSL_PR));
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(frame->exc, 0, frame);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/12/sys/sys/kdb.h
==============================================================================
--- stable/12/sys/sys/kdb.h	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/12/sys/sys/kdb.h	Fri Mar  8 00:20:37 2019	(r344905)
@@ -62,7 +62,7 @@ struct kdb_dbbe {
 	DATA_SET(kdb_dbbe_set, name##_dbbe)
 
 extern u_char kdb_active;		/* Non-zero while in debugger. */
-extern int debugger_on_panic;		/* enter the debugger on panic. */
+extern int debugger_on_trap;		/* enter the debugger on trap. */
 extern struct kdb_dbbe *kdb_dbbe;	/* Default debugger backend or NULL. */
 extern struct trapframe *kdb_frame;	/* Frame to kdb_trap(). */
 extern struct pcb *kdb_thrctx;		/* Current context. */

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:20:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D1340152C322;
 Fri,  8 Mar 2019 00:20:41 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 71FD681ADB;
 Fri,  8 Mar 2019 00:20:41 +0000 (UTC) (envelope-from jhb@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 68274235A0;
 Fri,  8 Mar 2019 00:20:41 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x280Kfd4070915;
 Fri, 8 Mar 2019 00:20:41 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280KdWr070906;
 Fri, 8 Mar 2019 00:20:39 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903080020.x280KdWr070906@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:20:39 +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: r344905 - in stable: 11/sys/amd64/amd64 11/sys/arm/arm
 11/sys/arm64/arm64 11/sys/i386/i386 11/sys/kern 11/sys/mips/mips
 11/sys/powerpc/powerpc 11/sys/sys 12/sys/amd64/amd64 12/sys/arm/a...
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/amd64/amd64 11/sys/arm/arm
 11/sys/arm64/arm64 11/sys/i386/i386 11/sys/kern 11/sys/mips/mips
 11/sys/powerpc/powerpc 11/sys/sys 12/sys/amd64/amd64 12/sys/arm/arm
 12/sys/arm64/arm64 12/...
X-SVN-Commit-Revision: 344905
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 71FD681ADB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:20:42 -0000

Author: jhb
Date: Fri Mar  8 00:20:37 2019
New Revision: 344905
URL: https://svnweb.freebsd.org/changeset/base/344905

Log:
  MFC 340020: Don't enter DDB for fatal traps before panic by default.
  
  Add a new 'debugger_on_trap' knob separate from 'debugger_on_panic'
  and make the calls to kdb_trap() in MD fatal trap handlers prior to
  calling panic() conditional on this new knob instead of
  'debugger_on_panic'.  Disable the new knob by default.  Developers who
  wish to recover from a fatal fault by adjusting saved register state
  and retrying the faulting instruction can still do so by enabling the
  new knob.  However, for the more common case this makes the user
  experience for panics due to a fatal fault match the user experience
  for other panics, e.g. 'c' in DDB will generate a crash dump and
  reboot the system rather than being stuck in an infinite loop of fatal
  fault messages and DDB prompts.

Modified:
  stable/11/sys/amd64/amd64/trap.c
  stable/11/sys/arm/arm/trap-v4.c
  stable/11/sys/arm/arm/trap-v6.c
  stable/11/sys/arm64/arm64/trap.c
  stable/11/sys/i386/i386/trap.c
  stable/11/sys/kern/kern_shutdown.c
  stable/11/sys/mips/mips/trap.c
  stable/11/sys/powerpc/powerpc/trap.c
  stable/11/sys/sys/kdb.h
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/amd64/amd64/trap.c
  stable/12/sys/arm/arm/trap-v4.c
  stable/12/sys/arm/arm/trap-v6.c
  stable/12/sys/arm64/arm64/trap.c
  stable/12/sys/i386/i386/trap.c
  stable/12/sys/kern/kern_shutdown.c
  stable/12/sys/mips/mips/trap.c
  stable/12/sys/powerpc/powerpc/trap.c
  stable/12/sys/sys/kdb.h
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/amd64/amd64/trap.c
==============================================================================
--- stable/11/sys/amd64/amd64/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/amd64/amd64/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -891,7 +891,7 @@ trap_fatal(frame, eva)
 	    curproc->p_pid, curthread->td_name);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(type, 0, frame);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/11/sys/arm/arm/trap-v4.c
==============================================================================
--- stable/11/sys/arm/arm/trap-v4.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/arm/arm/trap-v4.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -456,7 +456,7 @@ dab_fatal(struct trapframe *tf, u_int fsr, u_int far, 
 	printf(", pc =%08x\n\n", tf->tf_pc);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(fsr, 0, tf);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/11/sys/arm/arm/trap-v6.c
==============================================================================
--- stable/11/sys/arm/arm/trap-v6.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/arm/arm/trap-v6.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -599,7 +599,7 @@ abort_fatal(struct trapframe *tf, u_int idx, u_int fsr
 	printf(", pc =%08x\n\n", tf->tf_pc);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		kdb_trap(fsr, 0, tf);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/11/sys/arm64/arm64/trap.c
==============================================================================
--- stable/11/sys/arm64/arm64/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/arm64/arm64/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -235,7 +235,7 @@ data_abort(struct thread *td, struct trapframe *frame,
 			printf(" esr:         %.8lx\n", esr);
 
 #ifdef KDB
-			if (debugger_on_panic) {
+			if (debugger_on_trap) {
 				kdb_why = KDB_WHY_TRAP;
 				handled = kdb_trap(ESR_ELx_EXCEPTION(esr), 0,
 				    frame);

Modified: stable/11/sys/i386/i386/trap.c
==============================================================================
--- stable/11/sys/i386/i386/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/i386/i386/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -981,7 +981,7 @@ trap_fatal(frame, eva)
 	    curproc->p_pid, curthread->td_name);
 
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		frame->tf_err = eva;	/* smuggle fault address to ddb */
 		handled = kdb_trap(type, 0, frame);

Modified: stable/11/sys/kern/kern_shutdown.c
==============================================================================
--- stable/11/sys/kern/kern_shutdown.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/kern/kern_shutdown.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -107,13 +107,18 @@ SYSCTL_INT(_kern, OID_AUTO, panic_reboot_wait_time, CT
 
 #ifdef KDB
 #ifdef KDB_UNATTENDED
-int debugger_on_panic = 0;
+static int debugger_on_panic = 0;
 #else
-int debugger_on_panic = 1;
+static int debugger_on_panic = 1;
 #endif
 SYSCTL_INT(_debug, OID_AUTO, debugger_on_panic,
     CTLFLAG_RWTUN | CTLFLAG_SECURE,
     &debugger_on_panic, 0, "Run debugger on kernel panic");
+
+int debugger_on_trap = 0;
+SYSCTL_INT(_debug, OID_AUTO, debugger_on_trap,
+    CTLFLAG_RWTUN | CTLFLAG_SECURE,
+    &debugger_on_trap, 0, "Run debugger on kernel trap before panic");
 
 #ifdef KDB_TRACE
 static int trace_on_panic = 1;

Modified: stable/11/sys/mips/mips/trap.c
==============================================================================
--- stable/11/sys/mips/mips/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/mips/mips/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -1112,7 +1112,7 @@ err:
 #endif
 
 #ifdef KDB
-		if (debugger_on_panic) {
+		if (debugger_on_trap) {
 			kdb_why = KDB_WHY_TRAP;
 			kdb_trap(type, 0, trapframe);
 			kdb_why = KDB_WHY_UNSET;

Modified: stable/11/sys/powerpc/powerpc/trap.c
==============================================================================
--- stable/11/sys/powerpc/powerpc/trap.c	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/powerpc/powerpc/trap.c	Fri Mar  8 00:20:37 2019	(r344905)
@@ -395,7 +395,7 @@ trap_fatal(struct trapframe *frame)
 
 	printtrap(frame->exc, frame, 1, (frame->srr1 & PSL_PR));
 #ifdef KDB
-	if (debugger_on_panic) {
+	if (debugger_on_trap) {
 		kdb_why = KDB_WHY_TRAP;
 		handled = kdb_trap(frame->exc, 0, frame);
 		kdb_why = KDB_WHY_UNSET;

Modified: stable/11/sys/sys/kdb.h
==============================================================================
--- stable/11/sys/sys/kdb.h	Thu Mar  7 23:03:39 2019	(r344904)
+++ stable/11/sys/sys/kdb.h	Fri Mar  8 00:20:37 2019	(r344905)
@@ -60,7 +60,7 @@ struct kdb_dbbe {
 	DATA_SET(kdb_dbbe_set, name##_dbbe)
 
 extern u_char kdb_active;		/* Non-zero while in debugger. */
-extern int debugger_on_panic;		/* enter the debugger on panic. */
+extern int debugger_on_trap;		/* enter the debugger on trap. */
 extern struct kdb_dbbe *kdb_dbbe;	/* Default debugger backend or NULL. */
 extern struct trapframe *kdb_frame;	/* Frame to kdb_trap(). */
 extern struct pcb *kdb_thrctx;		/* Current context. */

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:53:12 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5C568152D000;
 Fri,  8 Mar 2019 00:53:12 +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)
 server-signature RSA-PSS (4096 bits)
 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 01D1582F36;
 Fri,  8 Mar 2019 00:53:12 +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 E526323C4D;
 Fri,  8 Mar 2019 00:53:11 +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 x280rB6x091748;
 Fri, 8 Mar 2019 00:53:11 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280rBDG091747;
 Fri, 8 Mar 2019 00:53:11 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080053.x280rBDG091747@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:53:11 +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: r344906 - stable/12/sys/conf
X-SVN-Group: stable-12
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: stable/12/sys/conf
X-SVN-Commit-Revision: 344906
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 01D1582F36
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:53:12 -0000

Author: mav
Date: Fri Mar  8 00:53:11 2019
New Revision: 344906
URL: https://svnweb.freebsd.org/changeset/base/344906

Log:
  MFC r344702: There is no `device atacard` but there is `device atapccard`.

Modified:
  stable/12/sys/conf/NOTES
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/conf/NOTES
==============================================================================
--- stable/12/sys/conf/NOTES	Fri Mar  8 00:20:37 2019	(r344905)
+++ stable/12/sys/conf/NOTES	Fri Mar  8 00:53:11 2019	(r344906)
@@ -1776,7 +1776,7 @@ device		ata
 
 # Modular ATA
 #device		atacore		# Core ATA functionality
-#device		atacard		# CARDBUS support
+#device		atapccard	# CARDBUS support
 #device		ataisa		# ISA bus support
 #device		atapci		# PCI bus support; only generic chipset support
 

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:53:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C8B9E152D03D;
 Fri,  8 Mar 2019 00:53:34 +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)
 server-signature RSA-PSS (4096 bits)
 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 6F83083048;
 Fri,  8 Mar 2019 00:53:34 +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 58A4B23C4E;
 Fri,  8 Mar 2019 00:53:34 +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 x280rYX7091819;
 Fri, 8 Mar 2019 00:53:34 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280rY1m091818;
 Fri, 8 Mar 2019 00:53:34 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080053.x280rY1m091818@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:53:34 +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: r344907 - stable/11/sys/conf
X-SVN-Group: stable-11
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: stable/11/sys/conf
X-SVN-Commit-Revision: 344907
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6F83083048
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:53:35 -0000

Author: mav
Date: Fri Mar  8 00:53:33 2019
New Revision: 344907
URL: https://svnweb.freebsd.org/changeset/base/344907

Log:
  MFC r344702: There is no `device atacard` but there is `device atapccard`.

Modified:
  stable/11/sys/conf/NOTES
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/conf/NOTES
==============================================================================
--- stable/11/sys/conf/NOTES	Fri Mar  8 00:53:11 2019	(r344906)
+++ stable/11/sys/conf/NOTES	Fri Mar  8 00:53:33 2019	(r344907)
@@ -1747,7 +1747,7 @@ device		ata
 
 # Modular ATA
 #device		atacore		# Core ATA functionality
-#device		atacard		# CARDBUS support
+#device		atapccard	# CARDBUS support
 #device		atabus		# PC98 cbus support
 #device		ataisa		# ISA bus support
 #device		atapci		# PCI bus support; only generic chipset support

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:54:36 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E02B152D0C5;
 Fri,  8 Mar 2019 00:54:36 +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)
 server-signature RSA-PSS (4096 bits)
 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 9BAC6831AB;
 Fri,  8 Mar 2019 00:54:35 +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 8EE6D23C4F;
 Fri,  8 Mar 2019 00:54:35 +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 x280sZ3p091923;
 Fri, 8 Mar 2019 00:54:35 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280sZlx091922;
 Fri, 8 Mar 2019 00:54:35 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080054.x280sZlx091922@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:54:35 +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: r344908 - in stable/12: share/man/man4 sys/dev/isp
X-SVN-Group: stable-12
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: in stable/12: share/man/man4 sys/dev/isp
X-SVN-Commit-Revision: 344908
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9BAC6831AB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:54:36 -0000

Author: mav
Date: Fri Mar  8 00:54:34 2019
New Revision: 344908
URL: https://svnweb.freebsd.org/changeset/base/344908

Log:
  MFC r344660: Add to isp(4) tunables to limit MSI/MSI-X usage.
  
  There are some problem reports possibly related to the new driver use of
  multiple interrupts on older cards.  Hopefully this allow to workaround
  them.

Modified:
  stable/12/share/man/man4/isp.4
  stable/12/sys/dev/isp/isp_pci.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/share/man/man4/isp.4
==============================================================================
--- stable/12/share/man/man4/isp.4	Fri Mar  8 00:53:33 2019	(r344907)
+++ stable/12/share/man/man4/isp.4	Fri Mar  8 00:54:34 2019	(r344908)
@@ -26,7 +26,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 27, 2018
+.Dd February 28, 2019
 .Dt ISP 4
 .Os
 .Sh NAME
@@ -163,15 +163,19 @@ The following options are switchable by setting values
 .Pp
 They are:
 .Bl -tag -width indent
-.It Va hint.isp.0.fwload_disable
+.It Va hint.isp. Ns Ar N Ns Va .msi
+Limit on number of Message Signaled Interrupts (MSI) to be used.
+.It Va hint.isp. Ns Ar N Ns Va .msix
+Limit on number of Extended Message Signaled Interrupts (MSI-X) to be used.
+.It Va hint.isp. Ns Ar N Ns Va .fwload_disable
 A hint value to disable loading of firmware
 .Xr ispfw 4 .
-.It Va hint.isp.0.ignore_nvram
+.It Va hint.isp. Ns Ar N Ns Va .ignore_nvram
 A hint value to ignore board NVRAM settings for.
 Otherwise use NVRAM settings.
-.It Va hint.isp.0.fullduplex
+.It Va hint.isp. Ns Ar N Ns Va .fullduplex
 A hint value to set full duplex mode.
-.It Va hint.isp.0.topology
+.It Va hint.isp. Ns Ar N Ns Va .topology
 A hint value to select topology of connection.
 Supported values are:
 .Pp
@@ -185,48 +189,48 @@ Loopback only.
 .It Li nport-only
 Point to point only.
 .El
-.It Va hint.isp.0.portwwn
+.It Va hint.isp. Ns Ar N Ns Va .portwwn
 This should be the full 64 bit World Wide Port Name you would like
 to use, overriding the value in NVRAM for the card.
-.It Va hint.isp.0.nodewwn
+.It Va hint.isp. Ns Ar N Ns Va .nodewwn
 This should be the full 64 bit World Wide Node Name you would like
 to use, overriding the value in NVRAM for the card.
-.It Va hint.isp.0.iid
+.It Va hint.isp. Ns Ar N Ns Va .iid
 A hint to override or set the Initiator ID or Loop ID.
 For Fibre Channel
 cards in Local Loop topologies it is
 .Ar strongly
 recommended that you set this value to non-zero.
-.It Va hint.isp.0.role
+.It Va hint.isp. Ns Ar N Ns Va .role
 A hint to define default role for isp instance (0 -- none, 1 -- target,
 2 -- initiator, 3 -- both).
-.It Va hint.isp.0.debug
+.It Va hint.isp. Ns Ar N Ns Va .debug
 A hint value for a driver debug level (see the file
 .Pa /usr/src/sys/dev/isp/ispvar.h
 for the values.
-.It Va hint.isp.0.vports
+.It Va hint.isp. Ns Ar N Ns Va .vports
 A hint to create specified number of additional virtual ports.
-.It Va hint.isp.0.nofctape
+.It Va hint.isp. Ns Ar N Ns Va .nofctape
 Set this to 1 to disable FC-Tape operation on the given isp instance.
-.It Va hint.isp.0.fctape
+.It Va hint.isp. Ns Ar N Ns Va .fctape
 Set this to 1 to enable FC-Tape operation on the given isp instance for
 targets that support it.
 .El
 .Sh SYSCTL OPTIONS
 .Bl -tag -width indent
-.It Va dev.isp.N.loop_down_limit
+.It Va dev.isp. Ns Ar N Ns Va .loop_down_limit
 This value says how long to wait in seconds after loop has gone down before
 giving up and expiring all of the devices that were visible.
 The default is 300 seconds (5 minutes).
 A separate (nonadjustable) timeout is used when
 booting to not stop booting on lack of FC connectivity.
-.It Va dev.isp.N.gone_device_time
+.It Va dev.isp. Ns Ar N Ns Va .gone_device_time
 This value says how long to wait for devices to reappear if they (temporarily)
 disappear due to loop or fabric events.
 While this timeout is running, I/O
 to those devices will simply be held.
-.It Va dev.isp.N.use_gff_id
-.It Va dev.isp.N.use_gft_id
+.It Va dev.isp. Ns Ar N Ns Va .use_gff_id
+.It Va dev.isp. Ns Ar N Ns Va .use_gft_id
 Setting those options to 0 allows to disable use of GFF_ID and GFT_ID SNS
 requests during FC fabric scan.
 It may be useful if switch does not implement them correctly,
@@ -234,9 +238,9 @@ preventing some devices from being found.
 Disabling them may cause unneeded logins to ports not supporting target role
 or even FCP at all.
 The default is 1 (enabled).
-.It Va dev.isp.N.wwnn
+.It Va dev.isp. Ns Ar N Ns Va .wwnn
 This is the readonly World Wide Node Name value for this port.
-.It Va dev.isp.N.wwpn
+.It Va dev.isp. Ns Ar N Ns Va .wwpn
 This is the readonly World Wide Port Name value for this port.
 .El
 .Sh SEE ALSO

Modified: stable/12/sys/dev/isp/isp_pci.c
==============================================================================
--- stable/12/sys/dev/isp/isp_pci.c	Fri Mar  8 00:53:33 2019	(r344907)
+++ stable/12/sys/dev/isp/isp_pci.c	Fri Mar  8 00:54:34 2019	(r344908)
@@ -1910,14 +1910,21 @@ isp_pci_irqsetup(ispsoftc_t *isp)
 
 	ISP_UNLOCK(isp);
 	if (ISP_CAP_MSIX(isp)) {
-		max_irq = min(ISP_MAX_IRQS, IS_26XX(isp) ? 3 : 2);
+		max_irq = IS_26XX(isp) ? 3 : 2;
+		resource_int_value(device_get_name(dev),
+		    device_get_unit(dev), "msix", &max_irq);
+		max_irq = imin(ISP_MAX_IRQS, max_irq);
 		pcs->msicount = imin(pci_msix_count(dev), max_irq);
 		if (pcs->msicount > 0 &&
 		    pci_alloc_msix(dev, &pcs->msicount) != 0)
 			pcs->msicount = 0;
 	}
 	if (pcs->msicount == 0) {
-		pcs->msicount = imin(pci_msi_count(dev), 1);
+		max_irq = 1;
+		resource_int_value(device_get_name(dev),
+		    device_get_unit(dev), "msi", &max_irq);
+		max_irq = imin(1, max_irq);
+		pcs->msicount = imin(pci_msi_count(dev), max_irq);
 		if (pcs->msicount > 0 &&
 		    pci_alloc_msi(dev, &pcs->msicount) != 0)
 			pcs->msicount = 0;

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:54:55 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD4A6152D11A;
 Fri,  8 Mar 2019 00:54: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)
 server-signature RSA-PSS (4096 bits)
 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 614C5832C6;
 Fri,  8 Mar 2019 00:54: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 39E8123C50;
 Fri,  8 Mar 2019 00:54: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 x280stxr091992;
 Fri, 8 Mar 2019 00:54:55 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280ssXF091991;
 Fri, 8 Mar 2019 00:54:54 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080054.x280ssXF091991@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:54:54 +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: r344909 - in stable/11: share/man/man4 sys/dev/isp
X-SVN-Group: stable-11
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: in stable/11: share/man/man4 sys/dev/isp
X-SVN-Commit-Revision: 344909
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 614C5832C6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.944,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:54:56 -0000

Author: mav
Date: Fri Mar  8 00:54:54 2019
New Revision: 344909
URL: https://svnweb.freebsd.org/changeset/base/344909

Log:
  MFC r344660: Add to isp(4) tunables to limit MSI/MSI-X usage.
  
  There are some problem reports possibly related to the new driver use of
  multiple interrupts on older cards.  Hopefully this allow to workaround
  them.

Modified:
  stable/11/share/man/man4/isp.4
  stable/11/sys/dev/isp/isp_pci.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/man/man4/isp.4
==============================================================================
--- stable/11/share/man/man4/isp.4	Fri Mar  8 00:54:34 2019	(r344908)
+++ stable/11/share/man/man4/isp.4	Fri Mar  8 00:54:54 2019	(r344909)
@@ -26,7 +26,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 27, 2018
+.Dd February 28, 2019
 .Dt ISP 4
 .Os
 .Sh NAME
@@ -163,15 +163,19 @@ The following options are switchable by setting values
 .Pp
 They are:
 .Bl -tag -width indent
-.It Va hint.isp.0.fwload_disable
+.It Va hint.isp. Ns Ar N Ns Va .msi
+Limit on number of Message Signaled Interrupts (MSI) to be used.
+.It Va hint.isp. Ns Ar N Ns Va .msix
+Limit on number of Extended Message Signaled Interrupts (MSI-X) to be used.
+.It Va hint.isp. Ns Ar N Ns Va .fwload_disable
 A hint value to disable loading of firmware
 .Xr ispfw 4 .
-.It Va hint.isp.0.ignore_nvram
+.It Va hint.isp. Ns Ar N Ns Va .ignore_nvram
 A hint value to ignore board NVRAM settings for.
 Otherwise use NVRAM settings.
-.It Va hint.isp.0.fullduplex
+.It Va hint.isp. Ns Ar N Ns Va .fullduplex
 A hint value to set full duplex mode.
-.It Va hint.isp.0.topology
+.It Va hint.isp. Ns Ar N Ns Va .topology
 A hint value to select topology of connection.
 Supported values are:
 .Pp
@@ -185,48 +189,48 @@ Loopback only.
 .It Li nport-only
 Point to point only.
 .El
-.It Va hint.isp.0.portwwn
+.It Va hint.isp. Ns Ar N Ns Va .portwwn
 This should be the full 64 bit World Wide Port Name you would like
 to use, overriding the value in NVRAM for the card.
-.It Va hint.isp.0.nodewwn
+.It Va hint.isp. Ns Ar N Ns Va .nodewwn
 This should be the full 64 bit World Wide Node Name you would like
 to use, overriding the value in NVRAM for the card.
-.It Va hint.isp.0.iid
+.It Va hint.isp. Ns Ar N Ns Va .iid
 A hint to override or set the Initiator ID or Loop ID.
 For Fibre Channel
 cards in Local Loop topologies it is
 .Ar strongly
 recommended that you set this value to non-zero.
-.It Va hint.isp.0.role
+.It Va hint.isp. Ns Ar N Ns Va .role
 A hint to define default role for isp instance (0 -- none, 1 -- target,
 2 -- initiator, 3 -- both).
-.It Va hint.isp.0.debug
+.It Va hint.isp. Ns Ar N Ns Va .debug
 A hint value for a driver debug level (see the file
 .Pa /usr/src/sys/dev/isp/ispvar.h
 for the values.
-.It Va hint.isp.0.vports
+.It Va hint.isp. Ns Ar N Ns Va .vports
 A hint to create specified number of additional virtual ports.
-.It Va hint.isp.0.nofctape
+.It Va hint.isp. Ns Ar N Ns Va .nofctape
 Set this to 1 to disable FC-Tape operation on the given isp instance.
-.It Va hint.isp.0.fctape
+.It Va hint.isp. Ns Ar N Ns Va .fctape
 Set this to 1 to enable FC-Tape operation on the given isp instance for
 targets that support it.
 .El
 .Sh SYSCTL OPTIONS
 .Bl -tag -width indent
-.It Va dev.isp.N.loop_down_limit
+.It Va dev.isp. Ns Ar N Ns Va .loop_down_limit
 This value says how long to wait in seconds after loop has gone down before
 giving up and expiring all of the devices that were visible.
 The default is 300 seconds (5 minutes).
 A separate (nonadjustable) timeout is used when
 booting to not stop booting on lack of FC connectivity.
-.It Va dev.isp.N.gone_device_time
+.It Va dev.isp. Ns Ar N Ns Va .gone_device_time
 This value says how long to wait for devices to reappear if they (temporarily)
 disappear due to loop or fabric events.
 While this timeout is running, I/O
 to those devices will simply be held.
-.It Va dev.isp.N.use_gff_id
-.It Va dev.isp.N.use_gft_id
+.It Va dev.isp. Ns Ar N Ns Va .use_gff_id
+.It Va dev.isp. Ns Ar N Ns Va .use_gft_id
 Setting those options to 0 allows to disable use of GFF_ID and GFT_ID SNS
 requests during FC fabric scan.
 It may be useful if switch does not implement them correctly,
@@ -234,9 +238,9 @@ preventing some devices from being found.
 Disabling them may cause unneeded logins to ports not supporting target role
 or even FCP at all.
 The default is 1 (enabled).
-.It Va dev.isp.N.wwnn
+.It Va dev.isp. Ns Ar N Ns Va .wwnn
 This is the readonly World Wide Node Name value for this port.
-.It Va dev.isp.N.wwpn
+.It Va dev.isp. Ns Ar N Ns Va .wwpn
 This is the readonly World Wide Port Name value for this port.
 .El
 .Sh SEE ALSO

Modified: stable/11/sys/dev/isp/isp_pci.c
==============================================================================
--- stable/11/sys/dev/isp/isp_pci.c	Fri Mar  8 00:54:34 2019	(r344908)
+++ stable/11/sys/dev/isp/isp_pci.c	Fri Mar  8 00:54:54 2019	(r344909)
@@ -1908,14 +1908,21 @@ isp_pci_irqsetup(ispsoftc_t *isp)
 
 	ISP_UNLOCK(isp);
 	if (ISP_CAP_MSIX(isp)) {
-		max_irq = min(ISP_MAX_IRQS, IS_26XX(isp) ? 3 : 2);
+		max_irq = IS_26XX(isp) ? 3 : 2;
+		resource_int_value(device_get_name(dev),
+		    device_get_unit(dev), "msix", &max_irq);
+		max_irq = imin(ISP_MAX_IRQS, max_irq);
 		pcs->msicount = imin(pci_msix_count(dev), max_irq);
 		if (pcs->msicount > 0 &&
 		    pci_alloc_msix(dev, &pcs->msicount) != 0)
 			pcs->msicount = 0;
 	}
 	if (pcs->msicount == 0) {
-		pcs->msicount = imin(pci_msi_count(dev), 1);
+		max_irq = 1;
+		resource_int_value(device_get_name(dev),
+		    device_get_unit(dev), "msi", &max_irq);
+		max_irq = imin(1, max_irq);
+		pcs->msicount = imin(pci_msi_count(dev), max_irq);
 		if (pcs->msicount > 0 &&
 		    pci_alloc_msi(dev, &pcs->msicount) != 0)
 			pcs->msicount = 0;

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:56:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1FC72152D1CE;
 Fri,  8 Mar 2019 00:56:08 +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)
 server-signature RSA-PSS (4096 bits)
 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 B7D5B8344E;
 Fri,  8 Mar 2019 00:56:07 +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 AD95E23C51;
 Fri,  8 Mar 2019 00:56:07 +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 x280u7dc092126;
 Fri, 8 Mar 2019 00:56:07 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280u7g2092125;
 Fri, 8 Mar 2019 00:56:07 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080056.x280u7g2092125@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:56: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: r344910 - stable/12/sys/dev/isp
X-SVN-Group: stable-12
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: stable/12/sys/dev/isp
X-SVN-Commit-Revision: 344910
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B7D5B8344E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:56:08 -0000

Author: mav
Date: Fri Mar  8 00:56:07 2019
New Revision: 344910
URL: https://svnweb.freebsd.org/changeset/base/344910

Log:
  MFC r344661, r344669: Limit 24xx adapters to only MSI interrupts by default.
  
  This was actually the known good configuration we used before.
  Single MSI-X configuration doesn't even work there on my tests, just due
  to lack of documentation not sure whether by design or I am doing something
  wrong.

Modified:
  stable/12/sys/dev/isp/isp_pci.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/isp/isp_pci.c
==============================================================================
--- stable/12/sys/dev/isp/isp_pci.c	Fri Mar  8 00:54:54 2019	(r344909)
+++ stable/12/sys/dev/isp/isp_pci.c	Fri Mar  8 00:56:07 2019	(r344910)
@@ -1910,7 +1910,7 @@ isp_pci_irqsetup(ispsoftc_t *isp)
 
 	ISP_UNLOCK(isp);
 	if (ISP_CAP_MSIX(isp)) {
-		max_irq = IS_26XX(isp) ? 3 : 2;
+		max_irq = IS_26XX(isp) ? 3 : (IS_25XX(isp) ? 2 : 0);
 		resource_int_value(device_get_name(dev),
 		    device_get_unit(dev), "msix", &max_irq);
 		max_irq = imin(ISP_MAX_IRQS, max_irq);

From owner-svn-src-all@freebsd.org  Fri Mar  8 00:56:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 74702152D246;
 Fri,  8 Mar 2019 00:56:42 +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)
 server-signature RSA-PSS (4096 bits)
 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 19BC483581;
 Fri,  8 Mar 2019 00:56:42 +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 0FD3F23C53;
 Fri,  8 Mar 2019 00:56:42 +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 x280uf21092203;
 Fri, 8 Mar 2019 00:56:41 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x280uffU092202;
 Fri, 8 Mar 2019 00:56:41 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903080056.x280uffU092202@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 00:56:41 +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: r344911 - stable/11/sys/dev/isp
X-SVN-Group: stable-11
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: stable/11/sys/dev/isp
X-SVN-Commit-Revision: 344911
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 19BC483581
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 00:56:42 -0000

Author: mav
Date: Fri Mar  8 00:56:41 2019
New Revision: 344911
URL: https://svnweb.freebsd.org/changeset/base/344911

Log:
  MFC r344661, r344669: Limit 24xx adapters to only MSI interrupts by default.
  
  This was actually the known good configuration we used before.
  Single MSI-X configuration doesn't even work there on my tests, just due
  to lack of documentation not sure whether by design or I am doing something
  wrong.
  
  PR:		233654

Modified:
  stable/11/sys/dev/isp/isp_pci.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/isp/isp_pci.c
==============================================================================
--- stable/11/sys/dev/isp/isp_pci.c	Fri Mar  8 00:56:07 2019	(r344910)
+++ stable/11/sys/dev/isp/isp_pci.c	Fri Mar  8 00:56:41 2019	(r344911)
@@ -1908,7 +1908,7 @@ isp_pci_irqsetup(ispsoftc_t *isp)
 
 	ISP_UNLOCK(isp);
 	if (ISP_CAP_MSIX(isp)) {
-		max_irq = IS_26XX(isp) ? 3 : 2;
+		max_irq = IS_26XX(isp) ? 3 : (IS_25XX(isp) ? 2 : 0);
 		resource_int_value(device_get_name(dev),
 		    device_get_unit(dev), "msix", &max_irq);
 		max_irq = imin(ISP_MAX_IRQS, max_irq);

From owner-svn-src-all@freebsd.org  Fri Mar  8 01:04:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B341152D4DF;
 Fri,  8 Mar 2019 01:04:20 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3DA2383A10;
 Fri,  8 Mar 2019 01:04:20 +0000 (UTC) (envelope-from jhb@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 3337023DF6;
 Fri,  8 Mar 2019 01:04:20 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2814KvR097148;
 Fri, 8 Mar 2019 01:04:20 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2814Jsk097146;
 Fri, 8 Mar 2019 01:04:19 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903080104.x2814Jsk097146@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 01:04:19 +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: r344912 - in stable: 11/sys/x86/x86 11/sys/x86/xen
 12/sys/x86/x86 12/sys/x86/xen
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/x86/x86 11/sys/x86/xen 12/sys/x86/x86
 12/sys/x86/xen
X-SVN-Commit-Revision: 344912
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3DA2383A10
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 01:04:20 -0000

Author: jhb
Date: Fri Mar  8 01:04:19 2019
New Revision: 344912
URL: https://svnweb.freebsd.org/changeset/base/344912

Log:
  MFC 342658:
  Correct variable name in two panic messages: num_msi_irq -> num_msi_irqs.

Modified:
  stable/11/sys/x86/x86/msi.c
  stable/11/sys/x86/xen/xen_msi.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/x86/x86/msi.c
  stable/12/sys/x86/xen/xen_msi.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/x86/x86/msi.c
==============================================================================
--- stable/11/sys/x86/x86/msi.c	Fri Mar  8 00:56:41 2019	(r344911)
+++ stable/11/sys/x86/x86/msi.c	Fri Mar  8 01:04:19 2019	(r344912)
@@ -339,7 +339,7 @@ msi_init(void)
 
 	first_msi_irq = max(MINIMUM_MSI_INT, num_io_irqs);
 	if (num_msi_irqs > UINT_MAX - first_msi_irq)
-		panic("num_msi_irq too high");
+		panic("num_msi_irqs too high");
 	num_io_irqs = first_msi_irq + num_msi_irqs;
 
 	msi_enabled = 1;

Modified: stable/11/sys/x86/xen/xen_msi.c
==============================================================================
--- stable/11/sys/x86/xen/xen_msi.c	Fri Mar  8 00:56:41 2019	(r344911)
+++ stable/11/sys/x86/xen/xen_msi.c	Fri Mar  8 01:04:19 2019	(r344912)
@@ -59,7 +59,7 @@ xen_msi_init(void)
 	MPASS(num_io_irqs > 0);
 	first_msi_irq = min(MINIMUM_MSI_INT, num_io_irqs);
 	if (num_msi_irqs > UINT_MAX - first_msi_irq)
-		panic("num_msi_irq too high");
+		panic("num_msi_irqs too high");
 	num_io_irqs = first_msi_irq + num_msi_irqs;
 
 	mtx_init(&msi_lock, "msi", NULL, MTX_DEF);

From owner-svn-src-all@freebsd.org  Fri Mar  8 01:04:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4815A152D4DB;
 Fri,  8 Mar 2019 01:04:20 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 D178283A0F;
 Fri,  8 Mar 2019 01:04:19 +0000 (UTC) (envelope-from jhb@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 C0DE923DF5;
 Fri,  8 Mar 2019 01:04:19 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2814JnL097141;
 Fri, 8 Mar 2019 01:04:19 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2814JQQ097139;
 Fri, 8 Mar 2019 01:04:19 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903080104.x2814JQQ097139@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 01:04:19 +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: r344912 - in stable: 11/sys/x86/x86 11/sys/x86/xen
 12/sys/x86/x86 12/sys/x86/xen
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/x86/x86 11/sys/x86/xen 12/sys/x86/x86
 12/sys/x86/xen
X-SVN-Commit-Revision: 344912
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: D178283A0F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.941,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 01:04:20 -0000

Author: jhb
Date: Fri Mar  8 01:04:19 2019
New Revision: 344912
URL: https://svnweb.freebsd.org/changeset/base/344912

Log:
  MFC 342658:
  Correct variable name in two panic messages: num_msi_irq -> num_msi_irqs.

Modified:
  stable/12/sys/x86/x86/msi.c
  stable/12/sys/x86/xen/xen_msi.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/x86/x86/msi.c
  stable/11/sys/x86/xen/xen_msi.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/x86/x86/msi.c
==============================================================================
--- stable/12/sys/x86/x86/msi.c	Fri Mar  8 00:56:41 2019	(r344911)
+++ stable/12/sys/x86/x86/msi.c	Fri Mar  8 01:04:19 2019	(r344912)
@@ -341,7 +341,7 @@ msi_init(void)
 
 	first_msi_irq = max(MINIMUM_MSI_INT, num_io_irqs);
 	if (num_msi_irqs > UINT_MAX - first_msi_irq)
-		panic("num_msi_irq too high");
+		panic("num_msi_irqs too high");
 	num_io_irqs = first_msi_irq + num_msi_irqs;
 
 	msi_enabled = 1;

Modified: stable/12/sys/x86/xen/xen_msi.c
==============================================================================
--- stable/12/sys/x86/xen/xen_msi.c	Fri Mar  8 00:56:41 2019	(r344911)
+++ stable/12/sys/x86/xen/xen_msi.c	Fri Mar  8 01:04:19 2019	(r344912)
@@ -59,7 +59,7 @@ xen_msi_init(void)
 	MPASS(num_io_irqs > 0);
 	first_msi_irq = min(MINIMUM_MSI_INT, num_io_irqs);
 	if (num_msi_irqs > UINT_MAX - first_msi_irq)
-		panic("num_msi_irq too high");
+		panic("num_msi_irqs too high");
 	num_io_irqs = first_msi_irq + num_msi_irqs;
 
 	mtx_init(&msi_lock, "msi", NULL, MTX_DEF);

From owner-svn-src-all@freebsd.org  Fri Mar  8 01:17:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 20A9C152D956;
 Fri,  8 Mar 2019 01:17:22 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B7E71840AC;
 Fri,  8 Mar 2019 01:17:21 +0000 (UTC) (envelope-from cem@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 AAABC23FAF;
 Fri,  8 Mar 2019 01:17:21 +0000 (UTC) (envelope-from cem@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x281HLQD002591;
 Fri, 8 Mar 2019 01:17:21 GMT (envelope-from cem@FreeBSD.org)
Received: (from cem@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x281HK4N002587;
 Fri, 8 Mar 2019 01:17:20 GMT (envelope-from cem@FreeBSD.org)
Message-Id: <201903080117.x281HK4N002587@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org
 using -f
From: Conrad Meyer <cem@FreeBSD.org>
Date: Fri, 8 Mar 2019 01:17:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344913 - head/sys/dev/random
X-SVN-Group: head
X-SVN-Commit-Author: cem
X-SVN-Commit-Paths: head/sys/dev/random
X-SVN-Commit-Revision: 344913
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B7E71840AC
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 01:17:22 -0000

Author: cem
Date: Fri Mar  8 01:17:20 2019
New Revision: 344913
URL: https://svnweb.freebsd.org/changeset/base/344913

Log:
  Fortuna: Add Chacha20 as an alternative stream cipher
  
  Chacha20 with a 256 bit key and 128 bit counter size is a good match for an
  AES256-ICM replacement.
  
  In userspace, Chacha20 is typically marginally slower than AES-ICM on
  machines with AESNI intrinsics, but typically much faster than AES on
  machines without special intrinsics.  ChaCha20 does well on typical modern
  architectures with SIMD instructions, which includes most types of machines
  FreeBSD runs on.
  
  In the kernel, we can't (or don't) make use of AESNI intrinsics for
  random(4) anyway.  So even on amd64, using Chacha provides a modest
  performance improvement in random device throughput today.
  
  This change makes the stream cipher used by random(4) configurable at boot
  time with the 'kern.random.use_chacha20_cipher' tunable.
  
  Very rough, non-scientific measurements at the /dev/random device, on a
  GENERIC-NODEBUG amd64 VM with 'pv', show a factor of 2.2x higher throughput
  for Chacha20 over the existing AES-ICM mode.
  
  Reviewed by:	delphij, markm
  Approved by:	secteam (delphij)
  Differential Revision:	https://reviews.freebsd.org/D19475

Modified:
  head/sys/dev/random/fortuna.c
  head/sys/dev/random/hash.c
  head/sys/dev/random/hash.h
  head/sys/dev/random/uint128.h

Modified: head/sys/dev/random/fortuna.c
==============================================================================
--- head/sys/dev/random/fortuna.c	Fri Mar  8 01:04:19 2019	(r344912)
+++ head/sys/dev/random/fortuna.c	Fri Mar  8 01:17:20 2019	(r344913)
@@ -109,7 +109,7 @@ static struct fortuna_state {
 	} fs_pool[RANDOM_FORTUNA_NPOOLS];
 	u_int fs_reseedcount;		/* ReseedCnt */
 	uint128_t fs_counter;		/* C */
-	struct randomdev_key fs_key;	/* K */
+	union randomdev_key fs_key;	/* K */
 	u_int fs_minpoolsize;		/* Extras */
 	/* Extras for the OS */
 #ifdef _KERNEL
@@ -271,16 +271,27 @@ random_fortuna_reseed_internal(uint32_t *entropy_data,
 {
 	struct randomdev_hash context;
 	uint8_t hash[RANDOM_KEYSIZE];
+	const void *keymaterial;
+	size_t keysz;
+	bool seeded;
 
 	RANDOM_RESEED_ASSERT_LOCK_OWNED();
+
+	seeded = random_fortuna_seeded();
+	if (seeded) {
+		randomdev_getkey(&fortuna_state.fs_key, &keymaterial, &keysz);
+		KASSERT(keysz == RANDOM_KEYSIZE, ("%s: key size %zu not %u",
+			__func__, keysz, (unsigned)RANDOM_KEYSIZE));
+	}
+
 	/*-
 	 * FS&K - K = Hd(K|s) where Hd(m) is H(H(0^512|m))
 	 *      - C = C + 1
 	 */
 	randomdev_hash_init(&context);
 	randomdev_hash_iterate(&context, zero_region, RANDOM_ZERO_BLOCKSIZE);
-	randomdev_hash_iterate(&context, &fortuna_state.fs_key.key.keyMaterial,
-	    fortuna_state.fs_key.key.keyLen / 8);
+	if (seeded)
+		randomdev_hash_iterate(&context, keymaterial, keysz);
 	randomdev_hash_iterate(&context, entropy_data, RANDOM_KEYSIZE*blockcount);
 	randomdev_hash_finish(&context, hash);
 	randomdev_hash_init(&context);

Modified: head/sys/dev/random/hash.c
==============================================================================
--- head/sys/dev/random/hash.c	Fri Mar  8 01:04:19 2019	(r344912)
+++ head/sys/dev/random/hash.c	Fri Mar  8 01:17:20 2019	(r344913)
@@ -30,6 +30,9 @@ __FBSDID("$FreeBSD$");
 
 #ifdef _KERNEL
 #include <sys/param.h>
+#include <sys/malloc.h>
+#include <sys/random.h>
+#include <sys/sysctl.h>
 #include <sys/systm.h>
 #else /* !_KERNEL */
 #include <sys/param.h>
@@ -42,14 +45,39 @@ __FBSDID("$FreeBSD$");
 #include "unit_test.h"
 #endif /* _KERNEL */
 
+#define CHACHA_EMBED
+#define KEYSTREAM_ONLY
+#define CHACHA_NONCE0_CTR128
+#include <crypto/chacha20/chacha.c>
 #include <crypto/rijndael/rijndael-api-fst.h>
 #include <crypto/sha2/sha256.h>
 
 #include <dev/random/hash.h>
+#ifdef _KERNEL
+#include <dev/random/randomdev.h>
+#endif
 
 /* This code presumes that RANDOM_KEYSIZE is twice as large as RANDOM_BLOCKSIZE */
 CTASSERT(RANDOM_KEYSIZE == 2*RANDOM_BLOCKSIZE);
 
+/* Validate that full Chacha IV is as large as the 128-bit counter */
+_Static_assert(CHACHA_STATELEN == RANDOM_BLOCKSIZE, "");
+
+/*
+ * Experimental Chacha20-based PRF for Fortuna keystream primitive.  For now,
+ * disabled by default.  But we may enable it in the future.
+ *
+ * Benefits include somewhat faster keystream generation compared with
+ * unaccelerated AES-ICM.
+ */
+bool random_chachamode = false;
+#ifdef _KERNEL
+SYSCTL_BOOL(_kern_random, OID_AUTO, use_chacha20_cipher, CTLFLAG_RDTUN,
+    &random_chachamode, 0,
+    "If non-zero, use the ChaCha20 cipher for randomdev PRF.  "
+    "If zero, use AES-ICM cipher for randomdev PRF (default).");
+#endif
+
 /* Initialise the hash */
 void
 randomdev_hash_init(struct randomdev_hash *context)
@@ -81,11 +109,15 @@ randomdev_hash_finish(struct randomdev_hash *context, 
  * data.
  */
 void
-randomdev_encrypt_init(struct randomdev_key *context, const void *data)
+randomdev_encrypt_init(union randomdev_key *context, const void *data)
 {
 
-	rijndael_cipherInit(&context->cipher, MODE_ECB, NULL);
-	rijndael_makeKey(&context->key, DIR_ENCRYPT, RANDOM_KEYSIZE*8, data);
+	if (random_chachamode) {
+		chacha_keysetup(&context->chacha, data, RANDOM_KEYSIZE * 8);
+	} else {
+		rijndael_cipherInit(&context->cipher, MODE_ECB, NULL);
+		rijndael_makeKey(&context->key, DIR_ENCRYPT, RANDOM_KEYSIZE*8, data);
+	}
 }
 
 /*
@@ -95,19 +127,96 @@ randomdev_encrypt_init(struct randomdev_key *context, 
  * bytes are generated.
  */
 void
-randomdev_keystream(struct randomdev_key *context, uint128_t *ctr,
+randomdev_keystream(union randomdev_key *context, uint128_t *ctr,
     void *d_out, u_int blockcount)
 {
 	u_int i;
 
-	for (i = 0; i < blockcount; i++) {
-		/*-
-		 * FS&K - r = r|E(K,C)
-		 *      - C = C + 1
+	if (random_chachamode) {
+		uint128_t lectr;
+
+		/*
+		 * Chacha always encodes and increments the counter little
+		 * endian.  So on BE machines, we must provide a swapped
+		 * counter to chacha, and swap the output too.
 		 */
-		rijndael_blockEncrypt(&context->cipher, &context->key,
-		    (void *)ctr, RANDOM_BLOCKSIZE * 8, d_out);
-		d_out = (char *)d_out + RANDOM_BLOCKSIZE;
-		uint128_increment(ctr);
+		le128enc(&lectr, *ctr);
+
+		chacha_ivsetup(&context->chacha, NULL, (const void *)&lectr);
+		chacha_encrypt_bytes(&context->chacha, NULL, d_out,
+		    RANDOM_BLOCKSIZE * blockcount);
+
+		/*
+		 * Decode Chacha-updated LE counter to native endian and store
+		 * it back in the caller's in-out parameter.
+		 */
+		chacha_ctrsave(&context->chacha, (void *)&lectr);
+		*ctr = le128dec(&lectr);
+	} else {
+		for (i = 0; i < blockcount; i++) {
+			/*-
+			 * FS&K - r = r|E(K,C)
+			 *      - C = C + 1
+			 */
+			rijndael_blockEncrypt(&context->cipher, &context->key,
+			    (void *)ctr, RANDOM_BLOCKSIZE * 8, d_out);
+			d_out = (char *)d_out + RANDOM_BLOCKSIZE;
+			uint128_increment(ctr);
+		}
 	}
+}
+
+/*
+ * Fetch a pointer to the relevant key material and its size.
+ *
+ * This API is expected to only be used only for reseeding, where the
+ * endianness does not matter; the goal is to simply incorporate the key
+ * material into the hash iterator that will produce key'.
+ *
+ * Do not expect the buffer pointed to by this API to match the exact
+ * endianness, etc, as the key material that was supplied to
+ * randomdev_encrypt_init().
+ */
+void
+randomdev_getkey(union randomdev_key *context, const void **keyp, size_t *szp)
+{
+
+	if (!random_chachamode) {
+		*keyp = &context->key.keyMaterial;
+		*szp = context->key.keyLen / 8;
+		return;
+	}
+
+	/* Chacha20 mode */
+	*keyp = (const void *)&context->chacha.input[4];
+
+	/* Sanity check keysize */
+	if (context->chacha.input[0] == U8TO32_LITTLE(sigma) &&
+	    context->chacha.input[1] == U8TO32_LITTLE(&sigma[4]) &&
+	    context->chacha.input[2] == U8TO32_LITTLE(&sigma[8]) &&
+	    context->chacha.input[3] == U8TO32_LITTLE(&sigma[12])) {
+		*szp = 32;
+		return;
+	}
+
+#if 0
+	/*
+	 * Included for the sake of completeness; as-implemented, Fortuna
+	 * doesn't need or use 128-bit Chacha20.
+	 */
+	if (context->chacha->input[0] == U8TO32_LITTLE(tau) &&
+	    context->chacha->input[1] == U8TO32_LITTLE(&tau[4]) &&
+	    context->chacha->input[2] == U8TO32_LITTLE(&tau[8]) &&
+	    context->chacha->input[3] == U8TO32_LITTLE(&tau[12])) {
+		*szp = 16;
+		return;
+	}
+#endif
+
+#ifdef _KERNEL
+	panic("%s: Invalid chacha20 keysize: %16D\n", __func__,
+	    (void *)context->chacha.input, " ");
+#else
+	raise(SIGKILL);
+#endif
 }

Modified: head/sys/dev/random/hash.h
==============================================================================
--- head/sys/dev/random/hash.h	Fri Mar  8 01:04:19 2019	(r344912)
+++ head/sys/dev/random/hash.h	Fri Mar  8 01:17:20 2019	(r344913)
@@ -29,6 +29,7 @@
 #ifndef SYS_DEV_RANDOM_HASH_H_INCLUDED
 #define	SYS_DEV_RANDOM_HASH_H_INCLUDED
 
+#include <crypto/chacha20/_chacha.h>
 #include <dev/random/uint128.h>
 
 /* Keys are formed from cipher blocks */
@@ -45,15 +46,22 @@ struct randomdev_hash {
 	SHA256_CTX	sha;
 };
 
-struct randomdev_key {
-	keyInstance key;	/* Key schedule */
-	cipherInstance cipher;	/* Rijndael internal */
+union randomdev_key {
+	struct {
+		keyInstance key;	/* Key schedule */
+		cipherInstance cipher;	/* Rijndael internal */
+	};
+	struct chacha_ctx chacha;
 };
 
+extern bool fortuna_chachamode;
+
 void randomdev_hash_init(struct randomdev_hash *);
 void randomdev_hash_iterate(struct randomdev_hash *, const void *, size_t);
 void randomdev_hash_finish(struct randomdev_hash *, void *);
-void randomdev_encrypt_init(struct randomdev_key *, const void *);
-void randomdev_keystream(struct randomdev_key *context, uint128_t *, void *, u_int);
+
+void randomdev_encrypt_init(union randomdev_key *, const void *);
+void randomdev_keystream(union randomdev_key *context, uint128_t *, void *, u_int);
+void randomdev_getkey(union randomdev_key *, const void **, size_t *);
 
 #endif /* SYS_DEV_RANDOM_HASH_H_INCLUDED */

Modified: head/sys/dev/random/uint128.h
==============================================================================
--- head/sys/dev/random/uint128.h	Fri Mar  8 01:04:19 2019	(r344912)
+++ head/sys/dev/random/uint128.h	Fri Mar  8 01:17:20 2019	(r344913)
@@ -29,6 +29,8 @@
 #ifndef SYS_DEV_RANDOM_UINT128_H_INCLUDED
 #define	SYS_DEV_RANDOM_UINT128_H_INCLUDED
 
+#include <sys/endian.h>
+
 /* This whole thing is a crock :-(
  *
  * Everyone knows you always need the __uint128_t types!
@@ -63,13 +65,49 @@ uint128_increment(uint128_t *big_uintp)
 #endif
 }
 
+static __inline bool
+uint128_equals(uint128_t a, uint128_t b)
+{
+#ifdef USE_REAL_UINT128_T
+	return (a == b);
+#else
+	return (a.u128t_word0 == b.u128t_word0 &&
+	    a.u128t_word1 == b.u128t_word1);
+#endif
+}
+
 static __inline int
 uint128_is_zero(uint128_t big_uint)
 {
+	return (uint128_equals(big_uint, UINT128_ZERO));
+}
+
+static __inline uint128_t
+le128dec(const void *pp)
+{
+	const uint8_t *p = pp;
+
 #ifdef USE_REAL_UINT128_T
-	return (big_uint == UINT128_ZERO);
+	return (((uint128_t)le64dec(p + 8) << 64) | le64dec(p));
 #else
-	return (big_uint.u128t_word0 == 0UL && big_uint.u128t_word1 == 0UL);
+	return ((uint128_t){
+	    .u128t_word0 = le64dec(p),
+	    .u128t_word1 = le64dec(p + 8),
+	    });
+#endif
+}
+
+static __inline void
+le128enc(void *pp, uint128_t u)
+{
+	uint8_t *p = pp;
+
+#ifdef USE_REAL_UINT128_T
+	le64enc(p, (uint64_t)(u & UINT64_MAX));
+	le64enc(p + 8, (uint64_t)(u >> 64));
+#else
+	le64enc(p, u.u128t_word0);
+	le64enc(p + 8, u.u128t_word1);
 #endif
 }
 

From owner-svn-src-all@freebsd.org  Fri Mar  8 01:23:18 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8B177152DC94;
 Fri,  8 Mar 2019 01:23:18 +0000 (UTC)
 (envelope-from eric@vangyzen.net)
Received: from smtp.vangyzen.net (hotblack.vangyzen.net
 [IPv6:2607:fc50:1000:7400:216:3eff:fe72:314f])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id C58C48454A;
 Fri,  8 Mar 2019 01:23:10 +0000 (UTC)
 (envelope-from eric@vangyzen.net)
Received: from disco.vangyzen.net (unknown [70.97.188.230])
 by smtp.vangyzen.net (Postfix) with ESMTPSA id F0AD056468;
 Thu,  7 Mar 2019 19:23:02 -0600 (CST)
To: freebsd-bugbusters@freebsd.org, freebsd-bugs@freebsd.org,
 freebsd-git@freebsd.org, freebsd-ports-bugs@freebsd.org,
 freebsd-ports@freebsd.org, svn-doc-all@freebsd.org,
 svn-ports-all@freebsd.org, svn-src-all@freebsd.org
From: Eric van Gyzen <eric@vangyzen.net>
Subject: URLs in the PR field of commit logs
Reply-To: Eric van Gyzen <vangyzen@FreeBSD.org>
Message-ID: <216cab72-2e2f-ef6d-fc6c-21e165b33a1e@vangyzen.net>
Date: Thu, 7 Mar 2019 19:22:57 -0600
User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101
 Thunderbird/60.4.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Rspamd-Queue-Id: C58C48454A
X-Spamd-Bar: ----
Authentication-Results: mx1.freebsd.org;
 spf=pass (mx1.freebsd.org: domain of eric@vangyzen.net designates
 2607:fc50:1000:7400:216:3eff:fe72:314f as permitted sender)
 smtp.mailfrom=eric@vangyzen.net
X-Spamd-Result: default: False [-4.68 / 15.00]; ARC_NA(0.00)[];
 RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_TLS_ALL(0.00)[];
 FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+a];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain];
 TO_DN_NONE(0.00)[]; DMARC_NA(0.00)[vangyzen.net];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 REPLYTO_DOM_NEQ_FROM_DOM(0.00)[];
 REPLYTO_DN_EQ_FROM_DN(0.00)[];
 HAS_REPLYTO(0.00)[vangyzen@FreeBSD.org];
 MX_GOOD(-0.01)[hotblack.vangyzen.net];
 NEURAL_HAM_SHORT(-0.76)[-0.757,0]; RCPT_COUNT_SEVEN(0.00)[8];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 IP_SCORE(-3.11)[ip: (-7.60), ipnet: 2607:fc50:1000::/36(-3.97), asn:
 36236(-3.90), country: US(-0.07)]; FROM_EQ_ENVFROM(0.00)[];
 R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+];
 ASN(0.00)[asn:36236, ipnet:2607:fc50:1000::/36, country:US];
 MID_RHS_MATCH_FROM(0.00)[]; SUSPICIOUS_RECIPS(1.50)[];
 RCVD_COUNT_TWO(0.00)[2]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 01:23:18 -0000

(I apologize for the massive cross-post.  There was no obvious place to
announce this.)

I plan to change the Subversion commit hooks to accept URLs in the PR
field of commit logs.  See

	https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236229

If you anticipate specific problems this might cause, or have any other
relevant discussion, please comment on that bug.

Thanks,

Eric

From owner-svn-src-all@freebsd.org  Fri Mar  8 01:49:36 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2CEC0152E7FF
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Fri,  8 Mar 2019 01:49:36 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: from mail-qk1-x742.google.com (mail-qk1-x742.google.com
 [IPv6:2607:f8b0:4864:20::742])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 9E398850F8
 for <svn-src-all@freebsd.org>; Fri,  8 Mar 2019 01:49:35 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: by mail-qk1-x742.google.com with SMTP id z13so10334940qki.2
 for <svn-src-all@freebsd.org>; Thu, 07 Mar 2019 17:49:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=hardenedbsd.org; s=google;
 h=date:from:to:cc:subject:message-id:references:mime-version
 :content-disposition:in-reply-to:user-agent;
 bh=PbB+LRAXZYImwcoXbl7jjAkMCUe9cAOWrF/2ySlCImU=;
 b=MRRRHZVaam63/MKOf50GIml1wlbbVx1NUWzfWh+4CM/HsjAohjODl8XhZG/5goXRZb
 jeskGlcc1/NCdsD/seYtkGSr3FRAtVmkL5qbA/LBKBboTxMs/XoSKuP/0uJyg6DCdQjJ
 i6iS1HZNzQDoVADrZTxL7GHFm/aAaDUhCnIB3Qvaf8MFZGTKu6Zcca4q4RcOKZ/1Ovwe
 I5pzULJH6L3EdVsuKWGkP9w/fk7ynuyCqpiwthhhpzkOKl9pIK5f2gvyeappfTX88P+S
 L28NeeeHV8EyZ/Ahpneuv8YHly0jmiYkqLbAqAHfi2vUgZre/+CAM/KmNegvqkH3166K
 mq6Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:date:from:to:cc:subject:message-id:references
 :mime-version:content-disposition:in-reply-to:user-agent;
 bh=PbB+LRAXZYImwcoXbl7jjAkMCUe9cAOWrF/2ySlCImU=;
 b=dpwDCYDRVyjpgTXuXOmnFGSWIeat7PE5qo/EhzuMRJKFnkAJExXtVNZu/lS2jcqo4d
 lyJxlHQ6Qe3TvM01OCfFcHg3PKTBRysQb0xs9AWjsmvaxX/rHM2YmlUvdKbJlH3ETjcE
 icLlsewMGRMNa/Kqt0lSasQPoVtBYCQESre4YJNE5+kmaLyHskT0mb8y1jx5SCvjTEco
 ATkUX5tNklUiLKwhJPAUX9u9DIHT+iZWQN7l7gDr8jNBr7v2xVzNQt6U99OPy5llJV0p
 vEorckNt2xLd48YfYloNsbzbmj01ufIL8GcWldbd19fRX4Fmo0qGz+LMF955GhM+x9po
 rlTA==
X-Gm-Message-State: APjAAAWM0bzldQfwB7mZm6WE+BFxVN4zdl8e3P4JwqsMvZocmORpQuIM
 dmGLIZYKPfGvGqIjEWb3v8mh2X3hQGE=
X-Google-Smtp-Source: APXvYqwuh8hf7x4rYCe8u/U5XjzLzoWORYdusUjJY+cQM+wY3JevyXTZb+P1fdu8XEtLYuCYy/E5Vg==
X-Received: by 2002:a05:620a:12e1:: with SMTP id
 f1mr4411727qkl.151.1552009775087; 
 Thu, 07 Mar 2019 17:49:35 -0800 (PST)
Received: from mutt-hbsd ([151.196.118.239])
 by smtp.gmail.com with ESMTPSA id g123sm4772343qkg.0.2019.03.07.17.49.34
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Thu, 07 Mar 2019 17:49:34 -0800 (PST)
Date: Thu, 7 Mar 2019 20:48:58 -0500
From: Shawn Webb <shawn.webb@hardenedbsd.org>
To: Conrad Meyer <cem@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344913 - head/sys/dev/random
Message-ID: <20190308014858.2kowmri5nx7oa7a5@mutt-hbsd>
References: <201903080117.x281HK4N002587@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="iyadebnuiasa6kxb"
Content-Disposition: inline
In-Reply-To: <201903080117.x281HK4N002587@repo.freebsd.org>
X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD
 13.0-CURRENT-HBSD  HARDENEDBSD-13-CURRENT  amd64
X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0x6A84658F52456EEE
User-Agent: NeoMutt/20180716
X-Rspamd-Queue-Id: 9E398850F8
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[];
 NEURAL_HAM_SHORT(-0.99)[-0.987,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 01:49:36 -0000


--iyadebnuiasa6kxb
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Hey Conrad,

On Fri, Mar 08, 2019 at 01:17:20AM +0000, Conrad Meyer wrote:
> Author: cem
> Date: Fri Mar  8 01:17:20 2019
> New Revision: 344913
> URL: https://svnweb.freebsd.org/changeset/base/344913
>=20
> Log:
>   Fortuna: Add Chacha20 as an alternative stream cipher
>  =20
>   Chacha20 with a 256 bit key and 128 bit counter size is a good match fo=
r an
>   AES256-ICM replacement.
>  =20
>   In userspace, Chacha20 is typically marginally slower than AES-ICM on
>   machines with AESNI intrinsics, but typically much faster than AES on
>   machines without special intrinsics.  ChaCha20 does well on typical mod=
ern
>   architectures with SIMD instructions, which includes most types of mach=
ines
>   FreeBSD runs on.
>  =20
>   In the kernel, we can't (or don't) make use of AESNI intrinsics for
>   random(4) anyway.  So even on amd64, using Chacha provides a modest
>   performance improvement in random device throughput today.
>  =20
>   This change makes the stream cipher used by random(4) configurable at b=
oot
>   time with the 'kern.random.use_chacha20_cipher' tunable.
>  =20
>   Very rough, non-scientific measurements at the /dev/random device, on a
>   GENERIC-NODEBUG amd64 VM with 'pv', show a factor of 2.2x higher throug=
hput
>   for Chacha20 over the existing AES-ICM mode.
>  =20
>   Reviewed by:	delphij, markm
>   Approved by:	secteam (delphij)
>   Differential Revision:	https://reviews.freebsd.org/D19475
>=20
> Modified:
>   head/sys/dev/random/fortuna.c
>   head/sys/dev/random/hash.c
>   head/sys/dev/random/hash.h
>   head/sys/dev/random/uint128.h
>
> Modified: head/sys/dev/random/hash.c
> =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
> --- head/sys/dev/random/hash.c	Fri Mar  8 01:04:19 2019	(r344912)
> +++ head/sys/dev/random/hash.c	Fri Mar  8 01:17:20 2019	(r344913)
> +/* Validate that full Chacha IV is as large as the 128-bit counter */
> +_Static_assert(CHACHA_STATELEN =3D=3D RANDOM_BLOCKSIZE, "");
> +
> +/*
> + * Experimental Chacha20-based PRF for Fortuna keystream primitive.  For=
 now,
> + * disabled by default.  But we may enable it in the future.
> + *
> + * Benefits include somewhat faster keystream generation compared with
> + * unaccelerated AES-ICM.
> + */
> +bool random_chachamode =3D false;
> +#ifdef _KERNEL
> +SYSCTL_BOOL(_kern_random, OID_AUTO, use_chacha20_cipher, CTLFLAG_RDTUN,
> +    &random_chachamode, 0,
> +    "If non-zero, use the ChaCha20 cipher for randomdev PRF.  "
> +    "If zero, use AES-ICM cipher for randomdev PRF (default).");
> +#endif

I'm curious if that sysctl node could be documented in a manpage,
perhaps the random(4) manpage would be a good candidate for updating.


Thanks,

--=20
Shawn Webb
Cofounder and Security Engineer
HardenedBSD

Tor-ified Signal:    +1 443-546-8752
Tor+XMPP+OTR:        lattera@is.a.hacker.sx
GPG Key ID:          0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE

--iyadebnuiasa6kxb
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKrq2ve9q9Ia+iT2eaoRlj1JFbu4FAlyByggACgkQaoRlj1JF
bu66sQ//bUflj/qhnl9tOaGhDP2jAsWeIFGZ7WCzeCpkeFzhxT4LHvQveJnjtFhX
p4ub4qGvbLGv0fDHRxIuP4S8NObaI5mkIivCAmdPOApNT5RBYtasoz8Y0O+A0Xkm
x647JwVGdmPtXY8gGJPNuQKeMGMav7YX5gUxTDlh3M4Qasje+dxM9j/0adEYp6EX
jZdPvtisT/iIH+eDvFZA2ayjsQ2BPB7ADKXkHEnmhi9JXyyX6hzX+bSbYSU2ry9g
9LupckX3RFXWFrvHqKPfKzmzGVmUiA4GZP3rjCc1rOsUmHeVO8PfzjZ/yWKGA8JU
p7S8RnnPfb0ji5Edp9wO4WnXaCnpdsCTipBLMd9Z+WPQog+xkq1Es/H3owjAbVtY
t5FTv3Pay63sGj3CgodkJU9lbslmJgX2yyoyZJa9LNGPow5bJmeHEoCN3wCHERTD
uSdgQX4xoQlCrW+fMn5FDCrtNr+rLHYIbwQSBEXGAvINDFsGjRVGnwWRi2oH8Xqq
BCMu9giAm3j+BVMtSeBD/jf0XUv3CaYEzOrAQjMRuwBf6rUXGmR9CY0wR6gdzZcw
QXkTC3UZAYJZi8SXkEZKzpC3jT11Dl7TPNsoLWI/gGR7ZKWXz9jrNtDyC2l3mrfg
qkhceGVfYIA9WKAhlUvsCA/gL66CiCqz/52jm+aPBRgUKNwCJ2A=
=1COL
-----END PGP SIGNATURE-----

--iyadebnuiasa6kxb--

From owner-svn-src-all@freebsd.org  Fri Mar  8 02:33:26 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 57BB0152F60A
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Fri,  8 Mar 2019 02:33:26 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: from mail-qk1-x742.google.com (mail-qk1-x742.google.com
 [IPv6:2607:f8b0:4864:20::742])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id BCC3786693
 for <svn-src-all@freebsd.org>; Fri,  8 Mar 2019 02:33:24 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: by mail-qk1-x742.google.com with SMTP id s26so2268328qkm.10
 for <svn-src-all@freebsd.org>; Thu, 07 Mar 2019 18:33:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=hardenedbsd.org; s=google;
 h=date:from:to:cc:subject:message-id:references:mime-version
 :content-disposition:in-reply-to:user-agent;
 bh=zpCZgzC7YhxkvgG2q3Bjz4ENl8ySLlRyNsXj8WmtvGs=;
 b=TygGPw/1teJKUGhLCa0LtJmAjQ4RVa0HtwRMKGC5LGiLLOzFqkhhdiEIEnfnd2K9hL
 MRZ4zlOVjDuUdLT+ZKngHfXLrwU8hZRUtcmRzQxDXKTp7L3+3mWtBNWibr9PfQv+/5jJ
 dFmH65n+KYRX+ZRnI+MYKBykYiC84yQ7uJJFg2htl5j08lAz6+HHGdc5qLe64XIyd/qK
 L9mlo9OhpPDqUO6ngkahk1i/Ow95ig6S+jGgxkfvdZWfblp8tXYeJc5gj6aAzmRyFDcj
 IgDlf63cPhRAF/BOdYe/ynFLtqTjK5Cq5TfS8uJsoRvjtKvbQoq8r4q+ur6sgCahSSmD
 L+fA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:date:from:to:cc:subject:message-id:references
 :mime-version:content-disposition:in-reply-to:user-agent;
 bh=zpCZgzC7YhxkvgG2q3Bjz4ENl8ySLlRyNsXj8WmtvGs=;
 b=Apy8la0vvc61NLT9xYWWJevTuJkcfxaXJHA6hzz5niDKIbk5ndphfhH3Ghg2Szthi0
 WaPxc+dU4KCXdKDwNL5VNCpnQYStx6wZk8qXq9oJXvG2JD5Gk+cq72+HXscTS9x2fYal
 q5s2f4CvEO0798kNHAFBUqPeJrLRaSgGZAinjlx6t1fpxF5N/24/prUAOlBiv5y5djOT
 1K9DLpXHV0bqmzFsu6pvHymvktHOeHvn+qZFfExXTcaZOugb0kAvWWMPK8nMC6/QHUpQ
 FrAzIpUfdnVCnfVqf3dOP2Qt86bVx/DIOdO65K202z67dEmcKaLClVzRrPugCVbXzfd9
 tn9g==
X-Gm-Message-State: APjAAAUqd9cFkDAfSxVH5W6SxED6Z1BNrFWKkz2Ttt/VO6tIzQZiXibC
 i0AnizozRcVTrynr+gGXuCy6fw==
X-Google-Smtp-Source: APXvYqwRYj53IGS6MgJu+S2mMB4quYQFZqOKtlBnPw8F4/dlXLBFdFoS3r+Bqbu4Q5qqf1AIHPP0WQ==
X-Received: by 2002:a37:a38e:: with SMTP id
 m136mr12141120qke.120.1552012404117; 
 Thu, 07 Mar 2019 18:33:24 -0800 (PST)
Received: from mutt-hbsd ([151.196.118.239])
 by smtp.gmail.com with ESMTPSA id f7sm3522562qke.28.2019.03.07.18.33.23
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Thu, 07 Mar 2019 18:33:23 -0800 (PST)
Date: Thu, 7 Mar 2019 21:32:46 -0500
From: Shawn Webb <shawn.webb@hardenedbsd.org>
To: Kirk McKusick <mckusick@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject: Re: svn commit: r344861 - in stable/11: sbin/fsck_ffs sbin/fsdb
 sys/ufs/ffs
Message-ID: <20190308023246.6krhyatucbugjtsx@mutt-hbsd>
References: <201903062359.x26NxugE086319@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="6pkb3iuc6mfvhrdi"
Content-Disposition: inline
In-Reply-To: <201903062359.x26NxugE086319@repo.freebsd.org>
X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD
 13.0-CURRENT-HBSD  HARDENEDBSD-13-CURRENT  amd64
X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0x6A84658F52456EEE
User-Agent: NeoMutt/20180716
X-Rspamd-Queue-Id: BCC3786693
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=hardenedbsd.org header.s=google header.b=TygGPw/1;
 spf=pass (mx1.freebsd.org: domain of shawn.webb@hardenedbsd.org designates
 2607:f8b0:4864:20::742 as permitted sender)
 smtp.mailfrom=shawn.webb@hardenedbsd.org
X-Spamd-Result: default: False [-5.21 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 TO_DN_SOME(0.00)[];
 R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36];
 RCPT_COUNT_FIVE(0.00)[5]; RCVD_COUNT_THREE(0.00)[3];
 DKIM_TRACE(0.00)[hardenedbsd.org:+];
 MX_GOOD(-0.01)[alt1.aspmx.l.google.com,aspmx.l.google.com,aspmx2.googlemail.com,alt2.aspmx.l.google.com,aspmx3.googlemail.com];
 NEURAL_HAM_SHORT(-0.84)[-0.840,0]; SIGNED_PGP(-2.00)[];
 FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+];
 RCVD_TLS_LAST(0.00)[];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 IP_SCORE(-0.26)[ip: (3.55), ipnet: 2607:f8b0::/32(-2.72), asn: 15169(-2.05),
 country: US(-0.07)]; 
 RECEIVED_SPAMHAUS_PBL(0.00)[239.118.196.151.zen.spamhaus.org : 127.0.0.10];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[hardenedbsd.org:s=google];
 FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0];
 MIME_GOOD(-0.20)[multipart/signed,text/plain];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[hardenedbsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_IN_DNSWL_NONE(0.00)[2.4.7.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]; MID_RHS_NOT_FQDN(0.50)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 02:33:26 -0000


--6pkb3iuc6mfvhrdi
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Wed, Mar 06, 2019 at 11:59:56PM +0000, Kirk McKusick wrote:
> Author: mckusick
> Date: Wed Mar  6 23:59:56 2019
> New Revision: 344861
> URL: https://svnweb.freebsd.org/changeset/base/344861
>=20
> Log:
>   MFC of 344552 and 344732
>  =20
>   Have fsck_ffs adjust size for files with hole at end
>  =20
>   Tighten last lbn calculation
>  =20
>   Sponsored by: Netflix
>=20
> Modified:
>   stable/11/sbin/fsck_ffs/fsck.h
>   stable/11/sbin/fsck_ffs/globs.c
>   stable/11/sbin/fsck_ffs/inode.c
>   stable/11/sbin/fsck_ffs/pass1.c
>   stable/11/sbin/fsck_ffs/setup.c
>   stable/11/sbin/fsdb/fsdb.c
>   stable/11/sys/ufs/ffs/ffs_alloc.c
>   stable/11/sys/ufs/ffs/fs.h
> Directory Properties:
>   stable/11/   (props changed)
>=20
> Modified: stable/11/sbin/fsck_ffs/fsck.h
> =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
> --- stable/11/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsck_ffs/fsck.h	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -230,6 +230,7 @@ struct inodesc {
>  	ufs_lbn_t id_lbn;	/* logical block number of current block */
>  	ufs2_daddr_t id_blkno;	/* current block number being examined */
>  	int id_numfrags;	/* number of frags contained in block */
> +	ufs_lbn_t id_lballoc;	/* pass1: last LBN that is allocated */
>  	off_t id_filesize;	/* for DATA nodes, the size of the directory */
>  	ufs2_daddr_t id_entryno;/* for DATA nodes, current entry number */
>  	int id_loc;		/* for DATA nodes, current location in dir */
> @@ -289,6 +290,7 @@ extern long countdirs;		/* number of directories we ac
>  #define MIBSIZE	3		/* size of fsck sysctl MIBs */
>  extern int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference =
cnt */
>  extern int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block coun=
t */
> +extern int	setsize[MIBSIZE];	/* MIB command to set inode size */
>  extern int	adjndir[MIBSIZE];	/* MIB command to adjust number of director=
ies */
>  extern int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free b=
locks */
>  extern int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free i=
nodes */
>=20
> Modified: stable/11/sbin/fsck_ffs/globs.c
> =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
> --- stable/11/sbin/fsck_ffs/globs.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsck_ffs/globs.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -61,6 +61,7 @@ unsigned long  numdirs, listmax;
>  long countdirs;		/* number of directories we actually found */
>  int	adjrefcnt[MIBSIZE];	/* MIB command to adjust inode reference cnt */
>  int	adjblkcnt[MIBSIZE];	/* MIB command to adjust inode block count */
> +int	setsize[MIBSIZE];	/* MIB command to set inode size */
>  int	adjndir[MIBSIZE];	/* MIB command to adjust number of directories */
>  int	adjnbfree[MIBSIZE];	/* MIB command to adjust number of free blocks */
>  int	adjnifree[MIBSIZE];	/* MIB command to adjust number of free inodes */
> @@ -128,6 +129,7 @@ fsckinit(void)
>  	countdirs =3D 0;
>  	bzero(adjrefcnt, sizeof(int) * MIBSIZE);
>  	bzero(adjblkcnt, sizeof(int) * MIBSIZE);
> +	bzero(setsize, sizeof(int) * MIBSIZE);
>  	bzero(adjndir, sizeof(int) * MIBSIZE);
>  	bzero(adjnbfree, sizeof(int) * MIBSIZE);
>  	bzero(adjnifree, sizeof(int) * MIBSIZE);
>=20
> Modified: stable/11/sbin/fsck_ffs/inode.c
> =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
> --- stable/11/sbin/fsck_ffs/inode.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsck_ffs/inode.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -124,9 +124,9 @@ ckinode(union dinode *dp, struct inodesc *idesc)
>  			ret =3D iblock(idesc, i + 1, remsize, BT_LEVEL1 + i);
>  			if (ret & STOP)
>  				return (ret);
> -		} else {
> +		} else if (remsize > 0) {
>  			idesc->id_lbn +=3D sizepb / sblock.fs_bsize;
> -			if (idesc->id_type =3D=3D DATA && remsize > 0) {
> +			if (idesc->id_type =3D=3D DATA) {
>  				/* An empty block in a directory XXX */
>  				getpathname(pathbuf, idesc->id_number,
>  						idesc->id_number);
>=20
> Modified: stable/11/sbin/fsck_ffs/pass1.c
> =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
> --- stable/11/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsck_ffs/pass1.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -245,6 +245,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
>  	off_t kernmaxfilesize;
>  	ufs2_daddr_t ndb;
>  	mode_t mode;
> +	uintmax_t fixsize;
>  	int j, ret, offset;
> =20
>  	if ((dp =3D getnextinode(inumber, rebuildcg)) =3D=3D NULL)
> @@ -375,6 +376,7 @@ checkinode(ino_t inumber, struct inodesc *idesc, int r
>  		idesc->id_type =3D SNAP;
>  	else
>  		idesc->id_type =3D ADDR;
> +	idesc->id_lballoc =3D -1;
>  	(void)ckinode(dp, idesc);
>  	if (sblock.fs_magic =3D=3D FS_UFS2_MAGIC && dp->dp2.di_extsize > 0) {
>  		idesc->id_type =3D ADDR;
> @@ -420,6 +422,46 @@ checkinode(ino_t inumber, struct inodesc *idesc, int=
 r
>  				rwerror("ADJUST INODE BLOCK COUNT", cmd.value);
>  		}
>  	}
> +	/*
> +	 * Soft updates will always ensure that the file size is correct
> +	 * for files that contain only direct block pointers. However
> +	 * soft updates does not roll back sizes for files with indirect
> +	 * blocks that it has set to unallocated because their contents
> +	 * have not yet been written to disk. Hence, the file can appear
> +	 * to have a hole at its end because the block pointer has been
> +	 * rolled back to zero. Thus, id_lballoc tracks the last allocated
> +	 * block in the file. Here, for files that extend into indirect
> +	 * blocks, we check for a size past the last allocated block of
> +	 * the file and if that is found, shorten the file to reference
> +	 * the last allocated block to avoid having it reference a hole
> +	 * at its end.
> +	 */
> +	if (DIP(dp, di_size) > UFS_NDADDR * sblock.fs_bsize &&
> +	    idesc->id_lballoc < lblkno(&sblock, DIP(dp, di_size) - 1)) {
> +		fixsize =3D lblktosize(&sblock, idesc->id_lballoc + 1);
> +		pwarn("INODE %lu: FILE SIZE %ju BEYOND END OF ALLOCATED FILE, "
> +		      "SIZE SHOULD BE %ju", (u_long)inumber,
> +		      (uintmax_t)DIP(dp, di_size), fixsize);
> +		if (preen)
> +			printf(" (ADJUSTED)\n");
> +		else if (reply("ADJUST") =3D=3D 0)
> +			return (1);
> +		if (bkgrdflag =3D=3D 0) {
> +			dp =3D ginode(inumber);
> +			DIP_SET(dp, di_size, fixsize);
> +			inodirty(dp);
> +		} else {
> +			cmd.value =3D idesc->id_number;
> +			cmd.size =3D fixsize;
> +			if (debug)
> +				printf("setsize ino %ju size set to %ju\n",
> +				    (uintmax_t)cmd.value, (uintmax_t)cmd.size);
> +			if (sysctl(setsize, MIBSIZE, 0, 0,
> +			    &cmd, sizeof cmd) =3D=3D -1)
> +				rwerror("SET INODE SIZE", cmd.value);
> +		}
> +
> +	}
>  	return (1);
>  unknown:
>  	pfatal("UNKNOWN FILE TYPE I=3D%lu", (u_long)inumber);
> @@ -521,5 +563,7 @@ pass1check(struct inodesc *idesc)
>  		 */
>  		idesc->id_entryno++;
>  	}
> +	if (idesc->id_lballoc =3D=3D -1 || idesc->id_lballoc < idesc->id_lbn)
> +		idesc->id_lballoc =3D idesc->id_lbn;
>  	return (res);
>  }
>=20
> Modified: stable/11/sbin/fsck_ffs/setup.c
> =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
> --- stable/11/sbin/fsck_ffs/setup.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsck_ffs/setup.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -134,6 +134,7 @@ setup(char *dev)
>  		size =3D MIBSIZE;
>  		if (sysctlnametomib("vfs.ffs.adjrefcnt", adjrefcnt, &size) < 0||
>  		    sysctlnametomib("vfs.ffs.adjblkcnt", adjblkcnt, &size) < 0||
> +		    sysctlnametomib("vfs.ffs.setsize", setsize, &size) < 0 ||
>  		    sysctlnametomib("vfs.ffs.freefiles", freefiles, &size) < 0||
>  		    sysctlnametomib("vfs.ffs.freedirs", freedirs, &size) < 0 ||
>  		    sysctlnametomib("vfs.ffs.freeblks", freeblks, &size) < 0) {
>=20
> Modified: stable/11/sbin/fsdb/fsdb.c
> =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
> --- stable/11/sbin/fsdb/fsdb.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sbin/fsdb/fsdb.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -157,6 +157,7 @@ CMDFUNC(chctime);			/* Change ctime */
>  CMDFUNC(chatime);			/* Change atime */
>  CMDFUNC(chinum);			/* Change inode # of dirent */
>  CMDFUNC(chname);			/* Change dirname of dirent */
> +CMDFUNC(chsize);			/* Change size */
> =20
>  struct cmdtable cmds[] =3D {
>  	{ "help", "Print out help", 1, 1, FL_RO, helpfn },
> @@ -186,6 +187,7 @@ struct cmdtable cmds[] =3D {
>  	{ "chgrp", "Change group of current inode to GROUP", 2, 2, FL_WR, chgro=
up },
>  	{ "chflags", "Change flags of current inode to FLAGS", 2, 2, FL_WR, cha=
flags },
>  	{ "chgen", "Change generation number of current inode to GEN", 2, 2, FL=
_WR, chgen },
> +	{ "chsize", "Change size of current inode to SIZE", 2, 2, FL_WR, chsize=
 },
>  	{ "btime", "Change btime of current inode to BTIME", 2, 2, FL_WR, chbti=
me },
>  	{ "mtime", "Change mtime of current inode to MTIME", 2, 2, FL_WR, chmti=
me },
>  	{ "ctime", "Change ctime of current inode to CTIME", 2, 2, FL_WR, chcti=
me },
> @@ -1009,6 +1011,31 @@ CMDFUNCSTART(chgen)
>      }
>      DIP_SET(curinode, di_gen, gen);
>      inodirty();
> +    printactive(0);
> +    return rval;
> +}
> +
> +CMDFUNCSTART(chsize)
> +{
> +    int rval =3D 1;
> +    off_t size;
> +    char *cp;
> +
> +    if (!checkactive())
> +	return 1;
> +
> +    size =3D strtoll(argv[1], &cp, 0);
> +    if (cp =3D=3D argv[1] || *cp !=3D '\0') {
> +	warnx("bad size `%s'", argv[1]);
> +	return 1;
> +    }
> +
> +    if (size < 0) {
> +	warnx("size set to negative (%jd)\n", (intmax_t)size);
> +	return(1);
> +    }
> +    DIP_SET(curinode, di_size, size);
> +    inodirty(curinode);
>      printactive(0);
>      return rval;
>  }
>=20
> Modified: stable/11/sys/ufs/ffs/ffs_alloc.c
> =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
> --- stable/11/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sys/ufs/ffs/ffs_alloc.c	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -2688,6 +2688,8 @@ ffs_fserr(fs, inum, cp)
>   *	the count to zero will cause the inode to be freed.
>   * adjblkcnt(inode, amt) - adjust the number of blocks used by the
>   *	inode by the specified amount.
> + * adjsize(inode, size) - set the size of the inode to the
> + *	specified size.
>   * adjndir, adjbfree, adjifree, adjffree, adjnumclusters(amt) -
>   *	adjust the superblock summary.
>   * freedirs(inode, count) - directory inodes [inode..inode + count - 1]
> @@ -2729,6 +2731,9 @@ SYSCTL_PROC(_vfs_ffs, FFS_ADJ_REFCNT, adjrefcnt, CT=
LFL
>  static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_BLKCNT, adjblkcnt, CTLFLAG_WR,
>  	sysctl_ffs_fsck, "Adjust Inode Used Blocks Count");
> =20
> +static SYSCTL_NODE(_vfs_ffs, FFS_SET_SIZE, setsize, CTLFLAG_WR,
> +	sysctl_ffs_fsck, "Set the inode size");
> +
>  static SYSCTL_NODE(_vfs_ffs, FFS_ADJ_NDIR, adjndir, CTLFLAG_WR,
>  	sysctl_ffs_fsck, "Adjust number of directories");
> =20
> @@ -2875,6 +2880,23 @@ sysctl_ffs_fsck(SYSCTL_HANDLER_ARGS)
>  			break;
>  		ip =3D VTOI(vp);
>  		DIP_SET(ip, i_blocks, DIP(ip, i_blocks) + cmd.size);
> +		ip->i_flag |=3D IN_CHANGE | IN_MODIFIED;
> +		error =3D ffs_update(vp, 1);
> +		vput(vp);
> +		break;
> +
> +	case FFS_SET_SIZE:
> +#ifdef DEBUG
> +		if (fsckcmds) {
> +			printf("%s: set inode %jd size to %jd\n",
> +			    mp->mnt_stat.f_mntonname, (intmax_t)cmd.value,
> +			    (intmax_t)cmd.size);
> +		}
> +#endif /* DEBUG */
> +		if ((error =3D ffs_vget(mp, (ino_t)cmd.value, LK_EXCLUSIVE, &vp)))
> +			break;
> +		ip =3D VTOI(vp);
> +		DIP_SET(ip, i_size, cmd.size);
>  		ip->i_flag |=3D IN_CHANGE | IN_MODIFIED;
>  		error =3D ffs_update(vp, 1);
>  		vput(vp);
>=20
> Modified: stable/11/sys/ufs/ffs/fs.h
> =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
> --- stable/11/sys/ufs/ffs/fs.h	Wed Mar  6 23:54:55 2019	(r344860)
> +++ stable/11/sys/ufs/ffs/fs.h	Wed Mar  6 23:59:56 2019	(r344861)
> @@ -219,7 +219,8 @@
>  #define	FFS_UNLINK		14	/* remove a name in the filesystem */
>  #define	FFS_SET_INODE		15	/* update an on-disk inode */
>  #define	FFS_SET_BUFOUTPUT	16	/* set buffered writing on descriptor */
> -#define	FFS_MAXID		16	/* number of valid ffs ids */
> +#define	FFS_SET_SIZE		17	/* set inode size */
> +#define	FFS_MAXID		17	/* number of valid ffs ids */

Hey Kirk,

This MFC breaks buildworld:

http://jenkins.hardenedbsd.org/jenkins/job/HardenedBSD-11-STABLE-amd64/904/=
console

I'll take a look at providing a patch to fix it soon, unless you're
able to get to it before I am.

Thanks,

--=20
Shawn Webb
Cofounder and Security Engineer
HardenedBSD

Tor-ified Signal:    +1 443-546-8752
Tor+XMPP+OTR:        lattera@is.a.hacker.sx
GPG Key ID:          0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE

--6pkb3iuc6mfvhrdi
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKrq2ve9q9Ia+iT2eaoRlj1JFbu4FAlyB1E0ACgkQaoRlj1JF
bu7gvxAAlUNvbdlX0Z7iQRSUgHfU0vrvw0u/WGcyb9wtxE66gEO2Ty20Weyl6hsO
RD3Ng8L4IsDxJb2htwSZw5vumOXM7AcHwdqSqfo7z1d6bCxnJGIScvEebrKpRRXg
xVVWbG9D2Nd7Wz/mhiDaBM2FZnok/6asd9IDR8cMy6hKnweQZDtTeZKhSkxhczAH
dVMmgczwQz+NVn61RuRpbZN5X7u3IbeQmDFHaji4KLKVkGqjOv6iz720v22BWQRW
LEUnIPA761T4/yaIKEGGRhNtueJQ7t8O3XVH9CwxiGNBzp38/bE55yeZAk04LfK8
P7x2TbpWNI2tqPssZ14Y5HEBZvYeIZpxey9NhOGjuXhUFdYJV5w7qc1DY1ASCQoX
VIxYDXVP7h+87PN+Eiae0FFmXMTUZg52Fm1A3AB70pz4FVPTOVFr4ax8xLydniXq
xOI8t+ZsE1HYSoASbW8ZW7Xq42u+cneI/vZE/TQRR4lTsrGSaIKO0D1N247B0xtZ
yvOIP4/stskX9xcaPw16SvEiGwZx/hNYn2c1t7t32Zn5BXdjC8sU/a2BYvigTugv
JdDZSYvyqVIcfgl9/H0vW8k6T5r2d99ZAOx+QhwHY7w09fLjE722GcTJZXMxcBHb
Y9CX5CKKyaRiKb8ucLCpQgT+WvoWi44wXlozAUiawFNMt8Ke3Dk=
=avPj
-----END PGP SIGNATURE-----

--6pkb3iuc6mfvhrdi--

From owner-svn-src-all@freebsd.org  Fri Mar  8 03:18:15 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CB3CE153036D;
 Fri,  8 Mar 2019 03:18:15 +0000 (UTC)
 (envelope-from byond.lenox@gmail.com)
Received: from mail-lj1-f181.google.com (mail-lj1-f181.google.com
 [209.85.208.181])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 3147C87DB9;
 Fri,  8 Mar 2019 03:18:15 +0000 (UTC)
 (envelope-from byond.lenox@gmail.com)
Received: by mail-lj1-f181.google.com with SMTP id l5so16192418lje.1;
 Thu, 07 Mar 2019 19:18:15 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=yXOLKSCf69lHcXccOU8vX86/SmCcoJaoItAdg90n3c8=;
 b=AG/V5t3x8J0pleu1OvfPf7iMmUOJtTZRdTuXnMATEDJZvpdKA5wC1bF5hnKCZj/l6R
 7wK6B1h5XCKnd5TIQbY1EmYZd4t3OUgKSP5exu3Z5+5OY5E//5rwoujiK4VHyvWzBZBL
 gRooVzMRH1DKtt5voQd6BBskZBcaH/wIvSm5sJu9/Qc9dnSbZcROwTDRK2y2T5vuTLrn
 9276IGVlE/hErRurUvVkIzpsvRX+oyI+FOgP/BP8LGkWsgc2sb2FIy6xVeHzDl6vis13
 1BOv26/yhNj2Sz9Re0S0NmppP650X26FYLqAnEfNPvmCfqRg+JfloSrvx4MyODnSH2KZ
 /bWg==
X-Gm-Message-State: APjAAAV00uLyjPHVRDkxvIYD+nHKTbw+C3aIQAKkXQrbXw1T0QfR5F/z
 VUEU6o9MwDMnr9ZQBVr5aA3ENJEQ
X-Google-Smtp-Source: APXvYqwwNtRI8+/Zaq+V/t2B2G9vSKo5A0EwrxpmGGyKCKSWUQMQ4oSXXxyBHmq39t3HyRDERbLP8w==
X-Received: by 2002:a2e:49d:: with SMTP id a29mr7590398ljf.35.1552015087103;
 Thu, 07 Mar 2019 19:18:07 -0800 (PST)
Received: from mail-lj1-f182.google.com (mail-lj1-f182.google.com.
 [209.85.208.182])
 by smtp.gmail.com with ESMTPSA id d21sm1208010lfe.2.2019.03.07.19.18.06
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 07 Mar 2019 19:18:06 -0800 (PST)
Received: by mail-lj1-f182.google.com with SMTP id z7so16194207lji.0;
 Thu, 07 Mar 2019 19:18:06 -0800 (PST)
X-Received: by 2002:a2e:9ec2:: with SMTP id h2mr7511835ljk.186.1552015086492; 
 Thu, 07 Mar 2019 19:18:06 -0800 (PST)
MIME-Version: 1.0
References: <201903062359.x26NxugE086319@repo.freebsd.org>
 <20190308023246.6krhyatucbugjtsx@mutt-hbsd>
In-Reply-To: <20190308023246.6krhyatucbugjtsx@mutt-hbsd>
From: Kyle Evans <self@kyle-evans.net>
Date: Thu, 7 Mar 2019 21:17:55 -0600
X-Gmail-Original-Message-ID: <CACNAnaEcnCeA1p41OU8f2W40QgqtR1+6VZWEteODRV7znEL-jA@mail.gmail.com>
Message-ID: <CACNAnaEcnCeA1p41OU8f2W40QgqtR1+6VZWEteODRV7znEL-jA@mail.gmail.com>
Subject: Re: svn commit: r344861 - in stable/11: sbin/fsck_ffs sbin/fsdb
 sys/ufs/ffs
To: Shawn Webb <shawn.webb@hardenedbsd.org>,
 Kirk McKusick <mckusick@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, 
 svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 3147C87DB9
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.97 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.970,0]; REPLY(-4.00)[];
 TAGGED_FROM(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 03:18:16 -0000

On Thu, Mar 7, 2019 at 8:33 PM Shawn Webb <shawn.webb@hardenedbsd.org> wrote:
>
> On Wed, Mar 06, 2019 at 11:59:56PM +0000, Kirk McKusick wrote:
> > Author: mckusick
> > Date: Wed Mar  6 23:59:56 2019
> > New Revision: 344861
> > URL: https://svnweb.freebsd.org/changeset/base/344861
> >
> > Log:
> >   MFC of 344552 and 344732
> >
> >   Have fsck_ffs adjust size for files with hole at end
> >
> >   Tighten last lbn calculation
> >
> >   Sponsored by: Netflix
> >
> > [.. snip ..]
>
> Hey Kirk,
>
> This MFC breaks buildworld:
>
> http://jenkins.hardenedbsd.org/jenkins/job/HardenedBSD-11-STABLE-amd64/904/console
>
> I'll take a look at providing a patch to fix it soon, unless you're
> able to get to it before I am.
>

I believe kib MFC'd the missing bits earlier today in r344885 and
r344887. stable/11 and stable/12 are both happy again in CI.

Thanks,

Kyle Evans

From owner-svn-src-all@freebsd.org  Fri Mar  8 03:34:05 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2EAE01530AD4
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Fri,  8 Mar 2019 03:34:05 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: from mail-qt1-x844.google.com (mail-qt1-x844.google.com
 [IPv6:2607:f8b0:4864:20::844])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id B625A888B7
 for <svn-src-all@freebsd.org>; Fri,  8 Mar 2019 03:34:04 +0000 (UTC)
 (envelope-from shawn.webb@hardenedbsd.org)
Received: by mail-qt1-x844.google.com with SMTP id d2so19793726qti.11
 for <svn-src-all@freebsd.org>; Thu, 07 Mar 2019 19:34:04 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=hardenedbsd.org; s=google;
 h=date:from:to:cc:subject:message-id:references:mime-version
 :content-disposition:in-reply-to:user-agent;
 bh=diRIaU/IovVZv9kD0S0R/vrtMY/rn6ARhwAnQlpo+kE=;
 b=DCfXn786nfdc9QRDo09yEOv6N1owMGtQEWz5t7UVnbSo+K7T++CdI96j8qqo2NjcRU
 0qzehQI7JPLngPo2IfR5PHGDT2zX2AJ6p+qQqrDnfhydcHMjSD/xnHK24XFy4e7PqCnA
 ODAewI5ubIbXpMyG2IRGtkoXLwJSxv1BwRvdgTsgCvx0ldGEb1fiVJ9XyWBFllSCRdod
 wDdAEPKbbxauMVkYRyHy9bwqko6l9lwmw4qStQFY95iAqLXj41tsD/xj37GTHuLEckbM
 Ws+HL9834lh93MixofpdA6ZiSrZ65x588nHnGazemG2laNKQNC2aagewi/3giRMiPfYQ
 /Psw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:date:from:to:cc:subject:message-id:references
 :mime-version:content-disposition:in-reply-to:user-agent;
 bh=diRIaU/IovVZv9kD0S0R/vrtMY/rn6ARhwAnQlpo+kE=;
 b=GiJ78vLINSIE75gYkS4Kl3SvZfzD+u6MblnLDm9dj5fpRSMDhaxJ8UR4tKMEkWUfwT
 eMJeUVmqc5wCfOkD0DlHX4zfNZrrotU6IJnOYJ1X+1ApwJwzGAgz15DUc7zTuHORXO+H
 FxbDFZv55i3jApYXY2p69GX2a8W5NUL9zlqwDJdVFA6jRDM1JBMuL7HkYUI/vYHf/yNf
 zf8bmFUUFbuXFDa3ahmWyZycKSsCizt7Q9SHzlnoY0fihh7bfe5T/7Apk8Qnv6M1xfTX
 hpv/Y2GU+jseYCdu7F6K2FpNzeJC6ljo9X4CoHaq0g/vSdnPSxuqsI0gadeXmU12/BPI
 5HUw==
X-Gm-Message-State: APjAAAUBC8FquCBJuTfyLQYJtBQFcCXEwbBsX9e7loatZT7uTVoZ9ius
 3iUfo7JfoGiq0v7UeE+e99SlpA==
X-Google-Smtp-Source: APXvYqwKYdn9G3J1MM02EOsjchJldKhK9iA75k99JjSXdyzTU1MO9KtimdGbO3vmMz2oYjnmoKmH3w==
X-Received: by 2002:ac8:3437:: with SMTP id u52mr13197079qtb.185.1552016043979; 
 Thu, 07 Mar 2019 19:34:03 -0800 (PST)
Received: from mutt-hbsd ([151.196.118.239])
 by smtp.gmail.com with ESMTPSA id h8sm4473126qtc.29.2019.03.07.19.34.02
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Thu, 07 Mar 2019 19:34:03 -0800 (PST)
Date: Thu, 7 Mar 2019 22:33:26 -0500
From: Shawn Webb <shawn.webb@hardenedbsd.org>
To: Kyle Evans <self@kyle-evans.net>
Cc: Kirk McKusick <mckusick@freebsd.org>,
 src-committers <src-committers@freebsd.org>,
 svn-src-all@freebsd.org, svn-src-stable@freebsd.org,
 svn-src-stable-11@freebsd.org
Subject: Re: svn commit: r344861 - in stable/11: sbin/fsck_ffs sbin/fsdb
 sys/ufs/ffs
Message-ID: <20190308033326.f6fbnfi4z4bropl2@mutt-hbsd>
References: <201903062359.x26NxugE086319@repo.freebsd.org>
 <20190308023246.6krhyatucbugjtsx@mutt-hbsd>
 <CACNAnaEcnCeA1p41OU8f2W40QgqtR1+6VZWEteODRV7znEL-jA@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="yokyr7mti5zidnmb"
Content-Disposition: inline
In-Reply-To: <CACNAnaEcnCeA1p41OU8f2W40QgqtR1+6VZWEteODRV7znEL-jA@mail.gmail.com>
X-Operating-System: FreeBSD mutt-hbsd 13.0-CURRENT-HBSD FreeBSD
 13.0-CURRENT-HBSD  HARDENEDBSD-13-CURRENT  amd64
X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0x6A84658F52456EEE
User-Agent: NeoMutt/20180716
X-Rspamd-Queue-Id: B625A888B7
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.99 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.99)[-0.994,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 03:34:05 -0000


--yokyr7mti5zidnmb
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Mar 07, 2019 at 09:17:55PM -0600, Kyle Evans wrote:
> On Thu, Mar 7, 2019 at 8:33 PM Shawn Webb <shawn.webb@hardenedbsd.org> wr=
ote:
> >
> > On Wed, Mar 06, 2019 at 11:59:56PM +0000, Kirk McKusick wrote:
> > > Author: mckusick
> > > Date: Wed Mar  6 23:59:56 2019
> > > New Revision: 344861
> > > URL: https://svnweb.freebsd.org/changeset/base/344861
> > >
> > > Log:
> > >   MFC of 344552 and 344732
> > >
> > >   Have fsck_ffs adjust size for files with hole at end
> > >
> > >   Tighten last lbn calculation
> > >
> > >   Sponsored by: Netflix
> > >
> > > [.. snip ..]
> >
> > Hey Kirk,
> >
> > This MFC breaks buildworld:
> >
> > http://jenkins.hardenedbsd.org/jenkins/job/HardenedBSD-11-STABLE-amd64/=
904/console
> >
> > I'll take a look at providing a patch to fix it soon, unless you're
> > able to get to it before I am.
> >
>=20
> I believe kib MFC'd the missing bits earlier today in r344885 and
> r344887. stable/11 and stable/12 are both happy again in CI.

Good catch! Thanks for the clarification!

--=20
Shawn Webb
Cofounder and Security Engineer
HardenedBSD

Tor-ified Signal:    +1 443-546-8752
Tor+XMPP+OTR:        lattera@is.a.hacker.sx
GPG Key ID:          0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE

--yokyr7mti5zidnmb
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEKrq2ve9q9Ia+iT2eaoRlj1JFbu4FAlyB4oAACgkQaoRlj1JF
bu6pbg//T9HmLrdslnHqbUyp1uhgR2ZAaMw1/PvFcsa4VL7f9Sk4OtLjapAnN2Zk
IhLvIK/KnwwaqpqikgDosQg/sgfOqxnTEN7uET6/bab8y7UB06WN0kN1NQv8heos
DLl50yP3miB5K36QAiPG8nag/t6kASjXic9W04XY2Pgw7JxC88BeUa8Lo5WwvIfw
jfgoAE/H3cJJgpcCeKzSamdk4Y4V1rVE9zt4rXCDZVcsAlS9LODqoaal/QPKmcVU
LTXSloK+QADhVYQfOgjjI7xTx2J5i0+5Ys+UzvzdB4r4UEd/0N+uRdentJ8Kj7iT
OYZFQ0s3iWc/Il+OXmp4gUMqMxEvbfAY021qixYX2LjWh9L4aoI2cEE7+6qsvn7+
EOyesc7ysanDQubS3S6IaG7d2SzJ9kULPvYJRtQFXn1XgRnIHRs39uMNKgUPGXkx
1NoWB3GOAKZI076HeSFjj5YsSVGH7vPJenH1ugl/Hkq/MJkkwegx3FrizmHGO4tH
ZTSIku+kvEIdbM6LWeWgqP3pAX20bKpCww5vdXRYZIgzzOSUlvcJR+SAZDUcVin3
ER9fnCdk6ulj52Fz4X/Lc/MdPLUXQ5aTnw4IEpB8ftk6Fr68teN3GHlbKxZeyfRW
wyEztvKgDVbyafdxL1ukaMq6voaW18ptsLtnylsxOmA2szm2KPY=
=agfx
-----END PGP SIGNATURE-----

--yokyr7mti5zidnmb--

From owner-svn-src-all@freebsd.org  Fri Mar  8 03:59:55 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0CEAF1531187;
 Fri,  8 Mar 2019 03:59:55 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 A37B889338;
 Fri,  8 Mar 2019 03:59:54 +0000 (UTC)
 (envelope-from jhibbits@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 98FCE25B88;
 Fri,  8 Mar 2019 03:59:54 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x283xsRf087148;
 Fri, 8 Mar 2019 03:59:54 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x283xsa7087146;
 Fri, 8 Mar 2019 03:59:54 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903080359.x283xsa7087146@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Fri, 8 Mar 2019 03:59:54 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344915 - head/sys/powerpc/cpufreq
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/cpufreq
X-SVN-Commit-Revision: 344915
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A37B889338
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.965,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 03:59:55 -0000

Author: jhibbits
Date: Fri Mar  8 03:59:53 2019
New Revision: 344915
URL: https://svnweb.freebsd.org/changeset/base/344915

Log:
  powerpc: Fix cpufreq statement scoping
  
  The second statements on the lines are not guarded by the `if' condition.
  This triggers a warning with newer gcc.  It's relatively harmless given the
  usage, but incorrect.  Instead, wrap the statements so they're properly
  guarded.
  
  Reported by:	powerpc64-gcc xtoolchain
  MFC after:	1 week

Modified:
  head/sys/powerpc/cpufreq/dfs.c
  head/sys/powerpc/cpufreq/pcr.c

Modified: head/sys/powerpc/cpufreq/dfs.c
==============================================================================
--- head/sys/powerpc/cpufreq/dfs.c	Fri Mar  8 02:00:49 2019	(r344914)
+++ head/sys/powerpc/cpufreq/dfs.c	Fri Mar  8 03:59:53 2019	(r344915)
@@ -157,8 +157,10 @@ dfs_settings(device_t dev, struct cf_setting *sets, in
 
 	sets[0].freq = 10000; sets[0].dev = dev;
 	sets[1].freq = 5000; sets[1].dev = dev;
-	if (sc->dfs4)
-		sets[2].freq = 2500; sets[2].dev = dev;
+	if (sc->dfs4) {
+		sets[2].freq = 2500;
+		sets[2].dev = dev;
+	}
 	*count = states;
 
 	return (0);

Modified: head/sys/powerpc/cpufreq/pcr.c
==============================================================================
--- head/sys/powerpc/cpufreq/pcr.c	Fri Mar  8 02:00:49 2019	(r344914)
+++ head/sys/powerpc/cpufreq/pcr.c	Fri Mar  8 03:59:53 2019	(r344915)
@@ -251,8 +251,10 @@ pcr_settings(device_t dev, struct cf_setting *sets, in
 
 	sets[0].freq = 10000; sets[0].dev = dev;
 	sets[1].freq = 5000; sets[1].dev = dev;
-	if (sc->nmodes > 2)
-		sets[2].freq = 2500; sets[2].dev = dev;
+	if (sc->nmodes > 2) {
+		sets[2].freq = 2500;
+		sets[2].dev = dev;
+	}
 	*count = sc->nmodes;
 
 	return (0);

From owner-svn-src-all@freebsd.org  Fri Mar  8 04:20:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5B80E15318F8;
 Fri,  8 Mar 2019 04:20:34 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 F324D89E11;
 Fri,  8 Mar 2019 04:20:33 +0000 (UTC)
 (envelope-from jhibbits@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 E9F7A25EF9;
 Fri,  8 Mar 2019 04:20:33 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x284KXsV098371;
 Fri, 8 Mar 2019 04:20:33 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x284KXVV098370;
 Fri, 8 Mar 2019 04:20:33 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903080420.x284KXVV098370@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Fri, 8 Mar 2019 04:20:33 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344916 - head/sys/powerpc/aim
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/aim
X-SVN-Commit-Revision: 344916
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: F324D89E11
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.965,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 04:20:34 -0000

Author: jhibbits
Date: Fri Mar  8 04:20:33 2019
New Revision: 344916
URL: https://svnweb.freebsd.org/changeset/base/344916

Log:
  powerpc64: Fix early exit with invalid kernel SLB entries
  
  The check for early exit should be checking the SLB entry itself.  As
  currently written it was checking the address of the SLB, which is always
  non-zero, so would go through the kernel SR restore loop regardless.
  
  Submitted by:	mmacy
  MFC after:	2 weeks

Modified:
  head/sys/powerpc/aim/trap_subr64.S

Modified: head/sys/powerpc/aim/trap_subr64.S
==============================================================================
--- head/sys/powerpc/aim/trap_subr64.S	Fri Mar  8 03:59:53 2019	(r344915)
+++ head/sys/powerpc/aim/trap_subr64.S	Fri Mar  8 04:20:33 2019	(r344916)
@@ -89,7 +89,7 @@ restore_kernsrs:
 	GET_CPUINFO(%r28)
 	addi	%r28,%r28,PC_KERNSLB
 	ld	%r29,16(%r28)		/* One past USER_SLB_SLOT */
-	cmpdi	%r28,0
+	cmpdi	%r29,0
 	beqlr				/* If first kernel entry is invalid,
 					 * SLBs not in use, so exit early */
 

From owner-svn-src-all@freebsd.org  Fri Mar  8 08:26:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EB9C11536466;
 Fri,  8 Mar 2019 08:26:07 +0000 (UTC)
 (envelope-from vmaffione@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6113F6A095;
 Fri,  8 Mar 2019 08:26:07 +0000 (UTC)
 (envelope-from vmaffione@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 4D98528932;
 Fri,  8 Mar 2019 08:26:07 +0000 (UTC)
 (envelope-from vmaffione@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x288Q7aH028262;
 Fri, 8 Mar 2019 08:26:07 GMT (envelope-from vmaffione@FreeBSD.org)
Received: (from vmaffione@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x288Q7so028261;
 Fri, 8 Mar 2019 08:26:07 GMT (envelope-from vmaffione@FreeBSD.org)
Message-Id: <201903080826.x288Q7so028261@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to
 vmaffione@FreeBSD.org using -f
From: Vincenzo Maffione <vmaffione@FreeBSD.org>
Date: Fri, 8 Mar 2019 08:26: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: r344917 - stable/12/tools/tools/netmap
X-SVN-Group: stable-12
X-SVN-Commit-Author: vmaffione
X-SVN-Commit-Paths: stable/12/tools/tools/netmap
X-SVN-Commit-Revision: 344917
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6113F6A095
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 08:26:08 -0000

Author: vmaffione
Date: Fri Mar  8 08:26:06 2019
New Revision: 344917
URL: https://svnweb.freebsd.org/changeset/base/344917

Log:
  MFC r344696:
  
  netmap: pkt-gen: fix bug in send_packets()
  
  The send_packets() function was using ring->cur as index to scan
  the transmit ring. This function may also set ring->cur ahead of
  ring->head, in case no more slots are available. However, the function
  also uses nm_ring_space() which looks at ring->head to check how many
  slots are available. If ring->head and ring->cur are different, this
  results in pkt-gen advancing ring->cur beyond ring->tail.
  
  This patch fixes send_packets() (and similar source locations) to
  use ring->head as a index, rather than using ring->cur.

Modified:
  stable/12/tools/tools/netmap/pkt-gen.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tools/tools/netmap/pkt-gen.c
==============================================================================
--- stable/12/tools/tools/netmap/pkt-gen.c	Fri Mar  8 04:20:33 2019	(r344916)
+++ stable/12/tools/tools/netmap/pkt-gen.c	Fri Mar  8 08:26:06 2019	(r344917)
@@ -626,10 +626,10 @@ parse_nmr_config(const char* conf, struct nmreq *nmr)
 	char *w, *tok;
 	int i, v;
 
-	nmr->nr_tx_rings = nmr->nr_rx_rings = 0;
-	nmr->nr_tx_slots = nmr->nr_rx_slots = 0;
 	if (conf == NULL || ! *conf)
 		return 0;
+	nmr->nr_tx_rings = nmr->nr_rx_rings = 0;
+	nmr->nr_tx_slots = nmr->nr_rx_slots = 0;
 	w = strdup(conf);
 	for (i = 0, tok = strtok(w, ","); tok; i++, tok = strtok(NULL, ",")) {
 		v = atoi(tok);
@@ -1158,22 +1158,22 @@ static int
 send_packets(struct netmap_ring *ring, struct pkt *pkt, void *frame,
 		int size, struct targ *t, u_int count, int options)
 {
-	u_int n, sent, cur = ring->cur;
+	u_int n, sent, head = ring->head;
 	u_int frags = t->frags;
 	u_int frag_size = t->frag_size;
-	struct netmap_slot *slot = &ring->slot[cur];
+	struct netmap_slot *slot = &ring->slot[head];
 
 	n = nm_ring_space(ring);
 #if 0
 	if (options & (OPT_COPY | OPT_PREFETCH) ) {
 		for (sent = 0; sent < count; sent++) {
-			struct netmap_slot *slot = &ring->slot[cur];
+			struct netmap_slot *slot = &ring->slot[head];
 			char *p = NETMAP_BUF(ring, slot->buf_idx);
 
 			__builtin_prefetch(p);
-			cur = nm_ring_next(ring, cur);
+			head = nm_ring_next(ring, head);
 		}
-		cur = ring->cur;
+		head = ring->head;
 	}
 #endif
 	for (sent = 0; sent < count && n >= frags; sent++, n--) {
@@ -1181,7 +1181,7 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 		int buf_changed;
 		u_int tosend = size;
 
-		slot = &ring->slot[cur];
+		slot = &ring->slot[head];
 		p = NETMAP_BUF(ring, slot->buf_idx);
 		buf_changed = slot->flags & NS_BUF_CHANGED;
 
@@ -1200,11 +1200,11 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 				slot->len = frag_size;
 				slot->flags = NS_MOREFRAG;
 				if (options & OPT_DUMP)
-					dump_payload(fp, frag_size, ring, cur);
+					dump_payload(fp, frag_size, ring, head);
 				tosend -= frag_size;
 				f += frag_size;
-				cur = nm_ring_next(ring, cur);
-				slot = &ring->slot[cur];
+				head = nm_ring_next(ring, head);
+				slot = &ring->slot[head];
 				fp = NETMAP_BUF(ring, slot->buf_idx);
 			}
 			n -= (frags - 1);
@@ -1223,12 +1223,12 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 		}
 		slot->len = tosend;
 		if (options & OPT_DUMP)
-			dump_payload(p, tosend, ring, cur);
-		cur = nm_ring_next(ring, cur);
+			dump_payload(p, tosend, ring, head);
+		head = nm_ring_next(ring, head);
 	}
 	if (sent) {
 		slot->flags |= NS_REPORT;
-		ring->head = ring->cur = cur;
+		ring->head = ring->cur = head;
 	}
 	if (sent < count) {
 		/* tell netmap that we need more slots */
@@ -1329,7 +1329,7 @@ ping_body(void *data)
 		if (n > 0 && n - sent < limit)
 			limit = n - sent;
 		for (m = 0; (unsigned)m < limit; m++) {
-			slot = &ring->slot[ring->cur];
+			slot = &ring->slot[ring->head];
 			slot->len = size;
 			p = NETMAP_BUF(ring, slot->buf_idx);
 
@@ -1345,7 +1345,7 @@ ping_body(void *data)
 				tp->sec = (uint32_t)ts.tv_sec;
 				tp->nsec = (uint32_t)ts.tv_nsec;
 				sent++;
-				ring->head = ring->cur = nm_ring_next(ring, ring->cur);
+				ring->head = ring->cur = nm_ring_next(ring, ring->head);
 			}
 		}
 		if (m > 0)
@@ -1381,7 +1381,7 @@ ping_body(void *data)
 				struct tstamp *tp;
 				int pos;
 
-				slot = &ring->slot[ring->cur];
+				slot = &ring->slot[ring->head];
 				p = NETMAP_BUF(ring, slot->buf_idx);
 
 				clock_gettime(CLOCK_REALTIME_PRECISE, &now);
@@ -1406,7 +1406,7 @@ ping_body(void *data)
 				pos = msb64(t_cur);
 				buckets[pos]++;
 				/* now store it in a bucket */
-				ring->head = ring->cur = nm_ring_next(ring, ring->cur);
+				ring->head = ring->cur = nm_ring_next(ring, ring->head);
 				rx++;
 			}
 		}
@@ -1486,7 +1486,7 @@ pong_body(void *data)
 		D("understood ponger %llu but don't know how to do it",
 			(unsigned long long)n);
 	while (!targ->cancel && (n == 0 || sent < n)) {
-		uint32_t txcur, txavail;
+		uint32_t txhead, txavail;
 //#define BUSYWAIT
 #ifdef BUSYWAIT
 		ioctl(pfd.fd, NIOCRXSYNC, NULL);
@@ -1499,24 +1499,24 @@ pong_body(void *data)
 		}
 #endif
 		txring = NETMAP_TXRING(nifp, targ->nmd->first_tx_ring);
-		txcur = txring->cur;
+		txhead = txring->head;
 		txavail = nm_ring_space(txring);
 		/* see what we got back */
 		for (i = targ->nmd->first_rx_ring; i <= targ->nmd->last_rx_ring; i++) {
 			rxring = NETMAP_RXRING(nifp, i);
 			while (!nm_ring_empty(rxring)) {
 				uint16_t *spkt, *dpkt;
-				uint32_t cur = rxring->cur;
-				struct netmap_slot *slot = &rxring->slot[cur];
+				uint32_t head = rxring->head;
+				struct netmap_slot *slot = &rxring->slot[head];
 				char *src, *dst;
 				src = NETMAP_BUF(rxring, slot->buf_idx);
 				//D("got pkt %p of size %d", src, slot->len);
-				rxring->head = rxring->cur = nm_ring_next(rxring, cur);
+				rxring->head = rxring->cur = nm_ring_next(rxring, head);
 				rx++;
 				if (txavail == 0)
 					continue;
 				dst = NETMAP_BUF(txring,
-				    txring->slot[txcur].buf_idx);
+				    txring->slot[txhead].buf_idx);
 				/* copy... */
 				dpkt = (uint16_t *)dst;
 				spkt = (uint16_t *)src;
@@ -1528,13 +1528,13 @@ pong_body(void *data)
 				dpkt[3] = spkt[0];
 				dpkt[4] = spkt[1];
 				dpkt[5] = spkt[2];
-				txring->slot[txcur].len = slot->len;
-				txcur = nm_ring_next(txring, txcur);
+				txring->slot[txhead].len = slot->len;
+				txhead = nm_ring_next(txring, txhead);
 				txavail--;
 				sent++;
 			}
 		}
-		txring->head = txring->cur = txcur;
+		txring->head = txring->cur = txhead;
 		targ->ctr.pkts = sent;
 #ifdef BUSYWAIT
 		ioctl(pfd.fd, NIOCTXSYNC, NULL);
@@ -1760,30 +1760,30 @@ receive_pcap(u_char *user, const struct pcap_pkthdr * 
 static int
 receive_packets(struct netmap_ring *ring, u_int limit, int dump, uint64_t *bytes)
 {
-	u_int cur, rx, n;
+	u_int head, rx, n;
 	uint64_t b = 0;
 	u_int complete = 0;
 
 	if (bytes == NULL)
 		bytes = &b;
 
-	cur = ring->cur;
+	head = ring->head;
 	n = nm_ring_space(ring);
 	if (n < limit)
 		limit = n;
 	for (rx = 0; rx < limit; rx++) {
-		struct netmap_slot *slot = &ring->slot[cur];
+		struct netmap_slot *slot = &ring->slot[head];
 		char *p = NETMAP_BUF(ring, slot->buf_idx);
 
 		*bytes += slot->len;
 		if (dump)
-			dump_payload(p, slot->len, ring, cur);
+			dump_payload(p, slot->len, ring, head);
 		if (!(slot->flags & NS_MOREFRAG))
 			complete++;
 
-		cur = nm_ring_next(ring, cur);
+		head = nm_ring_next(ring, head);
 	}
-	ring->head = ring->cur = cur;
+	ring->head = ring->cur = head;
 
 	return (complete);
 }

From owner-svn-src-all@freebsd.org  Fri Mar  8 08:27:34 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 572B315364ED;
 Fri,  8 Mar 2019 08:27:34 +0000 (UTC)
 (envelope-from vmaffione@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 ED44B6A265;
 Fri,  8 Mar 2019 08:27:33 +0000 (UTC)
 (envelope-from vmaffione@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 DFF1428934;
 Fri,  8 Mar 2019 08:27:33 +0000 (UTC)
 (envelope-from vmaffione@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x288RXqe028378;
 Fri, 8 Mar 2019 08:27:33 GMT (envelope-from vmaffione@FreeBSD.org)
Received: (from vmaffione@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x288RXNf028377;
 Fri, 8 Mar 2019 08:27:33 GMT (envelope-from vmaffione@FreeBSD.org)
Message-Id: <201903080827.x288RXNf028377@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: vmaffione set sender to
 vmaffione@FreeBSD.org using -f
From: Vincenzo Maffione <vmaffione@FreeBSD.org>
Date: Fri, 8 Mar 2019 08:27:33 +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: r344918 - stable/11/tools/tools/netmap
X-SVN-Group: stable-11
X-SVN-Commit-Author: vmaffione
X-SVN-Commit-Paths: stable/11/tools/tools/netmap
X-SVN-Commit-Revision: 344918
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: ED44B6A265
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.947,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 08:27:34 -0000

Author: vmaffione
Date: Fri Mar  8 08:27:33 2019
New Revision: 344918
URL: https://svnweb.freebsd.org/changeset/base/344918

Log:
  MFC r344696:
  
  netmap: pkt-gen: fix bug in send_packets()
  
  The send_packets() function was using ring->cur as index to scan
  the transmit ring. This function may also set ring->cur ahead of
  ring->head, in case no more slots are available. However, the function
  also uses nm_ring_space() which looks at ring->head to check how many
  slots are available. If ring->head and ring->cur are different, this
  results in pkt-gen advancing ring->cur beyond ring->tail.
  
  This patch fixes send_packets() (and similar source locations) to
  use ring->head as a index, rather than using ring->cur.

Modified:
  stable/11/tools/tools/netmap/pkt-gen.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/tools/tools/netmap/pkt-gen.c
==============================================================================
--- stable/11/tools/tools/netmap/pkt-gen.c	Fri Mar  8 08:26:06 2019	(r344917)
+++ stable/11/tools/tools/netmap/pkt-gen.c	Fri Mar  8 08:27:33 2019	(r344918)
@@ -626,10 +626,10 @@ parse_nmr_config(const char* conf, struct nmreq *nmr)
 	char *w, *tok;
 	int i, v;
 
-	nmr->nr_tx_rings = nmr->nr_rx_rings = 0;
-	nmr->nr_tx_slots = nmr->nr_rx_slots = 0;
 	if (conf == NULL || ! *conf)
 		return 0;
+	nmr->nr_tx_rings = nmr->nr_rx_rings = 0;
+	nmr->nr_tx_slots = nmr->nr_rx_slots = 0;
 	w = strdup(conf);
 	for (i = 0, tok = strtok(w, ","); tok; i++, tok = strtok(NULL, ",")) {
 		v = atoi(tok);
@@ -1158,22 +1158,22 @@ static int
 send_packets(struct netmap_ring *ring, struct pkt *pkt, void *frame,
 		int size, struct targ *t, u_int count, int options)
 {
-	u_int n, sent, cur = ring->cur;
+	u_int n, sent, head = ring->head;
 	u_int frags = t->frags;
 	u_int frag_size = t->frag_size;
-	struct netmap_slot *slot = &ring->slot[cur];
+	struct netmap_slot *slot = &ring->slot[head];
 
 	n = nm_ring_space(ring);
 #if 0
 	if (options & (OPT_COPY | OPT_PREFETCH) ) {
 		for (sent = 0; sent < count; sent++) {
-			struct netmap_slot *slot = &ring->slot[cur];
+			struct netmap_slot *slot = &ring->slot[head];
 			char *p = NETMAP_BUF(ring, slot->buf_idx);
 
 			__builtin_prefetch(p);
-			cur = nm_ring_next(ring, cur);
+			head = nm_ring_next(ring, head);
 		}
-		cur = ring->cur;
+		head = ring->head;
 	}
 #endif
 	for (sent = 0; sent < count && n >= frags; sent++, n--) {
@@ -1181,7 +1181,7 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 		int buf_changed;
 		u_int tosend = size;
 
-		slot = &ring->slot[cur];
+		slot = &ring->slot[head];
 		p = NETMAP_BUF(ring, slot->buf_idx);
 		buf_changed = slot->flags & NS_BUF_CHANGED;
 
@@ -1200,11 +1200,11 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 				slot->len = frag_size;
 				slot->flags = NS_MOREFRAG;
 				if (options & OPT_DUMP)
-					dump_payload(fp, frag_size, ring, cur);
+					dump_payload(fp, frag_size, ring, head);
 				tosend -= frag_size;
 				f += frag_size;
-				cur = nm_ring_next(ring, cur);
-				slot = &ring->slot[cur];
+				head = nm_ring_next(ring, head);
+				slot = &ring->slot[head];
 				fp = NETMAP_BUF(ring, slot->buf_idx);
 			}
 			n -= (frags - 1);
@@ -1223,12 +1223,12 @@ send_packets(struct netmap_ring *ring, struct pkt *pkt
 		}
 		slot->len = tosend;
 		if (options & OPT_DUMP)
-			dump_payload(p, tosend, ring, cur);
-		cur = nm_ring_next(ring, cur);
+			dump_payload(p, tosend, ring, head);
+		head = nm_ring_next(ring, head);
 	}
 	if (sent) {
 		slot->flags |= NS_REPORT;
-		ring->head = ring->cur = cur;
+		ring->head = ring->cur = head;
 	}
 	if (sent < count) {
 		/* tell netmap that we need more slots */
@@ -1329,7 +1329,7 @@ ping_body(void *data)
 		if (n > 0 && n - sent < limit)
 			limit = n - sent;
 		for (m = 0; (unsigned)m < limit; m++) {
-			slot = &ring->slot[ring->cur];
+			slot = &ring->slot[ring->head];
 			slot->len = size;
 			p = NETMAP_BUF(ring, slot->buf_idx);
 
@@ -1345,7 +1345,7 @@ ping_body(void *data)
 				tp->sec = (uint32_t)ts.tv_sec;
 				tp->nsec = (uint32_t)ts.tv_nsec;
 				sent++;
-				ring->head = ring->cur = nm_ring_next(ring, ring->cur);
+				ring->head = ring->cur = nm_ring_next(ring, ring->head);
 			}
 		}
 		if (m > 0)
@@ -1381,7 +1381,7 @@ ping_body(void *data)
 				struct tstamp *tp;
 				int pos;
 
-				slot = &ring->slot[ring->cur];
+				slot = &ring->slot[ring->head];
 				p = NETMAP_BUF(ring, slot->buf_idx);
 
 				clock_gettime(CLOCK_REALTIME_PRECISE, &now);
@@ -1406,7 +1406,7 @@ ping_body(void *data)
 				pos = msb64(t_cur);
 				buckets[pos]++;
 				/* now store it in a bucket */
-				ring->head = ring->cur = nm_ring_next(ring, ring->cur);
+				ring->head = ring->cur = nm_ring_next(ring, ring->head);
 				rx++;
 			}
 		}
@@ -1486,7 +1486,7 @@ pong_body(void *data)
 		D("understood ponger %llu but don't know how to do it",
 			(unsigned long long)n);
 	while (!targ->cancel && (n == 0 || sent < n)) {
-		uint32_t txcur, txavail;
+		uint32_t txhead, txavail;
 //#define BUSYWAIT
 #ifdef BUSYWAIT
 		ioctl(pfd.fd, NIOCRXSYNC, NULL);
@@ -1499,24 +1499,24 @@ pong_body(void *data)
 		}
 #endif
 		txring = NETMAP_TXRING(nifp, targ->nmd->first_tx_ring);
-		txcur = txring->cur;
+		txhead = txring->head;
 		txavail = nm_ring_space(txring);
 		/* see what we got back */
 		for (i = targ->nmd->first_rx_ring; i <= targ->nmd->last_rx_ring; i++) {
 			rxring = NETMAP_RXRING(nifp, i);
 			while (!nm_ring_empty(rxring)) {
 				uint16_t *spkt, *dpkt;
-				uint32_t cur = rxring->cur;
-				struct netmap_slot *slot = &rxring->slot[cur];
+				uint32_t head = rxring->head;
+				struct netmap_slot *slot = &rxring->slot[head];
 				char *src, *dst;
 				src = NETMAP_BUF(rxring, slot->buf_idx);
 				//D("got pkt %p of size %d", src, slot->len);
-				rxring->head = rxring->cur = nm_ring_next(rxring, cur);
+				rxring->head = rxring->cur = nm_ring_next(rxring, head);
 				rx++;
 				if (txavail == 0)
 					continue;
 				dst = NETMAP_BUF(txring,
-				    txring->slot[txcur].buf_idx);
+				    txring->slot[txhead].buf_idx);
 				/* copy... */
 				dpkt = (uint16_t *)dst;
 				spkt = (uint16_t *)src;
@@ -1528,13 +1528,13 @@ pong_body(void *data)
 				dpkt[3] = spkt[0];
 				dpkt[4] = spkt[1];
 				dpkt[5] = spkt[2];
-				txring->slot[txcur].len = slot->len;
-				txcur = nm_ring_next(txring, txcur);
+				txring->slot[txhead].len = slot->len;
+				txhead = nm_ring_next(txring, txhead);
 				txavail--;
 				sent++;
 			}
 		}
-		txring->head = txring->cur = txcur;
+		txring->head = txring->cur = txhead;
 		targ->ctr.pkts = sent;
 #ifdef BUSYWAIT
 		ioctl(pfd.fd, NIOCTXSYNC, NULL);
@@ -1760,30 +1760,30 @@ receive_pcap(u_char *user, const struct pcap_pkthdr * 
 static int
 receive_packets(struct netmap_ring *ring, u_int limit, int dump, uint64_t *bytes)
 {
-	u_int cur, rx, n;
+	u_int head, rx, n;
 	uint64_t b = 0;
 	u_int complete = 0;
 
 	if (bytes == NULL)
 		bytes = &b;
 
-	cur = ring->cur;
+	head = ring->head;
 	n = nm_ring_space(ring);
 	if (n < limit)
 		limit = n;
 	for (rx = 0; rx < limit; rx++) {
-		struct netmap_slot *slot = &ring->slot[cur];
+		struct netmap_slot *slot = &ring->slot[head];
 		char *p = NETMAP_BUF(ring, slot->buf_idx);
 
 		*bytes += slot->len;
 		if (dump)
-			dump_payload(p, slot->len, ring, cur);
+			dump_payload(p, slot->len, ring, head);
 		if (!(slot->flags & NS_MOREFRAG))
 			complete++;
 
-		cur = nm_ring_next(ring, cur);
+		head = nm_ring_next(ring, head);
 	}
-	ring->head = ring->cur = cur;
+	ring->head = ring->cur = head;
 
 	return (complete);
 }

From owner-svn-src-all@freebsd.org  Fri Mar  8 09:16:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 51B4015375D7;
 Fri,  8 Mar 2019 09:16:30 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 EC0256BA1E;
 Fri,  8 Mar 2019 09:16:29 +0000 (UTC)
 (envelope-from hselasky@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 D5F9429197;
 Fri,  8 Mar 2019 09:16:29 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x289GTCH054262;
 Fri, 8 Mar 2019 09:16:29 GMT (envelope-from hselasky@FreeBSD.org)
Received: (from hselasky@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x289GTT5054261;
 Fri, 8 Mar 2019 09:16:29 GMT (envelope-from hselasky@FreeBSD.org)
Message-Id: <201903080916.x289GTT5054261@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: hselasky set sender to
 hselasky@FreeBSD.org using -f
From: Hans Petter Selasky <hselasky@FreeBSD.org>
Date: Fri, 8 Mar 2019 09:16:29 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344919 - head/sys/dev/mlx4/mlx4_en
X-SVN-Group: head
X-SVN-Commit-Author: hselasky
X-SVN-Commit-Paths: head/sys/dev/mlx4/mlx4_en
X-SVN-Commit-Revision: 344919
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: EC0256BA1E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 09:16:30 -0000

Author: hselasky
Date: Fri Mar  8 09:16:29 2019
New Revision: 344919
URL: https://svnweb.freebsd.org/changeset/base/344919

Log:
  Don't hold state lock while detaching network device instance in mlx4en(4).
  
  It can happen during shutdown that the lock will recurse when the mlx4en(4)
  instance is part of a lagg interface. Call ether_ifdetach() unlocked.
  
  Backtrace:
  panic(): _sx_xlock_hard: recursed on non-recursive sx &mdev->state_lock
  _sx_xlock_hard()
  _sx_xlock()
  mlx4_en_ioctl()
  if_setlladdr()
  lagg_port_destroy()
  lagg_port_ifdetach()
  if_detach()
  mlx4_en_destroy_netdev()
  mlx4_en_remove()
  mlx4_remove_device()
  mlx4_unregister_device()
  mlx4_unload_one()
  mlx4_shutdown()
  linux_pci_shutdown()
  bus_generic_shutdown()
  
  MFC after:		1 week
  Sponsored by:		Mellanox Technologies

Modified:
  head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c

Modified: head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c
==============================================================================
--- head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c	Fri Mar  8 08:27:33 2019	(r344918)
+++ head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c	Fri Mar  8 09:16:29 2019	(r344919)
@@ -1779,11 +1779,8 @@ void mlx4_en_destroy_netdev(struct net_device *dev)
 		EVENTHANDLER_DEREGISTER(vlan_unconfig, priv->vlan_detach);
 
 	/* Unregister device - this will close the port if it was up */
-	if (priv->registered) {
-		mutex_lock(&mdev->state_lock);
+	if (priv->registered)
 		ether_ifdetach(dev);
-		mutex_unlock(&mdev->state_lock);
-	}
 
 	mutex_lock(&mdev->state_lock);
 	mlx4_en_stop_port(dev);

From owner-svn-src-all@freebsd.org  Fri Mar  8 09:18:30 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2663E1537712;
 Fri,  8 Mar 2019 09:18:30 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 BCFDA6BBDF;
 Fri,  8 Mar 2019 09:18:29 +0000 (UTC)
 (envelope-from hselasky@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 AC29D2919A;
 Fri,  8 Mar 2019 09:18:29 +0000 (UTC)
 (envelope-from hselasky@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x289ITOt054383;
 Fri, 8 Mar 2019 09:18:29 GMT (envelope-from hselasky@FreeBSD.org)
Received: (from hselasky@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x289ITVg054382;
 Fri, 8 Mar 2019 09:18:29 GMT (envelope-from hselasky@FreeBSD.org)
Message-Id: <201903080918.x289ITVg054382@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: hselasky set sender to
 hselasky@FreeBSD.org using -f
From: Hans Petter Selasky <hselasky@FreeBSD.org>
Date: Fri, 8 Mar 2019 09:18:29 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344920 - head/sys/dev/mlx4/mlx4_en
X-SVN-Group: head
X-SVN-Commit-Author: hselasky
X-SVN-Commit-Paths: head/sys/dev/mlx4/mlx4_en
X-SVN-Commit-Revision: 344920
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BCFDA6BBDF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 09:18:30 -0000

Author: hselasky
Date: Fri Mar  8 09:18:29 2019
New Revision: 344920
URL: https://svnweb.freebsd.org/changeset/base/344920

Log:
  Teardown ifnet after stopping port in the mlx4en(4) driver.
  
  mlx4_en_stop_port() calls mlx4_en_put_qp() which can refer the link level
  address of the network interface, which in turn will be freed by the
  network interface detach function. Make sure the port is stopped
  before detaching the network interface.
  
  MFC after:		1 week
  Sponsored by:		Mellanox Technologies

Modified:
  head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c

Modified: head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c
==============================================================================
--- head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c	Fri Mar  8 09:16:29 2019	(r344919)
+++ head/sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c	Fri Mar  8 09:18:29 2019	(r344920)
@@ -1778,13 +1778,13 @@ void mlx4_en_destroy_netdev(struct net_device *dev)
 	if (priv->vlan_detach != NULL)
 		EVENTHANDLER_DEREGISTER(vlan_unconfig, priv->vlan_detach);
 
-	/* Unregister device - this will close the port if it was up */
-	if (priv->registered)
-		ether_ifdetach(dev);
-
 	mutex_lock(&mdev->state_lock);
 	mlx4_en_stop_port(dev);
 	mutex_unlock(&mdev->state_lock);
+
+	/* Unregister device - this will close the port if it was up */
+	if (priv->registered)
+		ether_ifdetach(dev);
 
 	if (priv->allocated)
 		mlx4_free_hwq_res(mdev->dev, &priv->res, MLX4_EN_PAGE_SIZE);

From owner-svn-src-all@freebsd.org  Fri Mar  8 09:33:17 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 15D711537BF7;
 Fri,  8 Mar 2019 09:33:17 +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)
 server-signature RSA-PSS (4096 bits)
 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 A8A4D6C3DF;
 Fri,  8 Mar 2019 09:33:16 +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 96946294F8;
 Fri,  8 Mar 2019 09:33:16 +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 x289XGdD064746;
 Fri, 8 Mar 2019 09:33:16 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x289XGrm064745;
 Fri, 8 Mar 2019 09:33:16 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903080933.x289XGrm064745@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Fri, 8 Mar 2019 09:33:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344921 - head/sys/netpfil/pf
X-SVN-Group: head
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: head/sys/netpfil/pf
X-SVN-Commit-Revision: 344921
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A8A4D6C3DF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.971,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 09:33:17 -0000

Author: kp
Date: Fri Mar  8 09:33:16 2019
New Revision: 344921
URL: https://svnweb.freebsd.org/changeset/base/344921

Log:
  pf: Fix DIOCGETSRCNODES
  
  r343295 broke DIOCGETSRCNODES by failing to reset 'nr' after counting the
  number of source tracking nodes.
  This meant that we never copied the information to userspace, leading to '? ->
  ?' output from pfctl.
  
  PR:		236368
  MFC after:	1 week

Modified:
  head/sys/netpfil/pf/pf_ioctl.c

Modified: head/sys/netpfil/pf/pf_ioctl.c
==============================================================================
--- head/sys/netpfil/pf/pf_ioctl.c	Fri Mar  8 09:18:29 2019	(r344920)
+++ head/sys/netpfil/pf/pf_ioctl.c	Fri Mar  8 09:33:16 2019	(r344921)
@@ -3754,6 +3754,8 @@ DIOCCHANGEADDR_error:
 			break;
 		}
 
+		nr = 0;
+
 		p = pstore = malloc(psn->psn_len, M_TEMP, M_WAITOK);
 		for (i = 0, sh = V_pf_srchash; i <= pf_srchashmask;
 		    i++, sh++) {

From owner-svn-src-all@freebsd.org  Fri Mar  8 10:03:17 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1ED871538848;
 Fri,  8 Mar 2019 10:03:17 +0000 (UTC)
 (envelope-from wosch@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B6F586D50E;
 Fri,  8 Mar 2019 10:03:16 +0000 (UTC)
 (envelope-from wosch@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 AADBE29A4E;
 Fri,  8 Mar 2019 10:03:16 +0000 (UTC)
 (envelope-from wosch@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28A3GaO080258;
 Fri, 8 Mar 2019 10:03:16 GMT (envelope-from wosch@FreeBSD.org)
Received: (from wosch@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28A3GqS080257;
 Fri, 8 Mar 2019 10:03:16 GMT (envelope-from wosch@FreeBSD.org)
Message-Id: <201903081003.x28A3GqS080257@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: wosch set sender to
 wosch@FreeBSD.org using -f
From: Wolfram Schneider <wosch@FreeBSD.org>
Date: Fri, 8 Mar 2019 10:03:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344922 - head/sbin/fsck
X-SVN-Group: head
X-SVN-Commit-Author: wosch
X-SVN-Commit-Paths: head/sbin/fsck
X-SVN-Commit-Revision: 344922
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B6F586D50E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 10:03:17 -0000

Author: wosch
Date: Fri Mar  8 10:03:16 2019
New Revision: 344922
URL: https://svnweb.freebsd.org/changeset/base/344922

Log:
  explain ``fsck -f'' more in detail
  
  PR:	223491
  Approved by: mckusick, 0mp, imp
  Differential Revision:	https://reviews.freebsd.org/D19437

Modified:
  head/sbin/fsck/fsck.8

Modified: head/sbin/fsck/fsck.8
==============================================================================
--- head/sbin/fsck/fsck.8	Fri Mar  8 09:33:16 2019	(r344921)
+++ head/sbin/fsck/fsck.8	Fri Mar  8 10:03:16 2019	(r344922)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd October 5, 2016
+.Dd March 5, 2019
 .Dt FSCK 8
 .Os
 .Sh NAME
@@ -142,8 +142,12 @@ only if
 .Nm
 is compiled to support it.
 .It Fl f
-Force checking of file systems, even when they are marked clean (for file systems
-that support this).
+Force checking of file systems.
+Running 
+.Dq Li fsck -f
+ignores the journal and does a full
+consistency check of the disk so will find and fix the errors about which the
+journal is unaware.
 .It Fl n
 Causes
 .Nm

From owner-svn-src-all@freebsd.org  Fri Mar  8 15:48:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FFF4150E33A;
 Fri,  8 Mar 2019 15:48:20 +0000 (UTC)
 (envelope-from ngie@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 DC2DF8061B;
 Fri,  8 Mar 2019 15:48:19 +0000 (UTC)
 (envelope-from ngie@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 CE33E2D42B;
 Fri,  8 Mar 2019 15:48:19 +0000 (UTC)
 (envelope-from ngie@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28FmJv0057680;
 Fri, 8 Mar 2019 15:48:19 GMT (envelope-from ngie@FreeBSD.org)
Received: (from ngie@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28FmJ8Z057679;
 Fri, 8 Mar 2019 15:48:19 GMT (envelope-from ngie@FreeBSD.org)
Message-Id: <201903081548.x28FmJ8Z057679@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: ngie set sender to
 ngie@FreeBSD.org using -f
From: Enji Cooper <ngie@FreeBSD.org>
Date: Fri, 8 Mar 2019 15:48:19 +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: r344923 - stable/12/share/mk
X-SVN-Group: stable-12
X-SVN-Commit-Author: ngie
X-SVN-Commit-Paths: stable/12/share/mk
X-SVN-Commit-Revision: 344923
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DC2DF8061B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.952,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 15:48:20 -0000

Author: ngie
Date: Fri Mar  8 15:48:19 2019
New Revision: 344923
URL: https://svnweb.freebsd.org/changeset/base/344923

Log:
  MFC r343845:
  
  Clean up all directories created by `make hier`
  
  The logic I introduced in r322511 unfortunately left chflags schg'ed
  directories behind created by `make hier` (in the stock /etc/mtree
  files, this is limited to /var/empty).
  
  The proposed change calls `chflags -R 0` and `rm -Rf ...` to clean all
  of the directories that could not be removed by `${MAKE} clean`.
  `${MAKE} clean` in bsd.obj.mk calls `cleandir`/`cleanobj`, which handles
  the first directory tree walk/removal.
  
  Approved by:	emaste (mentor)
  Differential Revision: https://reviews.freebsd.org/D19174

Modified:
  stable/12/share/mk/suite.test.mk
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/share/mk/suite.test.mk
==============================================================================
--- stable/12/share/mk/suite.test.mk	Fri Mar  8 10:03:16 2019	(r344922)
+++ stable/12/share/mk/suite.test.mk	Fri Mar  8 15:48:19 2019	(r344923)
@@ -120,5 +120,7 @@ beforecheck:
 #       etc.
 aftercheck:
 	@cd ${.CURDIR} && ${MAKE} clean
+	@chflags -R 0 "${DESTDIR}"
+	@rm -Rf "${DESTDIR}"
 
 .endif

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:16:20 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97F741524E17;
 Fri,  8 Mar 2019 18:16:20 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 1E7AB853BD;
 Fri,  8 Mar 2019 18:16:20 +0000 (UTC)
 (envelope-from tuexen@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 12B4E2EDCF;
 Fri,  8 Mar 2019 18:16:20 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28IGJUW037459;
 Fri, 8 Mar 2019 18:16:19 GMT (envelope-from tuexen@FreeBSD.org)
Received: (from tuexen@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28IGJVF037458;
 Fri, 8 Mar 2019 18:16:19 GMT (envelope-from tuexen@FreeBSD.org)
Message-Id: <201903081816.x28IGJVF037458@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: tuexen set sender to
 tuexen@FreeBSD.org using -f
From: Michael Tuexen <tuexen@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:16:19 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344924 - head/sys/netinet
X-SVN-Group: head
X-SVN-Commit-Author: tuexen
X-SVN-Commit-Paths: head/sys/netinet
X-SVN-Commit-Revision: 344924
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1E7AB853BD
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.97)[-0.973,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:16:20 -0000

Author: tuexen
Date: Fri Mar  8 18:16:19 2019
New Revision: 344924
URL: https://svnweb.freebsd.org/changeset/base/344924

Log:
  Some cleanup and consistency improvements.
  
  MFC after:		3 days

Modified:
  head/sys/netinet/sctp_ss_functions.c

Modified: head/sys/netinet/sctp_ss_functions.c
==============================================================================
--- head/sys/netinet/sctp_ss_functions.c	Fri Mar  8 15:48:19 2019	(r344923)
+++ head/sys/netinet/sctp_ss_functions.c	Fri Mar  8 18:16:19 2019	(r344924)
@@ -54,6 +54,9 @@ sctp_ss_default_init(struct sctp_tcb *stcb, struct sct
 {
 	uint16_t i;
 
+	if (holds_lock == 0) {
+		SCTP_TCB_SEND_LOCK(stcb);
+	}
 	asoc->ss_data.locked_on_sending = NULL;
 	asoc->ss_data.last_out_stream = NULL;
 	TAILQ_INIT(&asoc->ss_data.out.wheel);
@@ -65,8 +68,11 @@ sctp_ss_default_init(struct sctp_tcb *stcb, struct sct
 	for (i = 0; i < stcb->asoc.streamoutcnt; i++) {
 		stcb->asoc.ss_functions.sctp_ss_add_to_stream(stcb, &stcb->asoc,
 		    &stcb->asoc.strmout[i],
-		    NULL, holds_lock);
+		    NULL, 1);
 	}
+	if (holds_lock == 0) {
+		SCTP_TCB_SEND_UNLOCK(stcb);
+	}
 	return;
 }
 
@@ -396,12 +402,13 @@ sctp_ss_prio_clear(struct sctp_tcb *stcb, struct sctp_
 		SCTP_TCB_SEND_LOCK(stcb);
 	}
 	while (!TAILQ_EMPTY(&asoc->ss_data.out.wheel)) {
-		struct sctp_stream_out *strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
+		struct sctp_stream_out *strq;
 
+		strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
 		if (clear_values) {
 			strq->ss_params.prio.priority = 0;
 		}
-		TAILQ_REMOVE(&asoc->ss_data.out.wheel, TAILQ_FIRST(&asoc->ss_data.out.wheel), ss_params.prio.next_spoke);
+		TAILQ_REMOVE(&asoc->ss_data.out.wheel, strq, ss_params.prio.next_spoke);
 		strq->ss_params.prio.next_spoke.tqe_next = NULL;
 		strq->ss_params.prio.next_spoke.tqe_prev = NULL;
 
@@ -586,12 +593,13 @@ sctp_ss_fb_clear(struct sctp_tcb *stcb, struct sctp_as
 		SCTP_TCB_SEND_LOCK(stcb);
 	}
 	while (!TAILQ_EMPTY(&asoc->ss_data.out.wheel)) {
-		struct sctp_stream_out *strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
+		struct sctp_stream_out *strq;
 
+		strq = TAILQ_FIRST(&asoc->ss_data.out.wheel);
 		if (clear_values) {
 			strq->ss_params.fb.rounds = -1;
 		}
-		TAILQ_REMOVE(&asoc->ss_data.out.wheel, TAILQ_FIRST(&asoc->ss_data.out.wheel), ss_params.fb.next_spoke);
+		TAILQ_REMOVE(&asoc->ss_data.out.wheel, strq, ss_params.fb.next_spoke);
 		strq->ss_params.fb.next_spoke.tqe_next = NULL;
 		strq->ss_params.fb.next_spoke.tqe_prev = NULL;
 	}
@@ -764,6 +772,9 @@ sctp_ss_fcfs_init(struct sctp_tcb *stcb, struct sctp_a
 	struct sctp_stream_queue_pending *sp;
 	uint16_t i;
 
+	if (holds_lock == 0) {
+		SCTP_TCB_SEND_LOCK(stcb);
+	}
 	TAILQ_INIT(&asoc->ss_data.out.list);
 	/*
 	 * If there is data in the stream queues already, the scheduler of
@@ -781,11 +792,14 @@ sctp_ss_fcfs_init(struct sctp_tcb *stcb, struct sctp_a
 				x++;
 			}
 			if (sp != NULL) {
-				sctp_ss_fcfs_add(stcb, &stcb->asoc, &stcb->asoc.strmout[i], sp, holds_lock);
+				sctp_ss_fcfs_add(stcb, &stcb->asoc, &stcb->asoc.strmout[i], sp, 1);
 				add_more = 1;
 			}
 		}
 		n++;
+	}
+	if (holds_lock == 0) {
+		SCTP_TCB_SEND_UNLOCK(stcb);
 	}
 	return;
 }

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:17:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0457A1524EC3;
 Fri,  8 Mar 2019 18:17:58 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 A08218553C;
 Fri,  8 Mar 2019 18:17:57 +0000 (UTC)
 (envelope-from tuexen@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 92CF62EDD4;
 Fri,  8 Mar 2019 18:17:57 +0000 (UTC)
 (envelope-from tuexen@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28IHvs0037561;
 Fri, 8 Mar 2019 18:17:57 GMT (envelope-from tuexen@FreeBSD.org)
Received: (from tuexen@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28IHvrJ037560;
 Fri, 8 Mar 2019 18:17:57 GMT (envelope-from tuexen@FreeBSD.org)
Message-Id: <201903081817.x28IHvrJ037560@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: tuexen set sender to
 tuexen@FreeBSD.org using -f
From: Michael Tuexen <tuexen@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:17:57 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344925 - head/sys/netinet
X-SVN-Group: head
X-SVN-Commit-Author: tuexen
X-SVN-Commit-Paths: head/sys/netinet
X-SVN-Commit-Revision: 344925
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: A08218553C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.972,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:17:58 -0000

Author: tuexen
Date: Fri Mar  8 18:17:57 2019
New Revision: 344925
URL: https://svnweb.freebsd.org/changeset/base/344925

Log:
  Fix locking bug.
  
  MFC after:		3 days

Modified:
  head/sys/netinet/sctp_usrreq.c

Modified: head/sys/netinet/sctp_usrreq.c
==============================================================================
--- head/sys/netinet/sctp_usrreq.c	Fri Mar  8 18:16:19 2019	(r344924)
+++ head/sys/netinet/sctp_usrreq.c	Fri Mar  8 18:17:57 2019	(r344925)
@@ -4069,10 +4069,12 @@ sctp_setopt(struct socket *so, int optname, void *optv
 			}
 			SCTP_FIND_STCB(inp, stcb, av->assoc_id);
 			if (stcb) {
+				SCTP_TCB_SEND_LOCK(stcb);
 				stcb->asoc.ss_functions.sctp_ss_clear(stcb, &stcb->asoc, 1, 1);
 				stcb->asoc.ss_functions = sctp_ss_functions[av->assoc_value];
 				stcb->asoc.stream_scheduling_module = av->assoc_value;
 				stcb->asoc.ss_functions.sctp_ss_init(stcb, &stcb->asoc, 1);
+				SCTP_TCB_SEND_UNLOCK(stcb);
 				SCTP_TCB_UNLOCK(stcb);
 			} else {
 				if ((inp->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) ||
@@ -4088,10 +4090,12 @@ sctp_setopt(struct socket *so, int optname, void *optv
 					SCTP_INP_RLOCK(inp);
 					LIST_FOREACH(stcb, &inp->sctp_asoc_list, sctp_tcblist) {
 						SCTP_TCB_LOCK(stcb);
+						SCTP_TCB_SEND_LOCK(stcb);
 						stcb->asoc.ss_functions.sctp_ss_clear(stcb, &stcb->asoc, 1, 1);
 						stcb->asoc.ss_functions = sctp_ss_functions[av->assoc_value];
 						stcb->asoc.stream_scheduling_module = av->assoc_value;
 						stcb->asoc.ss_functions.sctp_ss_init(stcb, &stcb->asoc, 1);
+						SCTP_TCB_SEND_UNLOCK(stcb);
 						SCTP_TCB_UNLOCK(stcb);
 					}
 					SCTP_INP_RUNLOCK(inp);

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:49:28 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A8C551525C21;
 Fri,  8 Mar 2019 18:49:28 +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)
 server-signature RSA-PSS (4096 bits)
 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 501A686606;
 Fri,  8 Mar 2019 18:49:28 +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 458B52F2EE;
 Fri,  8 Mar 2019 18:49:28 +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 x28InSLq053432;
 Fri, 8 Mar 2019 18:49:28 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28InSMV053431;
 Fri, 8 Mar 2019 18:49:28 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903081849.x28InSMV053431@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:49:28 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344926 -
 head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Commit-Revision: 344926
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 501A686606
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:49:28 -0000

Author: mav
Date: Fri Mar  8 18:49:27 2019
New Revision: 344926
URL: https://svnweb.freebsd.org/changeset/base/344926

Log:
  MFV/ZoL: Fix zfs_vdev_aggregation_limit bounds checking
  
  Update the bounds checking for zfs_vdev_aggregation_limit so that
  it has a floor of zero and a maximum value of the supported block
  size for the pool.
  
  Additionally add an early return when zfs_vdev_aggregation_limit
  equals zero to disable aggregation.  For very fast solid state or
  memory devices it may be more expensive to perform the aggregation
  than to issue the IO immediately.
  
  Author: Brian Behlendorf <behlendorf1@llnl.gov>
  zfsonlinux/zfs@a58df6f53687ac6d1dee21f60de41b2552a43201
  
  MFV/ZoL: Cap maximum aggregate IO size
  
  Commit 8542ef8 allowed optional IOs to be aggregated beyond
  the specified aggregation limit.  Since the aggregation limit
  was also used to enforce the maximum block size, setting
  `zfs_vdev_aggregation_limit=16777216` could result in an
  attempt to allocate an ABD larger than 16M.
  
  Author: Brian Behlendorf <behlendorf1@llnl.gov>
  Reviewed by: Matthew Ahrens <mahrens@delphix.com>
  Reviewed-by: George Melikov <mail@gmelikov.ru>
  Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
  Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
  Closes #6259
  Closes #6270
  zfsonlinux/zfs@2d678f779aba26a93314c8ee1142c3985fa25cb6

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 18:17:57 2019	(r344925)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 18:49:27 2019	(r344926)
@@ -673,13 +673,18 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 	zio_link_t *zl = NULL;
 	uint64_t maxgap = 0;
 	uint64_t size;
+	uint64_t limit;
+	int maxblocksize;
 	boolean_t stretch;
 	avl_tree_t *t;
 	enum zio_flag flags;
 
 	ASSERT(MUTEX_HELD(&vq->vq_lock));
 
-	if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE)
+	maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa);
+	limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0);
+
+	if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0)
 		return (NULL);
 
 	first = last = zio;
@@ -710,7 +715,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 	t = vdev_queue_type_tree(vq, zio->io_type);
 	while (t != NULL && (dio = AVL_PREV(t, first)) != NULL &&
 	    (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags &&
-	    IO_SPAN(dio, last) <= zfs_vdev_aggregation_limit &&
+	    IO_SPAN(dio, last) <= limit &&
 	    IO_GAP(dio, first) <= maxgap &&
 	    dio->io_type == zio->io_type) {
 		first = dio;
@@ -734,8 +739,9 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 	 */
 	while ((dio = AVL_NEXT(t, last)) != NULL &&
 	    (dio->io_flags & ZIO_FLAG_AGG_INHERIT) == flags &&
-	    (IO_SPAN(first, dio) <= zfs_vdev_aggregation_limit ||
+	    (IO_SPAN(first, dio) <= limit ||
 	    (dio->io_flags & ZIO_FLAG_OPTIONAL)) &&
+	    IO_SPAN(first, dio) <= maxblocksize &&
 	    IO_GAP(last, dio) <= maxgap &&
 	    dio->io_type == zio->io_type) {
 		last = dio;
@@ -789,7 +795,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 		return (NULL);
 
 	size = IO_SPAN(first, last);
-	ASSERT3U(size, <=, SPA_MAXBLOCKSIZE);
+	ASSERT3U(size, <=, maxblocksize);
 
 	aio = zio_vdev_delegated_io(first->io_vd, first->io_offset,
 	    abd_alloc_for_io(size, B_TRUE), size, first->io_type,

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:53:56 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4AAE71525F95;
 Fri,  8 Mar 2019 18:53:56 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 E0F8886B9A;
 Fri,  8 Mar 2019 18:53:55 +0000 (UTC) (envelope-from jhb@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 D4E482F496;
 Fri,  8 Mar 2019 18:53:55 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Irtcw058161;
 Fri, 8 Mar 2019 18:53:55 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28IrtIt058160;
 Fri, 8 Mar 2019 18:53:55 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081853.x28IrtIt058160@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:53: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: r344927 - in stable: 11 12
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11 12
X-SVN-Commit-Revision: 344927
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: E0F8886B9A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:53:56 -0000

Author: jhb
Date: Fri Mar  8 18:53:54 2019
New Revision: 344927
URL: https://svnweb.freebsd.org/changeset/base/344927

Log:
  MFC 343048:
  Update the note about the need for COMPAT_FREEBSD<n> kernel options.
  
  Rather than mentioning the requirement for 4.x binaries but not
  explaining why (it was assuming an upgrade from 4.x to 5.0-current),
  explain when compat options are needed (for running existing host
  binaries) in a more general way while using a more modern example
  (COMPAT_FREEBSD11 for 11.x binaries).  While here, explicitly mention
  that a GENERIC kernel should always work.

Modified:
  stable/11/UPDATING
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/UPDATING
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/UPDATING
==============================================================================
--- stable/11/UPDATING	Fri Mar  8 18:49:27 2019	(r344926)
+++ stable/11/UPDATING	Fri Mar  8 18:53:54 2019	(r344927)
@@ -1784,12 +1784,13 @@ COMMON ITEMS:
 	can be deleted by "make delete-old-libs", but you have to make
 	sure that no program is using those libraries anymore.
 
-	[8] In order to have a kernel that can run the 4.x binaries needed to
-	do an installworld, you must include the COMPAT_FREEBSD4 option in
-	your kernel.  Failure to do so may leave you with a system that is
-	hard to boot to recover. A similar kernel option COMPAT_FREEBSD5 is
-	required to run the 5.x binaries on more recent kernels.  And so on
-	for COMPAT_FREEBSD6 and COMPAT_FREEBSD7.
+	[8] The new kernel must be able to run existing binaries used by
+	an installworld.  When upgrading across major versions, the new
+	kernel's configuration must include the correct COMPAT_FREEBSD<n>
+	option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x
+	binaries).  Failure to do so may leave you with a system that is
+	hard to boot to recover.  A GENERIC kernel will include suitable
+	compatibility options to run binaries from older branches.
 
 	Make sure that you merge any new devices from GENERIC since the
 	last time you updated your kernel config file.

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:53:56 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DBEC91525F91;
 Fri,  8 Mar 2019 18:53:55 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 7B51786B99;
 Fri,  8 Mar 2019 18:53:55 +0000 (UTC) (envelope-from jhb@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 68C5D2F495;
 Fri,  8 Mar 2019 18:53:55 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Irtwe058155;
 Fri, 8 Mar 2019 18:53:55 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28IrtaD058154;
 Fri, 8 Mar 2019 18:53:55 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081853.x28IrtaD058154@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:53: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: r344927 - in stable: 11 12
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11 12
X-SVN-Commit-Revision: 344927
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 7B51786B99
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:53:56 -0000

Author: jhb
Date: Fri Mar  8 18:53:54 2019
New Revision: 344927
URL: https://svnweb.freebsd.org/changeset/base/344927

Log:
  MFC 343048:
  Update the note about the need for COMPAT_FREEBSD<n> kernel options.
  
  Rather than mentioning the requirement for 4.x binaries but not
  explaining why (it was assuming an upgrade from 4.x to 5.0-current),
  explain when compat options are needed (for running existing host
  binaries) in a more general way while using a more modern example
  (COMPAT_FREEBSD11 for 11.x binaries).  While here, explicitly mention
  that a GENERIC kernel should always work.

Modified:
  stable/12/UPDATING
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/UPDATING
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/UPDATING
==============================================================================
--- stable/12/UPDATING	Fri Mar  8 18:49:27 2019	(r344926)
+++ stable/12/UPDATING	Fri Mar  8 18:53:54 2019	(r344927)
@@ -1867,12 +1867,13 @@ COMMON ITEMS:
 	can be deleted by "make delete-old-libs", but you have to make
 	sure that no program is using those libraries anymore.
 
-	[8] In order to have a kernel that can run the 4.x binaries needed to
-	do an installworld, you must include the COMPAT_FREEBSD4 option in
-	your kernel.  Failure to do so may leave you with a system that is
-	hard to boot to recover. A similar kernel option COMPAT_FREEBSD5 is
-	required to run the 5.x binaries on more recent kernels.  And so on
-	for COMPAT_FREEBSD6 and COMPAT_FREEBSD7.
+	[8] The new kernel must be able to run existing binaries used by
+	an installworld.  When upgrading across major versions, the new
+	kernel's configuration must include the correct COMPAT_FREEBSD<n>
+	option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x
+	binaries).  Failure to do so may leave you with a system that is
+	hard to boot to recover.  A GENERIC kernel will include suitable
+	compatibility options to run binaries from older branches.
 
 	Make sure that you merge any new devices from GENERIC since the
 	last time you updated your kernel config file.

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:58:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68E5E1526162;
 Fri,  8 Mar 2019 18:58:42 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0FF7986F67;
 Fri,  8 Mar 2019 18:58:42 +0000 (UTC) (envelope-from bcr@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 03EC72F49C;
 Fri,  8 Mar 2019 18:58:42 +0000 (UTC) (envelope-from bcr@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Iwfq7058433;
 Fri, 8 Mar 2019 18:58:41 GMT (envelope-from bcr@FreeBSD.org)
Received: (from bcr@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Iwfwm058432;
 Fri, 8 Mar 2019 18:58:41 GMT (envelope-from bcr@FreeBSD.org)
Message-Id: <201903081858.x28Iwfwm058432@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bcr set sender to bcr@FreeBSD.org
 using -f
From: Benedict Reuschling <bcr@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:58:41 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344928 - head/share/misc
X-SVN-Group: head
X-SVN-Commit-Author: bcr
X-SVN-Commit-Paths: head/share/misc
X-SVN-Commit-Revision: 344928
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0FF7986F67
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.943,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:58:42 -0000

Author: bcr (doc committer)
Date: Fri Mar  8 18:58:41 2019
New Revision: 344928
URL: https://svnweb.freebsd.org/changeset/base/344928

Log:
  Update members of doceng in the chart.
  
  Update the members of the doceng team to include ryusuke@ and me.
  Sort and reduce number of line breaks so that our bubble in the
  chart is a bit more compact (similar to portmgr next to it).
  
  Reminded by:    gjb

Modified:
  head/share/misc/organization.dot

Modified: head/share/misc/organization.dot
==============================================================================
--- head/share/misc/organization.dot	Fri Mar  8 18:53:54 2019	(r344927)
+++ head/share/misc/organization.dot	Fri Mar  8 18:58:41 2019	(r344928)
@@ -28,7 +28,7 @@ _misc [label="Miscellaneous Hats"]
 core [label="Core Team\ncore@FreeBSD.org\nallanjude, bcr, brooks,\nimp, hrs, jeff,\njhb, kmoore, seanc"]
 coresecretary [label="Core Team Secretary\ncore-secretary@FreeBSD.org\njrm"]
 doccommitters [label="Doc/www Committers\ndoc-committers@FreeBSD.org"]
-doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\ngjb, blackend,\ngabor, hrs,\nwblock"]
+doceng [label="Documentation Engineering Team\ndoceng@FreeBSD.org\nbcr, gabor, gjb, hrs,\nblackend, ryusuke, wblock"]
 portscommitters [label="Ports Committers\nports-committers@FreeBSD.org"]
 portmgr [label="Port Management Team\nportmgr@FreeBSD.org\nadamw, antoine, bapt, bdrewery\nfeld, mat, rene, swills"]
 portmgrsecretary [label="Port Management Team Secretary\nportmgr-secretary@FreeBSD.org\nrene"]

From owner-svn-src-all@freebsd.org  Fri Mar  8 18:59:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8572315261C7;
 Fri,  8 Mar 2019 18:59:38 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 29C09870DE;
 Fri,  8 Mar 2019 18:59:38 +0000 (UTC) (envelope-from jhb@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 1EC3A2F49D;
 Fri,  8 Mar 2019 18:59:38 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28IxcbO058512;
 Fri, 8 Mar 2019 18:59:38 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Ixce3058511;
 Fri, 8 Mar 2019 18:59:38 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081859.x28Ixce3058511@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 18:59: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: r344929 - stable/12/sys/dev/cxgbe/crypto
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: stable/12/sys/dev/cxgbe/crypto
X-SVN-Commit-Revision: 344929
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 29C09870DE
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 18:59:38 -0000

Author: jhb
Date: Fri Mar  8 18:59:37 2019
New Revision: 344929
URL: https://svnweb.freebsd.org/changeset/base/344929

Log:
  MFC 343056: Reject new sessions if the necessary queues aren't initialized.
  
  ccr reuses the control queue and first rx queue from the first port on
  each adapter.  The driver cannot send requests until those queues are
  initialized.  Refuse to create sessions for now if the queues aren't
  ready.  This is a workaround until cxgbe allocates one or more
  dedicated queues for ccr.

Modified:
  stable/12/sys/dev/cxgbe/crypto/t4_crypto.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/cxgbe/crypto/t4_crypto.c
==============================================================================
--- stable/12/sys/dev/cxgbe/crypto/t4_crypto.c	Fri Mar  8 18:58:41 2019	(r344928)
+++ stable/12/sys/dev/cxgbe/crypto/t4_crypto.c	Fri Mar  8 18:59:37 2019	(r344929)
@@ -1652,12 +1652,6 @@ ccr_attach(device_t dev)
 	struct ccr_softc *sc;
 	int32_t cid;
 
-	/*
-	 * TODO: Crypto requests will panic if the parent device isn't
-	 * initialized so that the queues are up and running.  Need to
-	 * figure out how to handle that correctly, maybe just reject
-	 * requests if the adapter isn't fully initialized?
-	 */
 	sc = device_get_softc(dev);
 	sc->dev = dev;
 	sc->adapter = device_get_softc(device_get_parent(dev));
@@ -2058,6 +2052,16 @@ ccr_newsession(device_t dev, crypto_session_t cses, st
 	}
 
 	sc = device_get_softc(dev);
+
+	/*
+	 * XXX: Don't create a session if the queues aren't
+	 * initialized.  This is racy as the rxq can be destroyed by
+	 * the associated VI detaching.  Eventually ccr should use
+	 * dedicated queues.
+	 */
+	if (sc->rxq->iq.adapter == NULL || sc->txq->adapter == NULL)
+		return (ENXIO);
+	
 	mtx_lock(&sc->lock);
 	if (sc->detaching) {
 		mtx_unlock(&sc->lock);

From owner-svn-src-all@freebsd.org  Fri Mar  8 19:03:29 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1668E152641A;
 Fri,  8 Mar 2019 19:03:29 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 AEE6B875DB;
 Fri,  8 Mar 2019 19:03:28 +0000 (UTC) (envelope-from jhb@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 88A572F641;
 Fri,  8 Mar 2019 19:03:28 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28J3SDj063424;
 Fri, 8 Mar 2019 19:03:28 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28J3Scw063423;
 Fri, 8 Mar 2019 19:03:28 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081903.x28J3Scw063423@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 19:03:28 +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: r344931 - stable/12/sys/dev/cxgbe
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: stable/12/sys/dev/cxgbe
X-SVN-Commit-Revision: 344931
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: AEE6B875DB
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.939,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:03:29 -0000

Author: jhb
Date: Fri Mar  8 19:03:28 2019
New Revision: 344931
URL: https://svnweb.freebsd.org/changeset/base/344931

Log:
  MFC 343456: Fix a few more places to handle ofld tx queues for RATELIMIT.
  
  - Drain offload transmit queues when RATELIMIT is enabled but
    TCP_OFFLOAD is not.
  - Expose the per-VI nofldtxq and first_ofld_txq sysctls when
    RATELIMIT is enabled but TCP_OFFLOAD is not.
  - Clear offload transmit queue stats as part of a 'cxgbetool clearstats'
    request when RATELIMIT is enabled but TCP_OFFLOAD is not.

Modified:
  stable/12/sys/dev/cxgbe/t4_main.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/cxgbe/t4_main.c
==============================================================================
--- stable/12/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:01:31 2019	(r344930)
+++ stable/12/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:03:28 2019	(r344931)
@@ -5389,6 +5389,8 @@ vi_full_uninit(struct vi_info *vi)
 	struct sge_txq *txq;
 #ifdef TCP_OFFLOAD
 	struct sge_ofld_rxq *ofld_rxq;
+#endif
+#if defined(TCP_OFFLOAD) || defined(RATELIMIT)
 	struct sge_wrq *ofld_txq;
 #endif
 
@@ -5404,7 +5406,7 @@ vi_full_uninit(struct vi_info *vi)
 			quiesce_txq(sc, txq);
 		}
 
-#ifdef TCP_OFFLOAD
+#if defined(TCP_OFFLOAD) || defined(RATELIMIT)
 		for_each_ofld_txq(vi, i, ofld_txq) {
 			quiesce_wrq(sc, ofld_txq);
 		}
@@ -6184,15 +6186,9 @@ vi_sysctls(struct vi_info *vi)
 		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "nofldrxq", CTLFLAG_RD,
 		    &vi->nofldrxq, 0,
 		    "# of rx queues for offloaded TCP connections");
-		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "nofldtxq", CTLFLAG_RD,
-		    &vi->nofldtxq, 0,
-		    "# of tx queues for offloaded TCP connections");
 		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "first_ofld_rxq",
 		    CTLFLAG_RD, &vi->first_ofld_rxq, 0,
 		    "index of first TOE rx queue");
-		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "first_ofld_txq",
-		    CTLFLAG_RD, &vi->first_ofld_txq, 0,
-		    "index of first TOE tx queue");
 		SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "holdoff_tmr_idx_ofld",
 		    CTLTYPE_INT | CTLFLAG_RW, vi, 0,
 		    sysctl_holdoff_tmr_idx_ofld, "I",
@@ -6203,6 +6199,16 @@ vi_sysctls(struct vi_info *vi)
 		    "holdoff packet counter index for TOE queues");
 	}
 #endif
+#if defined(TCP_OFFLOAD) || defined(RATELIMIT)
+	if (vi->nofldtxq != 0) {
+		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "nofldtxq", CTLFLAG_RD,
+		    &vi->nofldtxq, 0,
+		    "# of tx queues for TOE/ETHOFLD");
+		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "first_ofld_txq",
+		    CTLFLAG_RD, &vi->first_ofld_txq, 0,
+		    "index of first TOE/ETHOFLD tx queue");
+	}
+#endif
 #ifdef DEV_NETMAP
 	if (vi->nnmrxq != 0) {
 		SYSCTL_ADD_INT(ctx, children, OID_AUTO, "nnmrxq", CTLFLAG_RD,
@@ -9867,7 +9873,7 @@ t4_ioctl(struct cdev *dev, unsigned long cmd, caddr_t 
 					mp_ring_reset_stats(txq->r);
 				}
 
-#ifdef TCP_OFFLOAD
+#if defined(TCP_OFFLOAD) || defined(RATELIMIT)
 				/* nothing to clear for each ofld_rxq */
 
 				for_each_ofld_txq(vi, i, wrq) {

From owner-svn-src-all@freebsd.org  Fri Mar  8 19:07:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DE4161526562;
 Fri,  8 Mar 2019 19:07:42 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 76E8E87800;
 Fri,  8 Mar 2019 19:07:42 +0000 (UTC) (envelope-from jhb@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 68D852F64A;
 Fri,  8 Mar 2019 19:07:42 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28J7gRp063652;
 Fri, 8 Mar 2019 19:07:42 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28J7g6K063651;
 Fri, 8 Mar 2019 19:07:42 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081907.x28J7g6K063651@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 19:07:42 +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: r344932 - stable/12/sys/net
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: stable/12/sys/net
X-SVN-Commit-Revision: 344932
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 76E8E87800
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:07:43 -0000

Author: jhb
Date: Fri Mar  8 19:07:41 2019
New Revision: 344932
URL: https://svnweb.freebsd.org/changeset/base/344932

Log:
  MFC 343620: Don't set IFCAP_TXRTLMT during lagg_clone_create().
  
  lagg_capabilities() will set the capability once interfaces supporting
  the feature are added to the lagg.  Setting it on a lagg without any
  interfaces is pointless as the if_snd_tag_alloc call will always fail
  in that case.

Modified:
  stable/12/sys/net/if_lagg.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/net/if_lagg.c
==============================================================================
--- stable/12/sys/net/if_lagg.c	Fri Mar  8 19:03:28 2019	(r344931)
+++ stable/12/sys/net/if_lagg.c	Fri Mar  8 19:07:41 2019	(r344932)
@@ -514,10 +514,8 @@ lagg_clone_create(struct if_clone *ifc, int unit, cadd
 	ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST | IFF_MULTICAST;
 #ifdef RATELIMIT
 	ifp->if_snd_tag_alloc = lagg_snd_tag_alloc;
-	ifp->if_capenable = ifp->if_capabilities = IFCAP_HWSTATS | IFCAP_TXRTLMT;
-#else
-	ifp->if_capenable = ifp->if_capabilities = IFCAP_HWSTATS;
 #endif
+	ifp->if_capenable = ifp->if_capabilities = IFCAP_HWSTATS;
 
 	/*
 	 * Attach as an ordinary ethernet device, children will be attached

From owner-svn-src-all@freebsd.org  Fri Mar  8 19:20:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6690615268E1;
 Fri,  8 Mar 2019 19:20:47 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 0664287EFD;
 Fri,  8 Mar 2019 19:20:47 +0000 (UTC) (envelope-from jhb@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 E8E032F925;
 Fri,  8 Mar 2019 19:20:46 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28JKku5068949;
 Fri, 8 Mar 2019 19:20:46 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28JKkfm068948;
 Fri, 8 Mar 2019 19:20:46 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081920.x28JKkfm068948@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 19:20: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: r344933 - in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Group: stable-12
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Commit-Revision: 344933
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 0664287EFD
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:20:47 -0000

Author: jhb
Date: Fri Mar  8 19:20:46 2019
New Revision: 344933
URL: https://svnweb.freebsd.org/changeset/base/344933

Log:
  MFC 344671: Don't assume all children of a nexus are ports.
  
  Specifically, ccr(4) devices are also children of cxgbe nexus devices.
  Rather than making assumptions about the child device's softc, walk
  the list of ports from the nexus' softc to determine if a child is a
  port in t4_child_location_str().  This fixes a panic when detaching a
  ccr device.

Modified:
  stable/12/sys/dev/cxgbe/t4_main.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/dev/cxgbe/t4_main.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/dev/cxgbe/t4_main.c
==============================================================================
--- stable/12/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:07:41 2019	(r344932)
+++ stable/12/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:20:46 2019	(r344933)
@@ -1354,10 +1354,19 @@ done:
 static int
 t4_child_location_str(device_t bus, device_t dev, char *buf, size_t buflen)
 {
+	struct adapter *sc;
 	struct port_info *pi;
+	int i;
 
-	pi = device_get_softc(dev);
-	snprintf(buf, buflen, "port=%d", pi->port_id);
+	sc = device_get_softc(bus);
+	buf[0] = '\0';
+	for_each_port(sc, i) {
+		pi = sc->port[i];
+		if (pi != NULL && pi->dev == dev) {
+			snprintf(buf, buflen, "port=%d", pi->port_id);
+			break;
+		}
+	}
 	return (0);
 }
 

From owner-svn-src-all@freebsd.org  Fri Mar  8 19:20:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id AC02C15268E5;
 Fri,  8 Mar 2019 19:20:47 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 5447287F00;
 Fri,  8 Mar 2019 19:20:47 +0000 (UTC) (envelope-from jhb@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 484E62F926;
 Fri,  8 Mar 2019 19:20:47 +0000 (UTC) (envelope-from jhb@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28JKlYV068955;
 Fri, 8 Mar 2019 19:20:47 GMT (envelope-from jhb@FreeBSD.org)
Received: (from jhb@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28JKlFu068954;
 Fri, 8 Mar 2019 19:20:47 GMT (envelope-from jhb@FreeBSD.org)
Message-Id: <201903081920.x28JKlFu068954@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhb set sender to jhb@FreeBSD.org
 using -f
From: John Baldwin <jhb@FreeBSD.org>
Date: Fri, 8 Mar 2019 19:20:47 +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: r344933 - in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Group: stable-11
X-SVN-Commit-Author: jhb
X-SVN-Commit-Paths: in stable: 11/sys/dev/cxgbe 12/sys/dev/cxgbe
X-SVN-Commit-Revision: 344933
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 5447287F00
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.936,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:20:47 -0000

Author: jhb
Date: Fri Mar  8 19:20:46 2019
New Revision: 344933
URL: https://svnweb.freebsd.org/changeset/base/344933

Log:
  MFC 344671: Don't assume all children of a nexus are ports.
  
  Specifically, ccr(4) devices are also children of cxgbe nexus devices.
  Rather than making assumptions about the child device's softc, walk
  the list of ports from the nexus' softc to determine if a child is a
  port in t4_child_location_str().  This fixes a panic when detaching a
  ccr device.

Modified:
  stable/11/sys/dev/cxgbe/t4_main.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/dev/cxgbe/t4_main.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/dev/cxgbe/t4_main.c
==============================================================================
--- stable/11/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:07:41 2019	(r344932)
+++ stable/11/sys/dev/cxgbe/t4_main.c	Fri Mar  8 19:20:46 2019	(r344933)
@@ -1338,10 +1338,19 @@ done:
 static int
 t4_child_location_str(device_t bus, device_t dev, char *buf, size_t buflen)
 {
+	struct adapter *sc;
 	struct port_info *pi;
+	int i;
 
-	pi = device_get_softc(dev);
-	snprintf(buf, buflen, "port=%d", pi->port_id);
+	sc = device_get_softc(bus);
+	buf[0] = '\0';
+	for_each_port(sc, i) {
+		pi = sc->port[i];
+		if (pi != NULL && pi->dev == dev) {
+			snprintf(buf, buflen, "port=%d", pi->port_id);
+			break;
+		}
+	}
 	return (0);
 }
 

From owner-svn-src-all@freebsd.org  Fri Mar  8 19:24:06 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 52DA61526B7C;
 Fri,  8 Mar 2019 19:24:06 +0000 (UTC)
 (envelope-from gallatin@cs.duke.edu)
Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1])
 (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 12A00884E6;
 Fri,  8 Mar 2019 19:24:05 +0000 (UTC)
 (envelope-from gallatin@cs.duke.edu)
Received: from [192.168.200.4] (c-71-56-186-158.hsd1.va.comcast.net
 [71.56.186.158])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested) (Authenticated sender: gallatin)
 by duke.cs.duke.edu (Postfix) with ESMTPSA id 63E842700362;
 Fri,  8 Mar 2019 14:24:03 -0500 (EST)
DMARC-Filter: OpenDMARC Filter v1.3.1 duke.cs.duke.edu 63E842700362
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=cs.duke.edu;
 s=mail0816; t=1552073043;
 bh=bhpt1V5aV/n09uRnzYTrG/EZQv64nyKST/OnBoAsU1k=;
 h=Subject:To:From:Date:From;
 b=ptUTOL1hxtOSKepnjJootEjUiqE76Za5zb/PZMbmokx+wrnDOwLMihCGotAS7zHIq
 TzMsBZiWu9eMrhbPZl9kmXJX0wSVKDj4CRhwCk76p2NvJ39RmFi7uXOlspaOFlJiLo
 40iaqmu6y5eC48CeNc7EBYj3d/Si1iv3V7bQdt3L92qb+mQehRu3qmv6XJsqcep1bP
 IEwDioxLSpZJu5ji7O54KC4TjyLkDrFKpPNDzX2MXnB6OHMOmLEqPBxvb7xT6o4DoJ
 s7EomkL9RXXm7grKsfQyl5VkvKIpeH7zBxMNR6xASlo94EFNGANLXdft/453y4bAcD
 gRYhbugw/8EBg==
Subject: Re: svn commit: r344817 - in head/sys: dev/e1000 net
To: Matthew Macy <mat.macy@gmail.com>, Eric Joyner <erj@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>,
 svn-src-head <svn-src-head@freebsd.org>
References: <201903051912.x25JCqOj068140@repo.freebsd.org>
 <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
From: Andrew Gallatin <gallatin@cs.duke.edu>
Message-ID: <3edbb822-54f1-eb64-537a-279c41a213ca@cs.duke.edu>
Date: Fri, 8 Mar 2019 14:23:55 -0500
User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101
 Thunderbird/60.5.2
MIME-Version: 1.0
In-Reply-To: <CAPrugNoO4YgHZ2T6e0ZYbOLb1B_K0CwDsN3AUDTXC+GViYV6fw@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Rspamd-Queue-Id: 12A00884E6
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=cs.duke.edu header.s=mail0816 header.b=ptUTOL1h;
 dmarc=pass (policy=none) header.from=cs.duke.edu;
 spf=pass (mx1.freebsd.org: domain of gallatin@cs.duke.edu designates
 152.3.140.1 as permitted sender) smtp.mailfrom=gallatin@cs.duke.edu
X-Spamd-Result: default: False [-6.34 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 R_SPF_ALLOW(-0.20)[+ip4:152.3.140.0/23];
 RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; RCPT_COUNT_FIVE(0.00)[5];
 TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[cs.duke.edu:+];
 RCVD_IN_DNSWL_MED(-0.20)[1.140.3.152.list.dnswl.org : 127.0.11.2];
 DMARC_POLICY_ALLOW(-0.50)[cs.duke.edu,none];
 MX_GOOD(-0.01)[cached: mx.oit.duke.edu];
 FREEMAIL_TO(0.00)[gmail.com]; FROM_EQ_ENVFROM(0.00)[];
 MIME_TRACE(0.00)[0:+];
 IP_SCORE(-1.74)[ipnet: 152.3.128.0/17(-4.78), asn: 13371(-3.83), country:
 US(-0.07)]; 
 ASN(0.00)[asn:13371, ipnet:152.3.128.0/17, country:US];
 MID_RHS_MATCH_FROM(0.00)[]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[cs.duke.edu:s=mail0816];
 FROM_HAS_DN(0.00)[]; NEURAL_HAM_SHORT(-0.89)[-0.891,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; TAGGED_RCPT(0.00)[];
 MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:24:06 -0000

On 3/5/19 4:06 PM, Matthew Macy wrote:
> This represents a misunderstanding of how defines are used. This left
> the option open to the user to enable the use of larger than page size
> buffers as it does enable better performance. Over the course of a
> long uptime memory can get too fragmented. However, this left it open
> to the end consumer.
> 
> I'd like to see this reverted with perhaps a better name for the
> define and the addition of an explanatory comment.


I'd strongly prefer that it stay removed.  Since it is not hooked to an 
option, no user is ever going to find it.  This really should have been 
a tuneable (since it is done at ring init time, rather than rx buffer 
alloc time), but nobody cared enough to make it actually usable.

 From brief memories of performance tuning 10G adapters 14 years ago, 
the differences between page-sized and 9k jumbos were minimal even back 
then (1/3 as many mbuf alloc/free, smaller chains).  So I'm not 
convinced that it is worth bringing back in any form.

My general feeling is that the more of this code that we can remove, the 
better.  Iflib is tricky enough that it is already challenging to reason 
about and maintain.  Removing code which is for all intents and purposes 
unreachable and never tested is Good Thing.

Drew





From owner-svn-src-all@freebsd.org  Fri Mar  8 19:38:53 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F1F77152707B;
 Fri,  8 Mar 2019 19:38:52 +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)
 server-signature RSA-PSS (4096 bits)
 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 95E8C88B3B;
 Fri,  8 Mar 2019 19:38:52 +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 8A5672FB57;
 Fri,  8 Mar 2019 19:38:52 +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 x28JcqpH079552;
 Fri, 8 Mar 2019 19:38:52 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28JcqIB079551;
 Fri, 8 Mar 2019 19:38:52 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903081938.x28JcqIB079551@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 19:38:52 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344934 -
 head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
X-SVN-Commit-Revision: 344934
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 95E8C88B3B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 19:38:53 -0000

Author: mav
Date: Fri Mar  8 19:38:52 2019
New Revision: 344934
URL: https://svnweb.freebsd.org/changeset/base/344934

Log:
  Add separate aggregation limit for non-rotating media.
  
  Before sequential scrub patches ZFS never aggregated I/Os above 128KB.
  Sequential scrub bumped that to 1MB, which motivation I understand for
  spinning disks, since it should reduce number of head seeks.  But for
  SSDs it makes much less sense to me, especially on FreeBSD, where due
  to MAXPHYS limitation device will likely still see bunch of 128KB I/Os
  instead of one large.  Having more strict aggregation limit allows to
  avoid allocation of large memory buffer and memcpy to/from it, that is
  a serious problem when bandwidth reaches few GB/s.
  
  MFC after:	1 month
  Sponsored by:	iXsystems, Inc.

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 19:20:46 2019	(r344933)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 19:38:52 2019	(r344934)
@@ -178,6 +178,7 @@ int zfs_vdev_async_write_active_max_dirty_percent = 60
  * they aren't able to help us aggregate at this level.
  */
 int zfs_vdev_aggregation_limit = 1 << 20;
+int zfs_vdev_aggregation_limit_non_rotating = SPA_OLD_MAXBLOCKSIZE;
 int zfs_vdev_read_gap_limit = 32 << 10;
 int zfs_vdev_write_gap_limit = 4 << 10;
 
@@ -262,6 +263,9 @@ ZFS_VDEV_QUEUE_KNOB_MAX(initializing);
 SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit, CTLFLAG_RWTUN,
     &zfs_vdev_aggregation_limit, 0,
     "I/O requests are aggregated up to this size");
+SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, aggregation_limit_non_rotating, CTLFLAG_RWTUN,
+    &zfs_vdev_aggregation_limit_non_rotating, 0,
+    "I/O requests are aggregated up to this size for non-rotating media");
 SYSCTL_INT(_vfs_zfs_vdev, OID_AUTO, read_gap_limit, CTLFLAG_RWTUN,
     &zfs_vdev_read_gap_limit, 0,
     "Acceptable gap between two reads being aggregated");
@@ -682,9 +686,13 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 	ASSERT(MUTEX_HELD(&vq->vq_lock));
 
 	maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa);
-	limit = MAX(MIN(zfs_vdev_aggregation_limit, maxblocksize), 0);
+	if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING)
+		limit = zfs_vdev_aggregation_limit_non_rotating;
+	else
+		limit = zfs_vdev_aggregation_limit;
+	limit = MAX(MIN(limit, maxblocksize), 0);
 
-	if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || limit == 0)
+	if (zio->io_flags & ZIO_FLAG_DONT_AGGREGATE || zio->io_size >= limit)
 		return (NULL);
 
 	first = last = zio;

From owner-svn-src-all@freebsd.org  Fri Mar  8 21:07:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 734A51529130;
 Fri,  8 Mar 2019 21:07: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)
 server-signature RSA-PSS (4096 bits)
 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 1AF648BF35;
 Fri,  8 Mar 2019 21:07: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 0A15EB55;
 Fri,  8 Mar 2019 21:07: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 x28L78JF027030;
 Fri, 8 Mar 2019 21:07:08 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28L78Y6027028;
 Fri, 8 Mar 2019 21:07:08 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903082107.x28L78Y6027028@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Fri, 8 Mar 2019 21:07:08 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344935 - in head: contrib/netbsd-tests/lib/libpthread
 lib/libthr/thread
X-SVN-Group: head
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: in head: contrib/netbsd-tests/lib/libpthread
 lib/libthr/thread
X-SVN-Commit-Revision: 344935
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 1AF648BF35
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.972,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 21:07:09 -0000

Author: markj
Date: Fri Mar  8 21:07:08 2019
New Revision: 344935
URL: https://svnweb.freebsd.org/changeset/base/344935

Log:
  Have pthread_cond_destroy() return EBUSY if the condvar has waiters.
  
  This is not required of a compliant implementation, but it's easy to
  check for and helps improve compatibility with other common
  implementations.  Moreover, it's consistent with our
  pthread_mutex_destroy().
  
  PR:		234805
  Reviewed by:	jhb, kib, ngie
  MFC after:	2 weeks
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D19496

Modified:
  head/contrib/netbsd-tests/lib/libpthread/t_cond.c
  head/lib/libthr/thread/thr_cond.c

Modified: head/contrib/netbsd-tests/lib/libpthread/t_cond.c
==============================================================================
--- head/contrib/netbsd-tests/lib/libpthread/t_cond.c	Fri Mar  8 19:38:52 2019	(r344934)
+++ head/contrib/netbsd-tests/lib/libpthread/t_cond.c	Fri Mar  8 21:07:08 2019	(r344935)
@@ -493,6 +493,51 @@ ATF_TC_BODY(bogus_timedwaits, tc)
 	PTHREAD_REQUIRE(pthread_mutex_unlock(&static_mutex));
 }
 
+#ifdef __FreeBSD__
+static void *
+destroy_busy_threadfunc(void *arg)
+{
+	PTHREAD_REQUIRE(pthread_mutex_lock(&mutex));
+
+	share = 1;
+	PTHREAD_REQUIRE(pthread_cond_broadcast(&cond));
+	PTHREAD_REQUIRE(pthread_cond_wait(&cond, &mutex));
+
+	PTHREAD_REQUIRE(pthread_mutex_unlock(&mutex));
+
+	return NULL;
+}
+
+ATF_TC(destroy_busy);
+ATF_TC_HEAD(destroy_busy, tc)
+{
+	atf_tc_set_md_var(tc, "descr", "Checks non-standard behaviour of "
+	    "returning EBUSY when attempting to destroy an active condvar");
+}
+ATF_TC_BODY(destroy_busy, tc)
+{
+	pthread_t thread;
+
+	PTHREAD_REQUIRE(pthread_mutex_init(&mutex, NULL));
+	PTHREAD_REQUIRE(pthread_cond_init(&cond, NULL));
+	PTHREAD_REQUIRE(pthread_mutex_lock(&mutex));
+	PTHREAD_REQUIRE(pthread_create(&thread, NULL, destroy_busy_threadfunc,
+	    NULL));
+
+	while (share == 0) {
+		PTHREAD_REQUIRE(pthread_cond_wait(&cond, &mutex));
+	}
+
+	PTHREAD_REQUIRE_STATUS(pthread_cond_destroy(&cond), EBUSY);
+	PTHREAD_REQUIRE(pthread_cond_signal(&cond));
+	PTHREAD_REQUIRE(pthread_cond_destroy(&cond));
+
+	PTHREAD_REQUIRE(pthread_mutex_unlock(&mutex));
+	PTHREAD_REQUIRE(pthread_join(thread, NULL));
+	PTHREAD_REQUIRE(pthread_mutex_destroy(&mutex));
+}
+#endif
+
 static void
 unlock(void *arg)
 {
@@ -547,6 +592,49 @@ ATF_TC_BODY(destroy_after_cancel, tc)
 	PTHREAD_REQUIRE(pthread_mutex_destroy(&mutex));
 }
 
+static void *
+destroy_after_signal_threadfunc(void *arg)
+{
+	PTHREAD_REQUIRE(pthread_mutex_lock(&mutex));
+
+	share = 1;
+	PTHREAD_REQUIRE(pthread_cond_broadcast(&cond));
+	PTHREAD_REQUIRE(pthread_cond_wait(&cond, &mutex));
+
+	PTHREAD_REQUIRE(pthread_mutex_unlock(&mutex));
+
+	return NULL;
+}
+
+ATF_TC(destroy_after_signal);
+ATF_TC_HEAD(destroy_after_signal, tc)
+{
+	atf_tc_set_md_var(tc, "descr", "Checks destroying a condition variable "
+	    "immediately after signaling waiters");
+}
+ATF_TC_BODY(destroy_after_signal, tc)
+{
+	pthread_t thread;
+
+	PTHREAD_REQUIRE(pthread_mutex_init(&mutex, NULL));
+	PTHREAD_REQUIRE(pthread_cond_init(&cond, NULL));
+	PTHREAD_REQUIRE(pthread_mutex_lock(&mutex));
+	PTHREAD_REQUIRE(pthread_create(&thread, NULL,
+	    destroy_after_signal_threadfunc, NULL));
+
+	while (share == 0) {
+		PTHREAD_REQUIRE(pthread_cond_wait(&cond, &mutex));
+	}
+
+	PTHREAD_REQUIRE(pthread_cond_signal(&cond));
+	PTHREAD_REQUIRE(pthread_cond_destroy(&cond));
+	PTHREAD_REQUIRE(pthread_mutex_unlock(&mutex));
+
+	PTHREAD_REQUIRE(pthread_join(thread, NULL));
+
+	PTHREAD_REQUIRE(pthread_mutex_destroy(&mutex));
+}
+
 ATF_TC(condattr);
 ATF_TC_HEAD(condattr, tc)
 {
@@ -577,7 +665,11 @@ ATF_TP_ADD_TCS(tp)
 	ATF_TP_ADD_TC(tp, cond_timedwait_race);
 	ATF_TP_ADD_TC(tp, broadcast);
 	ATF_TP_ADD_TC(tp, bogus_timedwaits);
+#ifdef __FreeBSD__
+	ATF_TP_ADD_TC(tp, destroy_busy);
+#endif
 	ATF_TP_ADD_TC(tp, destroy_after_cancel);
+	ATF_TP_ADD_TC(tp, destroy_after_signal);
 	ATF_TP_ADD_TC(tp, condattr);
 
 	return atf_no_error();

Modified: head/lib/libthr/thread/thr_cond.c
==============================================================================
--- head/lib/libthr/thread/thr_cond.c	Fri Mar  8 19:38:52 2019	(r344934)
+++ head/lib/libthr/thread/thr_cond.c	Fri Mar  8 21:07:08 2019	(r344935)
@@ -166,17 +166,26 @@ _pthread_cond_destroy(pthread_cond_t *cond)
 	error = 0;
 	if (*cond == THR_PSHARED_PTR) {
 		cvp = __thr_pshared_offpage(cond, 0);
-		if (cvp != NULL)
-			__thr_pshared_destroy(cond);
-		*cond = THR_COND_DESTROYED;
+		if (cvp != NULL) {
+			if (cvp->kcond.c_has_waiters)
+				error = EBUSY;
+			else
+				__thr_pshared_destroy(cond);
+		}
+		if (error == 0)
+			*cond = THR_COND_DESTROYED;
 	} else if ((cvp = *cond) == THR_COND_INITIALIZER) {
 		/* nothing */
 	} else if (cvp == THR_COND_DESTROYED) {
 		error = EINVAL;
 	} else {
 		cvp = *cond;
-		*cond = THR_COND_DESTROYED;
-		free(cvp);
+		if (cvp->__has_user_waiters || cvp->kcond.c_has_waiters)
+			error = EBUSY;
+		else {
+			*cond = THR_COND_DESTROYED;
+			free(cvp);
+		}
 	}
 	return (error);
 }

From owner-svn-src-all@freebsd.org  Fri Mar  8 21:13:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 88BB715294A3;
 Fri,  8 Mar 2019 21:13:47 +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)
 server-signature RSA-PSS (4096 bits)
 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 2D8458C553;
 Fri,  8 Mar 2019 21:13:47 +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 21B2AD0B;
 Fri,  8 Mar 2019 21:13:47 +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 x28LDlLA032451;
 Fri, 8 Mar 2019 21:13:47 GMT (envelope-from mav@FreeBSD.org)
Received: (from mav@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28LDjvl032442;
 Fri, 8 Mar 2019 21:13:45 GMT (envelope-from mav@FreeBSD.org)
Message-Id: <201903082113.x28LDjvl032442@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org
 using -f
From: Alexander Motin <mav@FreeBSD.org>
Date: Fri, 8 Mar 2019 21:13:45 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344936 - in
 head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: . sys
X-SVN-Group: head
X-SVN-Commit-Author: mav
X-SVN-Commit-Paths: in head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs: .
 sys
X-SVN-Commit-Revision: 344936
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2D8458C553
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.972,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 21:13:47 -0000

Author: mav
Date: Fri Mar  8 21:13:45 2019
New Revision: 344936
URL: https://svnweb.freebsd.org/changeset/base/344936

Log:
  MFV/ZoL: Disable LBA weighting on files and SSDs
  
  The LBA weighting makes sense on rotational media where the outer tracks
  have twice the bandwidth of the inner tracks. However, it is detrimental
  on nonrotational media such as solid state disks, where the only effect
  is to ensure that metaslabs enter the best-fit allocation behavior
  sooner, which is detrimental to performance. It also makes no sense on
  files where the underlying filesystem can arrange things however it
  wants.
  
  Author: Richard Yao <ryao@gentoo.org>
  Signed-off-by: Richard Yao <ryao@gentoo.org>
  Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
  Closes #3712
  zfsonlinux/zfs@fb40095f5f0853946f8150481ca22602d1334dfe
  
  To reduce code divergence this merge replaces equivalent but different
  FreeBSD code detecting non-rotating medium vdevs.
  
  MFC after:	1 month

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -1830,7 +1830,7 @@ metaslab_space_weight(metaslab_t *msp)
 	 * In effect, this means that we'll select the metaslab with the most
 	 * free bandwidth rather than simply the one with the most free space.
 	 */
-	if (metaslab_lba_weighting_enabled) {
+	if (!vd->vdev_nonrot && metaslab_lba_weighting_enabled) {
 		weight = 2 * weight - (msp->ms_id * weight) / vd->vdev_ms_count;
 		ASSERT(weight >= space && weight <= 2 * space);
 	}

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h	Fri Mar  8 21:13:45 2019	(r344936)
@@ -235,6 +235,7 @@ struct vdev {
 	vdev_stat_t	vdev_stat;	/* virtual device statistics	*/
 	boolean_t	vdev_expanding;	/* expand the vdev?		*/
 	boolean_t	vdev_reopening;	/* reopen in progress?		*/
+	boolean_t	vdev_nonrot;	/* true if solid state		*/
 	int		vdev_open_error; /* error on last open		*/
 	kthread_t	*vdev_open_thread; /* thread opening children	*/
 	uint64_t	vdev_crtxg;	/* txg when top-level was added */
@@ -372,9 +373,6 @@ struct vdev {
 	zio_t		*vdev_probe_zio; /* root of current probe	*/
 	vdev_aux_t	vdev_label_aux;	/* on-disk aux state		*/
 	struct trim_map	*vdev_trimmap;	/* map on outstanding trims	*/ 
-	uint16_t	vdev_rotation_rate; /* rotational rate of the media */
-#define	VDEV_RATE_UNKNOWN	0
-#define	VDEV_RATE_NON_ROTATING	1
 	uint64_t	vdev_leaf_zap;
 
 	/*

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -1476,15 +1476,19 @@ vdev_open_children(vdev_t *vd)
 	taskq_t *tq;
 	int children = vd->vdev_children;
 
+	vd->vdev_nonrot = B_TRUE;
+
 	/*
 	 * in order to handle pools on top of zvols, do the opens
 	 * in a single thread so that the same thread holds the
 	 * spa_namespace_lock
 	 */
 	if (B_TRUE || vdev_uses_zvols(vd)) {
-		for (int c = 0; c < children; c++)
+		for (int c = 0; c < children; c++) {
 			vd->vdev_child[c]->vdev_open_error =
 			    vdev_open(vd->vdev_child[c]);
+			vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot;
+		}
 		return;
 	}
 	tq = taskq_create("vdev_open", children, minclsyspri,
@@ -1495,6 +1499,9 @@ vdev_open_children(vdev_t *vd)
 		    TQ_SLEEP) != 0);
 
 	taskq_destroy(tq);
+
+	for (int c = 0; c < children; c++)
+		vd->vdev_nonrot &= vd->vdev_child[c]->vdev_nonrot;
 }
 
 /*

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -72,6 +72,9 @@ vdev_file_open(vdev_t *vd, uint64_t *psize, uint64_t *
 	vattr_t vattr;
 	int error;
 
+	/* Rotational optimizations only make sense on block devices */
+	vd->vdev_nonrot = B_TRUE;
+
 	/*
 	 * We must have a pathname, and it must be absolute.
 	 */

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -88,10 +88,10 @@ vdev_geom_set_rotation_rate(vdev_t *vd, struct g_consu
 	uint16_t rate;
 
 	error = g_getattr("GEOM::rotation_rate", cp, &rate);
-	if (error == 0)
-		vd->vdev_rotation_rate = rate;
+	if (error == 0 && rate == 1)
+		vd->vdev_nonrot = B_TRUE;
 	else
-		vd->vdev_rotation_rate = VDEV_RATE_UNKNOWN;
+		vd->vdev_nonrot = B_FALSE;
 }
 
 static void

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -169,7 +169,7 @@ vdev_mirror_load(mirror_map_t *mm, vdev_t *vd, uint64_
 	load = vdev_queue_length(vd);
 	lastoffset = vdev_queue_lastoffset(vd);
 
-	if (vd->vdev_rotation_rate == VDEV_RATE_NON_ROTATING) {
+	if (vd->vdev_nonrot) {
 		/* Non-rotating media. */
 		if (lastoffset == zio_offset)
 			return (load + non_rotating_inc);

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 21:07:08 2019	(r344935)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c	Fri Mar  8 21:13:45 2019	(r344936)
@@ -686,7 +686,7 @@ vdev_queue_aggregate(vdev_queue_t *vq, zio_t *zio)
 	ASSERT(MUTEX_HELD(&vq->vq_lock));
 
 	maxblocksize = spa_maxblocksize(vq->vq_vdev->vdev_spa);
-	if (vq->vq_vdev->vdev_rotation_rate == VDEV_RATE_NON_ROTATING)
+	if (vq->vq_vdev->vdev_nonrot)
 		limit = zfs_vdev_aggregation_limit_non_rotating;
 	else
 		limit = zfs_vdev_aggregation_limit;

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:14:22 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8EBE8152C1C0;
 Fri,  8 Mar 2019 22:14:22 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 328958E940;
 Fri,  8 Mar 2019 22:14:22 +0000 (UTC) (envelope-from dim@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 170B31790;
 Fri,  8 Mar 2019 22:14:22 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MELhe064364;
 Fri, 8 Mar 2019 22:14:21 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MEKK0064357;
 Fri, 8 Mar 2019 22:14:20 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082214.x28MEKK0064357@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:14:20 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344937 - in vendor/llvm-libunwind/dist: . include
 include/mach-o src
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in vendor/llvm-libunwind/dist: . include include/mach-o src
X-SVN-Commit-Revision: 344937
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 328958E940
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:14:22 -0000

Author: dim
Date: Fri Mar  8 22:14:20 2019
New Revision: 344937
URL: https://svnweb.freebsd.org/changeset/base/344937

Log:
  Vendor import of LLVM libunwind trunk r351319 (just before the
  release_80 branch point):
  https://llvm.org/svn/llvm-project/libunwind/trunk@351319

Added:
  vendor/llvm-libunwind/dist/LICENSE.TXT
  vendor/llvm-libunwind/dist/src/RWMutex.hpp
  vendor/llvm-libunwind/dist/src/Unwind-seh.cpp
Deleted:
  vendor/llvm-libunwind/dist/src/unwind_ext.h
Modified:
  vendor/llvm-libunwind/dist/include/__libunwind_config.h
  vendor/llvm-libunwind/dist/include/libunwind.h
  vendor/llvm-libunwind/dist/include/mach-o/compact_unwind_encoding.h
  vendor/llvm-libunwind/dist/include/unwind.h
  vendor/llvm-libunwind/dist/src/AddressSpace.hpp
  vendor/llvm-libunwind/dist/src/CompactUnwinder.hpp
  vendor/llvm-libunwind/dist/src/DwarfInstructions.hpp
  vendor/llvm-libunwind/dist/src/DwarfParser.hpp
  vendor/llvm-libunwind/dist/src/EHHeaderParser.hpp
  vendor/llvm-libunwind/dist/src/Registers.hpp
  vendor/llvm-libunwind/dist/src/Unwind-EHABI.cpp
  vendor/llvm-libunwind/dist/src/Unwind-EHABI.h
  vendor/llvm-libunwind/dist/src/Unwind-sjlj.c
  vendor/llvm-libunwind/dist/src/UnwindCursor.hpp
  vendor/llvm-libunwind/dist/src/UnwindLevel1-gcc-ext.c
  vendor/llvm-libunwind/dist/src/UnwindLevel1.c
  vendor/llvm-libunwind/dist/src/UnwindRegistersRestore.S
  vendor/llvm-libunwind/dist/src/UnwindRegistersSave.S
  vendor/llvm-libunwind/dist/src/Unwind_AppleExtras.cpp
  vendor/llvm-libunwind/dist/src/assembly.h
  vendor/llvm-libunwind/dist/src/config.h
  vendor/llvm-libunwind/dist/src/dwarf2.h
  vendor/llvm-libunwind/dist/src/libunwind.cpp
  vendor/llvm-libunwind/dist/src/libunwind_ext.h

Added: vendor/llvm-libunwind/dist/LICENSE.TXT
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm-libunwind/dist/LICENSE.TXT	Fri Mar  8 22:14:20 2019	(r344937)
@@ -0,0 +1,76 @@
+==============================================================================
+libunwind License
+==============================================================================
+
+The libunwind library is dual licensed under both the University of Illinois
+"BSD-Like" license and the MIT license.  As a user of this code you may choose
+to use it under either license.  As a contributor, you agree to allow your code
+to be used under both.
+
+Full text of the relevant licenses is included below.
+
+==============================================================================
+
+University of Illinois/NCSA
+Open Source License
+
+Copyright (c) 2009-2019 by the contributors listed in CREDITS.TXT
+
+All rights reserved.
+
+Developed by:
+
+    LLVM Team
+
+    University of Illinois at Urbana-Champaign
+
+    http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimers.
+
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimers in the
+      documentation and/or other materials provided with the distribution.
+
+    * Neither the names of the LLVM Team, University of Illinois at
+      Urbana-Champaign, nor the names of its contributors may be used to
+      endorse or promote products derived from this Software without specific
+      prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+==============================================================================
+
+Copyright (c) 2009-2014 by the contributors listed in CREDITS.TXT
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.

Modified: vendor/llvm-libunwind/dist/include/__libunwind_config.h
==============================================================================
--- vendor/llvm-libunwind/dist/include/__libunwind_config.h	Fri Mar  8 21:13:45 2019	(r344936)
+++ vendor/llvm-libunwind/dist/include/__libunwind_config.h	Fri Mar  8 22:14:20 2019	(r344937)
@@ -12,48 +12,130 @@
 
 #if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
     !defined(__ARM_DWARF_EH__)
-#define _LIBUNWIND_ARM_EHABI 1
-#else
-#define _LIBUNWIND_ARM_EHABI 0
+#define _LIBUNWIND_ARM_EHABI
 #endif
 
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86       8
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86_64    32
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC       112
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC64     116
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM64     95
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM       287
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_OR1K      32
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_MIPS      65
+#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_SPARC     31
+
 #if defined(_LIBUNWIND_IS_NATIVE_ONLY)
 # if defined(__i386__)
-#  define _LIBUNWIND_TARGET_I386 1
+#  define _LIBUNWIND_TARGET_I386
 #  define _LIBUNWIND_CONTEXT_SIZE 8
-#  define _LIBUNWIND_CURSOR_SIZE 19
+#  define _LIBUNWIND_CURSOR_SIZE 15
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86
 # elif defined(__x86_64__)
 #  define _LIBUNWIND_TARGET_X86_64 1
-#  define _LIBUNWIND_CONTEXT_SIZE 21
-#  define _LIBUNWIND_CURSOR_SIZE 33
+#  if defined(_WIN64)
+#    define _LIBUNWIND_CONTEXT_SIZE 54
+#    ifdef __SEH__
+#      define _LIBUNWIND_CURSOR_SIZE 204
+#    else
+#      define _LIBUNWIND_CURSOR_SIZE 66
+#    endif
+#  else
+#    define _LIBUNWIND_CONTEXT_SIZE 21
+#    define _LIBUNWIND_CURSOR_SIZE 33
+#  endif
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86_64
+# elif defined(__powerpc64__)
+#  define _LIBUNWIND_TARGET_PPC64 1
+#  define _LIBUNWIND_CONTEXT_SIZE 167
+#  define _LIBUNWIND_CURSOR_SIZE 179
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC64
 # elif defined(__ppc__)
 #  define _LIBUNWIND_TARGET_PPC 1
 #  define _LIBUNWIND_CONTEXT_SIZE 117
-#  define _LIBUNWIND_CURSOR_SIZE 128
+#  define _LIBUNWIND_CURSOR_SIZE 124
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC
 # elif defined(__aarch64__)
 #  define _LIBUNWIND_TARGET_AARCH64 1
 #  define _LIBUNWIND_CONTEXT_SIZE 66
-#  define _LIBUNWIND_CURSOR_SIZE 78
+#  if defined(__SEH__)
+#    define _LIBUNWIND_CURSOR_SIZE 164
+#  else
+#    define _LIBUNWIND_CURSOR_SIZE 78
+#  endif
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM64
 # elif defined(__arm__)
 #  define _LIBUNWIND_TARGET_ARM 1
-#  define _LIBUNWIND_CONTEXT_SIZE 60
-#  define _LIBUNWIND_CURSOR_SIZE 67
+#  if defined(__SEH__)
+#    define _LIBUNWIND_CONTEXT_SIZE 42
+#    define _LIBUNWIND_CURSOR_SIZE 80
+#  elif defined(__ARM_WMMX)
+#    define _LIBUNWIND_CONTEXT_SIZE 61
+#    define _LIBUNWIND_CURSOR_SIZE 68
+#  else
+#    define _LIBUNWIND_CONTEXT_SIZE 42
+#    define _LIBUNWIND_CURSOR_SIZE 49
+#  endif
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM
 # elif defined(__or1k__)
 #  define _LIBUNWIND_TARGET_OR1K 1
 #  define _LIBUNWIND_CONTEXT_SIZE 16
-#  define _LIBUNWIND_CURSOR_SIZE 28
+#  define _LIBUNWIND_CURSOR_SIZE 24
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_OR1K
+# elif defined(__mips__)
+#  if defined(_ABIO32) && _MIPS_SIM == _ABIO32
+#    define _LIBUNWIND_TARGET_MIPS_O32 1
+#    if defined(__mips_hard_float)
+#      define _LIBUNWIND_CONTEXT_SIZE 50
+#      define _LIBUNWIND_CURSOR_SIZE 57
+#    else
+#      define _LIBUNWIND_CONTEXT_SIZE 18
+#      define _LIBUNWIND_CURSOR_SIZE 24
+#    endif
+#  elif defined(_ABIN32) && _MIPS_SIM == _ABIN32
+#    define _LIBUNWIND_TARGET_MIPS_NEWABI 1
+#    if defined(__mips_hard_float)
+#      define _LIBUNWIND_CONTEXT_SIZE 67
+#      define _LIBUNWIND_CURSOR_SIZE 74
+#    else
+#      define _LIBUNWIND_CONTEXT_SIZE 35
+#      define _LIBUNWIND_CURSOR_SIZE 42
+#    endif
+#  elif defined(_ABI64) && _MIPS_SIM == _ABI64
+#    define _LIBUNWIND_TARGET_MIPS_NEWABI 1
+#    if defined(__mips_hard_float)
+#      define _LIBUNWIND_CONTEXT_SIZE 67
+#      define _LIBUNWIND_CURSOR_SIZE 79
+#    else
+#      define _LIBUNWIND_CONTEXT_SIZE 35
+#      define _LIBUNWIND_CURSOR_SIZE 47
+#    endif
+#  else
+#    error "Unsupported MIPS ABI and/or environment"
+#  endif
+#  define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_MIPS
+# elif defined(__sparc__)
+  #define _LIBUNWIND_TARGET_SPARC 1
+  #define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_SPARC
+  #define _LIBUNWIND_CONTEXT_SIZE 16
+  #define _LIBUNWIND_CURSOR_SIZE 23
 # else
 #  error "Unsupported architecture."
 # endif
 #else // !_LIBUNWIND_IS_NATIVE_ONLY
-# define _LIBUNWIND_TARGET_I386 1
+# define _LIBUNWIND_TARGET_I386
 # define _LIBUNWIND_TARGET_X86_64 1
 # define _LIBUNWIND_TARGET_PPC 1
+# define _LIBUNWIND_TARGET_PPC64 1
 # define _LIBUNWIND_TARGET_AARCH64 1
 # define _LIBUNWIND_TARGET_ARM 1
 # define _LIBUNWIND_TARGET_OR1K 1
-# define _LIBUNWIND_CONTEXT_SIZE 128
-# define _LIBUNWIND_CURSOR_SIZE 140
+# define _LIBUNWIND_TARGET_MIPS_O32 1
+# define _LIBUNWIND_TARGET_MIPS_NEWABI 1
+# define _LIBUNWIND_TARGET_SPARC 1
+# define _LIBUNWIND_CONTEXT_SIZE 167
+# define _LIBUNWIND_CURSOR_SIZE 179
+# define _LIBUNWIND_HIGHEST_DWARF_REGISTER 287
 #endif // _LIBUNWIND_IS_NATIVE_ONLY
 
 #endif // ____LIBUNWIND_CONFIG_H__

Modified: vendor/llvm-libunwind/dist/include/libunwind.h
==============================================================================
--- vendor/llvm-libunwind/dist/include/libunwind.h	Fri Mar  8 21:13:45 2019	(r344936)
+++ vendor/llvm-libunwind/dist/include/libunwind.h	Fri Mar  8 22:14:20 2019	(r344937)
@@ -6,7 +6,7 @@
 // Source Licenses. See LICENSE.TXT for details.
 //
 //
-// Compatible with libuwind API documented at:
+// Compatible with libunwind API documented at:
 //   http://www.nongnu.org/libunwind/man/libunwind(3).html
 //
 //===----------------------------------------------------------------------===//
@@ -20,12 +20,26 @@
 #include <stddef.h>
 
 #ifdef __APPLE__
-  #include <Availability.h>
-    #ifdef __arm__
-       #define LIBUNWIND_AVAIL __attribute__((unavailable))
+  #if __clang__
+    #if __has_include(<Availability.h>)
+      #include <Availability.h>
+    #endif
+  #elif __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050
+    #include <Availability.h>
+  #endif
+
+  #ifdef __arm__
+     #define LIBUNWIND_AVAIL __attribute__((unavailable))
+  #elif defined(__OSX_AVAILABLE_STARTING)
+    #define LIBUNWIND_AVAIL __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_5_0)
+  #else
+    #include <AvailabilityMacros.h>
+    #ifdef AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
+      #define LIBUNWIND_AVAIL AVAILABLE_MAC_OS_X_VERSION_10_6_AND_LATER
     #else
-      #define LIBUNWIND_AVAIL __OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_5_0)
+      #define LIBUNWIND_AVAIL __attribute__((unavailable))
     #endif
+  #endif
 #else
   #define LIBUNWIND_AVAIL
 #endif
@@ -43,6 +57,9 @@ enum {
   UNW_EINVAL        = -6547, /* unsupported operation or bad value */
   UNW_EBADVERSION   = -6548, /* unwind info has unsupported version */
   UNW_ENOINFO       = -6549  /* no unwind info found */
+#if defined(_LIBUNWIND_TARGET_AARCH64) && !defined(_LIBUNWIND_IS_NATIVE_ONLY)
+  , UNW_ECROSSRASIGNING = -6550 /* cross unwind with return address signing */
+#endif
 };
 
 struct unw_context_t {
@@ -58,11 +75,10 @@ typedef struct unw_cursor_t unw_cursor_t;
 typedef struct unw_addr_space *unw_addr_space_t;
 
 typedef int unw_regnum_t;
-#if _LIBUNWIND_ARM_EHABI
-typedef uint32_t unw_word_t;
+typedef uintptr_t unw_word_t;
+#if defined(__arm__)
 typedef uint64_t unw_fpreg_t;
 #else
-typedef uint64_t unw_word_t;
 typedef double unw_fpreg_t;
 #endif
 
@@ -75,8 +91,8 @@ struct unw_proc_info_t {
   unw_word_t  gp;               /* not used */
   unw_word_t  flags;            /* not used */
   uint32_t    format;           /* compact unwind encoding, or zero if none */
-  uint32_t    unwind_info_size; /* size of dwarf unwind info, or zero if none */
-  unw_word_t  unwind_info;      /* address of dwarf unwind info, or zero */
+  uint32_t    unwind_info_size; /* size of DWARF unwind info, or zero if none */
+  unw_word_t  unwind_info;      /* address of DWARF unwind info, or zero */
   unw_word_t  extra;            /* mach_header of mach-o image containing func */
 };
 typedef struct unw_proc_info_t unw_proc_info_t;
@@ -120,7 +136,7 @@ extern int unw_init_remote_thread(unw_cursor_t *, unw_
 #endif /* UNW_REMOTE */
 
 /*
- * traditional libuwind "remote" API
+ * traditional libunwind "remote" API
  *   NOT IMPLEMENTED on Mac OS X
  *
  * extern int               unw_init_remote(unw_cursor_t*, unw_addr_space_t,
@@ -174,7 +190,24 @@ enum {
   UNW_X86_64_R12 = 12,
   UNW_X86_64_R13 = 13,
   UNW_X86_64_R14 = 14,
-  UNW_X86_64_R15 = 15
+  UNW_X86_64_R15 = 15,
+  UNW_X86_64_RIP = 16,
+  UNW_X86_64_XMM0 = 17,
+  UNW_X86_64_XMM1 = 18,
+  UNW_X86_64_XMM2 = 19,
+  UNW_X86_64_XMM3 = 20,
+  UNW_X86_64_XMM4 = 21,
+  UNW_X86_64_XMM5 = 22,
+  UNW_X86_64_XMM6 = 23,
+  UNW_X86_64_XMM7 = 24,
+  UNW_X86_64_XMM8 = 25,
+  UNW_X86_64_XMM9 = 26,
+  UNW_X86_64_XMM10 = 27,
+  UNW_X86_64_XMM11 = 28,
+  UNW_X86_64_XMM12 = 29,
+  UNW_X86_64_XMM13 = 30,
+  UNW_X86_64_XMM14 = 31,
+  UNW_X86_64_XMM15 = 32,
 };
 
 
@@ -295,6 +328,190 @@ enum {
   UNW_PPC_SPEFSCR = 112
 };
 
+// 64-bit ppc register numbers
+enum {
+  UNW_PPC64_R0      = 0,
+  UNW_PPC64_R1      = 1,
+  UNW_PPC64_R2      = 2,
+  UNW_PPC64_R3      = 3,
+  UNW_PPC64_R4      = 4,
+  UNW_PPC64_R5      = 5,
+  UNW_PPC64_R6      = 6,
+  UNW_PPC64_R7      = 7,
+  UNW_PPC64_R8      = 8,
+  UNW_PPC64_R9      = 9,
+  UNW_PPC64_R10     = 10,
+  UNW_PPC64_R11     = 11,
+  UNW_PPC64_R12     = 12,
+  UNW_PPC64_R13     = 13,
+  UNW_PPC64_R14     = 14,
+  UNW_PPC64_R15     = 15,
+  UNW_PPC64_R16     = 16,
+  UNW_PPC64_R17     = 17,
+  UNW_PPC64_R18     = 18,
+  UNW_PPC64_R19     = 19,
+  UNW_PPC64_R20     = 20,
+  UNW_PPC64_R21     = 21,
+  UNW_PPC64_R22     = 22,
+  UNW_PPC64_R23     = 23,
+  UNW_PPC64_R24     = 24,
+  UNW_PPC64_R25     = 25,
+  UNW_PPC64_R26     = 26,
+  UNW_PPC64_R27     = 27,
+  UNW_PPC64_R28     = 28,
+  UNW_PPC64_R29     = 29,
+  UNW_PPC64_R30     = 30,
+  UNW_PPC64_R31     = 31,
+  UNW_PPC64_F0      = 32,
+  UNW_PPC64_F1      = 33,
+  UNW_PPC64_F2      = 34,
+  UNW_PPC64_F3      = 35,
+  UNW_PPC64_F4      = 36,
+  UNW_PPC64_F5      = 37,
+  UNW_PPC64_F6      = 38,
+  UNW_PPC64_F7      = 39,
+  UNW_PPC64_F8      = 40,
+  UNW_PPC64_F9      = 41,
+  UNW_PPC64_F10     = 42,
+  UNW_PPC64_F11     = 43,
+  UNW_PPC64_F12     = 44,
+  UNW_PPC64_F13     = 45,
+  UNW_PPC64_F14     = 46,
+  UNW_PPC64_F15     = 47,
+  UNW_PPC64_F16     = 48,
+  UNW_PPC64_F17     = 49,
+  UNW_PPC64_F18     = 50,
+  UNW_PPC64_F19     = 51,
+  UNW_PPC64_F20     = 52,
+  UNW_PPC64_F21     = 53,
+  UNW_PPC64_F22     = 54,
+  UNW_PPC64_F23     = 55,
+  UNW_PPC64_F24     = 56,
+  UNW_PPC64_F25     = 57,
+  UNW_PPC64_F26     = 58,
+  UNW_PPC64_F27     = 59,
+  UNW_PPC64_F28     = 60,
+  UNW_PPC64_F29     = 61,
+  UNW_PPC64_F30     = 62,
+  UNW_PPC64_F31     = 63,
+  // 64: reserved
+  UNW_PPC64_LR      = 65,
+  UNW_PPC64_CTR     = 66,
+  // 67: reserved
+  UNW_PPC64_CR0     = 68,
+  UNW_PPC64_CR1     = 69,
+  UNW_PPC64_CR2     = 70,
+  UNW_PPC64_CR3     = 71,
+  UNW_PPC64_CR4     = 72,
+  UNW_PPC64_CR5     = 73,
+  UNW_PPC64_CR6     = 74,
+  UNW_PPC64_CR7     = 75,
+  UNW_PPC64_XER     = 76,
+  UNW_PPC64_V0      = 77,
+  UNW_PPC64_V1      = 78,
+  UNW_PPC64_V2      = 79,
+  UNW_PPC64_V3      = 80,
+  UNW_PPC64_V4      = 81,
+  UNW_PPC64_V5      = 82,
+  UNW_PPC64_V6      = 83,
+  UNW_PPC64_V7      = 84,
+  UNW_PPC64_V8      = 85,
+  UNW_PPC64_V9      = 86,
+  UNW_PPC64_V10     = 87,
+  UNW_PPC64_V11     = 88,
+  UNW_PPC64_V12     = 89,
+  UNW_PPC64_V13     = 90,
+  UNW_PPC64_V14     = 91,
+  UNW_PPC64_V15     = 92,
+  UNW_PPC64_V16     = 93,
+  UNW_PPC64_V17     = 94,
+  UNW_PPC64_V18     = 95,
+  UNW_PPC64_V19     = 96,
+  UNW_PPC64_V20     = 97,
+  UNW_PPC64_V21     = 98,
+  UNW_PPC64_V22     = 99,
+  UNW_PPC64_V23     = 100,
+  UNW_PPC64_V24     = 101,
+  UNW_PPC64_V25     = 102,
+  UNW_PPC64_V26     = 103,
+  UNW_PPC64_V27     = 104,
+  UNW_PPC64_V28     = 105,
+  UNW_PPC64_V29     = 106,
+  UNW_PPC64_V30     = 107,
+  UNW_PPC64_V31     = 108,
+  // 109, 111-113: OpenPOWER ELF V2 ABI: reserved
+  // Borrowing VRSAVE number from PPC32.
+  UNW_PPC64_VRSAVE  = 109,
+  UNW_PPC64_VSCR    = 110,
+  UNW_PPC64_TFHAR   = 114,
+  UNW_PPC64_TFIAR   = 115,
+  UNW_PPC64_TEXASR  = 116,
+  UNW_PPC64_VS0     = UNW_PPC64_F0,
+  UNW_PPC64_VS1     = UNW_PPC64_F1,
+  UNW_PPC64_VS2     = UNW_PPC64_F2,
+  UNW_PPC64_VS3     = UNW_PPC64_F3,
+  UNW_PPC64_VS4     = UNW_PPC64_F4,
+  UNW_PPC64_VS5     = UNW_PPC64_F5,
+  UNW_PPC64_VS6     = UNW_PPC64_F6,
+  UNW_PPC64_VS7     = UNW_PPC64_F7,
+  UNW_PPC64_VS8     = UNW_PPC64_F8,
+  UNW_PPC64_VS9     = UNW_PPC64_F9,
+  UNW_PPC64_VS10    = UNW_PPC64_F10,
+  UNW_PPC64_VS11    = UNW_PPC64_F11,
+  UNW_PPC64_VS12    = UNW_PPC64_F12,
+  UNW_PPC64_VS13    = UNW_PPC64_F13,
+  UNW_PPC64_VS14    = UNW_PPC64_F14,
+  UNW_PPC64_VS15    = UNW_PPC64_F15,
+  UNW_PPC64_VS16    = UNW_PPC64_F16,
+  UNW_PPC64_VS17    = UNW_PPC64_F17,
+  UNW_PPC64_VS18    = UNW_PPC64_F18,
+  UNW_PPC64_VS19    = UNW_PPC64_F19,
+  UNW_PPC64_VS20    = UNW_PPC64_F20,
+  UNW_PPC64_VS21    = UNW_PPC64_F21,
+  UNW_PPC64_VS22    = UNW_PPC64_F22,
+  UNW_PPC64_VS23    = UNW_PPC64_F23,
+  UNW_PPC64_VS24    = UNW_PPC64_F24,
+  UNW_PPC64_VS25    = UNW_PPC64_F25,
+  UNW_PPC64_VS26    = UNW_PPC64_F26,
+  UNW_PPC64_VS27    = UNW_PPC64_F27,
+  UNW_PPC64_VS28    = UNW_PPC64_F28,
+  UNW_PPC64_VS29    = UNW_PPC64_F29,
+  UNW_PPC64_VS30    = UNW_PPC64_F30,
+  UNW_PPC64_VS31    = UNW_PPC64_F31,
+  UNW_PPC64_VS32    = UNW_PPC64_V0,
+  UNW_PPC64_VS33    = UNW_PPC64_V1,
+  UNW_PPC64_VS34    = UNW_PPC64_V2,
+  UNW_PPC64_VS35    = UNW_PPC64_V3,
+  UNW_PPC64_VS36    = UNW_PPC64_V4,
+  UNW_PPC64_VS37    = UNW_PPC64_V5,
+  UNW_PPC64_VS38    = UNW_PPC64_V6,
+  UNW_PPC64_VS39    = UNW_PPC64_V7,
+  UNW_PPC64_VS40    = UNW_PPC64_V8,
+  UNW_PPC64_VS41    = UNW_PPC64_V9,
+  UNW_PPC64_VS42    = UNW_PPC64_V10,
+  UNW_PPC64_VS43    = UNW_PPC64_V11,
+  UNW_PPC64_VS44    = UNW_PPC64_V12,
+  UNW_PPC64_VS45    = UNW_PPC64_V13,
+  UNW_PPC64_VS46    = UNW_PPC64_V14,
+  UNW_PPC64_VS47    = UNW_PPC64_V15,
+  UNW_PPC64_VS48    = UNW_PPC64_V16,
+  UNW_PPC64_VS49    = UNW_PPC64_V17,
+  UNW_PPC64_VS50    = UNW_PPC64_V18,
+  UNW_PPC64_VS51    = UNW_PPC64_V19,
+  UNW_PPC64_VS52    = UNW_PPC64_V20,
+  UNW_PPC64_VS53    = UNW_PPC64_V21,
+  UNW_PPC64_VS54    = UNW_PPC64_V22,
+  UNW_PPC64_VS55    = UNW_PPC64_V23,
+  UNW_PPC64_VS56    = UNW_PPC64_V24,
+  UNW_PPC64_VS57    = UNW_PPC64_V25,
+  UNW_PPC64_VS58    = UNW_PPC64_V26,
+  UNW_PPC64_VS59    = UNW_PPC64_V27,
+  UNW_PPC64_VS60    = UNW_PPC64_V28,
+  UNW_PPC64_VS61    = UNW_PPC64_V29,
+  UNW_PPC64_VS62    = UNW_PPC64_V30,
+  UNW_PPC64_VS63    = UNW_PPC64_V31
+};
+
 // 64-bit ARM64 registers
 enum {
   UNW_ARM64_X0  = 0,
@@ -333,6 +550,8 @@ enum {
   UNW_ARM64_X31 = 31,
   UNW_ARM64_SP  = 31,
   // reserved block
+  UNW_ARM64_RA_SIGN_STATE = 34,
+  // reserved block
   UNW_ARM64_D0  = 64,
   UNW_ARM64_D1  = 65,
   UNW_ARM64_D2  = 66,
@@ -531,6 +750,113 @@ enum {
   UNW_OR1K_R29 = 29,
   UNW_OR1K_R30 = 30,
   UNW_OR1K_R31 = 31,
+  UNW_OR1K_EPCR = 32,
+};
+
+// MIPS registers
+enum {
+  UNW_MIPS_R0  = 0,
+  UNW_MIPS_R1  = 1,
+  UNW_MIPS_R2  = 2,
+  UNW_MIPS_R3  = 3,
+  UNW_MIPS_R4  = 4,
+  UNW_MIPS_R5  = 5,
+  UNW_MIPS_R6  = 6,
+  UNW_MIPS_R7  = 7,
+  UNW_MIPS_R8  = 8,
+  UNW_MIPS_R9  = 9,
+  UNW_MIPS_R10 = 10,
+  UNW_MIPS_R11 = 11,
+  UNW_MIPS_R12 = 12,
+  UNW_MIPS_R13 = 13,
+  UNW_MIPS_R14 = 14,
+  UNW_MIPS_R15 = 15,
+  UNW_MIPS_R16 = 16,
+  UNW_MIPS_R17 = 17,
+  UNW_MIPS_R18 = 18,
+  UNW_MIPS_R19 = 19,
+  UNW_MIPS_R20 = 20,
+  UNW_MIPS_R21 = 21,
+  UNW_MIPS_R22 = 22,
+  UNW_MIPS_R23 = 23,
+  UNW_MIPS_R24 = 24,
+  UNW_MIPS_R25 = 25,
+  UNW_MIPS_R26 = 26,
+  UNW_MIPS_R27 = 27,
+  UNW_MIPS_R28 = 28,
+  UNW_MIPS_R29 = 29,
+  UNW_MIPS_R30 = 30,
+  UNW_MIPS_R31 = 31,
+  UNW_MIPS_F0  = 32,
+  UNW_MIPS_F1  = 33,
+  UNW_MIPS_F2  = 34,
+  UNW_MIPS_F3  = 35,
+  UNW_MIPS_F4  = 36,
+  UNW_MIPS_F5  = 37,
+  UNW_MIPS_F6  = 38,
+  UNW_MIPS_F7  = 39,
+  UNW_MIPS_F8  = 40,
+  UNW_MIPS_F9  = 41,
+  UNW_MIPS_F10 = 42,
+  UNW_MIPS_F11 = 43,
+  UNW_MIPS_F12 = 44,
+  UNW_MIPS_F13 = 45,
+  UNW_MIPS_F14 = 46,
+  UNW_MIPS_F15 = 47,
+  UNW_MIPS_F16 = 48,
+  UNW_MIPS_F17 = 49,
+  UNW_MIPS_F18 = 50,
+  UNW_MIPS_F19 = 51,
+  UNW_MIPS_F20 = 52,
+  UNW_MIPS_F21 = 53,
+  UNW_MIPS_F22 = 54,
+  UNW_MIPS_F23 = 55,
+  UNW_MIPS_F24 = 56,
+  UNW_MIPS_F25 = 57,
+  UNW_MIPS_F26 = 58,
+  UNW_MIPS_F27 = 59,
+  UNW_MIPS_F28 = 60,
+  UNW_MIPS_F29 = 61,
+  UNW_MIPS_F30 = 62,
+  UNW_MIPS_F31 = 63,
+  UNW_MIPS_HI = 64,
+  UNW_MIPS_LO = 65,
+};
+
+// SPARC registers
+enum {
+  UNW_SPARC_G0 = 0,
+  UNW_SPARC_G1 = 1,
+  UNW_SPARC_G2 = 2,
+  UNW_SPARC_G3 = 3,
+  UNW_SPARC_G4 = 4,
+  UNW_SPARC_G5 = 5,
+  UNW_SPARC_G6 = 6,
+  UNW_SPARC_G7 = 7,
+  UNW_SPARC_O0 = 8,
+  UNW_SPARC_O1 = 9,
+  UNW_SPARC_O2 = 10,
+  UNW_SPARC_O3 = 11,
+  UNW_SPARC_O4 = 12,
+  UNW_SPARC_O5 = 13,
+  UNW_SPARC_O6 = 14,
+  UNW_SPARC_O7 = 15,
+  UNW_SPARC_L0 = 16,
+  UNW_SPARC_L1 = 17,
+  UNW_SPARC_L2 = 18,
+  UNW_SPARC_L3 = 19,
+  UNW_SPARC_L4 = 20,
+  UNW_SPARC_L5 = 21,
+  UNW_SPARC_L6 = 22,
+  UNW_SPARC_L7 = 23,
+  UNW_SPARC_I0 = 24,
+  UNW_SPARC_I1 = 25,
+  UNW_SPARC_I2 = 26,
+  UNW_SPARC_I3 = 27,
+  UNW_SPARC_I4 = 28,
+  UNW_SPARC_I5 = 29,
+  UNW_SPARC_I6 = 30,
+  UNW_SPARC_I7 = 31,
 };
 
 #endif

Modified: vendor/llvm-libunwind/dist/include/mach-o/compact_unwind_encoding.h
==============================================================================
--- vendor/llvm-libunwind/dist/include/mach-o/compact_unwind_encoding.h	Fri Mar  8 21:13:45 2019	(r344936)
+++ vendor/llvm-libunwind/dist/include/mach-o/compact_unwind_encoding.h	Fri Mar  8 22:14:20 2019	(r344937)
@@ -6,7 +6,7 @@
 // Source Licenses. See LICENSE.TXT for details.
 //
 //
-// Darwin's alternative to dwarf based unwind encodings.
+// Darwin's alternative to DWARF based unwind encodings.
 //
 //===----------------------------------------------------------------------===//
 
@@ -17,7 +17,7 @@
 #include <stdint.h>
 
 //
-// Compilers can emit standard Dwarf FDEs in the __TEXT,__eh_frame section
+// Compilers can emit standard DWARF FDEs in the __TEXT,__eh_frame section
 // of object files. Or compilers can emit compact unwind information in
 // the __LD,__compact_unwind section.
 //
@@ -26,10 +26,10 @@
 // runtime to access unwind info for any given function.  If the compiler
 // emitted compact unwind info for the function, that compact unwind info will
 // be encoded in the __TEXT,__unwind_info section. If the compiler emitted
-// dwarf unwind info, the __TEXT,__unwind_info section will contain the offset
+// DWARF unwind info, the __TEXT,__unwind_info section will contain the offset
 // of the FDE in the __TEXT,__eh_frame section in the final linked image.
 //
-// Note: Previously, the linker would transform some dwarf unwind infos into
+// Note: Previously, the linker would transform some DWARF unwind infos into
 //       compact unwind info.  But that is fragile and no longer done.
 
 
@@ -58,7 +58,7 @@ enum {
 // 1-bit: has lsda
 // 2-bit: personality index
 //
-// 4-bits: 0=old, 1=ebp based, 2=stack-imm, 3=stack-ind, 4=dwarf
+// 4-bits: 0=old, 1=ebp based, 2=stack-imm, 3=stack-ind, 4=DWARF
 //  ebp based:
 //        15-bits (5*3-bits per reg) register permutation
 //        8-bits for stack offset
@@ -128,9 +128,9 @@ enum {
 //    UNWIND_X86_FRAMELESS_STACK_SIZE.  
 // UNWIND_X86_MODE_DWARF:
 //    No compact unwind encoding is available.  Instead the low 24-bits of the
-//    compact encoding is the offset of the dwarf FDE in the __eh_frame section.
+//    compact encoding is the offset of the DWARF FDE in the __eh_frame section.
 //    This mode is never used in object files.  It is only generated by the 
-//    linker in final linked images which have only dwarf unwind info for a
+//    linker in final linked images which have only DWARF unwind info for a
 //    function.
 //
 // The permutation encoding is a Lehmer code sequence encoded into a
@@ -193,7 +193,7 @@ enum {
 // 1-bit: has lsda
 // 2-bit: personality index
 //
-// 4-bits: 0=old, 1=rbp based, 2=stack-imm, 3=stack-ind, 4=dwarf
+// 4-bits: 0=old, 1=rbp based, 2=stack-imm, 3=stack-ind, 4=DWARF
 //  rbp based:
 //        15-bits (5*3-bits per reg) register permutation
 //        8-bits for stack offset
@@ -262,9 +262,9 @@ enum {
 //    UNWIND_X86_64_FRAMELESS_STACK_SIZE.  
 // UNWIND_X86_64_MODE_DWARF:
 //    No compact unwind encoding is available.  Instead the low 24-bits of the
-//    compact encoding is the offset of the dwarf FDE in the __eh_frame section.
+//    compact encoding is the offset of the DWARF FDE in the __eh_frame section.
 //    This mode is never used in object files.  It is only generated by the 
-//    linker in final linked images which have only dwarf unwind info for a
+//    linker in final linked images which have only DWARF unwind info for a
 //    function.
 //
 
@@ -275,14 +275,14 @@ enum {
 // 1-bit: has lsda
 // 2-bit: personality index
 //
-// 4-bits: 4=frame-based, 3=dwarf, 2=frameless
+// 4-bits: 4=frame-based, 3=DWARF, 2=frameless
 //  frameless:
 //        12-bits of stack size
 //  frame-based:
 //        4-bits D reg pairs saved
 //        5-bits X reg pairs saved
-//  dwarf:
-//        24-bits offset of dwarf FDE in __eh_frame section
+//  DWARF:
+//        24-bits offset of DWARF FDE in __eh_frame section
 //
 enum {
     UNWIND_ARM64_MODE_MASK                     = 0x0F000000,
@@ -320,9 +320,9 @@ enum {
 //    UNWIND_ARM64_FRAMELESS_STACK_SIZE_MASK.
 // UNWIND_ARM64_MODE_DWARF:
 //    No compact unwind encoding is available.  Instead the low 24-bits of the
-//    compact encoding is the offset of the dwarf FDE in the __eh_frame section.
+//    compact encoding is the offset of the DWARF FDE in the __eh_frame section.
 //    This mode is never used in object files.  It is only generated by the 
-//    linker in final linked images which have only dwarf unwind info for a
+//    linker in final linked images which have only DWARF unwind info for a
 //    function.
 //
 
@@ -385,7 +385,7 @@ enum {
 // saved at that range of the function.
 //
 // If a particular function is so wacky that there is no compact unwind way
-// to encode it, then the compiler can emit traditional dwarf unwind info.  
+// to encode it, then the compiler can emit traditional DWARF unwind info.  
 // The runtime will use which ever is available.
 //
 // Runtime support for compact unwind encodings are only available on 10.6 

Modified: vendor/llvm-libunwind/dist/include/unwind.h
==============================================================================
--- vendor/llvm-libunwind/dist/include/unwind.h	Fri Mar  8 21:13:45 2019	(r344936)
+++ vendor/llvm-libunwind/dist/include/unwind.h	Fri Mar  8 22:14:20 2019	(r344937)
@@ -19,6 +19,11 @@
 #include <stdint.h>
 #include <stddef.h>
 
+#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__) && defined(_WIN32)
+#include <windows.h>
+#include <ntverp.h>
+#endif
+
 #if defined(__APPLE__)
 #define LIBUNWIND_UNAVAIL __attribute__ (( unavailable ))
 #else
@@ -36,7 +41,7 @@ typedef enum {
   _URC_HANDLER_FOUND = 6,
   _URC_INSTALL_CONTEXT = 7,
   _URC_CONTINUE_UNWIND = 8,
-#if _LIBUNWIND_ARM_EHABI
+#if defined(_LIBUNWIND_ARM_EHABI)
   _URC_FAILURE = 9
 #endif
 } _Unwind_Reason_Code;
@@ -51,12 +56,13 @@ typedef enum {
 
 typedef struct _Unwind_Context _Unwind_Context;   // opaque
 
-#if _LIBUNWIND_ARM_EHABI
+#if defined(_LIBUNWIND_ARM_EHABI)
 typedef uint32_t _Unwind_State;
 
 static const _Unwind_State _US_VIRTUAL_UNWIND_FRAME   = 0;
 static const _Unwind_State _US_UNWIND_FRAME_STARTING  = 1;
 static const _Unwind_State _US_UNWIND_FRAME_RESUME    = 2;
+static const _Unwind_State _US_ACTION_MASK            = 3;
 /* Undocumented flag for force unwinding. */
 static const _Unwind_State _US_FORCE_UNWIND           = 8;
 
@@ -99,7 +105,7 @@ struct _Unwind_Control_Block {
   } pr_cache;
 
   long long int :0; /* Enforce the 8-byte alignment */
-};
+} __attribute__((__aligned__(8)));
 
 typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
       (_Unwind_State state,
@@ -119,16 +125,23 @@ struct _Unwind_Exception {
   uint64_t exception_class;
   void (*exception_cleanup)(_Unwind_Reason_Code reason,
                             _Unwind_Exception *exc);
+#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+  uintptr_t private_[6];
+#else
   uintptr_t private_1; // non-zero means forced unwind
   uintptr_t private_2; // holds sp that phase1 found for phase2 to use
-#ifndef __LP64__
-  // The gcc implementation of _Unwind_Exception used attribute mode on the
-  // above fields which had the side effect of causing this whole struct to
-  // round up to 32 bytes in size. To be more explicit, we add pad fields
-  // added for binary compatibility.
+#endif
+#if __SIZEOF_POINTER__ == 4
+  // The implementation of _Unwind_Exception uses an attribute mode on the
+  // above fields which has the side effect of causing this whole struct to
+  // round up to 32 bytes in size (48 with SEH). To be more explicit, we add
+  // pad fields added for binary compatibility.
   uint32_t reserved[3];
 #endif
-};
+  // The Itanium ABI requires that _Unwind_Exception objects are "double-word
+  // aligned".  GCC has interpreted this to mean "use the maximum useful
+  // alignment for the target"; so do we.
+} __attribute__((__aligned__));
 
 typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)
     (int version,
@@ -164,7 +177,7 @@ extern void _Unwind_Resume(_Unwind_Exception *exceptio
 #endif
 extern void _Unwind_DeleteException(_Unwind_Exception *exception_object);
 
-#if _LIBUNWIND_ARM_EHABI
+#if defined(_LIBUNWIND_ARM_EHABI)
 typedef enum {
   _UVRSC_CORE = 0, /* integer register */
   _UVRSC_VFP = 1, /* vfp */
@@ -204,7 +217,7 @@ _Unwind_VRS_Pop(_Unwind_Context *context, _Unwind_VRS_
                 _Unwind_VRS_DataRepresentation representation);
 #endif
 
-#if !_LIBUNWIND_ARM_EHABI
+#if !defined(_LIBUNWIND_ARM_EHABI)
 
 extern uintptr_t _Unwind_GetGR(struct _Unwind_Context *context, int index);
 extern void _Unwind_SetGR(struct _Unwind_Context *context, int index,
@@ -212,7 +225,7 @@ extern void _Unwind_SetGR(struct _Unwind_Context *cont
 extern uintptr_t _Unwind_GetIP(struct _Unwind_Context *context);
 extern void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t new_value);
 
-#else  // _LIBUNWIND_ARM_EHABI
+#else  // defined(_LIBUNWIND_ARM_EHABI)
 
 #if defined(_LIBUNWIND_UNWIND_LEVEL1_EXTERNAL_LINKAGE)
 #define _LIBUNWIND_EXPORT_UNWIND_LEVEL1 extern
@@ -251,7 +264,7 @@ void _Unwind_SetIP(struct _Unwind_Context *context, ui
   uintptr_t thumb_bit = _Unwind_GetGR(context, 15) & ((uintptr_t)0x1);
   _Unwind_SetGR(context, 15, value | thumb_bit);
 }
-#endif  // _LIBUNWIND_ARM_EHABI
+#endif  // defined(_LIBUNWIND_ARM_EHABI)
 
 extern uintptr_t _Unwind_GetRegionStart(struct _Unwind_Context *context);
 extern uintptr_t
@@ -321,7 +334,7 @@ extern void __deregister_frame(const void *fde);
 
 // _Unwind_Find_FDE() will locate the FDE if the pc is in some function that has
 // an associated FDE. Note, Mac OS X 10.6 and later, introduces "compact unwind
-// info" which the runtime uses in preference to dwarf unwind info.  This
+// info" which the runtime uses in preference to DWARF unwind info.  This
 // function will only work if the target function has an FDE but no compact
 // unwind info.
 struct dwarf_eh_bases {
@@ -334,7 +347,7 @@ extern const void *_Unwind_Find_FDE(const void *pc, st
 
 // This function attempts to find the start (address of first instruction) of
 // a function given an address inside the function.  It only works if the
-// function has an FDE (dwarf unwind info).
+// function has an FDE (DWARF unwind info).
 // This function is unimplemented on Mac OS X 10.6 and later.  Instead, use
 // _Unwind_Find_FDE() and look at the dwarf_eh_bases.func result.
 extern void *_Unwind_FindEnclosingFunction(void *pc);
@@ -364,6 +377,22 @@ extern void *__deregister_frame_info(const void *fde)
     LIBUNWIND_UNAVAIL;
 extern void *__deregister_frame_info_bases(const void *fde)
     LIBUNWIND_UNAVAIL;
+
+#if defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+#ifndef _WIN32
+typedef struct _EXCEPTION_RECORD EXCEPTION_RECORD;
+typedef struct _CONTEXT CONTEXT;
+typedef struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT;
+#elif !defined(__MINGW32__) && VER_PRODUCTBUILD < 8000
+typedef struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT;
+#endif
+// This is the common wrapper for GCC-style personality functions with SEH.
+extern EXCEPTION_DISPOSITION _GCC_specific_handler(EXCEPTION_RECORD *exc,
+                                                   void *frame,
+                                                   CONTEXT *ctx,
+                                                   DISPATCHER_CONTEXT *disp,
+                                                   __personality_routine pers);
+#endif
 
 #ifdef __cplusplus
 }

Modified: vendor/llvm-libunwind/dist/src/AddressSpace.hpp
==============================================================================
--- vendor/llvm-libunwind/dist/src/AddressSpace.hpp	Fri Mar  8 21:13:45 2019	(r344936)
+++ vendor/llvm-libunwind/dist/src/AddressSpace.hpp	Fri Mar  8 22:14:20 2019	(r344937)
@@ -18,7 +18,15 @@
 #include <stdlib.h>
 #include <string.h>
 
-#ifndef _LIBUNWIND_IS_BAREMETAL
+#ifndef _LIBUNWIND_USE_DLADDR
+  #if !defined(_LIBUNWIND_IS_BAREMETAL) && !defined(_WIN32)
+    #define _LIBUNWIND_USE_DLADDR 1
+  #else
+    #define _LIBUNWIND_USE_DLADDR 0
+  #endif
+#endif
+
+#if _LIBUNWIND_USE_DLADDR
 #include <dlfcn.h>
 #endif
 
@@ -32,72 +40,137 @@ namespace libunwind {
 #include "libunwind.h"
 #include "config.h"
 #include "dwarf2.h"
+#include "EHHeaderParser.hpp"
 #include "Registers.hpp"
 
-#if _LIBUNWIND_ARM_EHABI
-#if defined(__FreeBSD__) || defined(__NetBSD__)
+#ifdef __APPLE__
 
-typedef void *_Unwind_Ptr;
+  struct dyld_unwind_sections
+  {
+    const struct mach_header*   mh;
+    const void*                 dwarf_section;
+    uintptr_t                   dwarf_section_length;
+    const void*                 compact_unwind_section;
+    uintptr_t                   compact_unwind_section_length;
+  };
+  #if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) \
+                                 && (__MAC_OS_X_VERSION_MIN_REQUIRED >= 1070)) \
+      || defined(__IPHONE_OS_VERSION_MIN_REQUIRED)
+    // In 10.7.0 or later, libSystem.dylib implements this function.
+    extern "C" bool _dyld_find_unwind_sections(void *, dyld_unwind_sections *);
+  #else
+    // In 10.6.x and earlier, we need to implement this functionality. Note
+    // that this requires a newer version of libmacho (from cctools) than is
+    // present in libSystem on 10.6.x (for getsectiondata).
+    static inline bool _dyld_find_unwind_sections(void* addr,
+                                                    dyld_unwind_sections* info) {
+      // Find mach-o image containing address.
+      Dl_info dlinfo;
+      if (!dladdr(addr, &dlinfo))
+        return false;
+#if __LP64__
+      const struct mach_header_64 *mh = (const struct mach_header_64 *)dlinfo.dli_fbase;
+#else
+      const struct mach_header *mh = (const struct mach_header *)dlinfo.dli_fbase;
+#endif
 
-#elif defined(__linux__)
+      // Initialize the return struct
+      info->mh = (const struct mach_header *)mh;
+      info->dwarf_section = getsectiondata(mh, "__TEXT", "__eh_frame", &info->dwarf_section_length);
+      info->compact_unwind_section = getsectiondata(mh, "__TEXT", "__unwind_info", &info->compact_unwind_section_length);
 
-typedef long unsigned int *_Unwind_Ptr;
-extern "C" _Unwind_Ptr __gnu_Unwind_Find_exidx(_Unwind_Ptr addr, int *len);
+      if (!info->dwarf_section) {
+        info->dwarf_section_length = 0;
+      }
 
-// Emulate the BSD dl_unwind_find_exidx API when on a GNU libdl system.
-#define dl_unwind_find_exidx __gnu_Unwind_Find_exidx
+      if (!info->compact_unwind_section) {
+        info->compact_unwind_section_length = 0;
+      }
 
-#elif !defined(_LIBUNWIND_IS_BAREMETAL)

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:14:32 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8E63E152C1EE;
 Fri,  8 Mar 2019 22:14:32 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 24AFA8E9F6;
 Fri,  8 Mar 2019 22:14:32 +0000 (UTC) (envelope-from dim@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 DF2FA1791;
 Fri,  8 Mar 2019 22:14:28 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MES7h064414;
 Fri, 8 Mar 2019 22:14:28 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MESuW064413;
 Fri, 8 Mar 2019 22:14:28 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082214.x28MESuW064413@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:14:28 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344938 - vendor/llvm-libunwind/libunwind-trunk-r351319
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm-libunwind/libunwind-trunk-r351319
X-SVN-Commit-Revision: 344938
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 24AFA8E9F6
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:14:32 -0000

Author: dim
Date: Fri Mar  8 22:14:28 2019
New Revision: 344938
URL: https://svnweb.freebsd.org/changeset/base/344938

Log:
  Tag LLVM libunwind trunk r351319 (just before the release_80 branch
  point).

Added:
  vendor/llvm-libunwind/libunwind-trunk-r351319/
     - copied from r344937, vendor/llvm-libunwind/dist/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:16:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05FE6152C302;
 Fri,  8 Mar 2019 22:16:47 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 91F6F8ECD8;
 Fri,  8 Mar 2019 22:16:46 +0000 (UTC) (envelope-from dim@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 65DB01794;
 Fri,  8 Mar 2019 22:16:46 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MGkht064696;
 Fri, 8 Mar 2019 22:16:46 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MGkgE064695;
 Fri, 8 Mar 2019 22:16:46 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082216.x28MGkgE064695@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:16:46 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344939 - vendor/llvm-libunwind/dist-release_80
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm-libunwind/dist-release_80
X-SVN-Commit-Revision: 344939
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 91F6F8ECD8
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:16:47 -0000

Author: dim
Date: Fri Mar  8 22:16:45 2019
New Revision: 344939
URL: https://svnweb.freebsd.org/changeset/base/344939

Log:
  Branch vendor/llvm-libunwind/dist to
  vendor/llvm-libunwind/dist-release_80, to allow for independent merges
  of the upstream trunk and release_80 branches.

Added:
  vendor/llvm-libunwind/dist-release_80/
     - copied from r344938, vendor/llvm-libunwind/dist/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:44:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 966C0152CA4C;
 Fri,  8 Mar 2019 22:44:44 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3948C8F8EA;
 Fri,  8 Mar 2019 22:44:44 +0000 (UTC) (envelope-from dim@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 D07101C98;
 Fri,  8 Mar 2019 22:44:43 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MihAS080401;
 Fri, 8 Mar 2019 22:44:43 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MihSp080398;
 Fri, 8 Mar 2019 22:44:43 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082244.x28MihSp080398@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:44:43 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344940 - in vendor/llvm/dist-release_80: docs
 include/llvm/IR test/Transforms/DeadStoreElimination/X86
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in vendor/llvm/dist-release_80: docs include/llvm/IR
 test/Transforms/DeadStoreElimination/X86
X-SVN-Commit-Revision: 344940
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3948C8F8EA
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.961,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:44:45 -0000

Author: dim
Date: Fri Mar  8 22:44:43 2019
New Revision: 344940
URL: https://svnweb.freebsd.org/changeset/base/344940

Log:
  Vendor import of llvm release_80 branch r355677:
  https://llvm.org/svn/llvm-project/llvm/branches/release_80@355677

Added:
  vendor/llvm/dist-release_80/test/Transforms/DeadStoreElimination/X86/
  vendor/llvm/dist-release_80/test/Transforms/DeadStoreElimination/X86/gather-null-pointer.ll
Modified:
  vendor/llvm/dist-release_80/docs/ReleaseNotes.rst
  vendor/llvm/dist-release_80/include/llvm/IR/IntrinsicsX86.td

Modified: vendor/llvm/dist-release_80/docs/ReleaseNotes.rst
==============================================================================
--- vendor/llvm/dist-release_80/docs/ReleaseNotes.rst	Fri Mar  8 22:16:45 2019	(r344939)
+++ vendor/llvm/dist-release_80/docs/ReleaseNotes.rst	Fri Mar  8 22:44:43 2019	(r344940)
@@ -238,6 +238,22 @@ x86/x86_64 systems like Linux, OS X, FreeBSD and Windo
 and PowerPC (32/64 bit). Ports to other architectures like AArch64 and MIPS64
 are underway.
 
+Open Dylan Compiler
+-------------------
+
+`Dylan <https://opendylan.org/>`_ is a multi-paradigm functional
+and object-oriented programming language.  It is dynamic while
+providing a programming model designed to support efficient machine
+code generation, including fine-grained control over dynamic and
+static behavior. Dylan also features a powerful macro facility for
+expressive metaprogramming.
+
+The Open Dylan compiler can use LLVM as one of its code-generating
+back-ends, including full support for debug info generation. (Open
+Dylan generates LLVM bitcode directly using a native Dylan IR and
+bitcode library.) Development of a Dylan debugger and interactive REPL
+making use of the LLDB libraries is in progress.
+
 Zig Programming Language
 ------------------------
 

Modified: vendor/llvm/dist-release_80/include/llvm/IR/IntrinsicsX86.td
==============================================================================
--- vendor/llvm/dist-release_80/include/llvm/IR/IntrinsicsX86.td	Fri Mar  8 22:16:45 2019	(r344939)
+++ vendor/llvm/dist-release_80/include/llvm/IR/IntrinsicsX86.td	Fri Mar  8 22:44:43 2019	(r344940)
@@ -1677,71 +1677,73 @@ let TargetPrefix = "x86" in {  // All intrinsics start
 
 // Gather ops
 let TargetPrefix = "x86" in {  // All intrinsics start with "llvm.x86.".
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx2_gather_d_pd : GCCBuiltin<"__builtin_ia32_gatherd_pd">,
       Intrinsic<[llvm_v2f64_ty],
         [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_pd_256 : GCCBuiltin<"__builtin_ia32_gatherd_pd256">,
       Intrinsic<[llvm_v4f64_ty],
         [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_pd : GCCBuiltin<"__builtin_ia32_gatherq_pd">,
       Intrinsic<[llvm_v2f64_ty],
         [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_pd_256 : GCCBuiltin<"__builtin_ia32_gatherq_pd256">,
       Intrinsic<[llvm_v4f64_ty],
         [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_ps : GCCBuiltin<"__builtin_ia32_gatherd_ps">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_ps_256 : GCCBuiltin<"__builtin_ia32_gatherd_ps256">,
       Intrinsic<[llvm_v8f32_ty],
         [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_ps : GCCBuiltin<"__builtin_ia32_gatherq_ps">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_ps_256 : GCCBuiltin<"__builtin_ia32_gatherq_ps256">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
 
   def int_x86_avx2_gather_d_q : GCCBuiltin<"__builtin_ia32_gatherd_q">,
       Intrinsic<[llvm_v2i64_ty],
         [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_q_256 : GCCBuiltin<"__builtin_ia32_gatherd_q256">,
       Intrinsic<[llvm_v4i64_ty],
         [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_q : GCCBuiltin<"__builtin_ia32_gatherq_q">,
       Intrinsic<[llvm_v2i64_ty],
         [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_q_256 : GCCBuiltin<"__builtin_ia32_gatherq_q256">,
       Intrinsic<[llvm_v4i64_ty],
         [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_d : GCCBuiltin<"__builtin_ia32_gatherd_d">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_d_256 : GCCBuiltin<"__builtin_ia32_gatherd_d256">,
       Intrinsic<[llvm_v8i32_ty],
         [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_d : GCCBuiltin<"__builtin_ia32_gatherq_d">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_d_256 : GCCBuiltin<"__builtin_ia32_gatherq_d256">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
 }
 
 // Misc.
@@ -3564,530 +3566,542 @@ let TargetPrefix = "x86" in {
 // Gather and Scatter ops
 let TargetPrefix = "x86" in {
   // NOTE: These are deprecated in favor of the versions that take a vXi1 mask.
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_gather_dpd_512  : GCCBuiltin<"__builtin_ia32_gathersiv8df">,
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_dps_512  : GCCBuiltin<"__builtin_ia32_gathersiv16sf">,
           Intrinsic<[llvm_v16f32_ty], [llvm_v16f32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpd_512  : GCCBuiltin<"__builtin_ia32_gatherdiv8df">,
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qps_512  : GCCBuiltin<"__builtin_ia32_gatherdiv16sf">,
           Intrinsic<[llvm_v8f32_ty], [llvm_v8f32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
 
   def int_x86_avx512_gather_dpq_512  : GCCBuiltin<"__builtin_ia32_gathersiv8di">,
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_dpi_512  : GCCBuiltin<"__builtin_ia32_gathersiv16si">,
           Intrinsic<[llvm_v16i32_ty], [llvm_v16i32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpq_512  : GCCBuiltin<"__builtin_ia32_gatherdiv8di">,
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpi_512  : GCCBuiltin<"__builtin_ia32_gatherdiv16si">,
           Intrinsic<[llvm_v8i32_ty], [llvm_v8i32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
   def int_x86_avx512_gather3div2_df :
         GCCBuiltin<"__builtin_ia32_gather3div2df">,
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div2_di :
         GCCBuiltin<"__builtin_ia32_gather3div2di">,
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_df :
         GCCBuiltin<"__builtin_ia32_gather3div4df">,
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_di :
         GCCBuiltin<"__builtin_ia32_gather3div4di">,
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_sf :
         GCCBuiltin<"__builtin_ia32_gather3div4sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_si :
         GCCBuiltin<"__builtin_ia32_gather3div4si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div8_sf :
         GCCBuiltin<"__builtin_ia32_gather3div8sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div8_si :
         GCCBuiltin<"__builtin_ia32_gather3div8si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv2_df :
         GCCBuiltin<"__builtin_ia32_gather3siv2df">,
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv2_di :
         GCCBuiltin<"__builtin_ia32_gather3siv2di">,
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_df :
         GCCBuiltin<"__builtin_ia32_gather3siv4df">,
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_di :
         GCCBuiltin<"__builtin_ia32_gather3siv4di">,
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_sf :
         GCCBuiltin<"__builtin_ia32_gather3siv4sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_si :
         GCCBuiltin<"__builtin_ia32_gather3siv4si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv8_sf :
         GCCBuiltin<"__builtin_ia32_gather3siv8sf">,
           Intrinsic<[llvm_v8f32_ty],
           [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv8_si :
         GCCBuiltin<"__builtin_ia32_gather3siv8si">,
           Intrinsic<[llvm_v8i32_ty],
           [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
 // scatter
   // NOTE: These are deprecated in favor of the versions that take a vXi1 mask.
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_scatter_dpd_512  : GCCBuiltin<"__builtin_ia32_scattersiv8df">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                         llvm_v8i32_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_dps_512  : GCCBuiltin<"__builtin_ia32_scattersiv16sf">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i16_ty,
                        llvm_v16i32_ty, llvm_v16f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpd_512  : GCCBuiltin<"__builtin_ia32_scatterdiv8df">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                      llvm_v8i64_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qps_512  : GCCBuiltin<"__builtin_ia32_scatterdiv16sf">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                      llvm_v8i64_ty, llvm_v8f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
 
   def int_x86_avx512_scatter_dpq_512  : GCCBuiltin<"__builtin_ia32_scattersiv8di">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                          llvm_v8i32_ty, llvm_v8i64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_dpi_512  : GCCBuiltin<"__builtin_ia32_scattersiv16si">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i16_ty,
                      llvm_v16i32_ty, llvm_v16i32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpq_512  : GCCBuiltin<"__builtin_ia32_scatterdiv8di">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,llvm_v8i64_ty, llvm_v8i64_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpi_512  : GCCBuiltin<"__builtin_ia32_scatterdiv16si">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty, llvm_v8i64_ty, llvm_v8i32_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
   def int_x86_avx512_scatterdiv2_df :
        GCCBuiltin<"__builtin_ia32_scatterdiv2df">,
         Intrinsic<[],
         [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i32_ty],
-        [IntrArgMemOnly]>;
+        []>;
 
   def int_x86_avx512_scatterdiv2_di :
         GCCBuiltin<"__builtin_ia32_scatterdiv2di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_df :
         GCCBuiltin<"__builtin_ia32_scatterdiv4df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_di :
         GCCBuiltin<"__builtin_ia32_scatterdiv4di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_sf :
         GCCBuiltin<"__builtin_ia32_scatterdiv4sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_si :
         GCCBuiltin<"__builtin_ia32_scatterdiv4si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv8_sf :
         GCCBuiltin<"__builtin_ia32_scatterdiv8sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv8_si :
         GCCBuiltin<"__builtin_ia32_scatterdiv8si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv2_df :
         GCCBuiltin<"__builtin_ia32_scattersiv2df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv2_di :
         GCCBuiltin<"__builtin_ia32_scattersiv2di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_df :
         GCCBuiltin<"__builtin_ia32_scattersiv4df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_di :
         GCCBuiltin<"__builtin_ia32_scattersiv4di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_sf :
         GCCBuiltin<"__builtin_ia32_scattersiv4sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_si :
         GCCBuiltin<"__builtin_ia32_scattersiv4si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv8_sf :
         GCCBuiltin<"__builtin_ia32_scattersiv8sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv8_si :
         GCCBuiltin<"__builtin_ia32_scattersiv8si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   // gather prefetch
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_gatherpf_dpd_512  : GCCBuiltin<"__builtin_ia32_gatherpfdpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_dps_512  : GCCBuiltin<"__builtin_ia32_gatherpfdps">,
           Intrinsic<[], [llvm_i16_ty, llvm_v16i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_qpd_512  : GCCBuiltin<"__builtin_ia32_gatherpfqpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_qps_512  : GCCBuiltin<"__builtin_ia32_gatherpfqps">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
 
   // scatter prefetch
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_scatterpf_dpd_512  : GCCBuiltin<"__builtin_ia32_scatterpfdpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_dps_512  : GCCBuiltin<"__builtin_ia32_scatterpfdps">,
           Intrinsic<[], [llvm_i16_ty, llvm_v16i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_qpd_512  : GCCBuiltin<"__builtin_ia32_scatterpfqpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_qps_512  : GCCBuiltin<"__builtin_ia32_scatterpfqps">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
 }
 
 // AVX512 gather/scatter intrinsics that use vXi1 masks.
 let TargetPrefix = "x86" in {
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_mask_gather_dpd_512  :
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_dps_512  :
           Intrinsic<[llvm_v16f32_ty], [llvm_v16f32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_v16i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpd_512  :
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qps_512  :
           Intrinsic<[llvm_v8f32_ty], [llvm_v8f32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
 
   def int_x86_avx512_mask_gather_dpq_512  :
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_dpi_512  :
           Intrinsic<[llvm_v16i32_ty], [llvm_v16i32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_v16i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpq_512  :
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpi_512  :
           Intrinsic<[llvm_v8i32_ty], [llvm_v8i32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div2_df :
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div2_di :
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_df :
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_di :
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div8_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div8_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv2_df :
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv2_di :
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_df :
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_di :
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv8_sf :
           Intrinsic<[llvm_v8f32_ty],
           [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv8_si :
           Intrinsic<[llvm_v8i32_ty],
           [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_scatter_dpd_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                         llvm_v8i32_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_dps_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v16i1_ty,
                        llvm_v16i32_ty, llvm_v16f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpd_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                      llvm_v8i64_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qps_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                      llvm_v8i64_ty, llvm_v8f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
 
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_mask_scatter_dpq_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                          llvm_v8i32_ty, llvm_v8i64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_dpi_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v16i1_ty,
                      llvm_v16i32_ty, llvm_v16i32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpq_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,llvm_v8i64_ty, llvm_v8i64_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpi_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i64_ty, llvm_v8i32_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
   def int_x86_avx512_mask_scatterdiv2_df :
         Intrinsic<[],
         [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i32_ty],
-        [IntrArgMemOnly]>;
+        []>;
 
   def int_x86_avx512_mask_scatterdiv2_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv8_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv8_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv2_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv2_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv8_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv8_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 }
 
 // AVX-512 conflict detection instruction

Added: vendor/llvm/dist-release_80/test/Transforms/DeadStoreElimination/X86/gather-null-pointer.ll
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/llvm/dist-release_80/test/Transforms/DeadStoreElimination/X86/gather-null-pointer.ll	Fri Mar  8 22:44:43 2019	(r344940)
@@ -0,0 +1,21 @@
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+; RUN: opt < %s -dse -S | FileCheck %s
+
+; Both stores should be emitted because we can't tell if the gather aliases.
+
+define <4 x i32> @bar(<4 x i32> %arg, i32* %arg1) {
+; CHECK-LABEL: @bar(
+; CHECK-NEXT:  bb:
+; CHECK-NEXT:    store i32 5, i32* [[ARG1:%.*]]
+; CHECK-NEXT:    [[TMP:%.*]] = tail call <4 x i32> @llvm.x86.avx2.gather.d.d(<4 x i32> zeroinitializer, i8* null, <4 x i32> [[ARG:%.*]], <4 x i32> <i32 -1, i32 -1, i32 -1, i32 -1>, i8 1)
+; CHECK-NEXT:    store i32 10, i32* [[ARG1]]
+; CHECK-NEXT:    ret <4 x i32> [[TMP]]
+;
+bb:
+  store i32 5, i32* %arg1
+  %tmp = tail call <4 x i32> @llvm.x86.avx2.gather.d.d(<4 x i32> zeroinitializer, i8* null, <4 x i32> %arg, <4 x i32> <i32 -1, i32 -1, i32 -1, i32 -1>, i8 1)
+  store i32 10, i32* %arg1
+  ret <4 x i32> %tmp
+}
+
+declare <4 x i32> @llvm.x86.avx2.gather.d.d(<4 x i32>, i8*, <4 x i32>, <4 x i32>, i8)

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:44:47 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27677152CA51;
 Fri,  8 Mar 2019 22:44:47 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 BA4658F8EF;
 Fri,  8 Mar 2019 22:44:46 +0000 (UTC) (envelope-from dim@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 90E801C99;
 Fri,  8 Mar 2019 22:44:46 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MikEe080450;
 Fri, 8 Mar 2019 22:44:46 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MiknA080449;
 Fri, 8 Mar 2019 22:44:46 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082244.x28MiknA080449@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:44:46 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344941 - vendor/llvm/llvm-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm/llvm-release_80-r355677
X-SVN-Commit-Revision: 344941
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BA4658F8EF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:44:47 -0000

Author: dim
Date: Fri Mar  8 22:44:46 2019
New Revision: 344941
URL: https://svnweb.freebsd.org/changeset/base/344941

Log:
  Tag llvm release_80 branch r355677.

Added:
  vendor/llvm/llvm-release_80-r355677/
     - copied from r344940, vendor/llvm/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:44:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 55996152CA8D;
 Fri,  8 Mar 2019 22:44:57 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B97C48F9DF;
 Fri,  8 Mar 2019 22:44:56 +0000 (UTC) (envelope-from dim@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 73D2B1C9A;
 Fri,  8 Mar 2019 22:44:52 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Miqgf080507;
 Fri, 8 Mar 2019 22:44:52 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MioUk080496;
 Fri, 8 Mar 2019 22:44:50 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082244.x28MioUk080496@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:44:50 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344942 - in vendor/clang/dist-release_80:
 include/clang/AST include/clang/Basic include/clang/Driver lib/AST
 lib/CodeGen lib/Sema test/CodeGen test/Driver test/Sema
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in vendor/clang/dist-release_80: include/clang/AST
 include/clang/Basic include/clang/Driver lib/AST lib/CodeGen lib/Sema
 test/CodeGen test/Driver test/Sema
X-SVN-Commit-Revision: 344942
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B97C48F9DF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:44:57 -0000

Author: dim
Date: Fri Mar  8 22:44:50 2019
New Revision: 344942
URL: https://svnweb.freebsd.org/changeset/base/344942

Log:
  Vendor import of clang release_80 branch r355677:
  https://llvm.org/svn/llvm-project/cfe/branches/release_80@355677

Modified:
  vendor/clang/dist-release_80/include/clang/AST/APValue.h
  vendor/clang/dist-release_80/include/clang/Basic/TargetInfo.h
  vendor/clang/dist-release_80/include/clang/Driver/CLCompatOptions.td
  vendor/clang/dist-release_80/lib/AST/APValue.cpp
  vendor/clang/dist-release_80/lib/AST/ExprConstant.cpp
  vendor/clang/dist-release_80/lib/CodeGen/CGStmt.cpp
  vendor/clang/dist-release_80/lib/Sema/SemaStmtAsm.cpp
  vendor/clang/dist-release_80/test/CodeGen/x86-64-inline-asm.c
  vendor/clang/dist-release_80/test/Driver/cl-options.c
  vendor/clang/dist-release_80/test/Sema/inline-asm-validate-x86.c

Modified: vendor/clang/dist-release_80/include/clang/AST/APValue.h
==============================================================================
--- vendor/clang/dist-release_80/include/clang/AST/APValue.h	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/include/clang/AST/APValue.h	Fri Mar  8 22:44:50 2019	(r344942)
@@ -257,6 +257,12 @@ class APValue { (public)
     return const_cast<APValue*>(this)->getInt();
   }
 
+  /// Try to convert this value to an integral constant. This works if it's an
+  /// integer, null pointer, or offset from a null pointer. Returns true on
+  /// success.
+  bool toIntegralConstant(APSInt &Result, QualType SrcTy,
+                          const ASTContext &Ctx) const;
+
   APFloat &getFloat() {
     assert(isFloat() && "Invalid accessor");
     return *(APFloat*)(char*)Data.buffer;

Modified: vendor/clang/dist-release_80/include/clang/Basic/TargetInfo.h
==============================================================================
--- vendor/clang/dist-release_80/include/clang/Basic/TargetInfo.h	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/include/clang/Basic/TargetInfo.h	Fri Mar  8 22:44:50 2019	(r344942)
@@ -807,6 +807,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
     struct {
       int Min;
       int Max;
+      bool isConstrained;
     } ImmRange;
     llvm::SmallSet<int, 4> ImmSet;
 
@@ -817,6 +818,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
         : Flags(0), TiedOperand(-1), ConstraintStr(ConstraintStr.str()),
           Name(Name.str()) {
       ImmRange.Min = ImmRange.Max = 0;
+      ImmRange.isConstrained = false;
     }
 
     const std::string &getConstraintStr() const { return ConstraintStr; }
@@ -845,8 +847,9 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
       return (Flags & CI_ImmediateConstant) != 0;
     }
     bool isValidAsmImmediate(const llvm::APInt &Value) const {
-      return (Value.sge(ImmRange.Min) && Value.sle(ImmRange.Max)) ||
-             ImmSet.count(Value.getZExtValue()) != 0;
+      if (!ImmSet.empty())
+        return ImmSet.count(Value.getZExtValue()) != 0;
+      return !ImmRange.isConstrained || (Value.sge(ImmRange.Min) && Value.sle(ImmRange.Max));
     }
 
     void setIsReadWrite() { Flags |= CI_ReadWrite; }
@@ -858,6 +861,7 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
       Flags |= CI_ImmediateConstant;
       ImmRange.Min = Min;
       ImmRange.Max = Max;
+      ImmRange.isConstrained = true;
     }
     void setRequiresImmediate(llvm::ArrayRef<int> Exacts) {
       Flags |= CI_ImmediateConstant;
@@ -870,8 +874,6 @@ class TargetInfo : public RefCountedBase<TargetInfo> {
     }
     void setRequiresImmediate() {
       Flags |= CI_ImmediateConstant;
-      ImmRange.Min = INT_MIN;
-      ImmRange.Max = INT_MAX;
     }
 
     /// Indicate that this is an input operand that is tied to

Modified: vendor/clang/dist-release_80/include/clang/Driver/CLCompatOptions.td
==============================================================================
--- vendor/clang/dist-release_80/include/clang/Driver/CLCompatOptions.td	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/include/clang/Driver/CLCompatOptions.td	Fri Mar  8 22:44:50 2019	(r344942)
@@ -395,7 +395,9 @@ def _SLASH_Zo_ : CLIgnoredFlag<"Zo-">;
 
 // Unsupported:
 
-def _SLASH_AI : CLJoined<"AI">;
+def _SLASH_await : CLFlag<"await">;
+def _SLASH_constexpr : CLJoined<"constexpr:">;
+def _SLASH_AI : CLJoinedOrSeparate<"AI">;
 def _SLASH_Bt : CLFlag<"Bt">;
 def _SLASH_Bt_plus : CLFlag<"Bt+">;
 def _SLASH_clr : CLJoined<"clr">;
@@ -430,6 +432,9 @@ def _SLASH_Qfast_transcendentals : CLFlag<"Qfast_trans
 def _SLASH_QIfist : CLFlag<"QIfist">;
 def _SLASH_Qimprecise_fwaits : CLFlag<"Qimprecise_fwaits">;
 def _SLASH_Qpar : CLFlag<"Qpar">;
+def _SLASH_Qpar_report : CLJoined<"Qpar-report">;
+def _SLASH_Qsafe_fp_loads : CLFlag<"Qsafe_fp_loads">;
+def _SLASH_Qspectre : CLFlag<"Qspectre">;
 def _SLASH_Qvec_report : CLJoined<"Qvec-report">;
 def _SLASH_u : CLFlag<"u">;
 def _SLASH_V : CLFlag<"V">;

Modified: vendor/clang/dist-release_80/lib/AST/APValue.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/AST/APValue.cpp	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/lib/AST/APValue.cpp	Fri Mar  8 22:44:50 2019	(r344942)
@@ -600,6 +600,26 @@ std::string APValue::getAsString(ASTContext &Ctx, Qual
   return Result;
 }
 
+bool APValue::toIntegralConstant(APSInt &Result, QualType SrcTy,
+                                 const ASTContext &Ctx) const {
+  if (isInt()) {
+    Result = getInt();
+    return true;
+  }
+
+  if (isLValue() && isNullPointer()) {
+    Result = Ctx.MakeIntValue(Ctx.getTargetNullPointerValue(SrcTy), SrcTy);
+    return true;
+  }
+
+  if (isLValue() && !getLValueBase()) {
+    Result = Ctx.MakeIntValue(getLValueOffset().getQuantity(), SrcTy);
+    return true;
+  }
+
+  return false;
+}
+
 const APValue::LValueBase APValue::getLValueBase() const {
   assert(isLValue() && "Invalid accessor");
   return ((const LV*)(const void*)Data.buffer)->Base;

Modified: vendor/clang/dist-release_80/lib/AST/ExprConstant.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/AST/ExprConstant.cpp	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/lib/AST/ExprConstant.cpp	Fri Mar  8 22:44:50 2019	(r344942)
@@ -9821,13 +9821,12 @@ bool IntExprEvaluator::VisitCastExpr(const CastExpr *E
       return true;
     }
 
-    uint64_t V;
-    if (LV.isNullPointer())
-      V = Info.Ctx.getTargetNullPointerValue(SrcType);
-    else
-      V = LV.getLValueOffset().getQuantity();
+    APSInt AsInt;
+    APValue V;
+    LV.moveInto(V);
+    if (!V.toIntegralConstant(AsInt, SrcType, Info.Ctx))
+      llvm_unreachable("Can't cast this!");
 
-    APSInt AsInt = Info.Ctx.MakeIntValue(V, SrcType);
     return Success(HandleIntToIntCast(Info, E, DestType, SrcType, AsInt), E);
   }
 

Modified: vendor/clang/dist-release_80/lib/CodeGen/CGStmt.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/CodeGen/CGStmt.cpp	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/lib/CodeGen/CGStmt.cpp	Fri Mar  8 22:44:50 2019	(r344942)
@@ -1821,8 +1821,15 @@ llvm::Value* CodeGenFunction::EmitAsmInput(
   // (immediate or symbolic), try to emit it as such.
   if (!Info.allowsRegister() && !Info.allowsMemory()) {
     if (Info.requiresImmediateConstant()) {
-      llvm::APSInt AsmConst = InputExpr->EvaluateKnownConstInt(getContext());
-      return llvm::ConstantInt::get(getLLVMContext(), AsmConst);
+      Expr::EvalResult EVResult;
+      InputExpr->EvaluateAsRValue(EVResult, getContext(), true);
+
+      llvm::APSInt IntResult;
+      if (!EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(),
+                                           getContext()))
+        llvm_unreachable("Invalid immediate constant!");
+
+      return llvm::ConstantInt::get(getLLVMContext(), IntResult);
     }
 
     Expr::EvalResult Result;

Modified: vendor/clang/dist-release_80/lib/Sema/SemaStmtAsm.cpp
==============================================================================
--- vendor/clang/dist-release_80/lib/Sema/SemaStmtAsm.cpp	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/lib/Sema/SemaStmtAsm.cpp	Fri Mar  8 22:44:50 2019	(r344942)
@@ -383,11 +383,20 @@ StmtResult Sema::ActOnGCCAsmStmt(SourceLocation AsmLoc
           return StmtError(
               Diag(InputExpr->getBeginLoc(), diag::err_asm_immediate_expected)
               << Info.getConstraintStr() << InputExpr->getSourceRange());
-        llvm::APSInt Result = EVResult.Val.getInt();
-        if (!Info.isValidAsmImmediate(Result))
+
+        // For compatibility with GCC, we also allow pointers that would be
+        // integral constant expressions if they were cast to int.
+        llvm::APSInt IntResult;
+        if (!EVResult.Val.toIntegralConstant(IntResult, InputExpr->getType(),
+                                             Context))
+          return StmtError(
+              Diag(InputExpr->getBeginLoc(), diag::err_asm_immediate_expected)
+              << Info.getConstraintStr() << InputExpr->getSourceRange());
+
+        if (!Info.isValidAsmImmediate(IntResult))
           return StmtError(Diag(InputExpr->getBeginLoc(),
                                 diag::err_invalid_asm_value_for_constraint)
-                           << Result.toString(10) << Info.getConstraintStr()
+                           << IntResult.toString(10) << Info.getConstraintStr()
                            << InputExpr->getSourceRange());
       }
 

Modified: vendor/clang/dist-release_80/test/CodeGen/x86-64-inline-asm.c
==============================================================================
--- vendor/clang/dist-release_80/test/CodeGen/x86-64-inline-asm.c	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/test/CodeGen/x86-64-inline-asm.c	Fri Mar  8 22:44:50 2019	(r344942)
@@ -1,6 +1,7 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang_cc1 -triple x86_64 %s -S -o /dev/null -DWARN -verify
 // RUN: %clang_cc1 -triple x86_64 %s -S -o /dev/null -Werror -verify
+// RUN: %clang_cc1 -triple x86_64-linux-gnu %s -S -o - | FileCheck %s
 void f() {
   asm("movaps %xmm3, (%esi, 2)");
 // expected-note@1 {{instantiated into assembly here}}
@@ -15,3 +16,17 @@ static unsigned var[1] = {};
 void g(void) { asm volatile("movd %%xmm0, %0"
                             :
                             : "m"(var)); }
+
+void pr40890(void) {
+  struct s {
+    int a, b;
+  } s;
+  __asm__ __volatile__("\n#define S_A abcd%0\n" : : "n"(&((struct s*)0)->a));
+  __asm__ __volatile__("\n#define S_B abcd%0\n" : : "n"(&((struct s*)0)->b));
+  __asm__ __volatile__("\n#define BEEF abcd%0\n" : : "n"((int*)0xdeadbeeeeeef));
+
+// CHECK-LABEL: pr40890
+// CHECK: #define S_A abcd$0
+// CHECK: #define S_B abcd$4
+// CHECK: #define BEEF abcd$244837814038255
+}

Modified: vendor/clang/dist-release_80/test/Driver/cl-options.c
==============================================================================
--- vendor/clang/dist-release_80/test/Driver/cl-options.c	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/test/Driver/cl-options.c	Fri Mar  8 22:44:50 2019	(r344942)
@@ -390,7 +390,10 @@
 // Unsupported but parsed options. Check that we don't error on them.
 // (/Zs is for syntax-only)
 // RUN: %clang_cl /Zs \
+// RUN:     /await \
+// RUN:     /constexpr:depth1000 /constexpr:backtrace1000 /constexpr:steps1000 \
 // RUN:     /AIfoo \
+// RUN:     /AI foo_does_not_exist \
 // RUN:     /Bt \
 // RUN:     /Bt+ \
 // RUN:     /clr:pure \
@@ -442,6 +445,9 @@
 // RUN:     /QIfist \
 // RUN:     /Qimprecise_fwaits \
 // RUN:     /Qpar \
+// RUN:     /Qpar-report:1 \
+// RUN:     /Qsafe_fp_loads \
+// RUN:     /Qspectre \
 // RUN:     /Qvec-report:2 \
 // RUN:     /u \
 // RUN:     /V \

Modified: vendor/clang/dist-release_80/test/Sema/inline-asm-validate-x86.c
==============================================================================
--- vendor/clang/dist-release_80/test/Sema/inline-asm-validate-x86.c	Fri Mar  8 22:44:46 2019	(r344941)
+++ vendor/clang/dist-release_80/test/Sema/inline-asm-validate-x86.c	Fri Mar  8 22:44:50 2019	(r344942)
@@ -1,5 +1,5 @@
 // RUN: %clang_cc1 -triple i686 -fsyntax-only -verify %s
-// RUN: %clang_cc1 -triple x86_64 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -triple x86_64 -fsyntax-only -verify -DAMD64 %s
 
 void I(int i, int j) {
   static const int BelowMin = -1;
@@ -55,6 +55,7 @@ void K(int i, int j) {
 void L(int i, int j) {
   static const int Invalid1 = 1;
   static const int Invalid2 = 42;
+  static const int Invalid3 = 0;
   static const int Valid1 = 0xff;
   static const int Valid2 = 0xffff;
   static const int Valid3 = 0xffffffff;
@@ -69,6 +70,9 @@ void L(int i, int j) {
           : "0"(i), "L"(Invalid2)); // expected-error{{value '42' out of range for constraint 'L'}}
   __asm__("xorl %0,%2"
           : "=r"(i)
+          : "0"(i), "L"(Invalid3)); // expected-error{{value '0' out of range for constraint 'L'}}
+  __asm__("xorl %0,%2"
+          : "=r"(i)
           : "0"(i), "L"(Valid1)); // expected-no-error
   __asm__("xorl %0,%2"
           : "=r"(i)
@@ -129,3 +133,21 @@ void O(int i, int j) {
           : "0"(i), "O"(64)); // expected-no-error
 }
 
+void pr40890(void) {
+  struct s {
+    int a, b;
+  };
+  static struct s s;
+  // This null pointer can be used as an integer constant expression.
+  __asm__ __volatile__("\n#define S_A abcd%0\n" : : "n"(&((struct s*)0)->a));
+  // This offset-from-null pointer can be used as an integer constant expression.
+  __asm__ __volatile__("\n#define S_B abcd%0\n" : : "n"(&((struct s*)0)->b));
+  // This pointer cannot be used as an integer constant expression.
+  __asm__ __volatile__("\n#define GLOBAL_A abcd%0\n" : : "n"(&s.a)); // expected-error{{constraint 'n' expects an integer constant expression}}
+  // Floating-point is also not okay.
+  __asm__ __volatile__("\n#define PI abcd%0\n" : : "n"(3.14f)); // expected-error{{constraint 'n' expects an integer constant expression}}
+#ifdef AMD64
+  // This arbitrary pointer is fine.
+  __asm__ __volatile__("\n#define BEEF abcd%0\n" : : "n"((int*)0xdeadbeeeeeef));
+#endif
+}

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:06 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4DD2A152CABC;
 Fri,  8 Mar 2019 22:45:06 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B19278FA08;
 Fri,  8 Mar 2019 22:44:59 +0000 (UTC) (envelope-from dim@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 9080D1C9C;
 Fri,  8 Mar 2019 22:44:58 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Miwck080601;
 Fri, 8 Mar 2019 22:44:58 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Miwhf080600;
 Fri, 8 Mar 2019 22:44:58 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082244.x28Miwhf080600@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:44:58 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344944 -
 vendor/compiler-rt/compiler-rt-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/compiler-rt/compiler-rt-release_80-r355677
X-SVN-Commit-Revision: 344944
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B19278FA08
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:06 -0000

Author: dim
Date: Fri Mar  8 22:44:58 2019
New Revision: 344944
URL: https://svnweb.freebsd.org/changeset/base/344944

Log:
  Tag compiler-rt release_80 branch r355677.

Added:
  vendor/compiler-rt/compiler-rt-release_80-r355677/
     - copied from r344943, vendor/compiler-rt/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:04 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 426FB152CAAC;
 Fri,  8 Mar 2019 22:45:04 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 BE5F68F9E0;
 Fri,  8 Mar 2019 22:44:56 +0000 (UTC) (envelope-from dim@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 4915E1C9B;
 Fri,  8 Mar 2019 22:44:55 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MitiS080555;
 Fri, 8 Mar 2019 22:44:55 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Mitvq080554;
 Fri, 8 Mar 2019 22:44:55 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082244.x28Mitvq080554@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:44:55 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344943 - vendor/clang/clang-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/clang/clang-release_80-r355677
X-SVN-Commit-Revision: 344943
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: BE5F68F9E0
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:04 -0000

Author: dim
Date: Fri Mar  8 22:44:54 2019
New Revision: 344943
URL: https://svnweb.freebsd.org/changeset/base/344943

Log:
  Tag clang release_80 branch r355677.

Added:
  vendor/clang/clang-release_80-r355677/
     - copied from r344942, vendor/clang/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5C899152CAEB;
 Fri,  8 Mar 2019 22:45:10 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 DE66A8FA95;
 Fri,  8 Mar 2019 22:45:04 +0000 (UTC) (envelope-from dim@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 D0E5F1C9D;
 Fri,  8 Mar 2019 22:45:01 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Mj1xD080662;
 Fri, 8 Mar 2019 22:45:01 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Mj1vg080661;
 Fri, 8 Mar 2019 22:45:01 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082245.x28Mj1vg080661@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:45:01 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344945 - vendor/libc++/libc++-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/libc++/libc++-release_80-r355677
X-SVN-Commit-Revision: 344945
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: DE66A8FA95
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:10 -0000

Author: dim
Date: Fri Mar  8 22:45:01 2019
New Revision: 344945
URL: https://svnweb.freebsd.org/changeset/base/344945

Log:
  Tag libc++ release_80 branch r355677.

Added:
  vendor/libc++/libc++-release_80-r355677/
     - copied from r344944, vendor/libc++/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:11 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7F760152CAF2;
 Fri,  8 Mar 2019 22:45:11 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 ECDB48FAF3;
 Fri,  8 Mar 2019 22:45:07 +0000 (UTC) (envelope-from dim@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 789BE1C9F;
 Fri,  8 Mar 2019 22:45:07 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Mj7Pc080759;
 Fri, 8 Mar 2019 22:45:07 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Mj7k3080758;
 Fri, 8 Mar 2019 22:45:07 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082245.x28Mj7k3080758@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:45:07 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344947 -
 vendor/llvm-libunwind/libunwind-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm-libunwind/libunwind-release_80-r355677
X-SVN-Commit-Revision: 344947
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: ECDB48FAF3
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:11 -0000

Author: dim
Date: Fri Mar  8 22:45:06 2019
New Revision: 344947
URL: https://svnweb.freebsd.org/changeset/base/344947

Log:
  Tag LLVM libunwind release_80 branch r355677.

Added:
  vendor/llvm-libunwind/libunwind-release_80-r355677/
     - copied from r344946, vendor/llvm-libunwind/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:11 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D084152CAF1;
 Fri,  8 Mar 2019 22:45:11 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 621C58FAE2;
 Fri,  8 Mar 2019 22:45:07 +0000 (UTC) (envelope-from dim@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 AA6401C9E;
 Fri,  8 Mar 2019 22:45:04 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28Mj4CA080710;
 Fri, 8 Mar 2019 22:45:04 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28Mj4cG080708;
 Fri, 8 Mar 2019 22:45:04 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082245.x28Mj4cG080708@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:45:04 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344946 - vendor/llvm-libunwind/dist-release_80/src
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/llvm-libunwind/dist-release_80/src
X-SVN-Commit-Revision: 344946
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 621C58FAE2
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.957,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:11 -0000

Author: dim
Date: Fri Mar  8 22:45:03 2019
New Revision: 344946
URL: https://svnweb.freebsd.org/changeset/base/344946

Log:
  Vendor import of LLVM libunwind release_80 branch r355677:
  https://llvm.org/svn/llvm-project/libunwind/branches/release_80@355677

Modified:
  vendor/llvm-libunwind/dist-release_80/src/AddressSpace.hpp
  vendor/llvm-libunwind/dist-release_80/src/EHHeaderParser.hpp

Modified: vendor/llvm-libunwind/dist-release_80/src/AddressSpace.hpp
==============================================================================
--- vendor/llvm-libunwind/dist-release_80/src/AddressSpace.hpp	Fri Mar  8 22:45:01 2019	(r344945)
+++ vendor/llvm-libunwind/dist-release_80/src/AddressSpace.hpp	Fri Mar  8 22:45:03 2019	(r344946)
@@ -534,11 +534,11 @@ inline bool LocalAddressSpace::findUnwindSections(pint
 #endif
             cbdata->sects->dwarf_index_section = eh_frame_hdr_start;
             cbdata->sects->dwarf_index_section_length = phdr->p_memsz;
-            EHHeaderParser<LocalAddressSpace>::decodeEHHdr(
+            found_hdr = EHHeaderParser<LocalAddressSpace>::decodeEHHdr(
                 *cbdata->addressSpace, eh_frame_hdr_start, phdr->p_memsz,
                 hdrInfo);
-            cbdata->sects->dwarf_section = hdrInfo.eh_frame_ptr;
-            found_hdr = true;
+            if (found_hdr)
+              cbdata->sects->dwarf_section = hdrInfo.eh_frame_ptr;
           }
         }
 

Modified: vendor/llvm-libunwind/dist-release_80/src/EHHeaderParser.hpp
==============================================================================
--- vendor/llvm-libunwind/dist-release_80/src/EHHeaderParser.hpp	Fri Mar  8 22:45:01 2019	(r344945)
+++ vendor/llvm-libunwind/dist-release_80/src/EHHeaderParser.hpp	Fri Mar  8 22:45:03 2019	(r344946)
@@ -36,7 +36,7 @@ template <typename A> class EHHeaderParser { (public)
     uint8_t table_enc;
   };
 
-  static void decodeEHHdr(A &addressSpace, pint_t ehHdrStart, pint_t ehHdrEnd,
+  static bool decodeEHHdr(A &addressSpace, pint_t ehHdrStart, pint_t ehHdrEnd,
                           EHHeaderInfo &ehHdrInfo);
   static bool findFDE(A &addressSpace, pint_t pc, pint_t ehHdrStart,
                       uint32_t sectionLength,
@@ -53,12 +53,14 @@ template <typename A> class EHHeaderParser { (public)
 };
 
 template <typename A>
-void EHHeaderParser<A>::decodeEHHdr(A &addressSpace, pint_t ehHdrStart,
+bool EHHeaderParser<A>::decodeEHHdr(A &addressSpace, pint_t ehHdrStart,
                                     pint_t ehHdrEnd, EHHeaderInfo &ehHdrInfo) {
   pint_t p = ehHdrStart;
   uint8_t version = addressSpace.get8(p++);
-  if (version != 1)
-    _LIBUNWIND_ABORT("Unsupported .eh_frame_hdr version");
+  if (version != 1) {
+    _LIBUNWIND_LOG0("Unsupported .eh_frame_hdr version");
+    return false;
+  }
 
   uint8_t eh_frame_ptr_enc = addressSpace.get8(p++);
   uint8_t fde_count_enc = addressSpace.get8(p++);
@@ -71,6 +73,8 @@ void EHHeaderParser<A>::decodeEHHdr(A &addressSpace, p
           ? 0
           : addressSpace.getEncodedP(p, ehHdrEnd, fde_count_enc, ehHdrStart);
   ehHdrInfo.table = p;
+
+  return true;
 }
 
 template <typename A>
@@ -102,7 +106,9 @@ bool EHHeaderParser<A>::findFDE(A &addressSpace, pint_
   pint_t ehHdrEnd = ehHdrStart + sectionLength;
 
   EHHeaderParser<A>::EHHeaderInfo hdrInfo;
-  EHHeaderParser<A>::decodeEHHdr(addressSpace, ehHdrStart, ehHdrEnd, hdrInfo);
+  if (!EHHeaderParser<A>::decodeEHHdr(addressSpace, ehHdrStart, ehHdrEnd,
+                                      hdrInfo))
+    return false;
 
   size_t tableEntrySize = getTableEntrySize(hdrInfo.table_enc);
   pint_t tableEntry;

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:15 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD456152CB46;
 Fri,  8 Mar 2019 22:45:15 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6E0AD8FB81;
 Fri,  8 Mar 2019 22:45:15 +0000 (UTC) (envelope-from dim@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 469BA1CA1;
 Fri,  8 Mar 2019 22:45:13 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MjDiQ080855;
 Fri, 8 Mar 2019 22:45:13 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MjDMg080854;
 Fri, 8 Mar 2019 22:45:13 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082245.x28MjDMg080854@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:45:13 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344949 - vendor/lldb/lldb-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/lldb/lldb-release_80-r355677
X-SVN-Commit-Revision: 344949
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6E0AD8FB81
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:16 -0000

Author: dim
Date: Fri Mar  8 22:45:12 2019
New Revision: 344949
URL: https://svnweb.freebsd.org/changeset/base/344949

Log:
  Tag lldb release_80 branch r355677.

Added:
  vendor/lldb/lldb-release_80-r355677/
     - copied from r344948, vendor/lldb/dist-release_80/

From owner-svn-src-all@freebsd.org  Fri Mar  8 22:45:11 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF1BA152CAF9;
 Fri,  8 Mar 2019 22:45:11 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6EF8E8FB0C;
 Fri,  8 Mar 2019 22:45:10 +0000 (UTC) (envelope-from dim@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 39AC41CA0;
 Fri,  8 Mar 2019 22:45:10 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x28MjADc080805;
 Fri, 8 Mar 2019 22:45:10 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x28MjA9I080804;
 Fri, 8 Mar 2019 22:45:10 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903082245.x28MjA9I080804@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Fri, 8 Mar 2019 22:45:10 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-vendor@freebsd.org
Subject: svn commit: r344948 - vendor/lld/lld-release_80-r355677
X-SVN-Group: vendor
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: vendor/lld/lld-release_80-r355677
X-SVN-Commit-Revision: 344948
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6EF8E8FB0C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.954,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2019 22:45:11 -0000

Author: dim
Date: Fri Mar  8 22:45:09 2019
New Revision: 344948
URL: https://svnweb.freebsd.org/changeset/base/344948

Log:
  Tag lld release_80 branch r355677.

Added:
  vendor/lld/lld-release_80-r355677/
     - copied from r344947, vendor/lld/dist-release_80/

From owner-svn-src-all@freebsd.org  Sat Mar  9 00:27:52 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75A5C152F079;
 Sat,  9 Mar 2019 00:27:52 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 20AD693258;
 Sat,  9 Mar 2019 00:27:52 +0000 (UTC) (envelope-from dim@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 107872D93;
 Sat,  9 Mar 2019 00:27:52 +0000 (UTC) (envelope-from dim@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x290Rqkw033566;
 Sat, 9 Mar 2019 00:27:52 GMT (envelope-from dim@FreeBSD.org)
Received: (from dim@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x290RpEr033559;
 Sat, 9 Mar 2019 00:27:51 GMT (envelope-from dim@FreeBSD.org)
Message-Id: <201903090027.x290RpEr033559@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org
 using -f
From: Dimitry Andric <dim@FreeBSD.org>
Date: Sat, 9 Mar 2019 00:27:51 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344951 - in head: contrib/llvm/include/llvm/IR
 contrib/llvm/tools/clang/include/clang/Driver lib/clang/include/clang/Basic
 lib/clang/include/lld/Common lib/clang/include/llvm/Support
X-SVN-Group: head
X-SVN-Commit-Author: dim
X-SVN-Commit-Paths: in head: contrib/llvm/include/llvm/IR
 contrib/llvm/tools/clang/include/clang/Driver lib/clang/include/clang/Basic
 lib/clang/include/lld/Common lib/clang/include/llvm/Support
X-SVN-Commit-Revision: 344951
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 20AD693258
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.981,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 00:27:52 -0000

Author: dim
Date: Sat Mar  9 00:27:50 2019
New Revision: 344951
URL: https://svnweb.freebsd.org/changeset/base/344951

Log:
  Merge llvm, clang, compiler-rt, libc++, lld, and lldb release_80 branch
  r355677 (effectively, 8.0.0 rc4), resolve conflicts, and bump version
  numbers.
  
  PR:		236062
  MFC after:	1 month
  X-MFC-With:	r344779

Modified:
  head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td
  head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td
  head/lib/clang/include/clang/Basic/Version.inc
  head/lib/clang/include/lld/Common/Version.inc
  head/lib/clang/include/llvm/Support/VCSRevision.h
Directory Properties:
  head/contrib/compiler-rt/   (props changed)
  head/contrib/compiler-rt/lib/fuzzer/   (props changed)
  head/contrib/libc++/   (props changed)
  head/contrib/llvm/   (props changed)
  head/contrib/llvm/tools/clang/   (props changed)
  head/contrib/llvm/tools/lld/   (props changed)
  head/contrib/llvm/tools/lldb/   (props changed)

Modified: head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td
==============================================================================
--- head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td	Fri Mar  8 23:07:51 2019	(r344950)
+++ head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td	Sat Mar  9 00:27:50 2019	(r344951)
@@ -1677,71 +1677,73 @@ let TargetPrefix = "x86" in {  // All intrinsics start
 
 // Gather ops
 let TargetPrefix = "x86" in {  // All intrinsics start with "llvm.x86.".
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx2_gather_d_pd : GCCBuiltin<"__builtin_ia32_gatherd_pd">,
       Intrinsic<[llvm_v2f64_ty],
         [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_pd_256 : GCCBuiltin<"__builtin_ia32_gatherd_pd256">,
       Intrinsic<[llvm_v4f64_ty],
         [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_pd : GCCBuiltin<"__builtin_ia32_gatherq_pd">,
       Intrinsic<[llvm_v2f64_ty],
         [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_pd_256 : GCCBuiltin<"__builtin_ia32_gatherq_pd256">,
       Intrinsic<[llvm_v4f64_ty],
         [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_ps : GCCBuiltin<"__builtin_ia32_gatherd_ps">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_ps_256 : GCCBuiltin<"__builtin_ia32_gatherd_ps256">,
       Intrinsic<[llvm_v8f32_ty],
         [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_ps : GCCBuiltin<"__builtin_ia32_gatherq_ps">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_ps_256 : GCCBuiltin<"__builtin_ia32_gatherq_ps256">,
       Intrinsic<[llvm_v4f32_ty],
         [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
 
   def int_x86_avx2_gather_d_q : GCCBuiltin<"__builtin_ia32_gatherd_q">,
       Intrinsic<[llvm_v2i64_ty],
         [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_q_256 : GCCBuiltin<"__builtin_ia32_gatherd_q256">,
       Intrinsic<[llvm_v4i64_ty],
         [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_q : GCCBuiltin<"__builtin_ia32_gatherq_q">,
       Intrinsic<[llvm_v2i64_ty],
         [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_q_256 : GCCBuiltin<"__builtin_ia32_gatherq_q256">,
       Intrinsic<[llvm_v4i64_ty],
         [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_d : GCCBuiltin<"__builtin_ia32_gatherd_d">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_d_d_256 : GCCBuiltin<"__builtin_ia32_gatherd_d256">,
       Intrinsic<[llvm_v8i32_ty],
         [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_d : GCCBuiltin<"__builtin_ia32_gatherq_d">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
   def int_x86_avx2_gather_q_d_256 : GCCBuiltin<"__builtin_ia32_gatherq_d256">,
       Intrinsic<[llvm_v4i32_ty],
         [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i8_ty],
-        [IntrReadMem, IntrArgMemOnly]>;
+        [IntrReadMem]>;
 }
 
 // Misc.
@@ -3564,530 +3566,542 @@ let TargetPrefix = "x86" in {
 // Gather and Scatter ops
 let TargetPrefix = "x86" in {
   // NOTE: These are deprecated in favor of the versions that take a vXi1 mask.
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_gather_dpd_512  : GCCBuiltin<"__builtin_ia32_gathersiv8df">,
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_dps_512  : GCCBuiltin<"__builtin_ia32_gathersiv16sf">,
           Intrinsic<[llvm_v16f32_ty], [llvm_v16f32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpd_512  : GCCBuiltin<"__builtin_ia32_gatherdiv8df">,
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qps_512  : GCCBuiltin<"__builtin_ia32_gatherdiv16sf">,
           Intrinsic<[llvm_v8f32_ty], [llvm_v8f32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
 
   def int_x86_avx512_gather_dpq_512  : GCCBuiltin<"__builtin_ia32_gathersiv8di">,
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_dpi_512  : GCCBuiltin<"__builtin_ia32_gathersiv16si">,
           Intrinsic<[llvm_v16i32_ty], [llvm_v16i32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_i16_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpq_512  : GCCBuiltin<"__builtin_ia32_gatherdiv8di">,
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_gather_qpi_512  : GCCBuiltin<"__builtin_ia32_gatherdiv16si">,
           Intrinsic<[llvm_v8i32_ty], [llvm_v8i32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_i8_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
   def int_x86_avx512_gather3div2_df :
         GCCBuiltin<"__builtin_ia32_gather3div2df">,
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div2_di :
         GCCBuiltin<"__builtin_ia32_gather3div2di">,
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_df :
         GCCBuiltin<"__builtin_ia32_gather3div4df">,
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_di :
         GCCBuiltin<"__builtin_ia32_gather3div4di">,
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_sf :
         GCCBuiltin<"__builtin_ia32_gather3div4sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div4_si :
         GCCBuiltin<"__builtin_ia32_gather3div4si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div8_sf :
         GCCBuiltin<"__builtin_ia32_gather3div8sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3div8_si :
         GCCBuiltin<"__builtin_ia32_gather3div8si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv2_df :
         GCCBuiltin<"__builtin_ia32_gather3siv2df">,
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv2_di :
         GCCBuiltin<"__builtin_ia32_gather3siv2di">,
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_df :
         GCCBuiltin<"__builtin_ia32_gather3siv4df">,
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_di :
         GCCBuiltin<"__builtin_ia32_gather3siv4di">,
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_sf :
         GCCBuiltin<"__builtin_ia32_gather3siv4sf">,
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv4_si :
         GCCBuiltin<"__builtin_ia32_gather3siv4si">,
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv8_sf :
         GCCBuiltin<"__builtin_ia32_gather3siv8sf">,
           Intrinsic<[llvm_v8f32_ty],
           [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_gather3siv8_si :
         GCCBuiltin<"__builtin_ia32_gather3siv8si">,
           Intrinsic<[llvm_v8i32_ty],
           [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
 // scatter
   // NOTE: These are deprecated in favor of the versions that take a vXi1 mask.
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_scatter_dpd_512  : GCCBuiltin<"__builtin_ia32_scattersiv8df">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                         llvm_v8i32_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_dps_512  : GCCBuiltin<"__builtin_ia32_scattersiv16sf">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i16_ty,
                        llvm_v16i32_ty, llvm_v16f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpd_512  : GCCBuiltin<"__builtin_ia32_scatterdiv8df">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                      llvm_v8i64_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qps_512  : GCCBuiltin<"__builtin_ia32_scatterdiv16sf">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                      llvm_v8i64_ty, llvm_v8f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
 
   def int_x86_avx512_scatter_dpq_512  : GCCBuiltin<"__builtin_ia32_scattersiv8di">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,
                          llvm_v8i32_ty, llvm_v8i64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_dpi_512  : GCCBuiltin<"__builtin_ia32_scattersiv16si">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i16_ty,
                      llvm_v16i32_ty, llvm_v16i32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpq_512  : GCCBuiltin<"__builtin_ia32_scatterdiv8di">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty,llvm_v8i64_ty, llvm_v8i64_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_scatter_qpi_512  : GCCBuiltin<"__builtin_ia32_scatterdiv16si">,
           Intrinsic<[], [llvm_ptr_ty, llvm_i8_ty, llvm_v8i64_ty, llvm_v8i32_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
   def int_x86_avx512_scatterdiv2_df :
        GCCBuiltin<"__builtin_ia32_scatterdiv2df">,
         Intrinsic<[],
         [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i32_ty],
-        [IntrArgMemOnly]>;
+        []>;
 
   def int_x86_avx512_scatterdiv2_di :
         GCCBuiltin<"__builtin_ia32_scatterdiv2di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_df :
         GCCBuiltin<"__builtin_ia32_scatterdiv4df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_di :
         GCCBuiltin<"__builtin_ia32_scatterdiv4di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_sf :
         GCCBuiltin<"__builtin_ia32_scatterdiv4sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv4_si :
         GCCBuiltin<"__builtin_ia32_scatterdiv4si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv8_sf :
         GCCBuiltin<"__builtin_ia32_scatterdiv8sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scatterdiv8_si :
         GCCBuiltin<"__builtin_ia32_scatterdiv8si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv2_df :
         GCCBuiltin<"__builtin_ia32_scattersiv2df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv2_di :
         GCCBuiltin<"__builtin_ia32_scattersiv2di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_df :
         GCCBuiltin<"__builtin_ia32_scattersiv4df">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_di :
         GCCBuiltin<"__builtin_ia32_scattersiv4di">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_sf :
         GCCBuiltin<"__builtin_ia32_scattersiv4sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv4_si :
         GCCBuiltin<"__builtin_ia32_scattersiv4si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv8_sf :
         GCCBuiltin<"__builtin_ia32_scattersiv8sf">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_scattersiv8_si :
         GCCBuiltin<"__builtin_ia32_scattersiv8si">,
           Intrinsic<[],
           [llvm_ptr_ty, llvm_i8_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   // gather prefetch
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_gatherpf_dpd_512  : GCCBuiltin<"__builtin_ia32_gatherpfdpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_dps_512  : GCCBuiltin<"__builtin_ia32_gatherpfdps">,
           Intrinsic<[], [llvm_i16_ty, llvm_v16i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_qpd_512  : GCCBuiltin<"__builtin_ia32_gatherpfqpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_gatherpf_qps_512  : GCCBuiltin<"__builtin_ia32_gatherpfqps">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
 
   // scatter prefetch
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_scatterpf_dpd_512  : GCCBuiltin<"__builtin_ia32_scatterpfdpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_dps_512  : GCCBuiltin<"__builtin_ia32_scatterpfdps">,
           Intrinsic<[], [llvm_i16_ty, llvm_v16i32_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_qpd_512  : GCCBuiltin<"__builtin_ia32_scatterpfqpd">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
   def int_x86_avx512_scatterpf_qps_512  : GCCBuiltin<"__builtin_ia32_scatterpfqps">,
           Intrinsic<[], [llvm_i8_ty, llvm_v8i64_ty, llvm_ptr_ty,
-                     llvm_i32_ty, llvm_i32_ty], [IntrArgMemOnly]>;
+                     llvm_i32_ty, llvm_i32_ty], []>;
 }
 
 // AVX512 gather/scatter intrinsics that use vXi1 masks.
 let TargetPrefix = "x86" in {
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_mask_gather_dpd_512  :
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_dps_512  :
           Intrinsic<[llvm_v16f32_ty], [llvm_v16f32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_v16i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpd_512  :
           Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qps_512  :
           Intrinsic<[llvm_v8f32_ty], [llvm_v8f32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
 
   def int_x86_avx512_mask_gather_dpq_512  :
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_dpi_512  :
           Intrinsic<[llvm_v16i32_ty], [llvm_v16i32_ty, llvm_ptr_ty,
                      llvm_v16i32_ty, llvm_v16i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpq_512  :
           Intrinsic<[llvm_v8i64_ty], [llvm_v8i64_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
   def int_x86_avx512_mask_gather_qpi_512  :
           Intrinsic<[llvm_v8i32_ty], [llvm_v8i32_ty, llvm_ptr_ty,
                      llvm_v8i64_ty, llvm_v8i1_ty, llvm_i32_ty],
-                    [IntrReadMem, IntrArgMemOnly]>;
+                    [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div2_df :
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div2_di :
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_df :
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_di :
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div4_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v2i64_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div8_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3div8_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i64_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv2_df :
           Intrinsic<[llvm_v2f64_ty],
           [llvm_v2f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv2_di :
           Intrinsic<[llvm_v2i64_ty],
           [llvm_v2i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v2i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_df :
           Intrinsic<[llvm_v4f64_ty],
           [llvm_v4f64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_di :
           Intrinsic<[llvm_v4i64_ty],
           [llvm_v4i64_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_sf :
           Intrinsic<[llvm_v4f32_ty],
           [llvm_v4f32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv4_si :
           Intrinsic<[llvm_v4i32_ty],
           [llvm_v4i32_ty, llvm_ptr_ty, llvm_v4i32_ty, llvm_v4i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv8_sf :
           Intrinsic<[llvm_v8f32_ty],
           [llvm_v8f32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_gather3siv8_si :
           Intrinsic<[llvm_v8i32_ty],
           [llvm_v8i32_ty, llvm_ptr_ty, llvm_v8i32_ty, llvm_v8i1_ty, llvm_i32_ty],
-          [IntrReadMem, IntrArgMemOnly]>;
+          [IntrReadMem]>;
 
   def int_x86_avx512_mask_scatter_dpd_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                         llvm_v8i32_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_dps_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v16i1_ty,
                        llvm_v16i32_ty, llvm_v16f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpd_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                      llvm_v8i64_ty, llvm_v8f64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qps_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                      llvm_v8i64_ty, llvm_v8f32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
 
+  // NOTE: These can't be ArgMemOnly because you can put the address completely
+  // in the index register.
   def int_x86_avx512_mask_scatter_dpq_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,
                          llvm_v8i32_ty, llvm_v8i64_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_dpi_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v16i1_ty,
                      llvm_v16i32_ty, llvm_v16i32_ty, llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpq_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty,llvm_v8i64_ty, llvm_v8i64_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
   def int_x86_avx512_mask_scatter_qpi_512  :
           Intrinsic<[], [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i64_ty, llvm_v8i32_ty,
                          llvm_i32_ty],
-                    [IntrArgMemOnly]>;
+                    []>;
 
   def int_x86_avx512_mask_scatterdiv2_df :
         Intrinsic<[],
         [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v2f64_ty, llvm_i32_ty],
-        [IntrArgMemOnly]>;
+        []>;
 
   def int_x86_avx512_mask_scatterdiv2_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv4_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v2i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv8_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scatterdiv8_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i64_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv2_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v4i32_ty, llvm_v2f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv2_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v2i1_ty, llvm_v4i32_ty, llvm_v2i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_df :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4f64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_di :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4i64_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv4_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v4i1_ty, llvm_v4i32_ty, llvm_v4i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv8_sf :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i32_ty, llvm_v8f32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 
   def int_x86_avx512_mask_scattersiv8_si :
           Intrinsic<[],
           [llvm_ptr_ty, llvm_v8i1_ty, llvm_v8i32_ty, llvm_v8i32_ty, llvm_i32_ty],
-          [IntrArgMemOnly]>;
+          []>;
 }
 
 // AVX-512 conflict detection instruction

Modified: head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td
==============================================================================
--- head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td	Fri Mar  8 23:07:51 2019	(r344950)
+++ head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td	Sat Mar  9 00:27:50 2019	(r344951)
@@ -395,7 +395,9 @@ def _SLASH_Zo_ : CLIgnoredFlag<"Zo-">;
 
 // Unsupported:
 
-def _SLASH_AI : CLJoined<"AI">;
+def _SLASH_await : CLFlag<"await">;
+def _SLASH_constexpr : CLJoined<"constexpr:">;
+def _SLASH_AI : CLJoinedOrSeparate<"AI">;
 def _SLASH_Bt : CLFlag<"Bt">;
 def _SLASH_Bt_plus : CLFlag<"Bt+">;
 def _SLASH_clr : CLJoined<"clr">;
@@ -430,6 +432,9 @@ def _SLASH_Qfast_transcendentals : CLFlag<"Qfast_trans
 def _SLASH_QIfist : CLFlag<"QIfist">;
 def _SLASH_Qimprecise_fwaits : CLFlag<"Qimprecise_fwaits">;
 def _SLASH_Qpar : CLFlag<"Qpar">;
+def _SLASH_Qpar_report : CLJoined<"Qpar-report">;
+def _SLASH_Qsafe_fp_loads : CLFlag<"Qsafe_fp_loads">;
+def _SLASH_Qspectre : CLFlag<"Qspectre">;
 def _SLASH_Qvec_report : CLJoined<"Qvec-report">;
 def _SLASH_u : CLFlag<"u">;
 def _SLASH_V : CLFlag<"V">;

Modified: head/lib/clang/include/clang/Basic/Version.inc
==============================================================================
--- head/lib/clang/include/clang/Basic/Version.inc	Fri Mar  8 23:07:51 2019	(r344950)
+++ head/lib/clang/include/clang/Basic/Version.inc	Sat Mar  9 00:27:50 2019	(r344951)
@@ -8,4 +8,4 @@
 
 #define	CLANG_VENDOR			"FreeBSD "
 
-#define	SVN_REVISION			"355313"
+#define	SVN_REVISION			"355677"

Modified: head/lib/clang/include/lld/Common/Version.inc
==============================================================================
--- head/lib/clang/include/lld/Common/Version.inc	Fri Mar  8 23:07:51 2019	(r344950)
+++ head/lib/clang/include/lld/Common/Version.inc	Sat Mar  9 00:27:50 2019	(r344951)
@@ -7,4 +7,4 @@
 
 #define LLD_REPOSITORY_STRING "FreeBSD"
 // <Upstream revision at import>-<Local identifier in __FreeBSD_version style>
-#define LLD_REVISION_STRING "355313-1300002"
+#define LLD_REVISION_STRING "355677-1300002"

Modified: head/lib/clang/include/llvm/Support/VCSRevision.h
==============================================================================
--- head/lib/clang/include/llvm/Support/VCSRevision.h	Fri Mar  8 23:07:51 2019	(r344950)
+++ head/lib/clang/include/llvm/Support/VCSRevision.h	Sat Mar  9 00:27:50 2019	(r344951)
@@ -1,2 +1,2 @@
 /* $FreeBSD$ */
-#define LLVM_REVISION "svn-r355313"
+#define LLVM_REVISION "svn-r355677"

From owner-svn-src-all@freebsd.org  Sat Mar  9 00:30:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C609B152F30A;
 Sat,  9 Mar 2019 00:30:14 +0000 (UTC)
 (envelope-from gordon@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 6897F9350D;
 Sat,  9 Mar 2019 00:30:14 +0000 (UTC)
 (envelope-from gordon@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 5D6232D9C;
 Sat,  9 Mar 2019 00:30:14 +0000 (UTC)
 (envelope-from gordon@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x290UEnb033761;
 Sat, 9 Mar 2019 00:30:14 GMT (envelope-from gordon@FreeBSD.org)
Received: (from gordon@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x290UEdl033760;
 Sat, 9 Mar 2019 00:30:14 GMT (envelope-from gordon@FreeBSD.org)
Message-Id: <201903090030.x290UEdl033760@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: gordon set sender to
 gordon@FreeBSD.org using -f
From: Gordon Tetlow <gordon@FreeBSD.org>
Date: Sat, 9 Mar 2019 00:30:14 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344952 - head/bin/chmod
X-SVN-Group: head
X-SVN-Commit-Author: gordon
X-SVN-Commit-Paths: head/bin/chmod
X-SVN-Commit-Revision: 344952
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 6897F9350D
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 00:30:14 -0000

Author: gordon
Date: Sat Mar  9 00:30:13 2019
New Revision: 344952
URL: https://svnweb.freebsd.org/changeset/base/344952

Log:
  Correct wording around '-' masks.
  
  PR:		236407
  Reported by:	Brian Saia
  MFC after:	1 week

Modified:
  head/bin/chmod/chmod.1

Modified: head/bin/chmod/chmod.1
==============================================================================
--- head/bin/chmod/chmod.1	Sat Mar  9 00:27:50 2019	(r344951)
+++ head/bin/chmod/chmod.1	Sat Mar  9 00:30:13 2019	(r344952)
@@ -259,7 +259,7 @@ If no value is supplied for
 each permission bit specified in
 .Ar perm ,
 for which the corresponding bit in the file mode creation mask
-is clear, is cleared.
+is set, is cleared.
 Otherwise, the mode bits represented by the specified
 .Ar who
 and

From owner-svn-src-all@freebsd.org  Sat Mar  9 00:32:01 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2E65F152F553;
 Sat,  9 Mar 2019 00:32:01 +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)
 server-signature RSA-PSS (4096 bits)
 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 B38F893900;
 Sat,  9 Mar 2019 00:32:00 +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 A90492E07;
 Sat,  9 Mar 2019 00:32:00 +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 x290W0o9038406;
 Sat, 9 Mar 2019 00:32:00 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x290W0mB038405;
 Sat, 9 Mar 2019 00:32:00 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903090032.x290W0mB038405@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Sat, 9 Mar 2019 00:32: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: r344953 - in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Group: stable-11
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Commit-Revision: 344953
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B38F893900
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.976,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 00:32:01 -0000

Author: cy
Date: Sat Mar  9 00:32:00 2019
New Revision: 344953
URL: https://svnweb.freebsd.org/changeset/base/344953

Log:
  MFC r344838:
  
  Remove an empty directory emptied by r343702.

Deleted:
  stable/11/contrib/ipfilter/ipsend/.OLD/
Modified:
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/12/contrib/ipfilter/ipsend/.OLD/
Modified:
Directory Properties:
  stable/12/   (props changed)

From owner-svn-src-all@freebsd.org  Sat Mar  9 00:32:01 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8850B152F558;
 Sat,  9 Mar 2019 00:32:01 +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)
 server-signature RSA-PSS (4096 bits)
 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 11AFA93903;
 Sat,  9 Mar 2019 00:32:01 +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 061402E08;
 Sat,  9 Mar 2019 00:32:01 +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 x290W0u3038411;
 Sat, 9 Mar 2019 00:32:00 GMT (envelope-from cy@FreeBSD.org)
Received: (from cy@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x290W0Q6038410;
 Sat, 9 Mar 2019 00:32:00 GMT (envelope-from cy@FreeBSD.org)
Message-Id: <201903090032.x290W0Q6038410@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org
 using -f
From: Cy Schubert <cy@FreeBSD.org>
Date: Sat, 9 Mar 2019 00:32:00 +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: r344953 - in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Group: stable-12
X-SVN-Commit-Author: cy
X-SVN-Commit-Paths: in stable: 11/contrib/ipfilter/ipsend/.OLD
 12/contrib/ipfilter/ipsend/.OLD
X-SVN-Commit-Revision: 344953
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 11AFA93903
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.976,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 00:32:01 -0000

Author: cy
Date: Sat Mar  9 00:32:00 2019
New Revision: 344953
URL: https://svnweb.freebsd.org/changeset/base/344953

Log:
  MFC r344838:
  
  Remove an empty directory emptied by r343702.

Deleted:
  stable/12/contrib/ipfilter/ipsend/.OLD/
Modified:
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Deleted:
  stable/11/contrib/ipfilter/ipsend/.OLD/
Modified:
Directory Properties:
  stable/11/   (props changed)

From owner-svn-src-all@freebsd.org  Sat Mar  9 01:13:01 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id F18D415306BE;
 Sat,  9 Mar 2019 01:13:00 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 97D1A95372;
 Sat,  9 Mar 2019 01:13:00 +0000 (UTC) (envelope-from bz@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 8C40F38B1;
 Sat,  9 Mar 2019 01:13:00 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x291D0O3059860;
 Sat, 9 Mar 2019 01:13:00 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x291D0oM059858;
 Sat, 9 Mar 2019 01:13:00 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903090113.x291D0oM059858@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Sat, 9 Mar 2019 01:13:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344954 - in head: sys/net sys/netinet usr.bin/netstat
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: in head: sys/net sys/netinet usr.bin/netstat
X-SVN-Commit-Revision: 344954
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 97D1A95372
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 01:13:01 -0000

Author: bz
Date: Sat Mar  9 01:12:59 2019
New Revision: 344954
URL: https://svnweb.freebsd.org/changeset/base/344954

Log:
  Improve ARP logging.
  
  r344504 added an extra ARP_LOG() call in case of an if_output() failure.
  It turns out IPv4 can be noisy. In order to not spam the console by default:
  (a) add a counter for these events so people can keep better track of how
      often it happens, and
  (b) add a sysctl to select the default ARP_LOG log level and set it to
      INFO avoiding the one (the new) DEBUG level by default.
  
  Claim a spare (1st one after 10 years since the stats were added) in order
  to not break netstat from FreeBSD 12->13 updates in the future.
  
  Reviewed by:		karels
  Differential Revision:	https://reviews.freebsd.org/D19490

Modified:
  head/sys/net/if_arp.h
  head/sys/netinet/if_ether.c
  head/usr.bin/netstat/inet.c

Modified: head/sys/net/if_arp.h
==============================================================================
--- head/sys/net/if_arp.h	Sat Mar  9 00:32:00 2019	(r344953)
+++ head/sys/net/if_arp.h	Sat Mar  9 01:12:59 2019	(r344954)
@@ -105,8 +105,9 @@ struct arpstat {
 	uint64_t rxrequests;	/* # of ARP requests received by this host. */
 	uint64_t rxreplies;	/* # of ARP replies received by this host. */
 	uint64_t received;	/* # of ARP packets received by this host. */
+	uint64_t txerrors;	/* # of ARP requests failed to send. */
 
-	uint64_t arp_spares[4];	/* For either the upper or lower half. */
+	uint64_t arp_spares[3];	/* For either the upper or lower half. */
 	/* Abnormal event and error  counting: */
 	uint64_t dropped;	/* # of packets dropped waiting for a reply. */
 	uint64_t timeouts;	/* # of times with entries removed */

Modified: head/sys/netinet/if_ether.c
==============================================================================
--- head/sys/netinet/if_ether.c	Sat Mar  9 00:32:00 2019	(r344953)
+++ head/sys/netinet/if_ether.c	Sat Mar  9 01:12:59 2019	(r344954)
@@ -161,8 +161,15 @@ SYSCTL_PROC(_net_link_ether_inet, OID_AUTO, garp_rexmi
     "Number of times to retransmit GARP packets;"
     " 0 to disable, maximum of 16");
 
+VNET_DEFINE_STATIC(int, arp_log_level) = LOG_INFO;	/* Min. log(9) level. */
+#define	V_arp_log_level		VNET(arp_log_level)
+SYSCTL_INT(_net_link_ether_arp, OID_AUTO, log_level, CTLFLAG_VNET | CTLFLAG_RW,
+	&VNET_NAME(arp_log_level), 0,
+	"Minimum log(9) level for recording rate limited arp log messages. "
+	"The higher will be log more (emerg=0, info=6 (default), debug=7).");
 #define	ARP_LOG(pri, ...)	do {					\
-	if (ppsratecheck(&arp_lastlog, &arp_curpps, arp_maxpps))	\
+	if ((pri) <= V_arp_log_level &&					\
+	    ppsratecheck(&arp_lastlog, &arp_curpps, arp_maxpps))	\
 		log((pri), "arp: " __VA_ARGS__);			\
 } while (0)
 
@@ -428,9 +435,11 @@ arprequest_internal(struct ifnet *ifp, const struct in
 	m_clrprotoflags(m);	/* Avoid confusing lower layers. */
 	error = (*ifp->if_output)(ifp, m, &sa, &ro);
 	ARPSTAT_INC(txrequests);
-	if (error)
+	if (error) {
+		ARPSTAT_INC(txerrors);
 		ARP_LOG(LOG_DEBUG, "Failed to send ARP packet on %s: %d\n",
 		    if_name(ifp), error);
+	}
 	return (error);
 }
 

Modified: head/usr.bin/netstat/inet.c
==============================================================================
--- head/usr.bin/netstat/inet.c	Sat Mar  9 00:32:00 2019	(r344953)
+++ head/usr.bin/netstat/inet.c	Sat Mar  9 01:12:59 2019	(r344954)
@@ -1044,6 +1044,7 @@ arp_stats(u_long off, const char *name, int af1 __unus
 	xo_emit("\t" m, (uintmax_t)arpstat.f, pluralies(arpstat.f))
 
 	p(txrequests, "{:sent-requests/%ju} {N:/ARP request%s sent}\n");
+	p(txerrors, "{:sent-failures/%ju} {N:/ARP request%s failed to sent}\n");
 	p2(txreplies, "{:sent-replies/%ju} {N:/ARP repl%s sent}\n");
 	p(rxrequests, "{:received-requests/%ju} "
 	    "{N:/ARP request%s received}\n");

From owner-svn-src-all@freebsd.org  Sat Mar  9 01:18:17 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id C128A1530C36;
 Sat,  9 Mar 2019 01:18:17 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 67C5895842;
 Sat,  9 Mar 2019 01:18:17 +0000 (UTC) (envelope-from imp@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 5B741399E;
 Sat,  9 Mar 2019 01:18:17 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x291IHew060134;
 Sat, 9 Mar 2019 01:18:17 GMT (envelope-from imp@FreeBSD.org)
Received: (from imp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x291IGJk060132;
 Sat, 9 Mar 2019 01:18:16 GMT (envelope-from imp@FreeBSD.org)
Message-Id: <201903090118.x291IGJk060132@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org
 using -f
From: Warner Losh <imp@FreeBSD.org>
Date: Sat, 9 Mar 2019 01:18:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344955 - head/sys/dev/nvme
X-SVN-Group: head
X-SVN-Commit-Author: imp
X-SVN-Commit-Paths: head/sys/dev/nvme
X-SVN-Commit-Revision: 344955
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 67C5895842
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.98 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_SHORT(-0.98)[-0.979,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 01:18:18 -0000

Author: imp
Date: Sat Mar  9 01:18:16 2019
New Revision: 344955
URL: https://svnweb.freebsd.org/changeset/base/344955

Log:
  Don't print all the I/O we abort on a reset, unless we're out of
  retries.
  
  When resetting the controller, we abort I/O. Prior to this fix, we
  printed a ton of abort messages for I/O that we're going to
  retry. This imparts no useful information. Stop printing them unless
  our retry count is exhausted. Clarify code for when we don't retry,
  and remove useless arg to a routine that's always called with it
  as 'true'. All the other debug is still printed (including multiple
  reset messages if we have multiple timeouts before the taskqueue
  runs the actual reset) so that we know when we reset.
  
  Reviewed by: jimharris@, chuck@
  Differential Revision: https://reviews.freebsd.org/D19431

Modified:
  head/sys/dev/nvme/nvme_ctrlr.c
  head/sys/dev/nvme/nvme_private.h
  head/sys/dev/nvme/nvme_qpair.c

Modified: head/sys/dev/nvme/nvme_ctrlr.c
==============================================================================
--- head/sys/dev/nvme/nvme_ctrlr.c	Sat Mar  9 01:12:59 2019	(r344954)
+++ head/sys/dev/nvme/nvme_ctrlr.c	Sat Mar  9 01:18:16 2019	(r344955)
@@ -237,7 +237,7 @@ nvme_ctrlr_fail_req_task(void *arg, int pending)
 		STAILQ_REMOVE_HEAD(&ctrlr->fail_req, stailq);
 		mtx_unlock(&ctrlr->lock);
 		nvme_qpair_manual_complete_request(req->qpair, req,
-		    NVME_SCT_GENERIC, NVME_SC_ABORTED_BY_REQUEST, TRUE);
+		    NVME_SCT_GENERIC, NVME_SC_ABORTED_BY_REQUEST);
 		mtx_lock(&ctrlr->lock);
 	}
 	mtx_unlock(&ctrlr->lock);

Modified: head/sys/dev/nvme/nvme_private.h
==============================================================================
--- head/sys/dev/nvme/nvme_private.h	Sat Mar  9 01:12:59 2019	(r344954)
+++ head/sys/dev/nvme/nvme_private.h	Sat Mar  9 01:18:16 2019	(r344955)
@@ -417,8 +417,7 @@ void	nvme_qpair_reset(struct nvme_qpair *qpair);
 void	nvme_qpair_fail(struct nvme_qpair *qpair);
 void	nvme_qpair_manual_complete_request(struct nvme_qpair *qpair,
 					   struct nvme_request *req,
-					   uint32_t sct, uint32_t sc,
-					   boolean_t print_on_error);
+                                           uint32_t sct, uint32_t sc);
 
 void	nvme_admin_qpair_enable(struct nvme_qpair *qpair);
 void	nvme_admin_qpair_disable(struct nvme_qpair *qpair);

Modified: head/sys/dev/nvme/nvme_qpair.c
==============================================================================
--- head/sys/dev/nvme/nvme_qpair.c	Sat Mar  9 01:12:59 2019	(r344954)
+++ head/sys/dev/nvme/nvme_qpair.c	Sat Mar  9 01:18:16 2019	(r344955)
@@ -36,6 +36,9 @@ __FBSDID("$FreeBSD$");
 
 #include "nvme_private.h"
 
+typedef enum error_print { ERROR_PRINT_NONE, ERROR_PRINT_NO_RETRY, ERROR_PRINT_ALL } error_print_t;
+#define DO_NOT_RETRY	1
+
 static void	_nvme_qpair_submit_request(struct nvme_qpair *qpair,
 					   struct nvme_request *req);
 static void	nvme_qpair_destroy(struct nvme_qpair *qpair);
@@ -325,7 +328,7 @@ nvme_completion_is_retry(const struct nvme_completion 
 
 	sct = NVME_STATUS_GET_SCT(cpl->status);
 	sc = NVME_STATUS_GET_SC(cpl->status);
-	dnr = NVME_STATUS_GET_DNR(cpl->status);
+	dnr = NVME_STATUS_GET_DNR(cpl->status);	/* Do Not Retry Bit */
 
 	/*
 	 * TODO: spec is not clear how commands that are aborted due
@@ -369,7 +372,7 @@ nvme_completion_is_retry(const struct nvme_completion 
 
 static void
 nvme_qpair_complete_tracker(struct nvme_qpair *qpair, struct nvme_tracker *tr,
-    struct nvme_completion *cpl, boolean_t print_on_error)
+    struct nvme_completion *cpl, error_print_t print_on_error)
 {
 	struct nvme_request	*req;
 	boolean_t		retry, error;
@@ -379,7 +382,8 @@ nvme_qpair_complete_tracker(struct nvme_qpair *qpair, 
 	retry = error && nvme_completion_is_retry(cpl) &&
 	   req->retries < nvme_retry_count;
 
-	if (error && print_on_error) {
+	if (error && (print_on_error == ERROR_PRINT_ALL ||
+		(!retry && print_on_error == ERROR_PRINT_NO_RETRY))) {
 		nvme_qpair_print_command(qpair, &req->cmd);
 		nvme_qpair_print_completion(qpair, cpl);
 	}
@@ -431,7 +435,7 @@ nvme_qpair_complete_tracker(struct nvme_qpair *qpair, 
 static void
 nvme_qpair_manual_complete_tracker(struct nvme_qpair *qpair,
     struct nvme_tracker *tr, uint32_t sct, uint32_t sc, uint32_t dnr,
-    boolean_t print_on_error)
+    error_print_t print_on_error)
 {
 	struct nvme_completion	cpl;
 
@@ -446,8 +450,7 @@ nvme_qpair_manual_complete_tracker(struct nvme_qpair *
 
 void
 nvme_qpair_manual_complete_request(struct nvme_qpair *qpair,
-    struct nvme_request *req, uint32_t sct, uint32_t sc,
-    boolean_t print_on_error)
+    struct nvme_request *req, uint32_t sct, uint32_t sc)
 {
 	struct nvme_completion	cpl;
 	boolean_t		error;
@@ -459,7 +462,7 @@ nvme_qpair_manual_complete_request(struct nvme_qpair *
 
 	error = nvme_completion_is_error(&cpl);
 
-	if (error && print_on_error) {
+	if (error) {
 		nvme_qpair_print_command(qpair, &req->cmd);
 		nvme_qpair_print_completion(qpair, &cpl);
 	}
@@ -502,7 +505,7 @@ nvme_qpair_process_completions(struct nvme_qpair *qpai
 		tr = qpair->act_tr[cpl.cid];
 
 		if (tr != NULL) {
-			nvme_qpair_complete_tracker(qpair, tr, &cpl, TRUE);
+			nvme_qpair_complete_tracker(qpair, tr, &cpl, ERROR_PRINT_ALL);
 			qpair->sq_head = cpl.sqhd;
 			done++;
 		} else {
@@ -728,7 +731,7 @@ nvme_admin_qpair_abort_aers(struct nvme_qpair *qpair)
 		if (tr->req->cmd.opc == NVME_OPC_ASYNC_EVENT_REQUEST) {
 			nvme_qpair_manual_complete_tracker(qpair, tr,
 			    NVME_SCT_GENERIC, NVME_SC_ABORTED_SQ_DELETION, 0,
-			    FALSE);
+			    ERROR_PRINT_NONE);
 			tr = TAILQ_FIRST(&qpair->outstanding_tr);
 		} else {
 			tr = TAILQ_NEXT(tr, tailq);
@@ -771,7 +774,7 @@ nvme_abort_complete(void *arg, const struct nvme_compl
 		nvme_printf(tr->qpair->ctrlr,
 		    "abort command failed, aborting command manually\n");
 		nvme_qpair_manual_complete_tracker(tr->qpair, tr,
-		    NVME_SCT_GENERIC, NVME_SC_ABORTED_BY_REQUEST, 0, TRUE);
+		    NVME_SCT_GENERIC, NVME_SC_ABORTED_BY_REQUEST, 0, ERROR_PRINT_ALL);
 	}
 }
 
@@ -989,7 +992,7 @@ _nvme_qpair_submit_request(struct nvme_qpair *qpair, s
 		 */
 		mtx_unlock(&qpair->lock);
 		nvme_qpair_manual_complete_tracker(qpair, tr, NVME_SCT_GENERIC,
-		    NVME_SC_DATA_TRANSFER_ERROR, 1 /* do not retry */, TRUE);
+		    NVME_SC_DATA_TRANSFER_ERROR, DO_NOT_RETRY, ERROR_PRINT_ALL);
 		mtx_lock(&qpair->lock);
 	}
 }
@@ -1047,7 +1050,7 @@ nvme_admin_qpair_enable(struct nvme_qpair *qpair)
 		nvme_printf(qpair->ctrlr,
 		    "aborting outstanding admin command\n");
 		nvme_qpair_manual_complete_tracker(qpair, tr, NVME_SCT_GENERIC,
-		    NVME_SC_ABORTED_BY_REQUEST, 1 /* do not retry */, TRUE);
+		    NVME_SC_ABORTED_BY_REQUEST, DO_NOT_RETRY, ERROR_PRINT_ALL);
 	}
 
 	nvme_qpair_enable(qpair);
@@ -1069,7 +1072,7 @@ nvme_io_qpair_enable(struct nvme_qpair *qpair)
 	TAILQ_FOREACH_SAFE(tr, &qpair->outstanding_tr, tailq, tr_temp) {
 		nvme_printf(qpair->ctrlr, "aborting outstanding i/o\n");
 		nvme_qpair_manual_complete_tracker(qpair, tr, NVME_SCT_GENERIC,
-		    NVME_SC_ABORTED_BY_REQUEST, 0, TRUE);
+		    NVME_SC_ABORTED_BY_REQUEST, 0, ERROR_PRINT_NO_RETRY);
 	}
 
 	mtx_lock(&qpair->lock);
@@ -1134,7 +1137,7 @@ nvme_qpair_fail(struct nvme_qpair *qpair)
 		nvme_printf(qpair->ctrlr, "failing queued i/o\n");
 		mtx_unlock(&qpair->lock);
 		nvme_qpair_manual_complete_request(qpair, req, NVME_SCT_GENERIC,
-		    NVME_SC_ABORTED_BY_REQUEST, TRUE);
+		    NVME_SC_ABORTED_BY_REQUEST);
 		mtx_lock(&qpair->lock);
 	}
 
@@ -1148,7 +1151,7 @@ nvme_qpair_fail(struct nvme_qpair *qpair)
 		nvme_printf(qpair->ctrlr, "failing outstanding i/o\n");
 		mtx_unlock(&qpair->lock);
 		nvme_qpair_manual_complete_tracker(qpair, tr, NVME_SCT_GENERIC,
-		    NVME_SC_ABORTED_BY_REQUEST, 1 /* do not retry */, TRUE);
+		    NVME_SC_ABORTED_BY_REQUEST, DO_NOT_RETRY, ERROR_PRINT_ALL);
 		mtx_lock(&qpair->lock);
 	}
 

From owner-svn-src-all@freebsd.org  Sat Mar  9 01:37:00 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D85C315319F6;
 Sat,  9 Mar 2019 01:37:00 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 78E7F964AF;
 Sat,  9 Mar 2019 01:37:00 +0000 (UTC) (envelope-from bz@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 6C3573EF1;
 Sat,  9 Mar 2019 01:37:00 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x291b0iM070552;
 Sat, 9 Mar 2019 01:37:00 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x291b0Hg070551;
 Sat, 9 Mar 2019 01:37:00 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903090137.x291b0Hg070551@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Sat, 9 Mar 2019 01:37:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344956 - head/sys/sys
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: head/sys/sys
X-SVN-Commit-Revision: 344956
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 78E7F964AF
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 01:37:01 -0000

Author: bz
Date: Sat Mar  9 01:37:00 2019
New Revision: 344956
URL: https://svnweb.freebsd.org/changeset/base/344956

Log:
  Try to improve comment for socket state bits.
  
  In r324227 the comment moved into socketvar.h originally from
  sockstate.h r180948.  Try to improve English and as a consequence rewrap
  the comment.
  
  No functional changes.
  
  Reviewed by:		jhb (a wording suggestion)
  Differential Revision:	https://reviews.freebsd.org/D13865

Modified:
  head/sys/sys/socketvar.h

Modified: head/sys/sys/socketvar.h
==============================================================================
--- head/sys/sys/socketvar.h	Sat Mar  9 01:18:16 2019	(r344955)
+++ head/sys/sys/socketvar.h	Sat Mar  9 01:37:00 2019	(r344956)
@@ -180,13 +180,13 @@ struct socket {
 /*
  * Socket state bits.
  *
- * Historically, this bits were all kept in the so_state field.  For
- * locking reasons, they are now in multiple fields, as they are
- * locked differently.  so_state maintains basic socket state protected
- * by the socket lock.  so_qstate holds information about the socket
- * accept queues.  Each socket buffer also has a state field holding
- * information relevant to that socket buffer (can't send, rcv).  Many
- * fields will be read without locks to improve performance and avoid
+ * Historically, these bits were all kept in the so_state field.
+ * They are now split into separate, lock-specific fields.
+ * so_state maintains basic socket state protected by the socket lock.
+ * so_qstate holds information about the socket accept queues.
+ * Each socket buffer also has a state field holding information
+ * relevant to that socket buffer (can't send, rcv).
+ * Many fields will be read without locks to improve performance and avoid
  * lock order issues.  However, this approach must be used with caution.
  */
 #define	SS_NOFDREF		0x0001	/* no file table ref any more */

From owner-svn-src-all@freebsd.org  Sat Mar  9 03:15:10 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id DFF971534768;
 Sat,  9 Mar 2019 03:15:10 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 855A76AC1B;
 Sat,  9 Mar 2019 03:15:10 +0000 (UTC) (envelope-from bz@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 6A196522B;
 Sat,  9 Mar 2019 03:15:10 +0000 (UTC) (envelope-from bz@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x293FAXH023348;
 Sat, 9 Mar 2019 03:15:10 GMT (envelope-from bz@FreeBSD.org)
Received: (from bz@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x293FATT023347;
 Sat, 9 Mar 2019 03:15:10 GMT (envelope-from bz@FreeBSD.org)
Message-Id: <201903090315.x293FATT023347@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org
 using -f
From: "Bjoern A. Zeeb" <bz@FreeBSD.org>
Date: Sat, 9 Mar 2019 03:15:10 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344959 - head/sys/dev/usb
X-SVN-Group: head
X-SVN-Commit-Author: bz
X-SVN-Commit-Paths: head/sys/dev/usb
X-SVN-Commit-Revision: 344959
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 855A76AC1B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 03:15:11 -0000

Author: bz
Date: Sat Mar  9 03:15:09 2019
New Revision: 344959
URL: https://svnweb.freebsd.org/changeset/base/344959

Log:
  Add two more products found inside a T480 to usbdevs.
  
  Add an Intel Bluetooth module.
  Add Synaptics as a vendor with a fingerprint reader product.
  
  MFC after:		2 weeks

Modified:
  head/sys/dev/usb/usbdevs

Modified: head/sys/dev/usb/usbdevs
==============================================================================
--- head/sys/dev/usb/usbdevs	Sat Mar  9 03:10:56 2019	(r344958)
+++ head/sys/dev/usb/usbdevs	Sat Mar  9 03:15:09 2019	(r344959)
@@ -351,6 +351,7 @@ vendor ALCATELT		0x06b9	Alcatel Telecom
 vendor AGFA		0x06bd	AGFA-Gevaert
 vendor ASIAMD		0x06be	Asia Microelectronic Development
 vendor BIZLINK		0x06c4	Bizlink International
+vendor SYNAPTICS	0x06cb  Synaptics, Inc.
 vendor KEYSPAN		0x06cd	Keyspan / InnoSys Inc.
 vendor CONTEC		0x06ce	Contec products
 vendor AASHIMA		0x06d6	Aashima Technology
@@ -2578,6 +2579,7 @@ product INTEL2 IRMH        	0x0020	Integrated Rate Mat
 product INTEL2 IRMH2        	0x0024	Integrated Rate Matching Hub
 product INTEL2 IRMH3        	0x8000	Integrated Rate Matching Hub
 product INTEL2 IRMH4        	0x8008	Integrated Rate Matching Hub
+product INTEL2 SNP		0x0a2b	Stone Peak (7265) Bluetooth Module
 product INTEL2 SFP		0x0aa7  Sandy Peak (3168) Bluetooth Module
 product INTEL2 JFP		0x0aaa	Jefferson Peak (9460/9560) Bluetooth Module
 product INTEL2 THP 		0x0025	Thunder Peak (9160/9260) Bluetooth Module
@@ -2669,6 +2671,9 @@ product KEISOKUGIKEN USBDAQ	0x0068	HKS-0200 USBDAQ
 /* Kensington products */
 product KENSINGTON ORBIT	0x1003	Orbit USB/PS2 trackball
 product KENSINGTON TURBOBALL	0x1005	TurboBall
+
+/* Synaptics products */
+product SYNAPTICS FPR9A		0x009a	Fingerprint Reader
 
 /* Keyspan products */
 product KEYSPAN USA28_NF	0x0101	USA-28 serial Adapter (no firmware)

From owner-svn-src-all@freebsd.org  Sat Mar  9 02:03:09 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2233615329F8;
 Sat,  9 Mar 2019 02:03:09 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 B99BB97384;
 Sat,  9 Mar 2019 02:03:08 +0000 (UTC)
 (envelope-from marcel@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 A7B2C4560;
 Sat,  9 Mar 2019 02:03:08 +0000 (UTC)
 (envelope-from marcel@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x292389r085821;
 Sat, 9 Mar 2019 02:03:08 GMT (envelope-from marcel@FreeBSD.org)
Received: (from marcel@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29237K7085813;
 Sat, 9 Mar 2019 02:03:07 GMT (envelope-from marcel@FreeBSD.org)
Message-Id: <201903090203.x29237K7085813@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: marcel set sender to
 marcel@FreeBSD.org using -f
From: Marcel Moolenaar <marcel@FreeBSD.org>
Date: Sat, 9 Mar 2019 02:03:07 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344957 - head/usr.bin/mkimg/tests
X-SVN-Group: head
X-SVN-Commit-Author: marcel
X-SVN-Commit-Paths: head/usr.bin/mkimg/tests
X-SVN-Commit-Revision: 344957
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: B99BB97384
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.951,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 02:03:09 -0000

Author: marcel
Date: Sat Mar  9 02:03:07 2019
New Revision: 344957
URL: https://svnweb.freebsd.org/changeset/base/344957

Log:
  Don't compress and uuencode the "hexdump -C" output files.  Just
  save them with the $FreeBSD$ tag prepended.  Changes to these
  files are now a lot easier to comprehend, which makes diffs also
  reviewable.

Added:
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vmdk.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.qcow.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.qcow2.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.raw.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vhd.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vhdf.hex   (contents, props changed)
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vmdk.hex   (contents, props changed)
Deleted:
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-apm.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-bsd.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-ebr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-mbr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-4096-vtoc8.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-apm.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-bsd.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-ebr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-mbr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.raw.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-1x1-512-vtoc8.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-apm.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-bsd.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-ebr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-mbr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-4096-vtoc8.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-apm.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-bsd.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-ebr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-gpt.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-mbr.vmdk.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.qcow.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.qcow2.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.raw.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vhd.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vhdf.gz.uu
  head/usr.bin/mkimg/tests/img-63x255-512-vtoc8.vmdk.gz.uu
Modified:
  head/usr.bin/mkimg/tests/Makefile
  head/usr.bin/mkimg/tests/mkimg_test.sh

Modified: head/usr.bin/mkimg/tests/Makefile
==============================================================================
--- head/usr.bin/mkimg/tests/Makefile	Sat Mar  9 01:37:00 2019	(r344956)
+++ head/usr.bin/mkimg/tests/Makefile	Sat Mar  9 02:03:07 2019	(r344957)
@@ -7,12 +7,12 @@ PACKAGE=	tests
 _REBASE_SCRIPT=	mkimg_test
 ATF_TESTS_SH=	${_REBASE_SCRIPT}
 
-SOURCES!=	cd ${.CURDIR}; echo *.uu
-${PACKAGE}FILES+=		${SOURCES:S,.gz.uu,,g}
+SOURCES!=	cd ${.CURDIR}; echo *.hex
+${PACKAGE}FILES+=		${SOURCES:S,.hex,,g}
 
 .for f in ${${PACKAGE}FILES}
-$f: $f.gz.uu
-	uudecode -p ${.ALLSRC} | gunzip -c > ${.TARGET}
+$f: $f.hex
+	sed -e '/^#.*/D' < ${.ALLSRC} > ${.TARGET}
 .endfor
 
 CLEANFILES+=	${${PACKAGE}FILES}}

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,550 @@
+# $FreeBSD$
+00000000  51 46 49 fb 00 00 00 01  00 00 00 00 00 00 00 00  |QFI.............|
+00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 42 10 00  |.............B..|
+00000020  0c 09 00 00 00 00 00 00  00 00 00 00 00 00 10 00  |................|
+00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001000  00 00 00 00 00 00 20 00  00 00 00 00 00 00 30 00  |...... .......0.|
+00001010  00 00 00 00 00 00 40 00  00 00 00 00 00 00 00 00  |......@.........|
+00001020  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00002000  00 00 00 00 00 00 50 00  00 00 00 00 00 00 60 00  |......P.......`.|
+00002010  00 00 00 00 00 00 70 00  00 00 00 00 00 00 80 00  |......p.........|
+00002020  00 00 00 00 00 00 90 00  00 00 00 00 00 00 a0 00  |................|
+00002030  00 00 00 00 00 00 b0 00  00 00 00 00 00 00 c0 00  |................|
+00002040  00 00 00 00 00 00 d0 00  00 00 00 00 00 00 e0 00  |................|
+00002050  00 00 00 00 00 00 f0 00  00 00 00 00 00 01 00 00  |................|
+00002060  00 00 00 00 00 01 10 00  00 00 00 00 00 01 20 00  |.............. .|
+00002070  00 00 00 00 00 01 30 00  00 00 00 00 00 01 40 00  |......0.......@.|
+00002080  00 00 00 00 00 01 50 00  00 00 00 00 00 01 60 00  |......P.......`.|
+00002090  00 00 00 00 00 01 70 00  00 00 00 00 00 01 80 00  |......p.........|
+000020a0  00 00 00 00 00 01 90 00  00 00 00 00 00 01 a0 00  |................|
+000020b0  00 00 00 00 00 01 b0 00  00 00 00 00 00 01 c0 00  |................|
+000020c0  00 00 00 00 00 01 d0 00  00 00 00 00 00 01 e0 00  |................|
+000020d0  00 00 00 00 00 01 f0 00  00 00 00 00 00 02 00 00  |................|
+000020e0  00 00 00 00 00 02 10 00  00 00 00 00 00 02 20 00  |.............. .|
+000020f0  00 00 00 00 00 02 30 00  00 00 00 00 00 02 40 00  |......0.......@.|
+00002100  00 00 00 00 00 02 50 00  00 00 00 00 00 02 60 00  |......P.......`.|
+00002110  00 00 00 00 00 02 70 00  00 00 00 00 00 02 80 00  |......p.........|
+00002120  00 00 00 00 00 02 90 00  00 00 00 00 00 02 a0 00  |................|
+00002130  00 00 00 00 00 02 b0 00  00 00 00 00 00 02 c0 00  |................|
+00002140  00 00 00 00 00 02 d0 00  00 00 00 00 00 02 e0 00  |................|
+00002150  00 00 00 00 00 02 f0 00  00 00 00 00 00 03 00 00  |................|
+00002160  00 00 00 00 00 03 10 00  00 00 00 00 00 03 20 00  |.............. .|
+00002170  00 00 00 00 00 03 30 00  00 00 00 00 00 03 40 00  |......0.......@.|
+00002180  00 00 00 00 00 03 50 00  00 00 00 00 00 03 60 00  |......P.......`.|
+00002190  00 00 00 00 00 03 70 00  00 00 00 00 00 03 80 00  |......p.........|
+000021a0  00 00 00 00 00 03 90 00  00 00 00 00 00 03 a0 00  |................|
+000021b0  00 00 00 00 00 03 b0 00  00 00 00 00 00 03 c0 00  |................|
+000021c0  00 00 00 00 00 03 d0 00  00 00 00 00 00 03 e0 00  |................|
+000021d0  00 00 00 00 00 03 f0 00  00 00 00 00 00 04 00 00  |................|
+000021e0  00 00 00 00 00 04 10 00  00 00 00 00 00 04 20 00  |.............. .|
+000021f0  00 00 00 00 00 04 30 00  00 00 00 00 00 04 40 00  |......0.......@.|
+00002200  00 00 00 00 00 04 50 00  00 00 00 00 00 04 60 00  |......P.......`.|
+00002210  00 00 00 00 00 04 70 00  00 00 00 00 00 04 80 00  |......p.........|
+00002220  00 00 00 00 00 04 90 00  00 00 00 00 00 04 a0 00  |................|
+00002230  00 00 00 00 00 04 b0 00  00 00 00 00 00 04 c0 00  |................|
+00002240  00 00 00 00 00 04 d0 00  00 00 00 00 00 04 e0 00  |................|
+00002250  00 00 00 00 00 04 f0 00  00 00 00 00 00 05 00 00  |................|
+00002260  00 00 00 00 00 05 10 00  00 00 00 00 00 05 20 00  |.............. .|
+00002270  00 00 00 00 00 05 30 00  00 00 00 00 00 05 40 00  |......0.......@.|
+00002280  00 00 00 00 00 05 50 00  00 00 00 00 00 05 60 00  |......P.......`.|
+00002290  00 00 00 00 00 05 70 00  00 00 00 00 00 05 80 00  |......p.........|
+000022a0  00 00 00 00 00 05 90 00  00 00 00 00 00 05 a0 00  |................|
+000022b0  00 00 00 00 00 05 b0 00  00 00 00 00 00 05 c0 00  |................|
+000022c0  00 00 00 00 00 05 d0 00  00 00 00 00 00 05 e0 00  |................|
+000022d0  00 00 00 00 00 05 f0 00  00 00 00 00 00 06 00 00  |................|
+000022e0  00 00 00 00 00 06 10 00  00 00 00 00 00 06 20 00  |.............. .|
+000022f0  00 00 00 00 00 06 30 00  00 00 00 00 00 06 40 00  |......0.......@.|
+00002300  00 00 00 00 00 06 50 00  00 00 00 00 00 06 60 00  |......P.......`.|
+00002310  00 00 00 00 00 06 70 00  00 00 00 00 00 06 80 00  |......p.........|
+00002320  00 00 00 00 00 06 90 00  00 00 00 00 00 06 a0 00  |................|
+00002330  00 00 00 00 00 06 b0 00  00 00 00 00 00 06 c0 00  |................|
+00002340  00 00 00 00 00 06 d0 00  00 00 00 00 00 06 e0 00  |................|
+00002350  00 00 00 00 00 06 f0 00  00 00 00 00 00 07 00 00  |................|
+00002360  00 00 00 00 00 07 10 00  00 00 00 00 00 07 20 00  |.............. .|
+00002370  00 00 00 00 00 07 30 00  00 00 00 00 00 07 40 00  |......0.......@.|
+00002380  00 00 00 00 00 07 50 00  00 00 00 00 00 07 60 00  |......P.......`.|
+00002390  00 00 00 00 00 07 70 00  00 00 00 00 00 07 80 00  |......p.........|
+000023a0  00 00 00 00 00 07 90 00  00 00 00 00 00 07 a0 00  |................|
+000023b0  00 00 00 00 00 07 b0 00  00 00 00 00 00 07 c0 00  |................|
+000023c0  00 00 00 00 00 07 d0 00  00 00 00 00 00 07 e0 00  |................|
+000023d0  00 00 00 00 00 07 f0 00  00 00 00 00 00 08 00 00  |................|
+000023e0  00 00 00 00 00 08 10 00  00 00 00 00 00 08 20 00  |.............. .|
+000023f0  00 00 00 00 00 08 30 00  00 00 00 00 00 08 40 00  |......0.......@.|
+00002400  00 00 00 00 00 08 50 00  00 00 00 00 00 08 60 00  |......P.......`.|
+00002410  00 00 00 00 00 08 70 00  00 00 00 00 00 08 80 00  |......p.........|
+00002420  00 00 00 00 00 08 90 00  00 00 00 00 00 08 a0 00  |................|
+00002430  00 00 00 00 00 08 b0 00  00 00 00 00 00 08 c0 00  |................|
+00002440  00 00 00 00 00 08 d0 00  00 00 00 00 00 08 e0 00  |................|
+00002450  00 00 00 00 00 08 f0 00  00 00 00 00 00 09 00 00  |................|
+00002460  00 00 00 00 00 09 10 00  00 00 00 00 00 09 20 00  |.............. .|
+00002470  00 00 00 00 00 09 30 00  00 00 00 00 00 09 40 00  |......0.......@.|
+00002480  00 00 00 00 00 09 50 00  00 00 00 00 00 09 60 00  |......P.......`.|
+00002490  00 00 00 00 00 09 70 00  00 00 00 00 00 09 80 00  |......p.........|
+000024a0  00 00 00 00 00 09 90 00  00 00 00 00 00 09 a0 00  |................|
+000024b0  00 00 00 00 00 09 b0 00  00 00 00 00 00 09 c0 00  |................|
+000024c0  00 00 00 00 00 09 d0 00  00 00 00 00 00 09 e0 00  |................|
+000024d0  00 00 00 00 00 09 f0 00  00 00 00 00 00 0a 00 00  |................|
+000024e0  00 00 00 00 00 0a 10 00  00 00 00 00 00 0a 20 00  |.............. .|
+000024f0  00 00 00 00 00 0a 30 00  00 00 00 00 00 0a 40 00  |......0.......@.|
+00002500  00 00 00 00 00 0a 50 00  00 00 00 00 00 0a 60 00  |......P.......`.|
+00002510  00 00 00 00 00 0a 70 00  00 00 00 00 00 0a 80 00  |......p.........|
+00002520  00 00 00 00 00 0a 90 00  00 00 00 00 00 0a a0 00  |................|
+00002530  00 00 00 00 00 0a b0 00  00 00 00 00 00 0a c0 00  |................|
+00002540  00 00 00 00 00 0a d0 00  00 00 00 00 00 0a e0 00  |................|
+00002550  00 00 00 00 00 0a f0 00  00 00 00 00 00 0b 00 00  |................|
+00002560  00 00 00 00 00 0b 10 00  00 00 00 00 00 0b 20 00  |.............. .|
+00002570  00 00 00 00 00 0b 30 00  00 00 00 00 00 0b 40 00  |......0.......@.|
+00002580  00 00 00 00 00 0b 50 00  00 00 00 00 00 0b 60 00  |......P.......`.|
+00002590  00 00 00 00 00 0b 70 00  00 00 00 00 00 0b 80 00  |......p.........|
+000025a0  00 00 00 00 00 0b 90 00  00 00 00 00 00 0b a0 00  |................|
+000025b0  00 00 00 00 00 0b b0 00  00 00 00 00 00 0b c0 00  |................|
+000025c0  00 00 00 00 00 0b d0 00  00 00 00 00 00 0b e0 00  |................|
+000025d0  00 00 00 00 00 0b f0 00  00 00 00 00 00 0c 00 00  |................|
+000025e0  00 00 00 00 00 0c 10 00  00 00 00 00 00 0c 20 00  |.............. .|
+000025f0  00 00 00 00 00 0c 30 00  00 00 00 00 00 0c 40 00  |......0.......@.|
+00002600  00 00 00 00 00 0c 50 00  00 00 00 00 00 0c 60 00  |......P.......`.|
+00002610  00 00 00 00 00 0c 70 00  00 00 00 00 00 0c 80 00  |......p.........|
+00002620  00 00 00 00 00 0c 90 00  00 00 00 00 00 0c a0 00  |................|
+00002630  00 00 00 00 00 0c b0 00  00 00 00 00 00 0c c0 00  |................|
+00002640  00 00 00 00 00 0c d0 00  00 00 00 00 00 0c e0 00  |................|
+00002650  00 00 00 00 00 0c f0 00  00 00 00 00 00 0d 00 00  |................|
+00002660  00 00 00 00 00 0d 10 00  00 00 00 00 00 0d 20 00  |.............. .|
+00002670  00 00 00 00 00 0d 30 00  00 00 00 00 00 0d 40 00  |......0.......@.|
+00002680  00 00 00 00 00 0d 50 00  00 00 00 00 00 0d 60 00  |......P.......`.|
+00002690  00 00 00 00 00 0d 70 00  00 00 00 00 00 0d 80 00  |......p.........|
+000026a0  00 00 00 00 00 0d 90 00  00 00 00 00 00 0d a0 00  |................|
+000026b0  00 00 00 00 00 0d b0 00  00 00 00 00 00 0d c0 00  |................|
+000026c0  00 00 00 00 00 0d d0 00  00 00 00 00 00 0d e0 00  |................|
+000026d0  00 00 00 00 00 0d f0 00  00 00 00 00 00 0e 00 00  |................|
+000026e0  00 00 00 00 00 0e 10 00  00 00 00 00 00 0e 20 00  |.............. .|
+000026f0  00 00 00 00 00 0e 30 00  00 00 00 00 00 0e 40 00  |......0.......@.|
+00002700  00 00 00 00 00 0e 50 00  00 00 00 00 00 0e 60 00  |......P.......`.|
+00002710  00 00 00 00 00 0e 70 00  00 00 00 00 00 0e 80 00  |......p.........|
+00002720  00 00 00 00 00 0e 90 00  00 00 00 00 00 0e a0 00  |................|
+00002730  00 00 00 00 00 0e b0 00  00 00 00 00 00 0e c0 00  |................|
+00002740  00 00 00 00 00 0e d0 00  00 00 00 00 00 0e e0 00  |................|
+00002750  00 00 00 00 00 0e f0 00  00 00 00 00 00 0f 00 00  |................|
+00002760  00 00 00 00 00 0f 10 00  00 00 00 00 00 0f 20 00  |.............. .|
+00002770  00 00 00 00 00 0f 30 00  00 00 00 00 00 0f 40 00  |......0.......@.|
+00002780  00 00 00 00 00 0f 50 00  00 00 00 00 00 0f 60 00  |......P.......`.|
+00002790  00 00 00 00 00 0f 70 00  00 00 00 00 00 0f 80 00  |......p.........|
+000027a0  00 00 00 00 00 0f 90 00  00 00 00 00 00 0f a0 00  |................|
+000027b0  00 00 00 00 00 0f b0 00  00 00 00 00 00 0f c0 00  |................|
+000027c0  00 00 00 00 00 0f d0 00  00 00 00 00 00 0f e0 00  |................|
+000027d0  00 00 00 00 00 0f f0 00  00 00 00 00 00 10 00 00  |................|
+000027e0  00 00 00 00 00 10 10 00  00 00 00 00 00 10 20 00  |.............. .|
+000027f0  00 00 00 00 00 10 30 00  00 00 00 00 00 10 40 00  |......0.......@.|
+00002800  00 00 00 00 00 10 50 00  00 00 00 00 00 10 60 00  |......P.......`.|
+00002810  00 00 00 00 00 10 70 00  00 00 00 00 00 10 80 00  |......p.........|
+00002820  00 00 00 00 00 10 90 00  00 00 00 00 00 10 a0 00  |................|
+00002830  00 00 00 00 00 10 b0 00  00 00 00 00 00 10 c0 00  |................|
+00002840  00 00 00 00 00 10 d0 00  00 00 00 00 00 10 e0 00  |................|
+00002850  00 00 00 00 00 10 f0 00  00 00 00 00 00 11 00 00  |................|
+00002860  00 00 00 00 00 11 10 00  00 00 00 00 00 11 20 00  |.............. .|
+00002870  00 00 00 00 00 11 30 00  00 00 00 00 00 11 40 00  |......0.......@.|
+00002880  00 00 00 00 00 11 50 00  00 00 00 00 00 11 60 00  |......P.......`.|
+00002890  00 00 00 00 00 11 70 00  00 00 00 00 00 11 80 00  |......p.........|
+000028a0  00 00 00 00 00 11 90 00  00 00 00 00 00 11 a0 00  |................|
+000028b0  00 00 00 00 00 11 b0 00  00 00 00 00 00 11 c0 00  |................|
+000028c0  00 00 00 00 00 11 d0 00  00 00 00 00 00 11 e0 00  |................|
+000028d0  00 00 00 00 00 11 f0 00  00 00 00 00 00 12 00 00  |................|
+000028e0  00 00 00 00 00 12 10 00  00 00 00 00 00 12 20 00  |.............. .|
+000028f0  00 00 00 00 00 12 30 00  00 00 00 00 00 12 40 00  |......0.......@.|
+00002900  00 00 00 00 00 12 50 00  00 00 00 00 00 12 60 00  |......P.......`.|
+00002910  00 00 00 00 00 12 70 00  00 00 00 00 00 12 80 00  |......p.........|
+00002920  00 00 00 00 00 12 90 00  00 00 00 00 00 12 a0 00  |................|
+00002930  00 00 00 00 00 12 b0 00  00 00 00 00 00 12 c0 00  |................|
+00002940  00 00 00 00 00 12 d0 00  00 00 00 00 00 12 e0 00  |................|
+00002950  00 00 00 00 00 12 f0 00  00 00 00 00 00 13 00 00  |................|
+00002960  00 00 00 00 00 13 10 00  00 00 00 00 00 13 20 00  |.............. .|
+00002970  00 00 00 00 00 13 30 00  00 00 00 00 00 13 40 00  |......0.......@.|
+00002980  00 00 00 00 00 13 50 00  00 00 00 00 00 13 60 00  |......P.......`.|
+00002990  00 00 00 00 00 13 70 00  00 00 00 00 00 13 80 00  |......p.........|
+000029a0  00 00 00 00 00 13 90 00  00 00 00 00 00 13 a0 00  |................|
+000029b0  00 00 00 00 00 13 b0 00  00 00 00 00 00 13 c0 00  |................|
+000029c0  00 00 00 00 00 13 d0 00  00 00 00 00 00 13 e0 00  |................|
+000029d0  00 00 00 00 00 13 f0 00  00 00 00 00 00 14 00 00  |................|
+000029e0  00 00 00 00 00 14 10 00  00 00 00 00 00 14 20 00  |.............. .|
+000029f0  00 00 00 00 00 14 30 00  00 00 00 00 00 14 40 00  |......0.......@.|
+00002a00  00 00 00 00 00 14 50 00  00 00 00 00 00 14 60 00  |......P.......`.|
+00002a10  00 00 00 00 00 14 70 00  00 00 00 00 00 14 80 00  |......p.........|
+00002a20  00 00 00 00 00 14 90 00  00 00 00 00 00 14 a0 00  |................|
+00002a30  00 00 00 00 00 14 b0 00  00 00 00 00 00 14 c0 00  |................|
+00002a40  00 00 00 00 00 14 d0 00  00 00 00 00 00 14 e0 00  |................|
+00002a50  00 00 00 00 00 14 f0 00  00 00 00 00 00 15 00 00  |................|
+00002a60  00 00 00 00 00 15 10 00  00 00 00 00 00 15 20 00  |.............. .|
+00002a70  00 00 00 00 00 15 30 00  00 00 00 00 00 15 40 00  |......0.......@.|
+00002a80  00 00 00 00 00 15 50 00  00 00 00 00 00 15 60 00  |......P.......`.|
+00002a90  00 00 00 00 00 15 70 00  00 00 00 00 00 15 80 00  |......p.........|
+00002aa0  00 00 00 00 00 15 90 00  00 00 00 00 00 15 a0 00  |................|
+00002ab0  00 00 00 00 00 15 b0 00  00 00 00 00 00 15 c0 00  |................|
+00002ac0  00 00 00 00 00 15 d0 00  00 00 00 00 00 15 e0 00  |................|
+00002ad0  00 00 00 00 00 15 f0 00  00 00 00 00 00 16 00 00  |................|
+00002ae0  00 00 00 00 00 16 10 00  00 00 00 00 00 16 20 00  |.............. .|
+00002af0  00 00 00 00 00 16 30 00  00 00 00 00 00 16 40 00  |......0.......@.|
+00002b00  00 00 00 00 00 16 50 00  00 00 00 00 00 16 60 00  |......P.......`.|
+00002b10  00 00 00 00 00 16 70 00  00 00 00 00 00 16 80 00  |......p.........|
+00002b20  00 00 00 00 00 16 90 00  00 00 00 00 00 16 a0 00  |................|
+00002b30  00 00 00 00 00 16 b0 00  00 00 00 00 00 16 c0 00  |................|
+00002b40  00 00 00 00 00 16 d0 00  00 00 00 00 00 16 e0 00  |................|
+00002b50  00 00 00 00 00 16 f0 00  00 00 00 00 00 17 00 00  |................|
+00002b60  00 00 00 00 00 17 10 00  00 00 00 00 00 17 20 00  |.............. .|
+00002b70  00 00 00 00 00 17 30 00  00 00 00 00 00 17 40 00  |......0.......@.|
+00002b80  00 00 00 00 00 17 50 00  00 00 00 00 00 17 60 00  |......P.......`.|
+00002b90  00 00 00 00 00 17 70 00  00 00 00 00 00 17 80 00  |......p.........|
+00002ba0  00 00 00 00 00 17 90 00  00 00 00 00 00 17 a0 00  |................|
+00002bb0  00 00 00 00 00 17 b0 00  00 00 00 00 00 17 c0 00  |................|
+00002bc0  00 00 00 00 00 17 d0 00  00 00 00 00 00 17 e0 00  |................|
+00002bd0  00 00 00 00 00 17 f0 00  00 00 00 00 00 18 00 00  |................|
+00002be0  00 00 00 00 00 18 10 00  00 00 00 00 00 18 20 00  |.............. .|
+00002bf0  00 00 00 00 00 18 30 00  00 00 00 00 00 18 40 00  |......0.......@.|
+00002c00  00 00 00 00 00 18 50 00  00 00 00 00 00 18 60 00  |......P.......`.|
+00002c10  00 00 00 00 00 18 70 00  00 00 00 00 00 18 80 00  |......p.........|
+00002c20  00 00 00 00 00 18 90 00  00 00 00 00 00 18 a0 00  |................|
+00002c30  00 00 00 00 00 18 b0 00  00 00 00 00 00 18 c0 00  |................|
+00002c40  00 00 00 00 00 18 d0 00  00 00 00 00 00 18 e0 00  |................|
+00002c50  00 00 00 00 00 18 f0 00  00 00 00 00 00 19 00 00  |................|
+00002c60  00 00 00 00 00 19 10 00  00 00 00 00 00 19 20 00  |.............. .|
+00002c70  00 00 00 00 00 19 30 00  00 00 00 00 00 19 40 00  |......0.......@.|
+00002c80  00 00 00 00 00 19 50 00  00 00 00 00 00 19 60 00  |......P.......`.|
+00002c90  00 00 00 00 00 19 70 00  00 00 00 00 00 19 80 00  |......p.........|
+00002ca0  00 00 00 00 00 19 90 00  00 00 00 00 00 19 a0 00  |................|
+00002cb0  00 00 00 00 00 19 b0 00  00 00 00 00 00 19 c0 00  |................|
+00002cc0  00 00 00 00 00 19 d0 00  00 00 00 00 00 19 e0 00  |................|
+00002cd0  00 00 00 00 00 19 f0 00  00 00 00 00 00 1a 00 00  |................|
+00002ce0  00 00 00 00 00 1a 10 00  00 00 00 00 00 1a 20 00  |.............. .|
+00002cf0  00 00 00 00 00 1a 30 00  00 00 00 00 00 1a 40 00  |......0.......@.|
+00002d00  00 00 00 00 00 1a 50 00  00 00 00 00 00 1a 60 00  |......P.......`.|
+00002d10  00 00 00 00 00 1a 70 00  00 00 00 00 00 1a 80 00  |......p.........|
+00002d20  00 00 00 00 00 1a 90 00  00 00 00 00 00 1a a0 00  |................|
+00002d30  00 00 00 00 00 1a b0 00  00 00 00 00 00 1a c0 00  |................|
+00002d40  00 00 00 00 00 1a d0 00  00 00 00 00 00 1a e0 00  |................|
+00002d50  00 00 00 00 00 1a f0 00  00 00 00 00 00 1b 00 00  |................|
+00002d60  00 00 00 00 00 1b 10 00  00 00 00 00 00 1b 20 00  |.............. .|
+00002d70  00 00 00 00 00 1b 30 00  00 00 00 00 00 1b 40 00  |......0.......@.|
+00002d80  00 00 00 00 00 1b 50 00  00 00 00 00 00 1b 60 00  |......P.......`.|
+00002d90  00 00 00 00 00 1b 70 00  00 00 00 00 00 1b 80 00  |......p.........|
+00002da0  00 00 00 00 00 1b 90 00  00 00 00 00 00 1b a0 00  |................|
+00002db0  00 00 00 00 00 1b b0 00  00 00 00 00 00 1b c0 00  |................|
+00002dc0  00 00 00 00 00 1b d0 00  00 00 00 00 00 1b e0 00  |................|
+00002dd0  00 00 00 00 00 1b f0 00  00 00 00 00 00 1c 00 00  |................|
+00002de0  00 00 00 00 00 1c 10 00  00 00 00 00 00 1c 20 00  |.............. .|
+00002df0  00 00 00 00 00 1c 30 00  00 00 00 00 00 1c 40 00  |......0.......@.|
+00002e00  00 00 00 00 00 1c 50 00  00 00 00 00 00 1c 60 00  |......P.......`.|
+00002e10  00 00 00 00 00 1c 70 00  00 00 00 00 00 1c 80 00  |......p.........|
+00002e20  00 00 00 00 00 1c 90 00  00 00 00 00 00 1c a0 00  |................|
+00002e30  00 00 00 00 00 1c b0 00  00 00 00 00 00 1c c0 00  |................|
+00002e40  00 00 00 00 00 1c d0 00  00 00 00 00 00 1c e0 00  |................|
+00002e50  00 00 00 00 00 1c f0 00  00 00 00 00 00 1d 00 00  |................|
+00002e60  00 00 00 00 00 1d 10 00  00 00 00 00 00 1d 20 00  |.............. .|
+00002e70  00 00 00 00 00 1d 30 00  00 00 00 00 00 1d 40 00  |......0.......@.|
+00002e80  00 00 00 00 00 1d 50 00  00 00 00 00 00 1d 60 00  |......P.......`.|
+00002e90  00 00 00 00 00 1d 70 00  00 00 00 00 00 1d 80 00  |......p.........|
+00002ea0  00 00 00 00 00 1d 90 00  00 00 00 00 00 1d a0 00  |................|
+00002eb0  00 00 00 00 00 1d b0 00  00 00 00 00 00 1d c0 00  |................|
+00002ec0  00 00 00 00 00 1d d0 00  00 00 00 00 00 1d e0 00  |................|
+00002ed0  00 00 00 00 00 1d f0 00  00 00 00 00 00 1e 00 00  |................|
+00002ee0  00 00 00 00 00 1e 10 00  00 00 00 00 00 1e 20 00  |.............. .|
+00002ef0  00 00 00 00 00 1e 30 00  00 00 00 00 00 1e 40 00  |......0.......@.|
+00002f00  00 00 00 00 00 1e 50 00  00 00 00 00 00 1e 60 00  |......P.......`.|
+00002f10  00 00 00 00 00 1e 70 00  00 00 00 00 00 1e 80 00  |......p.........|
+00002f20  00 00 00 00 00 1e 90 00  00 00 00 00 00 1e a0 00  |................|
+00002f30  00 00 00 00 00 1e b0 00  00 00 00 00 00 1e c0 00  |................|
+00002f40  00 00 00 00 00 1e d0 00  00 00 00 00 00 1e e0 00  |................|
+00002f50  00 00 00 00 00 1e f0 00  00 00 00 00 00 1f 00 00  |................|
+00002f60  00 00 00 00 00 1f 10 00  00 00 00 00 00 1f 20 00  |.............. .|
+00002f70  00 00 00 00 00 1f 30 00  00 00 00 00 00 1f 40 00  |......0.......@.|
+00002f80  00 00 00 00 00 1f 50 00  00 00 00 00 00 1f 60 00  |......P.......`.|
+00002f90  00 00 00 00 00 1f 70 00  00 00 00 00 00 1f 80 00  |......p.........|
+00002fa0  00 00 00 00 00 1f 90 00  00 00 00 00 00 1f a0 00  |................|
+00002fb0  00 00 00 00 00 1f b0 00  00 00 00 00 00 1f c0 00  |................|
+00002fc0  00 00 00 00 00 1f d0 00  00 00 00 00 00 1f e0 00  |................|
+00002fd0  00 00 00 00 00 1f f0 00  00 00 00 00 00 20 00 00  |............. ..|
+00002fe0  00 00 00 00 00 20 10 00  00 00 00 00 00 20 20 00  |..... .......  .|
+00002ff0  00 00 00 00 00 20 30 00  00 00 00 00 00 20 40 00  |..... 0...... @.|
+00003000  00 00 00 00 00 20 50 00  00 00 00 00 00 20 60 00  |..... P...... `.|
+00003010  00 00 00 00 00 20 70 00  00 00 00 00 00 20 80 00  |..... p...... ..|
+00003020  00 00 00 00 00 20 90 00  00 00 00 00 00 20 a0 00  |..... ....... ..|
+00003030  00 00 00 00 00 20 b0 00  00 00 00 00 00 20 c0 00  |..... ....... ..|
+00003040  00 00 00 00 00 20 d0 00  00 00 00 00 00 20 e0 00  |..... ....... ..|
+00003050  00 00 00 00 00 20 f0 00  00 00 00 00 00 21 00 00  |..... .......!..|
+00003060  00 00 00 00 00 21 10 00  00 00 00 00 00 21 20 00  |.....!.......! .|
+00003070  00 00 00 00 00 21 30 00  00 00 00 00 00 21 40 00  |.....!0......!@.|
+00003080  00 00 00 00 00 21 50 00  00 00 00 00 00 21 60 00  |.....!P......!`.|
+00003090  00 00 00 00 00 21 70 00  00 00 00 00 00 21 80 00  |.....!p......!..|
+000030a0  00 00 00 00 00 21 90 00  00 00 00 00 00 21 a0 00  |.....!.......!..|
+000030b0  00 00 00 00 00 21 b0 00  00 00 00 00 00 21 c0 00  |.....!.......!..|
+000030c0  00 00 00 00 00 21 d0 00  00 00 00 00 00 21 e0 00  |.....!.......!..|
+000030d0  00 00 00 00 00 21 f0 00  00 00 00 00 00 22 00 00  |.....!......."..|
+000030e0  00 00 00 00 00 22 10 00  00 00 00 00 00 22 20 00  |....."......." .|
+000030f0  00 00 00 00 00 22 30 00  00 00 00 00 00 22 40 00  |....."0......"@.|
+00003100  00 00 00 00 00 22 50 00  00 00 00 00 00 22 60 00  |....."P......"`.|
+00003110  00 00 00 00 00 22 70 00  00 00 00 00 00 22 80 00  |....."p......"..|
+00003120  00 00 00 00 00 22 90 00  00 00 00 00 00 22 a0 00  |....."......."..|
+00003130  00 00 00 00 00 22 b0 00  00 00 00 00 00 22 c0 00  |....."......."..|
+00003140  00 00 00 00 00 22 d0 00  00 00 00 00 00 22 e0 00  |....."......."..|
+00003150  00 00 00 00 00 22 f0 00  00 00 00 00 00 23 00 00  |.....".......#..|
+00003160  00 00 00 00 00 23 10 00  00 00 00 00 00 23 20 00  |.....#.......# .|
+00003170  00 00 00 00 00 23 30 00  00 00 00 00 00 23 40 00  |.....#0......#@.|
+00003180  00 00 00 00 00 23 50 00  00 00 00 00 00 23 60 00  |.....#P......#`.|
+00003190  00 00 00 00 00 23 70 00  00 00 00 00 00 23 80 00  |.....#p......#..|
+000031a0  00 00 00 00 00 23 90 00  00 00 00 00 00 23 a0 00  |.....#.......#..|
+000031b0  00 00 00 00 00 23 b0 00  00 00 00 00 00 23 c0 00  |.....#.......#..|
+000031c0  00 00 00 00 00 23 d0 00  00 00 00 00 00 23 e0 00  |.....#.......#..|
+000031d0  00 00 00 00 00 23 f0 00  00 00 00 00 00 24 00 00  |.....#.......$..|
+000031e0  00 00 00 00 00 24 10 00  00 00 00 00 00 24 20 00  |.....$.......$ .|
+000031f0  00 00 00 00 00 24 30 00  00 00 00 00 00 24 40 00  |.....$0......$@.|
+00003200  00 00 00 00 00 24 50 00  00 00 00 00 00 24 60 00  |.....$P......$`.|
+00003210  00 00 00 00 00 24 70 00  00 00 00 00 00 24 80 00  |.....$p......$..|
+00003220  00 00 00 00 00 24 90 00  00 00 00 00 00 24 a0 00  |.....$.......$..|
+00003230  00 00 00 00 00 24 b0 00  00 00 00 00 00 24 c0 00  |.....$.......$..|
+00003240  00 00 00 00 00 24 d0 00  00 00 00 00 00 24 e0 00  |.....$.......$..|
+00003250  00 00 00 00 00 24 f0 00  00 00 00 00 00 25 00 00  |.....$.......%..|
+00003260  00 00 00 00 00 25 10 00  00 00 00 00 00 25 20 00  |.....%.......% .|
+00003270  00 00 00 00 00 25 30 00  00 00 00 00 00 25 40 00  |.....%0......%@.|
+00003280  00 00 00 00 00 25 50 00  00 00 00 00 00 25 60 00  |.....%P......%`.|
+00003290  00 00 00 00 00 25 70 00  00 00 00 00 00 25 80 00  |.....%p......%..|
+000032a0  00 00 00 00 00 25 90 00  00 00 00 00 00 25 a0 00  |.....%.......%..|
+000032b0  00 00 00 00 00 25 b0 00  00 00 00 00 00 25 c0 00  |.....%.......%..|
+000032c0  00 00 00 00 00 25 d0 00  00 00 00 00 00 25 e0 00  |.....%.......%..|
+000032d0  00 00 00 00 00 25 f0 00  00 00 00 00 00 26 00 00  |.....%.......&..|
+000032e0  00 00 00 00 00 26 10 00  00 00 00 00 00 26 20 00  |.....&.......& .|
+000032f0  00 00 00 00 00 26 30 00  00 00 00 00 00 26 40 00  |.....&0......&@.|
+00003300  00 00 00 00 00 26 50 00  00 00 00 00 00 26 60 00  |.....&P......&`.|
+00003310  00 00 00 00 00 26 70 00  00 00 00 00 00 26 80 00  |.....&p......&..|
+00003320  00 00 00 00 00 26 90 00  00 00 00 00 00 26 a0 00  |.....&.......&..|
+00003330  00 00 00 00 00 26 b0 00  00 00 00 00 00 26 c0 00  |.....&.......&..|
+00003340  00 00 00 00 00 26 d0 00  00 00 00 00 00 26 e0 00  |.....&.......&..|
+00003350  00 00 00 00 00 26 f0 00  00 00 00 00 00 27 00 00  |.....&.......'..|
+00003360  00 00 00 00 00 27 10 00  00 00 00 00 00 27 20 00  |.....'.......' .|
+00003370  00 00 00 00 00 27 30 00  00 00 00 00 00 27 40 00  |.....'0......'@.|
+00003380  00 00 00 00 00 27 50 00  00 00 00 00 00 27 60 00  |.....'P......'`.|
+00003390  00 00 00 00 00 27 70 00  00 00 00 00 00 27 80 00  |.....'p......'..|
+000033a0  00 00 00 00 00 27 90 00  00 00 00 00 00 27 a0 00  |.....'.......'..|
+000033b0  00 00 00 00 00 27 b0 00  00 00 00 00 00 27 c0 00  |.....'.......'..|
+000033c0  00 00 00 00 00 27 d0 00  00 00 00 00 00 27 e0 00  |.....'.......'..|
+000033d0  00 00 00 00 00 27 f0 00  00 00 00 00 00 28 00 00  |.....'.......(..|
+000033e0  00 00 00 00 00 28 10 00  00 00 00 00 00 28 20 00  |.....(.......( .|
+000033f0  00 00 00 00 00 28 30 00  00 00 00 00 00 28 40 00  |.....(0......(@.|
+00003400  00 00 00 00 00 28 50 00  00 00 00 00 00 28 60 00  |.....(P......(`.|
+00003410  00 00 00 00 00 28 70 00  00 00 00 00 00 28 80 00  |.....(p......(..|
+00003420  00 00 00 00 00 28 90 00  00 00 00 00 00 28 a0 00  |.....(.......(..|
+00003430  00 00 00 00 00 28 b0 00  00 00 00 00 00 28 c0 00  |.....(.......(..|
+00003440  00 00 00 00 00 28 d0 00  00 00 00 00 00 28 e0 00  |.....(.......(..|
+00003450  00 00 00 00 00 28 f0 00  00 00 00 00 00 29 00 00  |.....(.......)..|
+00003460  00 00 00 00 00 29 10 00  00 00 00 00 00 29 20 00  |.....).......) .|
+00003470  00 00 00 00 00 29 30 00  00 00 00 00 00 29 40 00  |.....)0......)@.|
+00003480  00 00 00 00 00 29 50 00  00 00 00 00 00 29 60 00  |.....)P......)`.|
+00003490  00 00 00 00 00 29 70 00  00 00 00 00 00 29 80 00  |.....)p......)..|
+000034a0  00 00 00 00 00 29 90 00  00 00 00 00 00 29 a0 00  |.....).......)..|
+000034b0  00 00 00 00 00 29 b0 00  00 00 00 00 00 29 c0 00  |.....).......)..|
+000034c0  00 00 00 00 00 29 d0 00  00 00 00 00 00 29 e0 00  |.....).......)..|
+000034d0  00 00 00 00 00 29 f0 00  00 00 00 00 00 2a 00 00  |.....).......*..|
+000034e0  00 00 00 00 00 2a 10 00  00 00 00 00 00 2a 20 00  |.....*.......* .|
+000034f0  00 00 00 00 00 2a 30 00  00 00 00 00 00 2a 40 00  |.....*0......*@.|
+00003500  00 00 00 00 00 2a 50 00  00 00 00 00 00 2a 60 00  |.....*P......*`.|
+00003510  00 00 00 00 00 2a 70 00  00 00 00 00 00 2a 80 00  |.....*p......*..|
+00003520  00 00 00 00 00 2a 90 00  00 00 00 00 00 2a a0 00  |.....*.......*..|
+00003530  00 00 00 00 00 2a b0 00  00 00 00 00 00 2a c0 00  |.....*.......*..|
+00003540  00 00 00 00 00 2a d0 00  00 00 00 00 00 2a e0 00  |.....*.......*..|
+00003550  00 00 00 00 00 2a f0 00  00 00 00 00 00 2b 00 00  |.....*.......+..|
+00003560  00 00 00 00 00 2b 10 00  00 00 00 00 00 2b 20 00  |.....+.......+ .|
+00003570  00 00 00 00 00 2b 30 00  00 00 00 00 00 2b 40 00  |.....+0......+@.|
+00003580  00 00 00 00 00 2b 50 00  00 00 00 00 00 2b 60 00  |.....+P......+`.|
+00003590  00 00 00 00 00 2b 70 00  00 00 00 00 00 2b 80 00  |.....+p......+..|
+000035a0  00 00 00 00 00 2b 90 00  00 00 00 00 00 2b a0 00  |.....+.......+..|
+000035b0  00 00 00 00 00 2b b0 00  00 00 00 00 00 2b c0 00  |.....+.......+..|
+000035c0  00 00 00 00 00 2b d0 00  00 00 00 00 00 2b e0 00  |.....+.......+..|
+000035d0  00 00 00 00 00 2b f0 00  00 00 00 00 00 2c 00 00  |.....+.......,..|
+000035e0  00 00 00 00 00 2c 10 00  00 00 00 00 00 2c 20 00  |.....,......., .|
+000035f0  00 00 00 00 00 2c 30 00  00 00 00 00 00 2c 40 00  |.....,0......,@.|
+00003600  00 00 00 00 00 2c 50 00  00 00 00 00 00 2c 60 00  |.....,P......,`.|
+00003610  00 00 00 00 00 2c 70 00  00 00 00 00 00 2c 80 00  |.....,p......,..|
+00003620  00 00 00 00 00 2c 90 00  00 00 00 00 00 2c a0 00  |.....,.......,..|
+00003630  00 00 00 00 00 2c b0 00  00 00 00 00 00 2c c0 00  |.....,.......,..|
+00003640  00 00 00 00 00 2c d0 00  00 00 00 00 00 2c e0 00  |.....,.......,..|
+00003650  00 00 00 00 00 2c f0 00  00 00 00 00 00 2d 00 00  |.....,.......-..|
+00003660  00 00 00 00 00 2d 10 00  00 00 00 00 00 2d 20 00  |.....-.......- .|
+00003670  00 00 00 00 00 2d 30 00  00 00 00 00 00 2d 40 00  |.....-0......-@.|
+00003680  00 00 00 00 00 2d 50 00  00 00 00 00 00 2d 60 00  |.....-P......-`.|
+00003690  00 00 00 00 00 2d 70 00  00 00 00 00 00 2d 80 00  |.....-p......-..|
+000036a0  00 00 00 00 00 2d 90 00  00 00 00 00 00 2d a0 00  |.....-.......-..|
+000036b0  00 00 00 00 00 2d b0 00  00 00 00 00 00 2d c0 00  |.....-.......-..|
+000036c0  00 00 00 00 00 2d d0 00  00 00 00 00 00 2d e0 00  |.....-.......-..|
+000036d0  00 00 00 00 00 2d f0 00  00 00 00 00 00 2e 00 00  |.....-..........|
+000036e0  00 00 00 00 00 2e 10 00  00 00 00 00 00 2e 20 00  |.............. .|
+000036f0  00 00 00 00 00 2e 30 00  00 00 00 00 00 2e 40 00  |......0.......@.|
+00003700  00 00 00 00 00 2e 50 00  00 00 00 00 00 2e 60 00  |......P.......`.|
+00003710  00 00 00 00 00 2e 70 00  00 00 00 00 00 2e 80 00  |......p.........|
+00003720  00 00 00 00 00 2e 90 00  00 00 00 00 00 2e a0 00  |................|
+00003730  00 00 00 00 00 2e b0 00  00 00 00 00 00 2e c0 00  |................|
+00003740  00 00 00 00 00 2e d0 00  00 00 00 00 00 2e e0 00  |................|
+00003750  00 00 00 00 00 2e f0 00  00 00 00 00 00 2f 00 00  |............./..|
+00003760  00 00 00 00 00 2f 10 00  00 00 00 00 00 2f 20 00  |...../......./ .|
+00003770  00 00 00 00 00 2f 30 00  00 00 00 00 00 2f 40 00  |...../0....../@.|
+00003780  00 00 00 00 00 2f 50 00  00 00 00 00 00 2f 60 00  |...../P....../`.|
+00003790  00 00 00 00 00 2f 70 00  00 00 00 00 00 2f 80 00  |...../p....../..|
+000037a0  00 00 00 00 00 2f 90 00  00 00 00 00 00 2f a0 00  |...../......./..|
+000037b0  00 00 00 00 00 2f b0 00  00 00 00 00 00 2f c0 00  |...../......./..|
+000037c0  00 00 00 00 00 2f d0 00  00 00 00 00 00 2f e0 00  |...../......./..|
+000037d0  00 00 00 00 00 2f f0 00  00 00 00 00 00 30 00 00  |...../.......0..|
+000037e0  00 00 00 00 00 30 10 00  00 00 00 00 00 30 20 00  |.....0.......0 .|
+000037f0  00 00 00 00 00 30 30 00  00 00 00 00 00 30 40 00  |.....00......0@.|
+00003800  00 00 00 00 00 30 50 00  00 00 00 00 00 30 60 00  |.....0P......0`.|
+00003810  00 00 00 00 00 30 70 00  00 00 00 00 00 30 80 00  |.....0p......0..|
+00003820  00 00 00 00 00 30 90 00  00 00 00 00 00 30 a0 00  |.....0.......0..|
+00003830  00 00 00 00 00 30 b0 00  00 00 00 00 00 30 c0 00  |.....0.......0..|
+00003840  00 00 00 00 00 30 d0 00  00 00 00 00 00 30 e0 00  |.....0.......0..|
+00003850  00 00 00 00 00 30 f0 00  00 00 00 00 00 31 00 00  |.....0.......1..|
+00003860  00 00 00 00 00 31 10 00  00 00 00 00 00 31 20 00  |.....1.......1 .|
+00003870  00 00 00 00 00 31 30 00  00 00 00 00 00 31 40 00  |.....10......1@.|
+00003880  00 00 00 00 00 31 50 00  00 00 00 00 00 31 60 00  |.....1P......1`.|
+00003890  00 00 00 00 00 31 70 00  00 00 00 00 00 31 80 00  |.....1p......1..|
+000038a0  00 00 00 00 00 31 90 00  00 00 00 00 00 31 a0 00  |.....1.......1..|
+000038b0  00 00 00 00 00 31 b0 00  00 00 00 00 00 31 c0 00  |.....1.......1..|
+000038c0  00 00 00 00 00 31 d0 00  00 00 00 00 00 31 e0 00  |.....1.......1..|
+000038d0  00 00 00 00 00 31 f0 00  00 00 00 00 00 32 00 00  |.....1.......2..|
+000038e0  00 00 00 00 00 32 10 00  00 00 00 00 00 32 20 00  |.....2.......2 .|
+000038f0  00 00 00 00 00 32 30 00  00 00 00 00 00 32 40 00  |.....20......2@.|
+00003900  00 00 00 00 00 32 50 00  00 00 00 00 00 32 60 00  |.....2P......2`.|
+00003910  00 00 00 00 00 32 70 00  00 00 00 00 00 32 80 00  |.....2p......2..|
+00003920  00 00 00 00 00 32 90 00  00 00 00 00 00 32 a0 00  |.....2.......2..|
+00003930  00 00 00 00 00 32 b0 00  00 00 00 00 00 32 c0 00  |.....2.......2..|
+00003940  00 00 00 00 00 32 d0 00  00 00 00 00 00 32 e0 00  |.....2.......2..|
+00003950  00 00 00 00 00 32 f0 00  00 00 00 00 00 33 00 00  |.....2.......3..|
+00003960  00 00 00 00 00 33 10 00  00 00 00 00 00 33 20 00  |.....3.......3 .|
+00003970  00 00 00 00 00 33 30 00  00 00 00 00 00 33 40 00  |.....30......3@.|
+00003980  00 00 00 00 00 33 50 00  00 00 00 00 00 33 60 00  |.....3P......3`.|
+00003990  00 00 00 00 00 33 70 00  00 00 00 00 00 33 80 00  |.....3p......3..|
+000039a0  00 00 00 00 00 33 90 00  00 00 00 00 00 33 a0 00  |.....3.......3..|
+000039b0  00 00 00 00 00 33 b0 00  00 00 00 00 00 33 c0 00  |.....3.......3..|
+000039c0  00 00 00 00 00 33 d0 00  00 00 00 00 00 33 e0 00  |.....3.......3..|
+000039d0  00 00 00 00 00 33 f0 00  00 00 00 00 00 34 00 00  |.....3.......4..|
+000039e0  00 00 00 00 00 34 10 00  00 00 00 00 00 34 20 00  |.....4.......4 .|
+000039f0  00 00 00 00 00 34 30 00  00 00 00 00 00 34 40 00  |.....40......4@.|
+00003a00  00 00 00 00 00 34 50 00  00 00 00 00 00 34 60 00  |.....4P......4`.|
+00003a10  00 00 00 00 00 34 70 00  00 00 00 00 00 34 80 00  |.....4p......4..|
+00003a20  00 00 00 00 00 34 90 00  00 00 00 00 00 34 a0 00  |.....4.......4..|
+00003a30  00 00 00 00 00 34 b0 00  00 00 00 00 00 34 c0 00  |.....4.......4..|
+00003a40  00 00 00 00 00 34 d0 00  00 00 00 00 00 34 e0 00  |.....4.......4..|
+00003a50  00 00 00 00 00 34 f0 00  00 00 00 00 00 35 00 00  |.....4.......5..|
+00003a60  00 00 00 00 00 35 10 00  00 00 00 00 00 35 20 00  |.....5.......5 .|
+00003a70  00 00 00 00 00 35 30 00  00 00 00 00 00 35 40 00  |.....50......5@.|
+00003a80  00 00 00 00 00 35 50 00  00 00 00 00 00 35 60 00  |.....5P......5`.|
+00003a90  00 00 00 00 00 35 70 00  00 00 00 00 00 35 80 00  |.....5p......5..|
+00003aa0  00 00 00 00 00 35 90 00  00 00 00 00 00 35 a0 00  |.....5.......5..|
+00003ab0  00 00 00 00 00 35 b0 00  00 00 00 00 00 35 c0 00  |.....5.......5..|
+00003ac0  00 00 00 00 00 35 d0 00  00 00 00 00 00 35 e0 00  |.....5.......5..|
+00003ad0  00 00 00 00 00 35 f0 00  00 00 00 00 00 36 00 00  |.....5.......6..|
+00003ae0  00 00 00 00 00 36 10 00  00 00 00 00 00 36 20 00  |.....6.......6 .|
+00003af0  00 00 00 00 00 36 30 00  00 00 00 00 00 36 40 00  |.....60......6@.|
+00003b00  00 00 00 00 00 36 50 00  00 00 00 00 00 36 60 00  |.....6P......6`.|
+00003b10  00 00 00 00 00 36 70 00  00 00 00 00 00 36 80 00  |.....6p......6..|
+00003b20  00 00 00 00 00 36 90 00  00 00 00 00 00 36 a0 00  |.....6.......6..|
+00003b30  00 00 00 00 00 36 b0 00  00 00 00 00 00 36 c0 00  |.....6.......6..|
+00003b40  00 00 00 00 00 36 d0 00  00 00 00 00 00 36 e0 00  |.....6.......6..|
+00003b50  00 00 00 00 00 36 f0 00  00 00 00 00 00 37 00 00  |.....6.......7..|
+00003b60  00 00 00 00 00 37 10 00  00 00 00 00 00 37 20 00  |.....7.......7 .|
+00003b70  00 00 00 00 00 37 30 00  00 00 00 00 00 37 40 00  |.....70......7@.|
+00003b80  00 00 00 00 00 37 50 00  00 00 00 00 00 37 60 00  |.....7P......7`.|
+00003b90  00 00 00 00 00 37 70 00  00 00 00 00 00 37 80 00  |.....7p......7..|
+00003ba0  00 00 00 00 00 37 90 00  00 00 00 00 00 37 a0 00  |.....7.......7..|
+00003bb0  00 00 00 00 00 37 b0 00  00 00 00 00 00 37 c0 00  |.....7.......7..|
+00003bc0  00 00 00 00 00 37 d0 00  00 00 00 00 00 37 e0 00  |.....7.......7..|
+00003bd0  00 00 00 00 00 37 f0 00  00 00 00 00 00 38 00 00  |.....7.......8..|
+00003be0  00 00 00 00 00 38 10 00  00 00 00 00 00 38 20 00  |.....8.......8 .|
+00003bf0  00 00 00 00 00 38 30 00  00 00 00 00 00 38 40 00  |.....80......8@.|
+00003c00  00 00 00 00 00 38 50 00  00 00 00 00 00 38 60 00  |.....8P......8`.|
+00003c10  00 00 00 00 00 38 70 00  00 00 00 00 00 38 80 00  |.....8p......8..|
+00003c20  00 00 00 00 00 38 90 00  00 00 00 00 00 38 a0 00  |.....8.......8..|
+00003c30  00 00 00 00 00 38 b0 00  00 00 00 00 00 38 c0 00  |.....8.......8..|
+00003c40  00 00 00 00 00 38 d0 00  00 00 00 00 00 38 e0 00  |.....8.......8..|
+00003c50  00 00 00 00 00 38 f0 00  00 00 00 00 00 39 00 00  |.....8.......9..|
+00003c60  00 00 00 00 00 39 10 00  00 00 00 00 00 39 20 00  |.....9.......9 .|
+00003c70  00 00 00 00 00 39 30 00  00 00 00 00 00 39 40 00  |.....90......9@.|
+00003c80  00 00 00 00 00 39 50 00  00 00 00 00 00 39 60 00  |.....9P......9`.|
+00003c90  00 00 00 00 00 39 70 00  00 00 00 00 00 39 80 00  |.....9p......9..|
+00003ca0  00 00 00 00 00 39 90 00  00 00 00 00 00 39 a0 00  |.....9.......9..|
+00003cb0  00 00 00 00 00 39 b0 00  00 00 00 00 00 39 c0 00  |.....9.......9..|
+00003cc0  00 00 00 00 00 39 d0 00  00 00 00 00 00 39 e0 00  |.....9.......9..|
+00003cd0  00 00 00 00 00 39 f0 00  00 00 00 00 00 3a 00 00  |.....9.......:..|
+00003ce0  00 00 00 00 00 3a 10 00  00 00 00 00 00 3a 20 00  |.....:.......: .|
+00003cf0  00 00 00 00 00 3a 30 00  00 00 00 00 00 3a 40 00  |.....:0......:@.|
+00003d00  00 00 00 00 00 3a 50 00  00 00 00 00 00 3a 60 00  |.....:P......:`.|
+00003d10  00 00 00 00 00 3a 70 00  00 00 00 00 00 3a 80 00  |.....:p......:..|
+00003d20  00 00 00 00 00 3a 90 00  00 00 00 00 00 3a a0 00  |.....:.......:..|
+00003d30  00 00 00 00 00 3a b0 00  00 00 00 00 00 3a c0 00  |.....:.......:..|
+00003d40  00 00 00 00 00 3a d0 00  00 00 00 00 00 3a e0 00  |.....:.......:..|
+00003d50  00 00 00 00 00 3a f0 00  00 00 00 00 00 3b 00 00  |.....:.......;..|
+00003d60  00 00 00 00 00 3b 10 00  00 00 00 00 00 3b 20 00  |.....;.......; .|
+00003d70  00 00 00 00 00 3b 30 00  00 00 00 00 00 3b 40 00  |.....;0......;@.|
+00003d80  00 00 00 00 00 3b 50 00  00 00 00 00 00 3b 60 00  |.....;P......;`.|
+00003d90  00 00 00 00 00 3b 70 00  00 00 00 00 00 3b 80 00  |.....;p......;..|
+00003da0  00 00 00 00 00 3b 90 00  00 00 00 00 00 3b a0 00  |.....;.......;..|
+00003db0  00 00 00 00 00 3b b0 00  00 00 00 00 00 3b c0 00  |.....;.......;..|
+00003dc0  00 00 00 00 00 3b d0 00  00 00 00 00 00 3b e0 00  |.....;.......;..|
+00003dd0  00 00 00 00 00 3b f0 00  00 00 00 00 00 3c 00 00  |.....;.......<..|
+00003de0  00 00 00 00 00 3c 10 00  00 00 00 00 00 3c 20 00  |.....<.......< .|
+00003df0  00 00 00 00 00 3c 30 00  00 00 00 00 00 3c 40 00  |.....<0......<@.|
+00003e00  00 00 00 00 00 3c 50 00  00 00 00 00 00 3c 60 00  |.....<P......<`.|
+00003e10  00 00 00 00 00 3c 70 00  00 00 00 00 00 3c 80 00  |.....<p......<..|
+00003e20  00 00 00 00 00 3c 90 00  00 00 00 00 00 3c a0 00  |.....<.......<..|
+00003e30  00 00 00 00 00 3c b0 00  00 00 00 00 00 3c c0 00  |.....<.......<..|
+00003e40  00 00 00 00 00 3c d0 00  00 00 00 00 00 3c e0 00  |.....<.......<..|
+00003e50  00 00 00 00 00 3c f0 00  00 00 00 00 00 3d 00 00  |.....<.......=..|
+00003e60  00 00 00 00 00 3d 10 00  00 00 00 00 00 3d 20 00  |.....=.......= .|
+00003e70  00 00 00 00 00 3d 30 00  00 00 00 00 00 3d 40 00  |.....=0......=@.|
+00003e80  00 00 00 00 00 3d 50 00  00 00 00 00 00 3d 60 00  |.....=P......=`.|
+00003e90  00 00 00 00 00 3d 70 00  00 00 00 00 00 3d 80 00  |.....=p......=..|
+00003ea0  00 00 00 00 00 3d 90 00  00 00 00 00 00 3d a0 00  |.....=.......=..|
+00003eb0  00 00 00 00 00 3d b0 00  00 00 00 00 00 3d c0 00  |.....=.......=..|
+00003ec0  00 00 00 00 00 3d d0 00  00 00 00 00 00 3d e0 00  |.....=.......=..|
+00003ed0  00 00 00 00 00 3d f0 00  00 00 00 00 00 3e 00 00  |.....=.......>..|
+00003ee0  00 00 00 00 00 3e 10 00  00 00 00 00 00 3e 20 00  |.....>.......> .|
+00003ef0  00 00 00 00 00 3e 30 00  00 00 00 00 00 3e 40 00  |.....>0......>@.|
+00003f00  00 00 00 00 00 3e 50 00  00 00 00 00 00 3e 60 00  |.....>P......>`.|
+00003f10  00 00 00 00 00 3e 70 00  00 00 00 00 00 3e 80 00  |.....>p......>..|
+00003f20  00 00 00 00 00 3e 90 00  00 00 00 00 00 3e a0 00  |.....>.......>..|
+00003f30  00 00 00 00 00 3e b0 00  00 00 00 00 00 3e c0 00  |.....>.......>..|
+00003f40  00 00 00 00 00 3e d0 00  00 00 00 00 00 3e e0 00  |.....>.......>..|
+00003f50  00 00 00 00 00 3e f0 00  00 00 00 00 00 3f 00 00  |.....>.......?..|
+00003f60  00 00 00 00 00 3f 10 00  00 00 00 00 00 3f 20 00  |.....?.......? .|
+00003f70  00 00 00 00 00 3f 30 00  00 00 00 00 00 3f 40 00  |.....?0......?@.|
+00003f80  00 00 00 00 00 3f 50 00  00 00 00 00 00 3f 60 00  |.....?P......?`.|
+00003f90  00 00 00 00 00 3f 70 00  00 00 00 00 00 3f 80 00  |.....?p......?..|
+00003fa0  00 00 00 00 00 3f 90 00  00 00 00 00 00 3f a0 00  |.....?.......?..|
+00003fb0  00 00 00 00 00 3f b0 00  00 00 00 00 00 3f c0 00  |.....?.......?..|
+00003fc0  00 00 00 00 00 3f d0 00  00 00 00 00 00 3f e0 00  |.....?.......?..|
+00003fd0  00 00 00 00 00 3f f0 00  00 00 00 00 00 40 00 00  |.....?.......@..|
+00003fe0  00 00 00 00 00 40 10 00  00 00 00 00 00 40 20 00  |.....@.......@ .|
+00003ff0  00 00 00 00 00 40 30 00  00 00 00 00 00 40 40 00  |.....@0......@@.|
+00004000  00 00 00 00 00 40 50 00  00 00 00 00 00 00 00 00  |.....@P.........|
+00004010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005000  45 52 02 00 00 00 21 08  00 00 00 00 00 00 00 00  |ER....!.........|
+00005010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005200  50 4d 00 00 00 00 00 03  00 00 00 01 00 00 00 03  |PM..............|
+00005210  41 70 70 6c 65 00 00 00  00 00 00 00 00 00 00 00  |Apple...........|
+00005220  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00005230  41 70 70 6c 65 5f 70 61  72 74 69 74 69 6f 6e 5f  |Apple_partition_|
+00005240  6d 61 70 00 00 00 00 00  00 00 00 00 00 00 00 00  |map.............|
+00005250  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005400  50 4d 00 00 00 00 00 03  00 00 00 08 00 00 20 00  |PM............ .|
+00005410  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005430  46 72 65 65 42 53 44 2d  55 46 53 00 00 00 00 00  |FreeBSD-UFS.....|
+00005440  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005600  50 4d 00 00 00 00 00 03  00 00 20 08 00 00 01 00  |PM........ .....|
+00005610  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00005630  46 72 65 65 42 53 44 2d  73 77 61 70 00 00 00 00  |FreeBSD-swap....|
+00005640  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00006000  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00406000

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow2.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.qcow2.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,80 @@
+# $FreeBSD$
+00000000  51 46 49 fb 00 00 00 02  00 00 00 00 00 00 00 00  |QFI.............|
+00000010  00 00 00 00 00 00 00 10  00 00 00 00 00 43 00 00  |.............C..|
+00000020  00 00 00 00 00 00 00 01  00 00 00 00 00 01 00 00  |................|
+00000030  00 00 00 00 00 02 00 00  00 00 00 01 00 00 00 00  |................|
+00000040  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00010000  80 00 00 00 00 03 00 00  00 00 00 00 00 00 00 00  |................|
+00010010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00020000  00 00 00 00 00 04 00 00  00 00 00 00 00 00 00 00  |................|
+00020010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00030000  80 00 00 00 00 05 00 00  80 00 00 00 00 06 00 00  |................|
+00030010  80 00 00 00 00 07 00 00  80 00 00 00 00 08 00 00  |................|
+00030020  80 00 00 00 00 09 00 00  80 00 00 00 00 0a 00 00  |................|
+00030030  80 00 00 00 00 0b 00 00  80 00 00 00 00 0c 00 00  |................|
+00030040  80 00 00 00 00 0d 00 00  80 00 00 00 00 0e 00 00  |................|
+00030050  80 00 00 00 00 0f 00 00  80 00 00 00 00 10 00 00  |................|
+00030060  80 00 00 00 00 11 00 00  80 00 00 00 00 12 00 00  |................|
+00030070  80 00 00 00 00 13 00 00  80 00 00 00 00 14 00 00  |................|
+00030080  80 00 00 00 00 15 00 00  80 00 00 00 00 16 00 00  |................|
+00030090  80 00 00 00 00 17 00 00  80 00 00 00 00 18 00 00  |................|
+000300a0  80 00 00 00 00 19 00 00  80 00 00 00 00 1a 00 00  |................|
+000300b0  80 00 00 00 00 1b 00 00  80 00 00 00 00 1c 00 00  |................|
+000300c0  80 00 00 00 00 1d 00 00  80 00 00 00 00 1e 00 00  |................|
+000300d0  80 00 00 00 00 1f 00 00  80 00 00 00 00 20 00 00  |............. ..|
+000300e0  80 00 00 00 00 21 00 00  80 00 00 00 00 22 00 00  |.....!......."..|
+000300f0  80 00 00 00 00 23 00 00  80 00 00 00 00 24 00 00  |.....#.......$..|
+00030100  80 00 00 00 00 25 00 00  80 00 00 00 00 26 00 00  |.....%.......&..|
+00030110  80 00 00 00 00 27 00 00  80 00 00 00 00 28 00 00  |.....'.......(..|
+00030120  80 00 00 00 00 29 00 00  80 00 00 00 00 2a 00 00  |.....).......*..|
+00030130  80 00 00 00 00 2b 00 00  80 00 00 00 00 2c 00 00  |.....+.......,..|
+00030140  80 00 00 00 00 2d 00 00  80 00 00 00 00 2e 00 00  |.....-..........|
+00030150  80 00 00 00 00 2f 00 00  80 00 00 00 00 30 00 00  |...../.......0..|
+00030160  80 00 00 00 00 31 00 00  80 00 00 00 00 32 00 00  |.....1.......2..|
+00030170  80 00 00 00 00 33 00 00  80 00 00 00 00 34 00 00  |.....3.......4..|
+00030180  80 00 00 00 00 35 00 00  80 00 00 00 00 36 00 00  |.....5.......6..|
+00030190  80 00 00 00 00 37 00 00  80 00 00 00 00 38 00 00  |.....7.......8..|
+000301a0  80 00 00 00 00 39 00 00  80 00 00 00 00 3a 00 00  |.....9.......:..|
+000301b0  80 00 00 00 00 3b 00 00  80 00 00 00 00 3c 00 00  |.....;.......<..|
+000301c0  80 00 00 00 00 3d 00 00  80 00 00 00 00 3e 00 00  |.....=.......>..|
+000301d0  80 00 00 00 00 3f 00 00  80 00 00 00 00 40 00 00  |.....?.......@..|
+000301e0  80 00 00 00 00 41 00 00  80 00 00 00 00 42 00 00  |.....A.......B..|
+000301f0  80 00 00 00 00 43 00 00  80 00 00 00 00 44 00 00  |.....C.......D..|
+00030200  80 00 00 00 00 45 00 00  00 00 00 00 00 00 00 00  |.....E..........|
+00030210  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00040000  00 01 00 01 00 01 00 01  00 01 00 01 00 01 00 01  |................|
+*
+00040080  00 01 00 01 00 01 00 01  00 01 00 01 00 00 00 00  |................|
+00040090  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050000  45 52 02 00 00 00 21 80  00 00 00 00 00 00 00 00  |ER....!.........|
+00050010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050200  50 4d 00 00 00 00 00 03  00 00 00 01 00 00 00 03  |PM..............|
+00050210  41 70 70 6c 65 00 00 00  00 00 00 00 00 00 00 00  |Apple...........|
+00050220  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00050230  41 70 70 6c 65 5f 70 61  72 74 69 74 69 6f 6e 5f  |Apple_partition_|
+00050240  6d 61 70 00 00 00 00 00  00 00 00 00 00 00 00 00  |map.............|
+00050250  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050400  50 4d 00 00 00 00 00 03  00 00 00 08 00 00 20 00  |PM............ .|
+00050410  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050430  46 72 65 65 42 53 44 2d  55 46 53 00 00 00 00 00  |FreeBSD-UFS.....|
+00050440  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050600  50 4d 00 00 00 00 00 03  00 00 20 08 00 00 01 00  |PM........ .....|
+00050610  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00050630  46 72 65 65 42 53 44 2d  73 77 61 70 00 00 00 00  |FreeBSD-swap....|
+00050640  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00051000  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00451000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00460000

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.raw.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.raw.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,28 @@
+# $FreeBSD$
+00000000  45 52 02 00 00 00 21 08  00 00 00 00 00 00 00 00  |ER....!.........|
+00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000200  50 4d 00 00 00 00 00 03  00 00 00 01 00 00 00 03  |PM..............|
+00000210  41 70 70 6c 65 00 00 00  00 00 00 00 00 00 00 00  |Apple...........|
+00000220  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00000230  41 70 70 6c 65 5f 70 61  72 74 69 74 69 6f 6e 5f  |Apple_partition_|
+00000240  6d 61 70 00 00 00 00 00  00 00 00 00 00 00 00 00  |map.............|
+00000250  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000400  50 4d 00 00 00 00 00 03  00 00 00 08 00 00 20 00  |PM............ .|
+00000410  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000430  46 72 65 65 42 53 44 2d  55 46 53 00 00 00 00 00  |FreeBSD-UFS.....|
+00000440  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000600  50 4d 00 00 00 00 00 03  00 00 20 08 00 00 01 00  |PM........ .....|
+00000610  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000630  46 72 65 65 42 53 44 2d  73 77 61 70 00 00 00 00  |FreeBSD-swap....|
+00000640  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001000  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00401000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00421000

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhd.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhd.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,60 @@
+# $FreeBSD$
+00000000  63 6f 6e 65 63 74 69 78  00 00 00 02 00 01 00 00  |conectix........|
+00000010  00 00 00 00 00 00 02 00  01 23 45 67 2a 69 6d 67  |.........#Eg*img|
+00000020  00 02 00 00 57 69 32 6b  00 00 00 00 00 42 68 00  |....Wi2k.....Bh.|
+00000030  00 00 00 00 00 42 68 00  00 7d 04 11 00 00 00 03  |.....Bh..}......|
+00000040  ff ff f7 0e 01 01 01 01  01 01 01 01 01 01 01 01  |................|
+00000050  01 01 01 01 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00000060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000200  63 78 73 70 61 72 73 65  ff ff ff ff ff ff ff ff  |cxsparse........|
+00000210  00 00 00 00 00 00 06 00  00 01 00 00 00 00 00 03  |................|
+00000220  00 20 00 00 ff ff f4 74  00 00 00 00 00 00 00 00  |. .....t........|
+00000230  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000600  00 00 00 04 00 00 10 05  00 00 20 06 ff ff ff ff  |.......... .....|
+00000610  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
+*
+00000a00  45 52 02 00 00 00 21 34  00 00 00 00 00 00 00 00  |ER....!4........|
+00000a10  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000c00  50 4d 00 00 00 00 00 03  00 00 00 01 00 00 00 03  |PM..............|
+00000c10  41 70 70 6c 65 00 00 00  00 00 00 00 00 00 00 00  |Apple...........|
+00000c20  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00000c30  41 70 70 6c 65 5f 70 61  72 74 69 74 69 6f 6e 5f  |Apple_partition_|
+00000c40  6d 61 70 00 00 00 00 00  00 00 00 00 00 00 00 00  |map.............|
+00000c50  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000e00  50 4d 00 00 00 00 00 03  00 00 00 08 00 00 20 00  |PM............ .|
+00000e10  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000e30  46 72 65 65 42 53 44 2d  55 46 53 00 00 00 00 00  |FreeBSD-UFS.....|
+00000e40  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001000  50 4d 00 00 00 00 00 03  00 00 20 08 00 00 01 00  |PM........ .....|
+00001010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001030  46 72 65 65 42 53 44 2d  73 77 61 70 00 00 00 00  |FreeBSD-swap....|
+00001040  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001a00  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00200a00  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
+*
+00200c00  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00400c00  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
+*
+00400e00  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00401e00  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00600e00  63 6f 6e 65 63 74 69 78  00 00 00 02 00 01 00 00  |conectix........|
+00600e10  00 00 00 00 00 00 02 00  01 23 45 67 2a 69 6d 67  |.........#Eg*img|
+00600e20  00 02 00 00 57 69 32 6b  00 00 00 00 00 42 68 00  |....Wi2k.....Bh.|
+00600e30  00 00 00 00 00 42 68 00  00 7d 04 11 00 00 00 03  |.....Bh..}......|
+00600e40  ff ff f7 0e 01 01 01 01  01 01 01 01 01 01 01 01  |................|
+00600e50  01 01 01 01 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00600e60  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00601000

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhdf.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.vhdf.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,36 @@
+# $FreeBSD$
+00000000  45 52 02 00 00 00 28 00  00 00 00 00 00 00 00 00  |ER....(.........|
+00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000200  50 4d 00 00 00 00 00 03  00 00 00 01 00 00 00 03  |PM..............|
+00000210  41 70 70 6c 65 00 00 00  00 00 00 00 00 00 00 00  |Apple...........|
+00000220  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00000230  41 70 70 6c 65 5f 70 61  72 74 69 74 69 6f 6e 5f  |Apple_partition_|
+00000240  6d 61 70 00 00 00 00 00  00 00 00 00 00 00 00 00  |map.............|
+00000250  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000400  50 4d 00 00 00 00 00 03  00 00 00 08 00 00 20 00  |PM............ .|
+00000410  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000430  46 72 65 65 42 53 44 2d  55 46 53 00 00 00 00 00  |FreeBSD-UFS.....|
+00000440  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000600  50 4d 00 00 00 00 00 03  00 00 20 08 00 00 01 00  |PM........ .....|
+00000610  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000630  46 72 65 65 42 53 44 2d  73 77 61 70 00 00 00 00  |FreeBSD-swap....|
+00000640  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001000  50 0a 50 0a 50 0a 50 0a  50 0a 50 0a 50 0a 50 0a  |P.P.P.P.P.P.P.P.|
+*
+00401000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00500000  63 6f 6e 65 63 74 69 78  00 00 00 02 00 01 00 00  |conectix........|
+00500010  ff ff ff ff ff ff ff ff  01 23 45 67 2a 69 6d 67  |.........#Eg*img|
+00500020  00 02 00 00 57 69 32 6b  00 00 00 00 00 50 00 00  |....Wi2k.....P..|
+00500030  00 00 00 00 00 50 00 00  00 96 04 11 00 00 00 02  |.....P..........|
+00500040  ff ff ef b4 01 01 01 01  01 01 01 01 01 01 01 01  |................|
+00500050  01 01 01 01 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+00500060  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00500200

Added: head/usr.bin/mkimg/tests/img-1x1-4096-apm.vmdk.hex
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/usr.bin/mkimg/tests/img-1x1-4096-apm.vmdk.hex	Sat Mar  9 02:03:07 2019	(r344957)
@@ -0,0 +1,322 @@
+# $FreeBSD$
+00000000  4b 44 4d 56 01 00 00 00  03 00 00 00 00 28 00 00  |KDMV.........(..|
+00000010  00 00 00 00 10 00 00 00  00 00 00 00 01 00 00 00  |................|
+00000020  00 00 00 00 01 00 00 00  00 00 00 00 00 02 00 00  |................|
+00000030  0b 00 00 00 00 00 00 00  02 00 00 00 00 00 00 00  |................|
+00000040  20 00 00 00 00 00 00 00  00 0a 20 0d 0a 00 00 00  | ......... .....|
+00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000200  23 20 44 69 73 6b 20 44  65 73 63 72 69 70 74 6f  |# Disk Descripto|
+00000210  72 46 69 6c 65 0a 76 65  72 73 69 6f 6e 3d 31 0a  |rFile.version=1.|
+00000220  43 49 44 3d 30 30 30 30  30 30 30 30 0a 70 61 72  |CID=00000000.par|
+00000230  65 6e 74 43 49 44 3d 66  66 66 66 66 66 66 66 0a  |entCID=ffffffff.|
+00000240  63 72 65 61 74 65 54 79  70 65 3d 22 6d 6f 6e 6f  |createType="mono|
+00000250  6c 69 74 68 69 63 53 70  61 72 73 65 22 0a 23 20  |lithicSparse".# |
+00000260  45 78 74 65 6e 74 20 64  65 73 63 72 69 70 74 69  |Extent descripti|
+00000270  6f 6e 0a 52 57 20 31 30  32 34 30 20 53 50 41 52  |on.RW 10240 SPAR|
+00000280  53 45 20 22 22 0a 23 20  54 68 65 20 44 69 73 6b  |SE "".# The Disk|
+00000290  20 44 61 74 61 20 42 61  73 65 0a 23 44 44 42 0a  | Data Base.#DDB.|
+000002a0  64 64 62 2e 61 64 61 70  74 65 72 54 79 70 65 20  |ddb.adapterType |
+000002b0  3d 20 22 69 64 65 22 0a  64 64 62 2e 67 65 6f 6d  |= "ide".ddb.geom|
+000002c0  65 74 72 79 2e 63 79 6c  69 6e 64 65 72 73 20 3d  |etry.cylinders =|
+000002d0  20 22 31 30 32 34 30 22  0a 64 64 62 2e 67 65 6f  | "10240".ddb.geo|
+000002e0  6d 65 74 72 79 2e 68 65  61 64 73 20 3d 20 22 31  |metry.heads = "1|
+000002f0  22 0a 64 64 62 2e 67 65  6f 6d 65 74 72 79 2e 73  |".ddb.geometry.s|
+00000300  65 63 74 6f 72 73 20 3d  20 22 31 22 0a 00 00 00  |ectors = "1"....|
+00000310  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000400  03 00 00 00 07 00 00 00  00 00 00 00 00 00 00 00  |................|
+00000410  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00000600  20 00 00 00 30 00 00 00  40 00 00 00 50 00 00 00  | ...0...@...P...|
+00000610  60 00 00 00 70 00 00 00  80 00 00 00 90 00 00 00  |`...p...........|
+00000620  a0 00 00 00 b0 00 00 00  c0 00 00 00 d0 00 00 00  |................|
+00000630  e0 00 00 00 f0 00 00 00  00 01 00 00 10 01 00 00  |................|
+00000640  20 01 00 00 30 01 00 00  40 01 00 00 50 01 00 00  | ...0...@...P...|
+00000650  60 01 00 00 70 01 00 00  80 01 00 00 90 01 00 00  |`...p...........|
+00000660  a0 01 00 00 b0 01 00 00  c0 01 00 00 d0 01 00 00  |................|
+00000670  e0 01 00 00 f0 01 00 00  00 02 00 00 10 02 00 00  |................|
+00000680  20 02 00 00 30 02 00 00  40 02 00 00 50 02 00 00  | ...0...@...P...|
+00000690  60 02 00 00 70 02 00 00  80 02 00 00 90 02 00 00  |`...p...........|
+000006a0  a0 02 00 00 b0 02 00 00  c0 02 00 00 d0 02 00 00  |................|
+000006b0  e0 02 00 00 f0 02 00 00  00 03 00 00 10 03 00 00  |................|
+000006c0  20 03 00 00 30 03 00 00  40 03 00 00 50 03 00 00  | ...0...@...P...|
+000006d0  60 03 00 00 70 03 00 00  80 03 00 00 90 03 00 00  |`...p...........|
+000006e0  a0 03 00 00 b0 03 00 00  c0 03 00 00 d0 03 00 00  |................|
+000006f0  e0 03 00 00 f0 03 00 00  00 04 00 00 10 04 00 00  |................|
+00000700  20 04 00 00 30 04 00 00  40 04 00 00 50 04 00 00  | ...0...@...P...|
+00000710  60 04 00 00 70 04 00 00  80 04 00 00 90 04 00 00  |`...p...........|
+00000720  a0 04 00 00 b0 04 00 00  c0 04 00 00 d0 04 00 00  |................|
+00000730  e0 04 00 00 f0 04 00 00  00 05 00 00 10 05 00 00  |................|
+00000740  20 05 00 00 30 05 00 00  40 05 00 00 50 05 00 00  | ...0...@...P...|
+00000750  60 05 00 00 70 05 00 00  80 05 00 00 90 05 00 00  |`...p...........|
+00000760  a0 05 00 00 b0 05 00 00  c0 05 00 00 d0 05 00 00  |................|
+00000770  e0 05 00 00 f0 05 00 00  00 06 00 00 10 06 00 00  |................|
+00000780  20 06 00 00 30 06 00 00  40 06 00 00 50 06 00 00  | ...0...@...P...|
+00000790  60 06 00 00 70 06 00 00  80 06 00 00 90 06 00 00  |`...p...........|
+000007a0  a0 06 00 00 b0 06 00 00  c0 06 00 00 d0 06 00 00  |................|
+000007b0  e0 06 00 00 f0 06 00 00  00 07 00 00 10 07 00 00  |................|
+000007c0  20 07 00 00 30 07 00 00  40 07 00 00 50 07 00 00  | ...0...@...P...|
+000007d0  60 07 00 00 70 07 00 00  80 07 00 00 90 07 00 00  |`...p...........|
+000007e0  a0 07 00 00 b0 07 00 00  c0 07 00 00 d0 07 00 00  |................|
+000007f0  e0 07 00 00 f0 07 00 00  00 08 00 00 10 08 00 00  |................|
+00000800  20 08 00 00 30 08 00 00  40 08 00 00 50 08 00 00  | ...0...@...P...|
+00000810  60 08 00 00 70 08 00 00  80 08 00 00 90 08 00 00  |`...p...........|
+00000820  a0 08 00 00 b0 08 00 00  c0 08 00 00 d0 08 00 00  |................|
+00000830  e0 08 00 00 f0 08 00 00  00 09 00 00 10 09 00 00  |................|
+00000840  20 09 00 00 30 09 00 00  40 09 00 00 50 09 00 00  | ...0...@...P...|
+00000850  60 09 00 00 70 09 00 00  80 09 00 00 90 09 00 00  |`...p...........|
+00000860  a0 09 00 00 b0 09 00 00  c0 09 00 00 d0 09 00 00  |................|
+00000870  e0 09 00 00 f0 09 00 00  00 0a 00 00 10 0a 00 00  |................|
+00000880  20 0a 00 00 30 0a 00 00  40 0a 00 00 50 0a 00 00  | ...0...@...P...|
+00000890  60 0a 00 00 70 0a 00 00  80 0a 00 00 90 0a 00 00  |`...p...........|
+000008a0  a0 0a 00 00 b0 0a 00 00  c0 0a 00 00 d0 0a 00 00  |................|
+000008b0  e0 0a 00 00 f0 0a 00 00  00 0b 00 00 10 0b 00 00  |................|
+000008c0  20 0b 00 00 30 0b 00 00  40 0b 00 00 50 0b 00 00  | ...0...@...P...|
+000008d0  60 0b 00 00 70 0b 00 00  80 0b 00 00 90 0b 00 00  |`...p...........|
+000008e0  a0 0b 00 00 b0 0b 00 00  c0 0b 00 00 d0 0b 00 00  |................|
+000008f0  e0 0b 00 00 f0 0b 00 00  00 0c 00 00 10 0c 00 00  |................|
+00000900  20 0c 00 00 30 0c 00 00  40 0c 00 00 50 0c 00 00  | ...0...@...P...|
+00000910  60 0c 00 00 70 0c 00 00  80 0c 00 00 90 0c 00 00  |`...p...........|
+00000920  a0 0c 00 00 b0 0c 00 00  c0 0c 00 00 d0 0c 00 00  |................|
+00000930  e0 0c 00 00 f0 0c 00 00  00 0d 00 00 10 0d 00 00  |................|
+00000940  20 0d 00 00 30 0d 00 00  40 0d 00 00 50 0d 00 00  | ...0...@...P...|
+00000950  60 0d 00 00 70 0d 00 00  80 0d 00 00 90 0d 00 00  |`...p...........|
+00000960  a0 0d 00 00 b0 0d 00 00  c0 0d 00 00 d0 0d 00 00  |................|
+00000970  e0 0d 00 00 f0 0d 00 00  00 0e 00 00 10 0e 00 00  |................|
+00000980  20 0e 00 00 30 0e 00 00  40 0e 00 00 50 0e 00 00  | ...0...@...P...|
+00000990  60 0e 00 00 70 0e 00 00  80 0e 00 00 90 0e 00 00  |`...p...........|
+000009a0  a0 0e 00 00 b0 0e 00 00  c0 0e 00 00 d0 0e 00 00  |................|
+000009b0  e0 0e 00 00 f0 0e 00 00  00 0f 00 00 10 0f 00 00  |................|
+000009c0  20 0f 00 00 30 0f 00 00  40 0f 00 00 50 0f 00 00  | ...0...@...P...|
+000009d0  60 0f 00 00 70 0f 00 00  80 0f 00 00 90 0f 00 00  |`...p...........|
+000009e0  a0 0f 00 00 b0 0f 00 00  c0 0f 00 00 d0 0f 00 00  |................|
+000009f0  e0 0f 00 00 f0 0f 00 00  00 10 00 00 10 10 00 00  |................|
+00000a00  20 10 00 00 30 10 00 00  40 10 00 00 50 10 00 00  | ...0...@...P...|
+00000a10  60 10 00 00 70 10 00 00  80 10 00 00 90 10 00 00  |`...p...........|
+00000a20  a0 10 00 00 b0 10 00 00  c0 10 00 00 d0 10 00 00  |................|
+00000a30  e0 10 00 00 f0 10 00 00  00 11 00 00 10 11 00 00  |................|
+00000a40  20 11 00 00 30 11 00 00  40 11 00 00 50 11 00 00  | ...0...@...P...|
+00000a50  60 11 00 00 70 11 00 00  80 11 00 00 90 11 00 00  |`...p...........|
+00000a60  a0 11 00 00 b0 11 00 00  c0 11 00 00 d0 11 00 00  |................|
+00000a70  e0 11 00 00 f0 11 00 00  00 12 00 00 10 12 00 00  |................|
+00000a80  20 12 00 00 30 12 00 00  40 12 00 00 50 12 00 00  | ...0...@...P...|
+00000a90  60 12 00 00 70 12 00 00  80 12 00 00 90 12 00 00  |`...p...........|
+00000aa0  a0 12 00 00 b0 12 00 00  c0 12 00 00 d0 12 00 00  |................|
+00000ab0  e0 12 00 00 f0 12 00 00  00 13 00 00 10 13 00 00  |................|
+00000ac0  20 13 00 00 30 13 00 00  40 13 00 00 50 13 00 00  | ...0...@...P...|
+00000ad0  60 13 00 00 70 13 00 00  80 13 00 00 90 13 00 00  |`...p...........|
+00000ae0  a0 13 00 00 b0 13 00 00  c0 13 00 00 d0 13 00 00  |................|
+00000af0  e0 13 00 00 f0 13 00 00  00 14 00 00 10 14 00 00  |................|
+00000b00  20 14 00 00 30 14 00 00  40 14 00 00 50 14 00 00  | ...0...@...P...|
+00000b10  60 14 00 00 70 14 00 00  80 14 00 00 90 14 00 00  |`...p...........|
+00000b20  a0 14 00 00 b0 14 00 00  c0 14 00 00 d0 14 00 00  |................|
+00000b30  e0 14 00 00 f0 14 00 00  00 15 00 00 10 15 00 00  |................|
+00000b40  20 15 00 00 30 15 00 00  40 15 00 00 50 15 00 00  | ...0...@...P...|
+00000b50  60 15 00 00 70 15 00 00  80 15 00 00 90 15 00 00  |`...p...........|
+00000b60  a0 15 00 00 b0 15 00 00  c0 15 00 00 d0 15 00 00  |................|
+00000b70  e0 15 00 00 f0 15 00 00  00 16 00 00 10 16 00 00  |................|
+00000b80  20 16 00 00 30 16 00 00  40 16 00 00 50 16 00 00  | ...0...@...P...|
+00000b90  60 16 00 00 70 16 00 00  80 16 00 00 90 16 00 00  |`...p...........|
+00000ba0  a0 16 00 00 b0 16 00 00  c0 16 00 00 d0 16 00 00  |................|
+00000bb0  e0 16 00 00 f0 16 00 00  00 17 00 00 10 17 00 00  |................|
+00000bc0  20 17 00 00 30 17 00 00  40 17 00 00 50 17 00 00  | ...0...@...P...|
+00000bd0  60 17 00 00 70 17 00 00  80 17 00 00 90 17 00 00  |`...p...........|
+00000be0  a0 17 00 00 b0 17 00 00  c0 17 00 00 d0 17 00 00  |................|
+00000bf0  e0 17 00 00 f0 17 00 00  00 18 00 00 10 18 00 00  |................|
+00000c00  20 18 00 00 30 18 00 00  40 18 00 00 50 18 00 00  | ...0...@...P...|
+00000c10  60 18 00 00 70 18 00 00  80 18 00 00 90 18 00 00  |`...p...........|
+00000c20  a0 18 00 00 b0 18 00 00  c0 18 00 00 d0 18 00 00  |................|
+00000c30  e0 18 00 00 f0 18 00 00  00 19 00 00 10 19 00 00  |................|
+00000c40  20 19 00 00 30 19 00 00  40 19 00 00 50 19 00 00  | ...0...@...P...|
+00000c50  60 19 00 00 70 19 00 00  80 19 00 00 90 19 00 00  |`...p...........|
+00000c60  a0 19 00 00 b0 19 00 00  c0 19 00 00 d0 19 00 00  |................|
+00000c70  e0 19 00 00 f0 19 00 00  00 1a 00 00 10 1a 00 00  |................|
+00000c80  20 1a 00 00 30 1a 00 00  40 1a 00 00 50 1a 00 00  | ...0...@...P...|
+00000c90  60 1a 00 00 70 1a 00 00  80 1a 00 00 90 1a 00 00  |`...p...........|
+00000ca0  a0 1a 00 00 b0 1a 00 00  c0 1a 00 00 d0 1a 00 00  |................|
+00000cb0  e0 1a 00 00 f0 1a 00 00  00 1b 00 00 10 1b 00 00  |................|
+00000cc0  20 1b 00 00 30 1b 00 00  40 1b 00 00 50 1b 00 00  | ...0...@...P...|
+00000cd0  60 1b 00 00 70 1b 00 00  80 1b 00 00 90 1b 00 00  |`...p...........|
+00000ce0  a0 1b 00 00 b0 1b 00 00  c0 1b 00 00 d0 1b 00 00  |................|
+00000cf0  e0 1b 00 00 f0 1b 00 00  00 1c 00 00 10 1c 00 00  |................|
+00000d00  20 1c 00 00 30 1c 00 00  40 1c 00 00 50 1c 00 00  | ...0...@...P...|
+00000d10  60 1c 00 00 70 1c 00 00  80 1c 00 00 90 1c 00 00  |`...p...........|
+00000d20  a0 1c 00 00 b0 1c 00 00  c0 1c 00 00 d0 1c 00 00  |................|
+00000d30  e0 1c 00 00 f0 1c 00 00  00 1d 00 00 10 1d 00 00  |................|
+00000d40  20 1d 00 00 30 1d 00 00  40 1d 00 00 50 1d 00 00  | ...0...@...P...|
+00000d50  60 1d 00 00 70 1d 00 00  80 1d 00 00 90 1d 00 00  |`...p...........|
+00000d60  a0 1d 00 00 b0 1d 00 00  c0 1d 00 00 d0 1d 00 00  |................|
+00000d70  e0 1d 00 00 f0 1d 00 00  00 1e 00 00 10 1e 00 00  |................|
+00000d80  20 1e 00 00 30 1e 00 00  40 1e 00 00 50 1e 00 00  | ...0...@...P...|
+00000d90  60 1e 00 00 70 1e 00 00  80 1e 00 00 90 1e 00 00  |`...p...........|
+00000da0  a0 1e 00 00 b0 1e 00 00  c0 1e 00 00 d0 1e 00 00  |................|
+00000db0  e0 1e 00 00 f0 1e 00 00  00 1f 00 00 10 1f 00 00  |................|
+00000dc0  20 1f 00 00 30 1f 00 00  40 1f 00 00 50 1f 00 00  | ...0...@...P...|
+00000dd0  60 1f 00 00 70 1f 00 00  80 1f 00 00 90 1f 00 00  |`...p...........|
+00000de0  a0 1f 00 00 b0 1f 00 00  c0 1f 00 00 d0 1f 00 00  |................|
+00000df0  e0 1f 00 00 f0 1f 00 00  00 20 00 00 10 20 00 00  |......... ... ..|
+00000e00  20 20 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |  ..............|
+00000e10  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001600  0c 00 00 00 10 00 00 00  00 00 00 00 00 00 00 00  |................|
+00001610  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
+*
+00001800  20 00 00 00 30 00 00 00  40 00 00 00 50 00 00 00  | ...0...@...P...|
+00001810  60 00 00 00 70 00 00 00  80 00 00 00 90 00 00 00  |`...p...........|
+00001820  a0 00 00 00 b0 00 00 00  c0 00 00 00 d0 00 00 00  |................|
+00001830  e0 00 00 00 f0 00 00 00  00 01 00 00 10 01 00 00  |................|
+00001840  20 01 00 00 30 01 00 00  40 01 00 00 50 01 00 00  | ...0...@...P...|
+00001850  60 01 00 00 70 01 00 00  80 01 00 00 90 01 00 00  |`...p...........|
+00001860  a0 01 00 00 b0 01 00 00  c0 01 00 00 d0 01 00 00  |................|
+00001870  e0 01 00 00 f0 01 00 00  00 02 00 00 10 02 00 00  |................|
+00001880  20 02 00 00 30 02 00 00  40 02 00 00 50 02 00 00  | ...0...@...P...|
+00001890  60 02 00 00 70 02 00 00  80 02 00 00 90 02 00 00  |`...p...........|
+000018a0  a0 02 00 00 b0 02 00 00  c0 02 00 00 d0 02 00 00  |................|
+000018b0  e0 02 00 00 f0 02 00 00  00 03 00 00 10 03 00 00  |................|
+000018c0  20 03 00 00 30 03 00 00  40 03 00 00 50 03 00 00  | ...0...@...P...|
+000018d0  60 03 00 00 70 03 00 00  80 03 00 00 90 03 00 00  |`...p...........|
+000018e0  a0 03 00 00 b0 03 00 00  c0 03 00 00 d0 03 00 00  |................|
+000018f0  e0 03 00 00 f0 03 00 00  00 04 00 00 10 04 00 00  |................|
+00001900  20 04 00 00 30 04 00 00  40 04 00 00 50 04 00 00  | ...0...@...P...|
+00001910  60 04 00 00 70 04 00 00  80 04 00 00 90 04 00 00  |`...p...........|
+00001920  a0 04 00 00 b0 04 00 00  c0 04 00 00 d0 04 00 00  |................|
+00001930  e0 04 00 00 f0 04 00 00  00 05 00 00 10 05 00 00  |................|
+00001940  20 05 00 00 30 05 00 00  40 05 00 00 50 05 00 00  | ...0...@...P...|
+00001950  60 05 00 00 70 05 00 00  80 05 00 00 90 05 00 00  |`...p...........|
+00001960  a0 05 00 00 b0 05 00 00  c0 05 00 00 d0 05 00 00  |................|
+00001970  e0 05 00 00 f0 05 00 00  00 06 00 00 10 06 00 00  |................|
+00001980  20 06 00 00 30 06 00 00  40 06 00 00 50 06 00 00  | ...0...@...P...|
+00001990  60 06 00 00 70 06 00 00  80 06 00 00 90 06 00 00  |`...p...........|
+000019a0  a0 06 00 00 b0 06 00 00  c0 06 00 00 d0 06 00 00  |................|
+000019b0  e0 06 00 00 f0 06 00 00  00 07 00 00 10 07 00 00  |................|
+000019c0  20 07 00 00 30 07 00 00  40 07 00 00 50 07 00 00  | ...0...@...P...|
+000019d0  60 07 00 00 70 07 00 00  80 07 00 00 90 07 00 00  |`...p...........|
+000019e0  a0 07 00 00 b0 07 00 00  c0 07 00 00 d0 07 00 00  |................|
+000019f0  e0 07 00 00 f0 07 00 00  00 08 00 00 10 08 00 00  |................|
+00001a00  20 08 00 00 30 08 00 00  40 08 00 00 50 08 00 00  | ...0...@...P...|
+00001a10  60 08 00 00 70 08 00 00  80 08 00 00 90 08 00 00  |`...p...........|
+00001a20  a0 08 00 00 b0 08 00 00  c0 08 00 00 d0 08 00 00  |................|
+00001a30  e0 08 00 00 f0 08 00 00  00 09 00 00 10 09 00 00  |................|
+00001a40  20 09 00 00 30 09 00 00  40 09 00 00 50 09 00 00  | ...0...@...P...|
+00001a50  60 09 00 00 70 09 00 00  80 09 00 00 90 09 00 00  |`...p...........|
+00001a60  a0 09 00 00 b0 09 00 00  c0 09 00 00 d0 09 00 00  |................|
+00001a70  e0 09 00 00 f0 09 00 00  00 0a 00 00 10 0a 00 00  |................|
+00001a80  20 0a 00 00 30 0a 00 00  40 0a 00 00 50 0a 00 00  | ...0...@...P...|
+00001a90  60 0a 00 00 70 0a 00 00  80 0a 00 00 90 0a 00 00  |`...p...........|
+00001aa0  a0 0a 00 00 b0 0a 00 00  c0 0a 00 00 d0 0a 00 00  |................|
+00001ab0  e0 0a 00 00 f0 0a 00 00  00 0b 00 00 10 0b 00 00  |................|
+00001ac0  20 0b 00 00 30 0b 00 00  40 0b 00 00 50 0b 00 00  | ...0...@...P...|

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***

From owner-svn-src-all@freebsd.org  Sat Mar  9 03:24:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 514941534ADD;
 Sat,  9 Mar 2019 03:24:40 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 EBB516B257;
 Sat,  9 Mar 2019 03:24:39 +0000 (UTC)
 (envelope-from jhibbits@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 DF49953E0;
 Sat,  9 Mar 2019 03:24:39 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x293OdcE028583;
 Sat, 9 Mar 2019 03:24:39 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x293OdDK028582;
 Sat, 9 Mar 2019 03:24:39 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903090324.x293OdDK028582@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Sat, 9 Mar 2019 03:24:39 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344961 - head/sys/powerpc/powerpc
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/powerpc
X-SVN-Commit-Revision: 344961
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: EBB516B257
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 03:24:40 -0000

Author: jhibbits
Date: Sat Mar  9 03:24:39 2019
New Revision: 344961
URL: https://svnweb.freebsd.org/changeset/base/344961

Log:
  powerpc: Print trap frame address in ddb backtraces
  
  Registers visible from 'show reg' don't always match the registers from the
  offending trap frame.  Knowing the frame address lets one examine the
  registers manually.
  
  MFC after:	1 week

Modified:
  head/sys/powerpc/powerpc/db_trace.c

Modified: head/sys/powerpc/powerpc/db_trace.c
==============================================================================
--- head/sys/powerpc/powerpc/db_trace.c	Sat Mar  9 03:18:37 2019	(r344960)
+++ head/sys/powerpc/powerpc/db_trace.c	Sat Mar  9 03:24:39 2019	(r344961)
@@ -277,7 +277,7 @@ db_backtrace(struct thread *td, db_addr_t fp, int coun
 			if (tf->exc == EXC_DSI)
 				db_printf(" sr=%#x",
 				    (uint32_t)tf->cpu.aim.dsisr);
-			db_printf("\n");
+			db_printf(" frame=%p\n", tf);
 			stackframe = (db_addr_t) tf->fixreg[1];
 			if (kernel_only && (tf->srr1 & PSL_PR))
 				break;

From owner-svn-src-all@freebsd.org  Sat Mar  9 03:10:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id EA0001534430;
 Sat,  9 Mar 2019 03:10:56 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 90B6B6A774;
 Sat,  9 Mar 2019 03:10:56 +0000 (UTC)
 (envelope-from jhibbits@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 83E6B50A5;
 Sat,  9 Mar 2019 03:10:56 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x293AuNe018414;
 Sat, 9 Mar 2019 03:10:56 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x293AuJ5018413;
 Sat, 9 Mar 2019 03:10:56 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903090310.x293AuJ5018413@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Sat, 9 Mar 2019 03:10:56 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344958 - head/sys/powerpc/powerpc
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/powerpc
X-SVN-Commit-Revision: 344958
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 90B6B6A774
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 03:10:57 -0000

Author: jhibbits
Date: Sat Mar  9 03:10:56 2019
New Revision: 344958
URL: https://svnweb.freebsd.org/changeset/base/344958

Log:
  powerpc: Print data address register on alignment exceptions
  
  MFC after:	1 week

Modified:
  head/sys/powerpc/powerpc/trap.c

Modified: head/sys/powerpc/powerpc/trap.c
==============================================================================
--- head/sys/powerpc/powerpc/trap.c	Sat Mar  9 02:03:07 2019	(r344957)
+++ head/sys/powerpc/powerpc/trap.c	Sat Mar  9 03:10:56 2019	(r344958)
@@ -528,6 +528,7 @@ printtrap(u_int vector, struct trapframe *frame, int i
 	case EXC_DSE:
 	case EXC_DSI:
 	case EXC_DTMISS:
+	case EXC_ALI:
 		printf("   virtual address = 0x%" PRIxPTR "\n", frame->dar);
 		break;
 	case EXC_ISE:

From owner-svn-src-all@freebsd.org  Sat Mar  9 03:18:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id BFA611534813;
 Sat,  9 Mar 2019 03:18:38 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 67C3F6ADF9;
 Sat,  9 Mar 2019 03:18:38 +0000 (UTC)
 (envelope-from jhibbits@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 5D2475237;
 Sat,  9 Mar 2019 03:18:38 +0000 (UTC)
 (envelope-from jhibbits@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x293IcDu023549;
 Sat, 9 Mar 2019 03:18:38 GMT (envelope-from jhibbits@FreeBSD.org)
Received: (from jhibbits@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x293IcLc023548;
 Sat, 9 Mar 2019 03:18:38 GMT (envelope-from jhibbits@FreeBSD.org)
Message-Id: <201903090318.x293IcLc023548@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to
 jhibbits@FreeBSD.org using -f
From: Justin Hibbits <jhibbits@FreeBSD.org>
Date: Sat, 9 Mar 2019 03:18:38 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344960 - head/sys/powerpc/powerpc
X-SVN-Group: head
X-SVN-Commit-Author: jhibbits
X-SVN-Commit-Paths: head/sys/powerpc/powerpc
X-SVN-Commit-Revision: 344960
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 67C3F6ADF9
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 03:18:38 -0000

Author: jhibbits
Date: Sat Mar  9 03:18:37 2019
New Revision: 344960
URL: https://svnweb.freebsd.org/changeset/base/344960

Log:
  powerpc: Print trap frame address for fatal traps
  
  MFC after:	1 week

Modified:
  head/sys/powerpc/powerpc/trap.c

Modified: head/sys/powerpc/powerpc/trap.c
==============================================================================
--- head/sys/powerpc/powerpc/trap.c	Sat Mar  9 03:15:09 2019	(r344959)
+++ head/sys/powerpc/powerpc/trap.c	Sat Mar  9 03:18:37 2019	(r344960)
@@ -546,6 +546,7 @@ printtrap(u_int vector, struct trapframe *frame, int i
 	printf("   current msr     = 0x%" PRIxPTR "\n", mfmsr());
 	printf("   lr              = 0x%" PRIxPTR " (0x%" PRIxPTR ")\n",
 	    frame->lr, frame->lr - (register_t)(__startkernel - KERNBASE));
+	printf("   frame           = %p\n", frame);
 	printf("   curthread       = %p\n", curthread);
 	if (curthread != NULL)
 		printf("          pid = %d, comm = %s\n",

From owner-svn-src-all@freebsd.org  Sat Mar  9 08:50:59 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 60944153D59D;
 Sat,  9 Mar 2019 08:50:59 +0000 (UTC)
 (envelope-from danfe@freebsd.org)
Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 client-signature RSA-PSS (4096 bits) client-digest SHA256)
 (Client CN "freefall.freebsd.org",
 Issuer "Let's Encrypt Authority X3" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 02B30752F2;
 Sat,  9 Mar 2019 08:50:59 +0000 (UTC)
 (envelope-from danfe@freebsd.org)
Received: by freefall.freebsd.org (Postfix, from userid 1033)
 id E4219B12; Sat,  9 Mar 2019 08:50:58 +0000 (UTC)
Date: Sat, 9 Mar 2019 08:50:58 +0000
From: Alexey Dokuchaev <danfe@freebsd.org>
To: Justin Hibbits <jhibbits@freebsd.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: Re: svn commit: r344960 - head/sys/powerpc/powerpc
Message-ID: <20190309085058.GA60945@FreeBSD.org>
References: <201903090318.x293IcLc023548@repo.freebsd.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <201903090318.x293IcLc023548@repo.freebsd.org>
User-Agent: Mutt/1.10.1 (2018-07-13)
X-Rspamd-Queue-Id: 02B30752F2
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-6.95 / 15.00];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0]; REPLY(-4.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 08:50:59 -0000

On Sat, Mar 09, 2019 at 03:18:38AM +0000, Justin Hibbits wrote:
> New Revision: 344960
> URL: https://svnweb.freebsd.org/changeset/base/344960
> 
> Log:
>   powerpc: Print trap frame address for fatal traps
>   
>   MFC after:	1 week
> 
> Modified:
>   head/sys/powerpc/powerpc/trap.c
> 
> Modified: head/sys/powerpc/powerpc/trap.c
> ==============================================================================
> --- head/sys/powerpc/powerpc/trap.c	Sat Mar  9 03:15:09 2019	(r344959)
> +++ head/sys/powerpc/powerpc/trap.c	Sat Mar  9 03:18:37 2019	(r344960)
> @@ -546,6 +546,7 @@ printtrap(u_int vector, struct trapframe *frame, int i
>  	printf("   current msr     = 0x%" PRIxPTR "\n", mfmsr());
>  	printf("   lr              = 0x%" PRIxPTR " (0x%" PRIxPTR ")\n",
>  	    frame->lr, frame->lr - (register_t)(__startkernel - KERNBASE));
> +	printf("   frame           = %p\n", frame);
>  	printf("   curthread       = %p\n", curthread);

Some of those are printed with %PRIxPTR, some with %p.  Perhaps this
inconsistency can be avoided?

./danfe

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:28:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D6BB4154092C;
 Sat,  9 Mar 2019 10:28:36 +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)
 server-signature RSA-PSS (4096 bits)
 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 78AC38082F;
 Sat,  9 Mar 2019 10:28:36 +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 6C5D09E0D;
 Sat,  9 Mar 2019 10:28:36 +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 x29ASaiX048824;
 Sat, 9 Mar 2019 10:28:36 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29ASaKh048823;
 Sat, 9 Mar 2019 10:28:36 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091028.x29ASaKh048823@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:28:36 +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: r344963 - stable/12/sys/netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/12/sys/netpfil/pf
X-SVN-Commit-Revision: 344963
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 78AC38082F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:28:37 -0000

Author: kp
Date: Sat Mar  9 10:28:36 2019
New Revision: 344963
URL: https://svnweb.freebsd.org/changeset/base/344963

Log:
  MFC r340073, r341359:
  
  pf: Keep a reference to struct ifnets we're using
  
  Ensure that the struct ifnet we use can't go away until we're done with
  it.
  
  pf: Fix panic on overlapping interface names
  
  In rare situations[*] it's possible for two different interfaces to have
  the same name. This confuses pf, because kifs are indexed by name (which
  is assumed to be unique). As a result we can end up trying to
  if_rele(NULL), which panics.
  
  Explicitly checking the ifp pointer before if_rele() prevents the panic.
  Note pf will likely behave in unexpected ways on the the overlapping
  interfaces.
  
  [*] Insert an interface in a vnet jail. Rename it to an interface which
  exists on the host. Remove the jail. There are now two interfaces with
  the same name in the host.

Modified:
  stable/12/sys/netpfil/pf/pf_if.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/netpfil/pf/pf_if.c
==============================================================================
--- stable/12/sys/netpfil/pf/pf_if.c	Sat Mar  9 10:24:39 2019	(r344962)
+++ stable/12/sys/netpfil/pf/pf_if.c	Sat Mar  9 10:28:36 2019	(r344963)
@@ -165,8 +165,10 @@ pfi_cleanup_vnet(void)
 		RB_REMOVE(pfi_ifhead, &V_pfi_ifs, kif);
 		if (kif->pfik_group)
 			kif->pfik_group->ifg_pf_kif = NULL;
-		if (kif->pfik_ifp)
+		if (kif->pfik_ifp) {
+			if_rele(kif->pfik_ifp);
 			kif->pfik_ifp->if_pf_kif = NULL;
+		}
 		free(kif, PFI_MTYPE);
 	}
 
@@ -322,6 +324,8 @@ pfi_attach_ifnet(struct ifnet *ifp)
 	V_pfi_update++;
 	kif = pfi_kif_attach(kif, ifp->if_xname);
 
+	if_ref(ifp);
+
 	kif->pfik_ifp = ifp;
 	ifp->if_pf_kif = kif;
 
@@ -847,6 +851,9 @@ pfi_detach_ifnet_event(void *arg __unused, struct ifne
 	PF_RULES_WLOCK();
 	V_pfi_update++;
 	pfi_kif_update(kif);
+
+	if (kif->pfik_ifp)
+		if_rele(kif->pfik_ifp);
 
 	kif->pfik_ifp = NULL;
 	ifp->if_pf_kif = NULL;

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:35:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 47C011540E20;
 Sat,  9 Mar 2019 10:35:38 +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)
 server-signature RSA-PSS (4096 bits)
 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 D30B38106B;
 Sat,  9 Mar 2019 10:35:37 +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 C12079FE7;
 Sat,  9 Mar 2019 10:35:37 +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 x29AZbeP054331;
 Sat, 9 Mar 2019 10:35:37 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29AZbf5054330;
 Sat, 9 Mar 2019 10:35:37 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091035.x29AZbf5054330@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:35:37 +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: r344967 - stable/12/tests/sys/netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/12/tests/sys/netpfil/pf
X-SVN-Commit-Revision: 344967
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: D30B38106B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:35:38 -0000

Author: kp
Date: Sat Mar  9 10:35:37 2019
New Revision: 344967
URL: https://svnweb.freebsd.org/changeset/base/344967

Log:
  MFC r344720:
  
  pf tests: Test for nested inline anchor issue
  
  PR:		196314

Modified:
  stable/12/tests/sys/netpfil/pf/pass_block.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tests/sys/netpfil/pf/pass_block.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:34:42 2019	(r344966)
+++ stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:35:37 2019	(r344967)
@@ -129,9 +129,45 @@ noalias_cleanup()
 	pft_cleanup
 }
 
+atf_test_case "nested_inline" "cleanup"
+nested_inline_head()
+{
+	atf_set descr "Test nested inline anchors, PR196314"
+	atf_set require.user root
+}
+
+nested_inline_body()
+{
+	pft_init
+
+	epair=$(vnet_mkepair)
+	ifconfig ${epair}a inet 192.0.2.1/24 up
+
+	vnet_mkjail alcatraz ${epair}b
+	jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up
+
+	jexec alcatraz pfctl -e
+	pft_set_rules alcatraz \
+		"block in" \
+		"anchor \"an1\" {" \
+			"pass in quick proto tcp to port time" \
+			"anchor \"an2\" {" \
+				"pass in quick proto icmp" \
+			"}" \
+		"}"
+
+	atf_check -s exit:0 -o ignore ping -c 1 -t 1 192.0.2.2
+}
+
+nested_inline_cleanup()
+{
+	pft_cleanup
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case "v4"
 	atf_add_test_case "v6"
 	atf_add_test_case "noalias"
+	atf_add_test_case "nested_inline"
 }

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:33:48 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 73B141540DB5;
 Sat,  9 Mar 2019 10:33:48 +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)
 server-signature RSA-PSS (4096 bits)
 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 119F680E77;
 Sat,  9 Mar 2019 10:33:48 +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 06AB99FD5;
 Sat,  9 Mar 2019 10:33:48 +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 x29AXlCc054104;
 Sat, 9 Mar 2019 10:33:47 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29AXl4O054103;
 Sat, 9 Mar 2019 10:33:47 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091033.x29AXl4O054103@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:33: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: r344965 - stable/12/tests/sys/netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/12/tests/sys/netpfil/pf
X-SVN-Commit-Revision: 344965
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 119F680E77
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:33:48 -0000

Author: kp
Date: Sat Mar  9 10:33:47 2019
New Revision: 344965
URL: https://svnweb.freebsd.org/changeset/base/344965

Log:
  MFC r339836, r340286, r341358:
  
  pf tests: Test ':0' ignoring link-local addresses
  
  Fix test: sys.netpfil.pf.pass_block.noalias
  
  Replace hard-coded epair0b with the variable holds the real epair interface
  used for testing.
  
  pf tests: Make pass_block:noalias more robust
  
  Send several ICMPv6 echo requests. We've seen occasional failures with a
  single request.
  
  PR:		201695

Modified:
  stable/12/tests/sys/netpfil/pf/pass_block.sh
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tests/sys/netpfil/pf/pass_block.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:28:36 2019	(r344964)
+++ stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:33:47 2019	(r344965)
@@ -84,8 +84,54 @@ v6_cleanup()
 	pft_cleanup
 }
 
+atf_test_case "noalias" "cleanup"
+noalias_head()
+{
+	atf_set descr 'Test the :0 noalias option'
+	atf_set require.user root
+}
+
+noalias_body()
+{
+	pft_init
+
+	epair=$(pft_mkepair)
+	ifconfig ${epair}a inet6 2001:db8:42::1/64 up no_dad
+
+	pft_mkjail alcatraz ${epair}b
+	jexec alcatraz ifconfig ${epair}b inet6 2001:db8:42::2/64 up no_dad
+
+	linklocaladdr=$(jexec alcatraz ifconfig ${epair}b inet6 \
+		| grep %${epair}b \
+		| awk '{ print $2; }' \
+		| cut -d % -f 1)
+
+	# Sanity check
+	atf_check -s exit:0 -o ignore ping6 -c 3 -x 1 2001:db8:42::2
+	atf_check -s exit:0 -o ignore ping6 -c 3 -x 1 ${linklocaladdr}%${epair}a
+
+	jexec alcatraz pfctl -e
+	pft_set_rules alcatraz "block out inet6 from (${epair}b:0) to any"
+
+	atf_check -s exit:2 -o ignore ping6 -c 3 -x 1 2001:db8:42::2
+
+	# We should still be able to ping the link-local address
+	atf_check -s exit:0 -o ignore ping6 -c 3 -x 1 ${linklocaladdr}%${epair}a
+
+	pft_set_rules alcatraz "block out inet6 from (${epair}b) to any"
+
+	# We cannot ping to the link-local address
+	atf_check -s exit:2 -o ignore ping6 -c 3 -x 1 ${linklocaladdr}%${epair}a
+}
+
+noalias_cleanup()
+{
+	pft_cleanup
+}
+
 atf_init_test_cases()
 {
 	atf_add_test_case "v4"
 	atf_add_test_case "v6"
+	atf_add_test_case "noalias"
 }

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:34:46 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5EB651540DF8;
 Sat,  9 Mar 2019 10:34:46 +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)
 server-signature RSA-PSS (4096 bits)
 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 091B380F70;
 Sat,  9 Mar 2019 10:34:46 +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 D6A6A9FDD;
 Sat,  9 Mar 2019 10:34:45 +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 x29AYjsF054223;
 Sat, 9 Mar 2019 10:34:45 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29AYhkR054205;
 Sat, 9 Mar 2019 10:34:43 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091034.x29AYhkR054205@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:34: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: r344966 - in stable/12/tests/sys: . common
 netipsec/tunnel netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: in stable/12/tests/sys: . common netipsec/tunnel netpfil/pf
X-SVN-Commit-Revision: 344966
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 091B380F70
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.953,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:34:46 -0000

Author: kp
Date: Sat Mar  9 10:34:42 2019
New Revision: 344966
URL: https://svnweb.freebsd.org/changeset/base/344966

Log:
  MFC r344764
  
  tests: Move common (vnet) test functions into a common file
  
  The netipsec and pf tests have a number of common test functions. These
  used to be duplicated, but it makes more sense for them to re-use the
  common functions.
  
  PR:		236223

Added:
  stable/12/tests/sys/common/
     - copied from r344764, head/tests/sys/common/
Modified:
  stable/12/tests/sys/Makefile
  stable/12/tests/sys/netipsec/tunnel/utils.subr
  stable/12/tests/sys/netpfil/pf/anchor.sh
  stable/12/tests/sys/netpfil/pf/forward.sh
  stable/12/tests/sys/netpfil/pf/fragmentation.sh
  stable/12/tests/sys/netpfil/pf/names.sh
  stable/12/tests/sys/netpfil/pf/nat.sh
  stable/12/tests/sys/netpfil/pf/pass_block.sh
  stable/12/tests/sys/netpfil/pf/pfsync.sh
  stable/12/tests/sys/netpfil/pf/rdr.sh
  stable/12/tests/sys/netpfil/pf/route_to.sh
  stable/12/tests/sys/netpfil/pf/set_skip.sh
  stable/12/tests/sys/netpfil/pf/set_tos.sh
  stable/12/tests/sys/netpfil/pf/synproxy.sh
  stable/12/tests/sys/netpfil/pf/utils.subr
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tests/sys/Makefile
==============================================================================
--- stable/12/tests/sys/Makefile	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/Makefile	Sat Mar  9 10:34:42 2019	(r344966)
@@ -39,4 +39,6 @@ _cddl=	cddl
 # Items not integrated into kyua runs by default
 SUBDIR+=		pjdfstest
 
+SUBDIR+=		common
+
 .include <bsd.test.mk>

Modified: stable/12/tests/sys/netipsec/tunnel/utils.subr
==============================================================================
--- stable/12/tests/sys/netipsec/tunnel/utils.subr	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netipsec/tunnel/utils.subr	Sat Mar  9 10:34:42 2019	(r344966)
@@ -4,51 +4,29 @@
 
 : ${TMPDIR=/tmp}
 
+. $(atf_get_srcdir)/../../common/vnet.subr
+
 ist_init()
 {
-	if [ "$(sysctl -i -n kern.features.vimage)" != 1 ]; then
-		atf_skip "This test requires VIMAGE"
-	fi
+	vnet_init
 }
 
-pft_mkepair()
-{
-	ifname=$(ifconfig epair create)
-	echo $ifname >> created_interfaces.lst
-	echo ${ifname%a}
-}
-
-pft_mkjail()
-{
-	jailname=$1
-	shift
-
-	vnet_interfaces=
-	for ifname in $@
-	do
-		vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}"
-	done
-	jail -c name=${jailname} persist vnet ${vnet_interfaces}
-
-	echo $jailname >> created_jails.lst
-}
-
 ist_labsetup ()
 {
-	epair_LAN_A=$(pft_mkepair)
+	epair_LAN_A=$(vnet_mkepair)
 	ifconfig ${epair_LAN_A}a up
-	epair_PUB_A=$(pft_mkepair)
+	epair_PUB_A=$(vnet_mkepair)
 	ifconfig ${epair_PUB_A}a up
-	epair_LAN_B=$(pft_mkepair)
+	epair_LAN_B=$(vnet_mkepair)
 	ifconfig ${epair_LAN_B}a up
-	epair_PUB_B=$(pft_mkepair)
+	epair_PUB_B=$(vnet_mkepair)
 	ifconfig ${epair_PUB_B}a up
 
-	pft_mkjail hostA ${epair_LAN_A}a
-	pft_mkjail ipsecA ${epair_LAN_A}b ${epair_PUB_A}a
-	pft_mkjail router ${epair_PUB_A}b ${epair_PUB_B}b
-	pft_mkjail ipsecB ${epair_LAN_B}b ${epair_PUB_B}a
-	pft_mkjail hostB ${epair_LAN_B}a
+	vnet_mkjail hostA ${epair_LAN_A}a
+	vnet_mkjail ipsecA ${epair_LAN_A}b ${epair_PUB_A}a
+	vnet_mkjail router ${epair_PUB_A}b ${epair_PUB_B}b
+	vnet_mkjail ipsecB ${epair_LAN_B}b ${epair_PUB_B}a
+	vnet_mkjail hostB ${epair_LAN_B}a
 }
 
 ist_v4_setup ()
@@ -147,20 +125,5 @@ ist_test()
 }
 ist_cleanup()
 {
-	if [ -f created_jails.lst ]; then
-		for jailname in $(cat created_jails.lst)
-		do
-			jail -r ${jailname}
-			rm -f ${TMPDIR}/ipsec.${jailname}.conf
-		done
-		rm created_jails.lst
-	fi
-
-	if [ -f created_interfaces.lst ]; then
-		for ifname in $(cat created_interfaces.lst)
-		do
-			ifconfig ${ifname} destroy
-		done
-		rm created_interfaces.lst
-	fi
+	vnet_cleanup
 }

Modified: stable/12/tests/sys/netpfil/pf/anchor.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/anchor.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/anchor.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,8 +13,8 @@ pr183198_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
-	pft_mkjail alcatraz ${epair}b
+	epair=$(vnet_mkepair)
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz pfctl -e
 
 	# Forward with pf enabled

Modified: stable/12/tests/sys/netpfil/pf/forward.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/forward.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/forward.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -16,13 +16,13 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
 
-	epair_recv=$(pft_mkepair)
+	epair_recv=$(vnet_mkepair)
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_recv}b 198.51.100.2/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1
@@ -75,13 +75,13 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
-	epair_recv=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
+	epair_recv=$(vnet_mkepair)
 
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 up no_dad -ifdisabled
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 
 	jexec alcatraz ifconfig ${epair_send}b inet6 2001:db8:42::2/64 up no_dad
 	jexec alcatraz ifconfig ${epair_recv}b inet6 2001:db8:43::2/64 up no_dad

Modified: stable/12/tests/sys/netpfil/pf/fragmentation.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/fragmentation.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/fragmentation.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -14,8 +14,8 @@ too_many_fragments_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
-	pft_mkjail alcatraz ${epair}a
+	epair=$(vnet_mkepair)
+	vnet_mkjail alcatraz ${epair}a
 
 	ifconfig ${epair}b inet 192.0.2.1/24 up
 	jexec alcatraz ifconfig ${epair}a 192.0.2.2/24 up
@@ -57,11 +57,11 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
-	epair_link=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
+	epair_link=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_link}a
-	pft_mkjail singsing ${epair_link}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_link}a
+	vnet_mkjail singsing ${epair_link}b
 
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 no_dad up
 

Modified: stable/12/tests/sys/netpfil/pf/names.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/names.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/names.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,9 +13,9 @@ names_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	ifconfig ${epair}a name foo
 	jexec alcatraz ifconfig ${epair}b name foo
 

Modified: stable/12/tests/sys/netpfil/pf/nat.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/nat.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/nat.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,11 +13,11 @@ exhaust_body()
 {
 	pft_init
 
-	epair_nat=$(pft_mkepair)
-	epair_echo=$(pft_mkepair)
+	epair_nat=$(vnet_mkepair)
+	epair_echo=$(vnet_mkepair)
 
-	pft_mkjail nat ${epair_nat}b ${epair_echo}a
-	pft_mkjail echo ${epair_echo}b
+	vnet_mkjail nat ${epair_nat}b ${epair_echo}a
+	vnet_mkjail echo ${epair_echo}b
 
 	ifconfig ${epair_nat}a 192.0.2.2/24 up
 	route add -net 198.51.100.0/24 192.0.2.1

Modified: stable/12/tests/sys/netpfil/pf/pass_block.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/pass_block.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,11 +13,11 @@ v4_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a 192.0.2.1/24 up
 
 	# Set up a simple jail with one interface
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up
 
 	# Trivial ping to the jail, without pf
@@ -52,11 +52,11 @@ v6_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a inet6 2001:db8:42::1/64 up no_dad
 
 	# Set up a simple jail with one interface
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b inet6 2001:db8:42::2/64 up no_dad
 
 	# Trivial ping to the jail, without pf
@@ -95,10 +95,10 @@ noalias_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a inet6 2001:db8:42::1/64 up no_dad
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 	jexec alcatraz ifconfig ${epair}b inet6 2001:db8:42::2/64 up no_dad
 
 	linklocaladdr=$(jexec alcatraz ifconfig ${epair}b inet6 \

Modified: stable/12/tests/sys/netpfil/pf/pfsync.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/pfsync.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/pfsync.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -15,12 +15,12 @@ basic_body()
 {
 	pfsynct_init
 
-	epair_sync=$(pft_mkepair)
-	epair_one=$(pft_mkepair)
-	epair_two=$(pft_mkepair)
+	epair_sync=$(vnet_mkepair)
+	epair_one=$(vnet_mkepair)
+	epair_two=$(vnet_mkepair)
 
-	pft_mkjail one ${epair_one}a ${epair_sync}a
-	pft_mkjail two ${epair_two}a ${epair_sync}b
+	vnet_mkjail one ${epair_one}a ${epair_sync}a
+	vnet_mkjail two ${epair_two}a ${epair_sync}b
 
 	# pfsync interface
 	jexec one ifconfig ${epair_sync}a 192.0.2.1/24 up

Modified: stable/12/tests/sys/netpfil/pf/rdr.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/rdr.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/rdr.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,9 +13,9 @@ basic_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b
+	vnet_mkjail alcatraz ${epair}b
 
 	ifconfig ${epair}a 192.0.2.2/24 up
 	route add -net 198.51.100.0/24 192.0.2.1

Modified: stable/12/tests/sys/netpfil/pf/route_to.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/route_to.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/route_to.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,12 +13,12 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
-	epair_route=$(pft_mkepair)
+	epair_route=$(vnet_mkepair)
 	ifconfig ${epair_route}a 203.0.113.1/24 up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_route}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_route}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_route}b 203.0.113.2/24 up
 	jexec alcatraz route add -net 198.51.100.0/24 192.0.2.1
@@ -49,12 +49,12 @@ v6_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a inet6 2001:db8:42::1/64 up no_dad -ifdisabled
-	epair_route=$(pft_mkepair)
+	epair_route=$(vnet_mkepair)
 	ifconfig ${epair_route}a inet6 2001:db8:43::1/64 up no_dad -ifdisabled
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_route}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_route}b
 	jexec alcatraz ifconfig ${epair_send}b inet6 2001:db8:42::2/64 up no_dad
 	jexec alcatraz ifconfig ${epair_route}b inet6 2001:db8:43::2/64 up no_dad
 	jexec alcatraz route add -6 2001:db8:666::/64 2001:db8:42::2

Modified: stable/12/tests/sys/netpfil/pf/set_skip.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/set_skip.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/set_skip.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -14,7 +14,7 @@ set_skip_group_body()
 	# See PR 229241
 	pft_init
 
-	pft_mkjail alcatraz
+	vnet_mkjail alcatraz
 	jexec alcatraz ifconfig lo0 127.0.0.1/8 up
 	jexec alcatraz ifconfig lo0 group foo
 	jexec alcatraz pfctl -e
@@ -42,7 +42,7 @@ set_skip_group_lo_body()
 	# See PR 229241
 	pft_init
 
-	pft_mkjail alcatraz
+	vnet_mkjail alcatraz
 	jexec alcatraz ifconfig lo0 127.0.0.1/8 up
 	jexec alcatraz pfctl -e
 	pft_set_rules alcatraz "set skip on lo" \

Modified: stable/12/tests/sys/netpfil/pf/set_tos.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/set_tos.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/set_tos.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -16,13 +16,13 @@ v4_body()
 {
 	pft_init
 
-	epair_send=$(pft_mkepair)
+	epair_send=$(vnet_mkepair)
 	ifconfig ${epair_send}a 192.0.2.1/24 up
 
-	epair_recv=$(pft_mkepair)
+	epair_recv=$(vnet_mkepair)
 	ifconfig ${epair_recv}a up
 
-	pft_mkjail alcatraz ${epair_send}b ${epair_recv}b
+	vnet_mkjail alcatraz ${epair_send}b ${epair_recv}b
 	jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${epair_recv}b 198.51.100.2/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1

Modified: stable/12/tests/sys/netpfil/pf/synproxy.sh
==============================================================================
--- stable/12/tests/sys/netpfil/pf/synproxy.sh	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/synproxy.sh	Sat Mar  9 10:34:42 2019	(r344966)
@@ -13,18 +13,18 @@ synproxy_body()
 {
 	pft_init
 
-	epair=$(pft_mkepair)
+	epair=$(vnet_mkepair)
 	ifconfig ${epair}a 192.0.2.1/24 up
 	route add -net 198.51.100.0/24 192.0.2.2
 
-	link=$(pft_mkepair)
+	link=$(vnet_mkepair)
 
-	pft_mkjail alcatraz ${epair}b ${link}a
+	vnet_mkjail alcatraz ${epair}b ${link}a
 	jexec alcatraz ifconfig ${epair}b 192.0.2.2/24 up
 	jexec alcatraz ifconfig ${link}a 198.51.100.1/24 up
 	jexec alcatraz sysctl net.inet.ip.forwarding=1
 
-	pft_mkjail singsing ${link}b
+	vnet_mkjail singsing ${link}b
 	jexec singsing ifconfig ${link}b 198.51.100.2/24 up
 	jexec singsing route add default 198.51.100.1
 

Modified: stable/12/tests/sys/netpfil/pf/utils.subr
==============================================================================
--- stable/12/tests/sys/netpfil/pf/utils.subr	Sat Mar  9 10:33:47 2019	(r344965)
+++ stable/12/tests/sys/netpfil/pf/utils.subr	Sat Mar  9 10:34:42 2019	(r344966)
@@ -2,15 +2,15 @@
 # Utility functions
 ##
 
+. $(atf_get_srcdir)/../../common/vnet.subr
+
 pft_init()
 {
+	vnet_init
+
 	if [ ! -c /dev/pf ]; then
 		atf_skip "This test requires pf"
 	fi
-
-	if [ "`sysctl -i -n kern.features.vimage`" != 1 ]; then
-		atf_skip "This test requires VIMAGE"
-	fi
 }
 
 pfsynct_init()
@@ -22,28 +22,6 @@ pfsynct_init()
 	fi
 }
 
-pft_mkepair()
-{
-	ifname=$(ifconfig epair create)
-	echo $ifname >> created_interfaces.lst
-	echo ${ifname%a}
-}
-
-pft_mkjail()
-{
-	jailname=$1
-	shift
-
-	vnet_interfaces=
-	for ifname in $@
-	do
-		vnet_interfaces="${vnet_interfaces} vnet.interface=${ifname}"
-	done
-	jail -c name=${jailname} persist vnet ${vnet_interfaces}
-
-	echo $jailname >> created_jails.lst
-}
-
 pft_set_rules()
 {
 	jname=$1
@@ -66,21 +44,7 @@ pft_set_rules()
 
 pft_cleanup()
 {
-	if [ -f created_jails.lst ]; then
-		for jailname in `cat created_jails.lst`
-		do
-			jail -r ${jailname}
-		done
-		rm created_jails.lst
-	fi
-
-	if [ -f created_interfaces.lst ]; then
-		for ifname in `cat created_interfaces.lst`
-		do
-			ifconfig ${ifname} destroy
-		done
-		rm created_interfaces.lst
-	fi
+	vnet_cleanup
 }
 
 pfsynct_cleanup()

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:28:37 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 774CA1540930;
 Sat,  9 Mar 2019 10:28:37 +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)
 server-signature RSA-PSS (4096 bits)
 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 14CCA80831;
 Sat,  9 Mar 2019 10:28:37 +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 09A539E0E;
 Sat,  9 Mar 2019 10:28:37 +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 x29ASaYV048855;
 Sat, 9 Mar 2019 10:28:36 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29ASatt048854;
 Sat, 9 Mar 2019 10:28:36 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091028.x29ASatt048854@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:28:36 +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: r344964 - stable/11/sys/netpfil/pf
X-SVN-Group: stable-11
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/11/sys/netpfil/pf
X-SVN-Commit-Revision: 344964
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 14CCA80831
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:28:37 -0000

Author: kp
Date: Sat Mar  9 10:28:36 2019
New Revision: 344964
URL: https://svnweb.freebsd.org/changeset/base/344964

Log:
  MFC r340073, r341359:
  
  pf: Keep a reference to struct ifnets we're using
  
  Ensure that the struct ifnet we use can't go away until we're done with
  it.
  
  pf: Fix panic on overlapping interface names
  
  In rare situations[*] it's possible for two different interfaces to have
  the same name. This confuses pf, because kifs are indexed by name (which
  is assumed to be unique). As a result we can end up trying to
  if_rele(NULL), which panics.
  
  Explicitly checking the ifp pointer before if_rele() prevents the panic.
  Note pf will likely behave in unexpected ways on the the overlapping
  interfaces.
  
  [*] Insert an interface in a vnet jail. Rename it to an interface which
  exists on the host. Remove the jail. There are now two interfaces with
  the same name in the host.

Modified:
  stable/11/sys/netpfil/pf/pf_if.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/netpfil/pf/pf_if.c
==============================================================================
--- stable/11/sys/netpfil/pf/pf_if.c	Sat Mar  9 10:28:36 2019	(r344963)
+++ stable/11/sys/netpfil/pf/pf_if.c	Sat Mar  9 10:28:36 2019	(r344964)
@@ -163,8 +163,10 @@ pfi_cleanup_vnet(void)
 		RB_REMOVE(pfi_ifhead, &V_pfi_ifs, kif);
 		if (kif->pfik_group)
 			kif->pfik_group->ifg_pf_kif = NULL;
-		if (kif->pfik_ifp)
+		if (kif->pfik_ifp) {
+			if_rele(kif->pfik_ifp);
 			kif->pfik_ifp->if_pf_kif = NULL;
+		}
 		free(kif, PFI_MTYPE);
 	}
 
@@ -315,6 +317,8 @@ pfi_attach_ifnet(struct ifnet *ifp)
 	V_pfi_update++;
 	kif = pfi_kif_attach(kif, ifp->if_xname);
 
+	if_ref(ifp);
+
 	kif->pfik_ifp = ifp;
 	ifp->if_pf_kif = kif;
 
@@ -845,6 +849,9 @@ pfi_detach_ifnet_event(void *arg __unused, struct ifne
 	PF_RULES_WLOCK();
 	V_pfi_update++;
 	pfi_kif_update(kif);
+
+	if (kif->pfik_ifp)
+		if_rele(kif->pfik_ifp);
 
 	kif->pfik_ifp = NULL;
 	ifp->if_pf_kif = NULL;

From owner-svn-src-all@freebsd.org  Sat Mar  9 10:24:40 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 93C771540789;
 Sat,  9 Mar 2019 10:24:40 +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)
 server-signature RSA-PSS (4096 bits)
 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 2BB4E80651;
 Sat,  9 Mar 2019 10:24:40 +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 1B6EF9DF7;
 Sat,  9 Mar 2019 10:24:40 +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 x29AOdFS048584;
 Sat, 9 Mar 2019 10:24:39 GMT (envelope-from kp@FreeBSD.org)
Received: (from kp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29AOd0t048583;
 Sat, 9 Mar 2019 10:24:39 GMT (envelope-from kp@FreeBSD.org)
Message-Id: <201903091024.x29AOd0t048583@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org
 using -f
From: Kristof Provost <kp@FreeBSD.org>
Date: Sat, 9 Mar 2019 10:24:39 +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: r344962 - stable/12/tests/sys/netpfil/pf
X-SVN-Group: stable-12
X-SVN-Commit-Author: kp
X-SVN-Commit-Paths: stable/12/tests/sys/netpfil/pf
X-SVN-Commit-Revision: 344962
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 2BB4E80651
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.95 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.95)[-0.949,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 10:24:40 -0000

Author: kp
Date: Sat Mar  9 10:24:39 2019
New Revision: 344962
URL: https://svnweb.freebsd.org/changeset/base/344962

Log:
  MFC r341360:
  
  pf tests: Test name handling
  
  Provoke a situation where two interfaces have the same name, and verify
  pf's reaction to this.

Added:
  stable/12/tests/sys/netpfil/pf/names.sh
     - copied unchanged from r341360, head/tests/sys/netpfil/pf/names.sh
Modified:
  stable/12/tests/sys/netpfil/pf/Makefile
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/tests/sys/netpfil/pf/Makefile
==============================================================================
--- stable/12/tests/sys/netpfil/pf/Makefile	Sat Mar  9 03:24:39 2019	(r344961)
+++ stable/12/tests/sys/netpfil/pf/Makefile	Sat Mar  9 10:24:39 2019	(r344962)
@@ -9,6 +9,7 @@ ATF_TESTS_SH+=	anchor \
 		pass_block \
 		forward \
 		fragmentation \
+		names \
 		nat \
 		set_tos \
 		rdr \

Copied: stable/12/tests/sys/netpfil/pf/names.sh (from r341360, head/tests/sys/netpfil/pf/names.sh)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/12/tests/sys/netpfil/pf/names.sh	Sat Mar  9 10:24:39 2019	(r344962, copy of r341360, head/tests/sys/netpfil/pf/names.sh)
@@ -0,0 +1,34 @@
+# $FreeBSD$
+
+. $(atf_get_srcdir)/utils.subr
+
+atf_test_case "names" "cleanup"
+names_head()
+{
+	atf_set descr 'Test overlapping names'
+	atf_set require.user root
+}
+
+names_body()
+{
+	pft_init
+
+	epair=$(pft_mkepair)
+
+	pft_mkjail alcatraz ${epair}b
+	ifconfig ${epair}a name foo
+	jexec alcatraz ifconfig ${epair}b name foo
+
+	jail -r alcatraz
+	ifconfig foo destroy
+}
+
+names_cleanup()
+{
+	pft_cleanup
+}
+
+atf_init_test_cases()
+{
+	atf_add_test_case "names"
+}

From owner-svn-src-all@freebsd.org  Sat Mar  9 12:54:16 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 94E0015250A2;
 Sat,  9 Mar 2019 12:54:16 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3805B86222;
 Sat,  9 Mar 2019 12:54:16 +0000 (UTC)
 (envelope-from avos@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 26AC3B83F;
 Sat,  9 Mar 2019 12:54:16 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29CsGqW030269;
 Sat, 9 Mar 2019 12:54:16 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29CsDEC030258;
 Sat, 9 Mar 2019 12:54:13 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903091254.x29CsDEC030258@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Sat, 9 Mar 2019 12:54: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: r344969 - in stable: 11/sys/dev/malo 11/sys/dev/mwl
 11/sys/dev/usb/wlan 11/sys/net80211 12/sys/dev/malo 12/sys/dev/mwl
 12/sys/dev/usb/wlan 12/sys/net80211
X-SVN-Group: stable-12
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 11/sys/dev/malo 11/sys/dev/mwl
 11/sys/dev/usb/wlan 11/sys/net80211 12/sys/dev/malo 12/sys/dev/mwl
 12/sys/dev/usb/wlan 12/sys/net80211
X-SVN-Commit-Revision: 344969
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3805B86222
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.970,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 12:54:16 -0000

Author: avos
Date: Sat Mar  9 12:54:10 2019
New Revision: 344969
URL: https://svnweb.freebsd.org/changeset/base/344969

Log:
  MFC r343990:
  net80211: hide casts for 'i_seq' field offset calculation inside
  ieee80211_getqos() and reuse it in various places.

Modified:
  stable/12/sys/dev/malo/if_malo.c
  stable/12/sys/dev/mwl/if_mwl.c
  stable/12/sys/dev/usb/wlan/if_run.c
  stable/12/sys/net80211/ieee80211_adhoc.c
  stable/12/sys/net80211/ieee80211_hostap.c
  stable/12/sys/net80211/ieee80211_ht.c
  stable/12/sys/net80211/ieee80211_mesh.c
  stable/12/sys/net80211/ieee80211_output.c
  stable/12/sys/net80211/ieee80211_proto.h
  stable/12/sys/net80211/ieee80211_sta.c
  stable/12/sys/net80211/ieee80211_wds.c
Directory Properties:
  stable/12/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/11/sys/dev/malo/if_malo.c
  stable/11/sys/dev/mwl/if_mwl.c
  stable/11/sys/dev/usb/wlan/if_run.c
  stable/11/sys/net80211/ieee80211_adhoc.c
  stable/11/sys/net80211/ieee80211_hostap.c
  stable/11/sys/net80211/ieee80211_ht.c
  stable/11/sys/net80211/ieee80211_mesh.c
  stable/11/sys/net80211/ieee80211_output.c
  stable/11/sys/net80211/ieee80211_proto.h
  stable/11/sys/net80211/ieee80211_sta.c
  stable/11/sys/net80211/ieee80211_wds.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/12/sys/dev/malo/if_malo.c
==============================================================================
--- stable/12/sys/dev/malo/if_malo.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/dev/malo/if_malo.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1051,13 +1051,9 @@ malo_tx_start(struct malo_softc *sc, struct ieee80211_
 	copyhdrlen = hdrlen = ieee80211_anyhdrsize(wh);
 	pktlen = m0->m_pkthdr.len;
 	if (IEEE80211_QOS_HAS_SEQ(wh)) {
-		if (IEEE80211_IS_DSTODS(wh)) {
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe_addr4 *) wh)->i_qos);
+		qos = *(uint16_t *)ieee80211_getqos(wh);
+		if (IEEE80211_IS_DSTODS(wh))
 			copyhdrlen -= sizeof(qos);
-		} else
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe *) wh)->i_qos);
 	} else
 		qos = 0;
 
@@ -1952,7 +1948,6 @@ malo_rx_proc(void *arg, int npending)
 	struct malo_rxdesc *ds;
 	struct mbuf *m, *mnew;
 	struct ieee80211_qosframe *wh;
-	struct ieee80211_qosframe_addr4 *wh4;
 	struct ieee80211_node *ni;
 	int off, len, hdrlen, pktlen, rssi, ntodo;
 	uint8_t *data, status;
@@ -2062,15 +2057,8 @@ malo_rx_proc(void *arg, int npending)
 		/* NB: don't need to do this sometimes but ... */
 		/* XXX special case so we can memcpy after m_devget? */
 		ovbcopy(data + sizeof(uint16_t), wh, hdrlen);
-		if (IEEE80211_QOS_HAS_SEQ(wh)) {
-			if (IEEE80211_IS_DSTODS(wh)) {
-				wh4 = mtod(m,
-				    struct ieee80211_qosframe_addr4*);
-				*(uint16_t *)wh4->i_qos = ds->qosctrl;
-			} else {
-				*(uint16_t *)wh->i_qos = ds->qosctrl;
-			}
-		}
+		if (IEEE80211_QOS_HAS_SEQ(wh))
+			*(uint16_t *)ieee80211_getqos(wh) = ds->qosctrl;
 		if (ieee80211_radiotap_active(ic)) {
 			sc->malo_rx_th.wr_flags = 0;
 			sc->malo_rx_th.wr_rate = ds->rate;

Modified: stable/12/sys/dev/mwl/if_mwl.c
==============================================================================
--- stable/12/sys/dev/mwl/if_mwl.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/dev/mwl/if_mwl.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -2614,7 +2614,6 @@ mwl_rx_proc(void *arg, int npending)
 	struct mwl_rxdesc *ds;
 	struct mbuf *m;
 	struct ieee80211_qosframe *wh;
-	struct ieee80211_qosframe_addr4 *wh4;
 	struct ieee80211_node *ni;
 	struct mwl_node *mn;
 	int off, len, hdrlen, pktlen, rssi, ntodo;
@@ -2761,15 +2760,8 @@ mwl_rx_proc(void *arg, int npending)
 		/* NB: don't need to do this sometimes but ... */
 		/* XXX special case so we can memcpy after m_devget? */
 		ovbcopy(data + sizeof(uint16_t), wh, hdrlen);
-		if (IEEE80211_QOS_HAS_SEQ(wh)) {
-			if (IEEE80211_IS_DSTODS(wh)) {
-				wh4 = mtod(m,
-				    struct ieee80211_qosframe_addr4*);
-				*(uint16_t *)wh4->i_qos = ds->QosCtrl;
-			} else {
-				*(uint16_t *)wh->i_qos = ds->QosCtrl;
-			}
-		}
+		if (IEEE80211_QOS_HAS_SEQ(wh))
+			*(uint16_t *)ieee80211_getqos(wh) = ds->QosCtrl;
 		/*
 		 * The f/w strips WEP header but doesn't clear
 		 * the WEP bit; mark the packet with M_WEP so
@@ -3100,13 +3092,9 @@ mwl_tx_start(struct mwl_softc *sc, struct ieee80211_no
 	copyhdrlen = hdrlen;
 	pktlen = m0->m_pkthdr.len;
 	if (IEEE80211_QOS_HAS_SEQ(wh)) {
-		if (IEEE80211_IS_DSTODS(wh)) {
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe_addr4 *) wh)->i_qos);
+		qos = *(uint16_t *)ieee80211_getqos(wh);
+		if (IEEE80211_IS_DSTODS(wh))
 			copyhdrlen -= sizeof(qos);
-		} else
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe *) wh)->i_qos);
 	} else
 		qos = 0;
 

Modified: stable/12/sys/dev/usb/wlan/if_run.c
==============================================================================
--- stable/12/sys/dev/usb/wlan/if_run.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/dev/usb/wlan/if_run.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -3369,11 +3369,7 @@ run_tx(struct run_softc *sc, struct mbuf *m, struct ie
 	if ((hasqos = IEEE80211_QOS_HAS_SEQ(wh))) {
 		uint8_t *frm;
 
-		if(IEEE80211_HAS_ADDR4(wh))
-			frm = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos;
-		else
-			frm =((struct ieee80211_qosframe *)wh)->i_qos;
-
+		frm = ieee80211_getqos(wh);
 		qos = le16toh(*(const uint16_t *)frm);
 		tid = qos & IEEE80211_QOS_TID;
 		qid = TID_TO_WME_AC(tid);

Modified: stable/12/sys/net80211/ieee80211_adhoc.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_adhoc.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_adhoc.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -522,11 +522,9 @@ adhoc_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/12/sys/net80211/ieee80211_hostap.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_hostap.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_hostap.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -708,11 +708,9 @@ hostap_input(struct ieee80211_node *ni, struct mbuf *m
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/12/sys/net80211/ieee80211_ht.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_ht.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_ht.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -886,10 +886,7 @@ ieee80211_ampdu_reorder(struct ieee80211_node *ni, str
 	if (IEEE80211_IS_MULTICAST(wh->i_addr1))
 		return PROCESS;
 
-	if (IEEE80211_IS_DSTODS(wh))
-		tid = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0];
-	else
-		tid = wh->i_qos[0];
+	tid = ieee80211_getqos(wh)[0];
 	tid &= IEEE80211_QOS_TID;
 	rap = &ni->ni_rx_ampdu[tid];
 	if ((rap->rxa_flags & IEEE80211_AGGR_XCHGPEND) == 0) {

Modified: stable/12/sys/net80211/ieee80211_mesh.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_mesh.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_mesh.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1655,12 +1655,7 @@ mesh_input(struct ieee80211_node *ni, struct mbuf *m,
 		 * in the Mesh Control field and a 3 address qos frame
 		 * is used.
 		 */
-		if (IEEE80211_IS_DSTODS(wh))
-			*(uint16_t *)qos = *(uint16_t *)
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos;
-		else
-			*(uint16_t *)qos = *(uint16_t *)
-			    ((struct ieee80211_qosframe *)wh)->i_qos;
+		*(uint16_t *)qos = *(uint16_t *)ieee80211_getqos(wh);
 
 		/*
 		 * NB: The mesh STA sets the Mesh Control Present

Modified: stable/12/sys/net80211/ieee80211_output.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_output.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_output.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1948,14 +1948,8 @@ ieee80211_fragment(struct ieee80211vap *vap, struct mb
 		whf = mtod(m, struct ieee80211_frame *);
 		memcpy(whf, wh, hdrsize);
 #ifdef IEEE80211_SUPPORT_MESH
-		if (vap->iv_opmode == IEEE80211_M_MBSS) {
-			if (IEEE80211_IS_DSTODS(wh))
-				((struct ieee80211_qosframe_addr4 *)
-				    whf)->i_qos[1] &= ~IEEE80211_QOS_MC;
-			else
-				((struct ieee80211_qosframe *)
-				    whf)->i_qos[1] &= ~IEEE80211_QOS_MC;
-		}
+		if (vap->iv_opmode == IEEE80211_M_MBSS)
+			ieee80211_getqos(wh)[1] &= ~IEEE80211_QOS_MC;
 #endif
 		*(uint16_t *)&whf->i_seq[0] |= htole16(
 			(fragno & IEEE80211_SEQ_FRAG_MASK) <<

Modified: stable/12/sys/net80211/ieee80211_proto.h
==============================================================================
--- stable/12/sys/net80211/ieee80211_proto.h	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_proto.h	Sat Mar  9 12:54:10 2019	(r344969)
@@ -303,6 +303,22 @@ void	ieee80211_wme_ic_getparams(struct ieee80211com *i
 int	ieee80211_wme_vap_ac_is_noack(struct ieee80211vap *vap, int ac);
 
 /*
+ * Return pointer to the QoS field from a Qos frame.
+ */
+static __inline uint8_t *
+ieee80211_getqos(void *data)
+{
+	struct ieee80211_frame *wh = data;
+
+	KASSERT(IEEE80211_QOS_HAS_SEQ(wh), ("QoS field is absent!"));
+
+	if (IEEE80211_IS_DSTODS(wh))
+		return (((struct ieee80211_qosframe_addr4 *)wh)->i_qos);
+	else
+		return (((struct ieee80211_qosframe *)wh)->i_qos);
+}
+
+/*
  * Return the WME TID from a QoS frame.  If no TID
  * is present return the index for the "non-QoS" entry.
  */

Modified: stable/12/sys/net80211/ieee80211_sta.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_sta.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_sta.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -786,11 +786,9 @@ sta_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/12/sys/net80211/ieee80211_wds.c
==============================================================================
--- stable/12/sys/net80211/ieee80211_wds.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/12/sys/net80211/ieee80211_wds.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -583,11 +583,9 @@ wds_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

From owner-svn-src-all@freebsd.org  Sat Mar  9 12:44:06 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 08DBE152492E;
 Sat,  9 Mar 2019 12:44:06 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9CB1785B6C;
 Sat,  9 Mar 2019 12:44:05 +0000 (UTC)
 (envelope-from avos@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 8CD19B690;
 Sat,  9 Mar 2019 12:44:05 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29Ci5w0024682;
 Sat, 9 Mar 2019 12:44:05 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29Ci5Kr024681;
 Sat, 9 Mar 2019 12:44:05 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903091244.x29Ci5Kr024681@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Sat, 9 Mar 2019 12:44: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: r344968 - stable/12/sys/dev/rtwn/rtl8192c
X-SVN-Group: stable-12
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: stable/12/sys/dev/rtwn/rtl8192c
X-SVN-Commit-Revision: 344968
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9CB1785B6C
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.967,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 12:44:06 -0000

Author: avos
Date: Sat Mar  9 12:44:05 2019
New Revision: 344968
URL: https://svnweb.freebsd.org/changeset/base/344968

Log:
  MFC r344744:
  rtwn_usb(4): fix LED blinking for RTL8192CU during scanning

Modified:
  stable/12/sys/dev/rtwn/rtl8192c/r92c_init.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/rtwn/rtl8192c/r92c_init.c
==============================================================================
--- stable/12/sys/dev/rtwn/rtl8192c/r92c_init.c	Sat Mar  9 10:35:37 2019	(r344967)
+++ stable/12/sys/dev/rtwn/rtl8192c/r92c_init.c	Sat Mar  9 12:44:05 2019	(r344968)
@@ -322,6 +322,7 @@ r92c_init_antsel(struct rtwn_softc *sc)
 	rtwn_bb_setbits(sc, R92C_FPGA0_RFPARAM(0), 0, 0x2000);
 	reg = rtwn_bb_read(sc, R92C_FPGA0_RFIFACEOE(0));
 	sc->sc_ant = MS(reg, R92C_FPGA0_RFIFACEOE0_ANT);	/* XXX */
+	rtwn_setbits_1(sc, R92C_LEDCFG2, 0x80, 0);
 }
 
 void

From owner-svn-src-all@freebsd.org  Sat Mar  9 12:54:14 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 337171525098;
 Sat,  9 Mar 2019 12:54:14 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 9DF8B8621A;
 Sat,  9 Mar 2019 12:54:13 +0000 (UTC)
 (envelope-from avos@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 8AF2AB83E;
 Sat,  9 Mar 2019 12:54:13 +0000 (UTC)
 (envelope-from avos@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29CsDnp030252;
 Sat, 9 Mar 2019 12:54:13 GMT (envelope-from avos@FreeBSD.org)
Received: (from avos@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29CsBuM030241;
 Sat, 9 Mar 2019 12:54:11 GMT (envelope-from avos@FreeBSD.org)
Message-Id: <201903091254.x29CsBuM030241@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: avos set sender to
 avos@FreeBSD.org using -f
From: Andriy Voskoboinyk <avos@FreeBSD.org>
Date: Sat, 9 Mar 2019 12:54: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: r344969 - in stable: 11/sys/dev/malo 11/sys/dev/mwl
 11/sys/dev/usb/wlan 11/sys/net80211 12/sys/dev/malo 12/sys/dev/mwl
 12/sys/dev/usb/wlan 12/sys/net80211
X-SVN-Group: stable-11
X-SVN-Commit-Author: avos
X-SVN-Commit-Paths: in stable: 11/sys/dev/malo 11/sys/dev/mwl
 11/sys/dev/usb/wlan 11/sys/net80211 12/sys/dev/malo 12/sys/dev/mwl
 12/sys/dev/usb/wlan 12/sys/net80211
X-SVN-Commit-Revision: 344969
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 9DF8B8621A
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.97 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.97)[-0.970,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 12:54:14 -0000

Author: avos
Date: Sat Mar  9 12:54:10 2019
New Revision: 344969
URL: https://svnweb.freebsd.org/changeset/base/344969

Log:
  MFC r343990:
  net80211: hide casts for 'i_seq' field offset calculation inside
  ieee80211_getqos() and reuse it in various places.

Modified:
  stable/11/sys/dev/malo/if_malo.c
  stable/11/sys/dev/mwl/if_mwl.c
  stable/11/sys/dev/usb/wlan/if_run.c
  stable/11/sys/net80211/ieee80211_adhoc.c
  stable/11/sys/net80211/ieee80211_hostap.c
  stable/11/sys/net80211/ieee80211_ht.c
  stable/11/sys/net80211/ieee80211_mesh.c
  stable/11/sys/net80211/ieee80211_output.c
  stable/11/sys/net80211/ieee80211_proto.h
  stable/11/sys/net80211/ieee80211_sta.c
  stable/11/sys/net80211/ieee80211_wds.c
Directory Properties:
  stable/11/   (props changed)

Changes in other areas also in this revision:
Modified:
  stable/12/sys/dev/malo/if_malo.c
  stable/12/sys/dev/mwl/if_mwl.c
  stable/12/sys/dev/usb/wlan/if_run.c
  stable/12/sys/net80211/ieee80211_adhoc.c
  stable/12/sys/net80211/ieee80211_hostap.c
  stable/12/sys/net80211/ieee80211_ht.c
  stable/12/sys/net80211/ieee80211_mesh.c
  stable/12/sys/net80211/ieee80211_output.c
  stable/12/sys/net80211/ieee80211_proto.h
  stable/12/sys/net80211/ieee80211_sta.c
  stable/12/sys/net80211/ieee80211_wds.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/11/sys/dev/malo/if_malo.c
==============================================================================
--- stable/11/sys/dev/malo/if_malo.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/dev/malo/if_malo.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1049,13 +1049,9 @@ malo_tx_start(struct malo_softc *sc, struct ieee80211_
 	copyhdrlen = hdrlen = ieee80211_anyhdrsize(wh);
 	pktlen = m0->m_pkthdr.len;
 	if (IEEE80211_QOS_HAS_SEQ(wh)) {
-		if (IEEE80211_IS_DSTODS(wh)) {
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe_addr4 *) wh)->i_qos);
+		qos = *(uint16_t *)ieee80211_getqos(wh);
+		if (IEEE80211_IS_DSTODS(wh))
 			copyhdrlen -= sizeof(qos);
-		} else
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe *) wh)->i_qos);
 	} else
 		qos = 0;
 
@@ -1950,7 +1946,6 @@ malo_rx_proc(void *arg, int npending)
 	struct malo_rxdesc *ds;
 	struct mbuf *m, *mnew;
 	struct ieee80211_qosframe *wh;
-	struct ieee80211_qosframe_addr4 *wh4;
 	struct ieee80211_node *ni;
 	int off, len, hdrlen, pktlen, rssi, ntodo;
 	uint8_t *data, status;
@@ -2060,15 +2055,8 @@ malo_rx_proc(void *arg, int npending)
 		/* NB: don't need to do this sometimes but ... */
 		/* XXX special case so we can memcpy after m_devget? */
 		ovbcopy(data + sizeof(uint16_t), wh, hdrlen);
-		if (IEEE80211_QOS_HAS_SEQ(wh)) {
-			if (IEEE80211_IS_DSTODS(wh)) {
-				wh4 = mtod(m,
-				    struct ieee80211_qosframe_addr4*);
-				*(uint16_t *)wh4->i_qos = ds->qosctrl;
-			} else {
-				*(uint16_t *)wh->i_qos = ds->qosctrl;
-			}
-		}
+		if (IEEE80211_QOS_HAS_SEQ(wh))
+			*(uint16_t *)ieee80211_getqos(wh) = ds->qosctrl;
 		if (ieee80211_radiotap_active(ic)) {
 			sc->malo_rx_th.wr_flags = 0;
 			sc->malo_rx_th.wr_rate = ds->rate;

Modified: stable/11/sys/dev/mwl/if_mwl.c
==============================================================================
--- stable/11/sys/dev/mwl/if_mwl.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/dev/mwl/if_mwl.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -2612,7 +2612,6 @@ mwl_rx_proc(void *arg, int npending)
 	struct mwl_rxdesc *ds;
 	struct mbuf *m;
 	struct ieee80211_qosframe *wh;
-	struct ieee80211_qosframe_addr4 *wh4;
 	struct ieee80211_node *ni;
 	struct mwl_node *mn;
 	int off, len, hdrlen, pktlen, rssi, ntodo;
@@ -2759,15 +2758,8 @@ mwl_rx_proc(void *arg, int npending)
 		/* NB: don't need to do this sometimes but ... */
 		/* XXX special case so we can memcpy after m_devget? */
 		ovbcopy(data + sizeof(uint16_t), wh, hdrlen);
-		if (IEEE80211_QOS_HAS_SEQ(wh)) {
-			if (IEEE80211_IS_DSTODS(wh)) {
-				wh4 = mtod(m,
-				    struct ieee80211_qosframe_addr4*);
-				*(uint16_t *)wh4->i_qos = ds->QosCtrl;
-			} else {
-				*(uint16_t *)wh->i_qos = ds->QosCtrl;
-			}
-		}
+		if (IEEE80211_QOS_HAS_SEQ(wh))
+			*(uint16_t *)ieee80211_getqos(wh) = ds->QosCtrl;
 		/*
 		 * The f/w strips WEP header but doesn't clear
 		 * the WEP bit; mark the packet with M_WEP so
@@ -3094,13 +3086,9 @@ mwl_tx_start(struct mwl_softc *sc, struct ieee80211_no
 	copyhdrlen = hdrlen;
 	pktlen = m0->m_pkthdr.len;
 	if (IEEE80211_QOS_HAS_SEQ(wh)) {
-		if (IEEE80211_IS_DSTODS(wh)) {
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe_addr4 *) wh)->i_qos);
+		qos = *(uint16_t *)ieee80211_getqos(wh);
+		if (IEEE80211_IS_DSTODS(wh))
 			copyhdrlen -= sizeof(qos);
-		} else
-			qos = *(uint16_t *)
-			    (((struct ieee80211_qosframe *) wh)->i_qos);
 	} else
 		qos = 0;
 

Modified: stable/11/sys/dev/usb/wlan/if_run.c
==============================================================================
--- stable/11/sys/dev/usb/wlan/if_run.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/dev/usb/wlan/if_run.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -3292,11 +3292,7 @@ run_tx(struct run_softc *sc, struct mbuf *m, struct ie
 	if ((hasqos = IEEE80211_QOS_HAS_SEQ(wh))) {
 		uint8_t *frm;
 
-		if(IEEE80211_HAS_ADDR4(wh))
-			frm = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos;
-		else
-			frm =((struct ieee80211_qosframe *)wh)->i_qos;
-
+		frm = ieee80211_getqos(wh);
 		qos = le16toh(*(const uint16_t *)frm);
 		tid = qos & IEEE80211_QOS_TID;
 		qid = TID_TO_WME_AC(tid);

Modified: stable/11/sys/net80211/ieee80211_adhoc.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_adhoc.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_adhoc.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -492,11 +492,9 @@ adhoc_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/11/sys/net80211/ieee80211_hostap.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_hostap.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_hostap.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -693,11 +693,9 @@ hostap_input(struct ieee80211_node *ni, struct mbuf *m
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/11/sys/net80211/ieee80211_ht.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_ht.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_ht.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -803,10 +803,7 @@ ieee80211_ampdu_reorder(struct ieee80211_node *ni, str
 		 */
 		return PROCESS;
 	}
-	if (IEEE80211_IS_DSTODS(wh))
-		tid = ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0];
-	else
-		tid = wh->i_qos[0];
+	tid = ieee80211_getqos(wh)[0];
 	tid &= IEEE80211_QOS_TID;
 	rap = &ni->ni_rx_ampdu[tid];
 	if ((rap->rxa_flags & IEEE80211_AGGR_XCHGPEND) == 0) {

Modified: stable/11/sys/net80211/ieee80211_mesh.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_mesh.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_mesh.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1653,12 +1653,7 @@ mesh_input(struct ieee80211_node *ni, struct mbuf *m,
 		 * in the Mesh Control field and a 3 address qos frame
 		 * is used.
 		 */
-		if (IEEE80211_IS_DSTODS(wh))
-			*(uint16_t *)qos = *(uint16_t *)
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos;
-		else
-			*(uint16_t *)qos = *(uint16_t *)
-			    ((struct ieee80211_qosframe *)wh)->i_qos;
+		*(uint16_t *)qos = *(uint16_t *)ieee80211_getqos(wh);
 
 		/*
 		 * NB: The mesh STA sets the Mesh Control Present

Modified: stable/11/sys/net80211/ieee80211_output.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_output.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_output.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -1695,14 +1695,8 @@ ieee80211_fragment(struct ieee80211vap *vap, struct mb
 		whf = mtod(m, struct ieee80211_frame *);
 		memcpy(whf, wh, hdrsize);
 #ifdef IEEE80211_SUPPORT_MESH
-		if (vap->iv_opmode == IEEE80211_M_MBSS) {
-			if (IEEE80211_IS_DSTODS(wh))
-				((struct ieee80211_qosframe_addr4 *)
-				    whf)->i_qos[1] &= ~IEEE80211_QOS_MC;
-			else
-				((struct ieee80211_qosframe *)
-				    whf)->i_qos[1] &= ~IEEE80211_QOS_MC;
-		}
+		if (vap->iv_opmode == IEEE80211_M_MBSS)
+			ieee80211_getqos(wh)[1] &= ~IEEE80211_QOS_MC;
 #endif
 		*(uint16_t *)&whf->i_seq[0] |= htole16(
 			(fragno & IEEE80211_SEQ_FRAG_MASK) <<

Modified: stable/11/sys/net80211/ieee80211_proto.h
==============================================================================
--- stable/11/sys/net80211/ieee80211_proto.h	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_proto.h	Sat Mar  9 12:54:10 2019	(r344969)
@@ -295,6 +295,22 @@ void	ieee80211_wme_updateparams(struct ieee80211vap *)
 void	ieee80211_wme_updateparams_locked(struct ieee80211vap *);
 
 /*
+ * Return pointer to the QoS field from a Qos frame.
+ */
+static __inline uint8_t *
+ieee80211_getqos(void *data)
+{
+	struct ieee80211_frame *wh = data;
+
+	KASSERT(IEEE80211_QOS_HAS_SEQ(wh), ("QoS field is absent!"));
+
+	if (IEEE80211_IS_DSTODS(wh))
+		return (((struct ieee80211_qosframe_addr4 *)wh)->i_qos);
+	else
+		return (((struct ieee80211_qosframe *)wh)->i_qos);
+}
+
+/*
  * Return the WME TID from a QoS frame.  If no TID
  * is present return the index for the "non-QoS" entry.
  */

Modified: stable/11/sys/net80211/ieee80211_sta.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_sta.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_sta.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -758,11 +758,9 @@ sta_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

Modified: stable/11/sys/net80211/ieee80211_wds.c
==============================================================================
--- stable/11/sys/net80211/ieee80211_wds.c	Sat Mar  9 12:44:05 2019	(r344968)
+++ stable/11/sys/net80211/ieee80211_wds.c	Sat Mar  9 12:54:10 2019	(r344969)
@@ -571,11 +571,9 @@ wds_input(struct ieee80211_node *ni, struct mbuf *m,
 		/*
 		 * Save QoS bits for use below--before we strip the header.
 		 */
-		if (subtype == IEEE80211_FC0_SUBTYPE_QOS) {
-			qos = (dir == IEEE80211_FC1_DIR_DSTODS) ?
-			    ((struct ieee80211_qosframe_addr4 *)wh)->i_qos[0] :
-			    ((struct ieee80211_qosframe *)wh)->i_qos[0];
-		} else
+		if (subtype == IEEE80211_FC0_SUBTYPE_QOS)
+			qos = ieee80211_getqos(wh)[0];
+		else
 			qos = 0;
 
 		/*

From owner-svn-src-all@freebsd.org  Sat Mar  9 17:31:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 53DAA152F224;
 Sat,  9 Mar 2019 17:31:57 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: from mail-lj1-f181.google.com (mail-lj1-f181.google.com
 [209.85.208.181])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 4F1B169E95;
 Sat,  9 Mar 2019 17:31:55 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: by mail-lj1-f181.google.com with SMTP id g80so622193ljg.6;
 Sat, 09 Mar 2019 09:31:55 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=/8a13UGXeMvZxKcKQ4YhwVWpjpoVEYykJ1Hl5FWUmA8=;
 b=pw22keJP01Yu+od8wxle4FYLVvHNNAaKOXvlD/jUDk9uVeCk0MMpaKqRYzcLlB00tw
 mpBaDCo/8bcMJh1RqWgui2jV9nviGcJ98kMLDjZ/+oAnRPIO2xkeGtEd7Obc99yatr3t
 IzNfABX4c+h7K2RP/ZsRgVyRHjfhI0kUm2zDvREHZX47vEgQ201efk7YFPPA4inBSUu9
 /Y05++7KuNJarZevQGI920F4yso/rTt1haRuHMvnuldn/rTE6m1xOxM4O12PQOzIhnyW
 CBvWkOrIlaz4icucNqoaj/LlaDlwoWpzrlv+yVa8nULASOmmgRYclEDsuTVKjbDVgk0K
 t/Gw==
X-Gm-Message-State: APjAAAUQvoAAgfUf6ZJzzhREAI/UIGg82nQF0pHR/piOQdxe+w6vddx6
 kxT9k/wZYdGtQW3wl+aMm1E2yEJrXRnCDKrH+Gv0HQ==
X-Google-Smtp-Source: APXvYqyBB5a1/pQjLfuRrWst3efixwZ+oFK6ZmBF8Dv/+TPhc68RD3pcQiBdlBpsBLKJhGDVjoQ+DRcM2C4j4OIKSFg=
X-Received: by 2002:a2e:1510:: with SMTP id s16mr12134732ljd.62.1552152707812; 
 Sat, 09 Mar 2019 09:31:47 -0800 (PST)
MIME-Version: 1.0
References: <201903091718.x29HI0cw069734@repo.freebsd.org>
In-Reply-To: <201903091718.x29HI0cw069734@repo.freebsd.org>
From: Alan Somers <asomers@freebsd.org>
Date: Sat, 9 Mar 2019 10:31:36 -0700
Message-ID: <CAOtMX2jq3m298OrrWXLzO1TWDJBxEFeU+MViZEwKiWXYTA-Bzw@mail.gmail.com>
Subject: Re: svn commit: r344972 - head
To: Warner Losh <imp@freebsd.org>
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, 
 svn-src-head <svn-src-head@freebsd.org>
Content-Type: text/plain; charset="UTF-8"
X-Rspamd-Queue-Id: 4F1B169E95
X-Spamd-Bar: ----
Authentication-Results: mx1.freebsd.org;
 spf=pass (mx1.freebsd.org: domain of asomers@gmail.com designates
 209.85.208.181 as permitted sender) smtp.mailfrom=asomers@gmail.com
X-Spamd-Result: default: False [-4.15 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[4];
 R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain];
 RCVD_TLS_LAST(0.00)[]; DMARC_NA(0.00)[freebsd.org];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 IP_SCORE(-1.19)[ipnet: 209.85.128.0/17(-3.85), asn: 15169(-2.06), country:
 US(-0.07)]; TO_DN_ALL(0.00)[];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 NEURAL_HAM_SHORT(-0.95)[-0.945,0];
 RCVD_IN_DNSWL_NONE(0.00)[181.208.85.209.list.dnswl.org : 127.0.5.0];
 FORGED_SENDER(0.30)[asomers@freebsd.org,asomers@gmail.com];
 MIME_TRACE(0.00)[0:+]; R_DKIM_NA(0.00)[];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US];
 FROM_NEQ_ENVFROM(0.00)[asomers@freebsd.org,asomers@gmail.com];
 RCVD_COUNT_TWO(0.00)[2]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 17:31:57 -0000

On Sat, Mar 9, 2019 at 10:18 AM Warner Losh <imp@freebsd.org> wrote:
>
> Author: imp
> Date: Sat Mar  9 17:17:59 2019
> New Revision: 344972
> URL: https://svnweb.freebsd.org/changeset/base/344972
>
> Log:
>   Augment ino64 entry
>
>   When updating across this change (the introduction of ino64), the
>   "fast and loose" practice of rebooting to multiuser and then doing an
>   installworld fails with missing symbols. Recommend strongly that users
>   do this in single user mode. The multiuser case only ever works by
>   accident because its requirements are stronger than is supported
>   accross this change. It usually works because critical symbols don't
>   change their version number in libc, which wasn't the case here.
>
> Modified:
>   head/UPDATING

Booting into single-user mode will work, but using boot environments
works even better.  You can install both kernel and world into the new
boot environment and then reboot into it.  The only downside is that
it requires booting from ZFS.
-Alan

From owner-svn-src-all@freebsd.org  Sat Mar  9 18:30:25 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D993153186B;
 Sat,  9 Mar 2019 18:30:25 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: from mail-pg1-x52e.google.com (mail-pg1-x52e.google.com
 [IPv6:2607:f8b0:4864:20::52e])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 11F766CB5C;
 Sat,  9 Mar 2019 18:30:24 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: by mail-pg1-x52e.google.com with SMTP id j3so736434pgm.11;
 Sat, 09 Mar 2019 10:30:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:message-id:mime-version:subject:date:in-reply-to:cc:to
 :references; bh=mXVVpZVeLy9teufPCz6EOCkNmml+Y4+VhEqz0vnEhrI=;
 b=Y3CNcYDt5aebA+WY4RmY6otRWWuM1PqAevz29NdGI9z5xMTJeTmXTWykggXfoO7rKQ
 sRWNhm5B3e8nVVa0Ya2Aswmh0sRXp9vCkd9FE5E6pJSG6vZetKOraQE2YFSj7L1vv5MB
 dYfYCOHFueB6Pxl2ED86S49v2K6qbxuvLukm075tGnTJHZt48ytqGX7sfWLsaA5YPVe3
 TwlgQkP0lDdnIIs+mf1bQkJ5RyEj4JtpELDkgopB97KE2m5xhbx4i6Y3qoa0K+c1VC5A
 bm+TaRFBMIdAsRZO5ocLkCivDPw4ToZg9f4rGWToJT9a5Gxq+w61mNY/d2tcezk/BOfW
 tOAA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:message-id:mime-version:subject:date
 :in-reply-to:cc:to:references;
 bh=mXVVpZVeLy9teufPCz6EOCkNmml+Y4+VhEqz0vnEhrI=;
 b=AiS4QtD03vnLNURNm2pIlcCA58A55dI7tSgQqxE+4BctXbexdOhjOQe/1q7ERckUdC
 p63HxG4gdd5xJfCEg7OWIdp11tTKGk7lF0fir3VWQ9pGIpOURni97bUvfsyicXVuI/pf
 IbVEUkKUM/6klW0XmA9FXEMTSxNjs0utGfV+jfdlgfTyFNCqEzXtAQc4mOVUvDHKa1Od
 8c6+Bry4XQq3JanlTdmSOaaaE6POGTyX7r/e2hXnqQgH78RtR4HsV21FMBrpttotmYJs
 c7W91X/nyvn9rKG8RmlH7hU8+CXjv9FSJ8U4lwjweXSKty40+IFwPOl2NPDQXTLYq33U
 mX0A==
X-Gm-Message-State: APjAAAXIuc3BtU34iZHApKqhtysQGCmltwUXyf7Oi0c1vORLilqBloFU
 l9mkZlWAIJFzRs2GQ0c8QxQ=
X-Google-Smtp-Source: APXvYqxzWvqUaY3sdCzwIrp0iKNclDpTJK7SJj8rb6dI7unrxxt/QeUk7rv6saLCeweo2hxzXvp7yg==
X-Received: by 2002:a63:d542:: with SMTP id v2mr22712925pgi.52.1552156222813; 
 Sat, 09 Mar 2019 10:30:22 -0800 (PST)
Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net.
 [73.19.52.228])
 by smtp.gmail.com with ESMTPSA id p14sm5094229pgn.34.2019.03.09.10.30.21
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 09 Mar 2019 10:30:22 -0800 (PST)
From: Enji Cooper <yaneurabeya@gmail.com>
Message-Id: <56585747-53FB-4783-BA15-8EFED237A730@gmail.com>
Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\))
Subject: Re: svn commit: r344970 - head
Date: Sat, 9 Mar 2019 10:30:21 -0800
In-Reply-To: <CANCZdfpSkNY6YMUpWoK-4j5S_aJdvjxK01OLbRRvMrSqpSN3dQ@mail.gmail.com>
Cc: Warner Losh <imp@freebsd.org>, src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, svn-src-head@freebsd.org
To: Warner Losh <imp@bsdimp.com>
References: <201903091717.x29HHjcc069618@repo.freebsd.org>
 <F052C962-1FBB-4427-B16A-937A93F27B09@gmail.com>
 <CANCZdfpSkNY6YMUpWoK-4j5S_aJdvjxK01OLbRRvMrSqpSN3dQ@mail.gmail.com>
X-Mailer: Apple Mail (2.3445.102.3)
X-Rspamd-Queue-Id: 11F766CB5C
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=gmail.com header.s=20161025 header.b=Y3CNcYDt;
 dmarc=pass (policy=none) header.from=gmail.com;
 spf=pass (mx1.freebsd.org: domain of yaneurabeya@gmail.com designates
 2607:f8b0:4864:20::52e as permitted sender)
 smtp.mailfrom=yaneurabeya@gmail.com
X-Spamd-Result: default: False [-5.37 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 TO_DN_SOME(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com];
 R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MV_CASE(0.50)[];
 URI_COUNT_ODD(1.00)[3]; RCPT_COUNT_FIVE(0.00)[5];
 RCVD_COUNT_THREE(0.00)[3];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 DKIM_TRACE(0.00)[gmail.com:+];
 DMARC_POLICY_ALLOW(-0.50)[gmail.com,none];
 NEURAL_HAM_SHORT(-1.00)[-0.996,0]; FROM_EQ_ENVFROM(0.00)[];
 RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+,1:+];
 FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 MID_RHS_MATCH_FROM(0.00)[];
 DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 IP_SCORE(-2.87)[ip: (-9.48), ipnet: 2607:f8b0::/32(-2.73), asn: 15169(-2.06),
 country: US(-0.07)]; TO_MATCH_ENVRCPT_SOME(0.00)[];
 RCVD_IN_DNSWL_NONE(0.00)[e.2.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]
Content-Type: text/plain;
	charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 18:30:25 -0000


> On Mar 9, 2019, at 10:27 AM, Warner Losh <imp@bsdimp.com> wrote:
>=20
> On Sat, Mar 9, 2019 at 10:25 AM Enji Cooper <yaneurabeya@gmail.com =
<mailto:yaneurabeya@gmail.com>> wrote:
>=20
> > On Mar 9, 2019, at 9:17 AM, Warner Losh <imp@FreeBSD.org> wrote:
> >=20
> > Author: imp
> > Date: Sat Mar  9 17:17:44 2019
> > New Revision: 344970
> > URL: https://svnweb.freebsd.org/changeset/base/344970 =
<https://svnweb.freebsd.org/changeset/base/344970>
> >=20
> > Log:
> >  Misc fixes based on upgrading a laptop from 11.1R to -current
> >=20
> >  Add note about needing to start zfs because mount -a doesn't do =
that.
> >  Add the word 'supported' before 'older branches' for older =
binaries.
> >  Add note about options in custom config files as well.
>=20
> Another item that=E2=80=99s commonly missed is run the hostid rc.d =
script, e.g.,
>=20
> service hostid restart
>=20
> If you don=E2=80=99t do that, then the zpool import may fail as the =
cached hostid might differ between the last export and most current =
import attempt.
>=20
> I always have to do this from ISO-based install media as the temporary =
path for the cached hostid is not writable on CDs/DVDs.
>=20
> That's true, but for the upgrade case the need to run this will be =
quite rare.

I had to do this before going from a version of 9.x/10.x to 11.x :/.

I=E2=80=99m not disagreeing with you about the rareness; I=E2=80=99m =
just trying to underscore the fact that I=E2=80=99ve had to do it =
before, and to be sure the directions are complete, I think it makes =
sense to mention running that script.

Cheers,
-Enji


From owner-svn-src-all@freebsd.org  Sat Mar  9 18:28:08 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id E83BD153177F
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Sat,  9 Mar 2019 18:28:07 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: from mail-qk1-x734.google.com (mail-qk1-x734.google.com
 [IPv6:2607:f8b0:4864:20::734])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id D6F5C6CA01
 for <svn-src-all@freebsd.org>; Sat,  9 Mar 2019 18:28:06 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: by mail-qk1-x734.google.com with SMTP id z3so505175qkf.5
 for <svn-src-all@freebsd.org>; Sat, 09 Mar 2019 10:28:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bsdimp-com.20150623.gappssmtp.com; s=20150623;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=kRWua/bR5NYWgp8KLzBM4aK1Az+eOAn/KoKvTcX0HuM=;
 b=peP5Vyz9oKgmx9VJxSNrW/8UjPRLrs7W+Ey4qUHVJyJ051t2k2qwIyqt9ZoObVtB/X
 3AdZii4tjGH3Tok9acui7YYLQZyKhgGvHqBnmyTvH3B80o0vV5hbDaF9PG+Ps0xhjm0l
 zDb1phAsD21dUDj1I21qeATplZVKeXmvQ1eF9+xy1WvfNanGIxjUY+FziQAp6cS9Tzrq
 OhFjLQQ0mk0r4gm4vx5qyYRwV+UA0mMGIh3SiO5ViEVozewOUgk2pNx/uBULDz2aRgLh
 hS3XSnEpdC/ChrF+KnfROsqaver2G7/pmyei0LURW6kmNYwB1j7urJU3Bkr7ktuoCz7q
 WOWA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=kRWua/bR5NYWgp8KLzBM4aK1Az+eOAn/KoKvTcX0HuM=;
 b=fSG69BQ3qTuJu0HPZ/qaLAALAoWDHhYc0oRky26JMo+bsV9MzpTPLGMtwRJlGuQitb
 zRdv3PoR2YP3XdgZy8U+bj7sBxObVfmsMr7WNN4kICSIxaBtTKoPGJ7hsWWLUdhXDgH/
 Skp0TeVtHfo9/+NG+kzDx8wyYCucS2VhpmPFlKSXVyBN988oVu7/fm5zKzLMVZcjpMQo
 Uq3ELtBofOz5Q5D2uVMDWX5BinCmbfDUuCTafbBm4pvAZIg3NiGsrH0HfqGwtV3jLZyE
 CDXeyvyTyuJEnWiYmD/nAvZzV3iPsngAhkAtCMhbNprnyGTTyaRQUCHg+utkpSXuOv7M
 hZKQ==
X-Gm-Message-State: APjAAAVrG/0q6LGRjBTdTXolcDEWC0EIooJ00raxdovB0lAuOE4jfxfn
 aGseGoDf8n5THTxWTEyouU4d0d8NvA2BkwRE0jmL5Q==
X-Google-Smtp-Source: APXvYqz2GzwX7+jDiHLWw8Azyth/Lx0OoQKxHJoMfPxNRcvvwTAaemr/14xcYJ3iMaMZ4PTCzwTTqheGiDMkMEti+3g=
X-Received: by 2002:a37:a407:: with SMTP id n7mr19277993qke.46.1552156086221; 
 Sat, 09 Mar 2019 10:28:06 -0800 (PST)
MIME-Version: 1.0
References: <201903091717.x29HHjcc069618@repo.freebsd.org>
 <F052C962-1FBB-4427-B16A-937A93F27B09@gmail.com>
In-Reply-To: <F052C962-1FBB-4427-B16A-937A93F27B09@gmail.com>
From: Warner Losh <imp@bsdimp.com>
Date: Sat, 9 Mar 2019 11:27:51 -0700
Message-ID: <CANCZdfpSkNY6YMUpWoK-4j5S_aJdvjxK01OLbRRvMrSqpSN3dQ@mail.gmail.com>
Subject: Re: svn commit: r344970 - head
To: Enji Cooper <yaneurabeya@gmail.com>
Cc: Warner Losh <imp@freebsd.org>, src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, svn-src-head@freebsd.org
X-Rspamd-Queue-Id: D6F5C6CA01
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623
 header.b=peP5Vyz9
X-Spamd-Result: default: False [-5.74 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623];
 FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[bsdimp.com]; RCPT_COUNT_FIVE(0.00)[5];
 TO_MATCH_ENVRCPT_SOME(0.00)[];
 MX_GOOD(-0.01)[cached: ALT1.aspmx.l.google.com];
 DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+];
 RCVD_IN_DNSWL_NONE(0.00)[4.3.7.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]; NEURAL_HAM_SHORT(-0.99)[-0.991,0];
 R_SPF_NA(0.00)[];
 FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com];
 FREEMAIL_TO(0.00)[gmail.com]; MIME_TRACE(0.00)[0:+,1:+];
 RCVD_TLS_LAST(0.00)[];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com];
 IP_SCORE(-2.74)[ip: (-8.85), ipnet: 2607:f8b0::/32(-2.73), asn: 15169(-2.06),
 country: US(-0.07)]; RCVD_COUNT_TWO(0.00)[2]
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 18:28:08 -0000

On Sat, Mar 9, 2019 at 10:25 AM Enji Cooper <yaneurabeya@gmail.com> wrote:

>
> > On Mar 9, 2019, at 9:17 AM, Warner Losh <imp@FreeBSD.org> wrote:
> >
> > Author: imp
> > Date: Sat Mar  9 17:17:44 2019
> > New Revision: 344970
> > URL: https://svnweb.freebsd.org/changeset/base/344970
> >
> > Log:
> >  Misc fixes based on upgrading a laptop from 11.1R to -current
> >
> >  Add note about needing to start zfs because mount -a doesn't do that.
> >  Add the word 'supported' before 'older branches' for older binaries.
> >  Add note about options in custom config files as well.
>
> Another item that=E2=80=99s commonly missed is run the hostid rc.d script=
, e.g.,
>
> service hostid restart
>
> If you don=E2=80=99t do that, then the zpool import may fail as the cache=
d hostid
> might differ between the last export and most current import attempt.
>
> I always have to do this from ISO-based install media as the temporary
> path for the cached hostid is not writable on CDs/DVDs.
>

That's true, but for the upgrade case the need to run this will be quite
rare.

Warner


> Cheers,
> -Enji

From owner-svn-src-all@freebsd.org  Sat Mar  9 17:18:00 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id B2088152E956;
 Sat,  9 Mar 2019 17:18:00 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3AA4A8FD3F;
 Sat,  9 Mar 2019 17:18:00 +0000 (UTC) (envelope-from imp@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 2EAEFE618;
 Sat,  9 Mar 2019 17:18:00 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29HI0VN069735;
 Sat, 9 Mar 2019 17:18:00 GMT (envelope-from imp@FreeBSD.org)
Received: (from imp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29HI0cw069734;
 Sat, 9 Mar 2019 17:18:00 GMT (envelope-from imp@FreeBSD.org)
Message-Id: <201903091718.x29HI0cw069734@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org
 using -f
From: Warner Losh <imp@FreeBSD.org>
Date: Sat, 9 Mar 2019 17:18:00 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344972 - head
X-SVN-Group: head
X-SVN-Commit-Author: imp
X-SVN-Commit-Paths: head
X-SVN-Commit-Revision: 344972
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3AA4A8FD3F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.956,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 17:18:00 -0000

Author: imp
Date: Sat Mar  9 17:17:59 2019
New Revision: 344972
URL: https://svnweb.freebsd.org/changeset/base/344972

Log:
  Augment ino64 entry
  
  When updating across this change (the introduction of ino64), the
  "fast and loose" practice of rebooting to multiuser and then doing an
  installworld fails with missing symbols. Recommend strongly that users
  do this in single user mode. The multiuser case only ever works by
  accident because its requirements are stronger than is supported
  accross this change. It usually works because critical symbols don't
  change their version number in libc, which wasn't the case here.

Modified:
  head/UPDATING

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Sat Mar  9 17:17:55 2019	(r344971)
+++ head/UPDATING	Sat Mar  9 17:17:59 2019	(r344972)
@@ -714,11 +714,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 	system will be running the ino64 kernel with the existing world).
 
 	For the safest in-place upgrade begin by removing previous build
-	artifacts via "rm -rf /usr/obj/*".   Then, carefully follow the
-	full procedure documented below under the heading "To rebuild
-	everything and install it on the current system."  Specifically,
-	a reboot is required after installing the new kernel before
-	installing world.
+	artifacts via "rm -rf /usr/obj/*".  Then, carefully follow the full
+	procedure documented below under the heading "To rebuild everything and
+	install it on the current system."  Specifically, a reboot is required
+	after installing the new kernel before installing world. While an
+	installworld normally works by accident from multiuser after rebooting
+	the proper kernel, there are many cases where this will fail across this
+	upgrade and installworld from single user is required.
 
 20170424:
 	The NATM framework including the en(4), fatm(4), hatm(4), and

From owner-svn-src-all@freebsd.org  Sat Mar  9 17:17:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B20D152E937;
 Sat,  9 Mar 2019 17:17:45 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 4067F8FC3F;
 Sat,  9 Mar 2019 17:17:45 +0000 (UTC) (envelope-from imp@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 313DAE604;
 Sat,  9 Mar 2019 17:17:45 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29HHja4069619;
 Sat, 9 Mar 2019 17:17:45 GMT (envelope-from imp@FreeBSD.org)
Received: (from imp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29HHjcc069618;
 Sat, 9 Mar 2019 17:17:45 GMT (envelope-from imp@FreeBSD.org)
Message-Id: <201903091717.x29HHjcc069618@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org
 using -f
From: Warner Losh <imp@FreeBSD.org>
Date: Sat, 9 Mar 2019 17:17:45 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344970 - head
X-SVN-Group: head
X-SVN-Commit-Author: imp
X-SVN-Commit-Paths: head
X-SVN-Commit-Revision: 344970
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 4067F8FC3F
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.956,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 17:17:45 -0000

Author: imp
Date: Sat Mar  9 17:17:44 2019
New Revision: 344970
URL: https://svnweb.freebsd.org/changeset/base/344970

Log:
  Misc fixes based on upgrading a laptop from 11.1R to -current
  
  Add note about needing to start zfs because mount -a doesn't do that.
  Add the word 'supported' before 'older branches' for older binaries.
  Add note about options in custom config files as well.

Modified:
  head/UPDATING

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Sat Mar  9 12:54:10 2019	(r344969)
+++ head/UPDATING	Sat Mar  9 17:17:44 2019	(r344970)
@@ -1901,7 +1901,8 @@ COMMON ITEMS:
 		fsck -p
 		mount -u /
 		mount -a
-		cd src
+		sh /etc/rc.d/zfs start	# mount zfs filesystem, if needed
+		cd src			# full path to source
 		adjkerntz -i		# if CMOS is wall time
 	Also, when doing a major release upgrade, it is required that
 	you boot into single user mode to do the installworld.
@@ -1931,10 +1932,12 @@ COMMON ITEMS:
 	option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x
 	binaries).  Failure to do so may leave you with a system that is
 	hard to boot to recover.  A GENERIC kernel will include suitable
-	compatibility options to run binaries from older branches.
+	compatibility options to run binaries from supported older branches.
 
 	Make sure that you merge any new devices from GENERIC since the
-	last time you updated your kernel config file.
+	last time you updated your kernel config file. Options also
+	change over time, so you may need to adjust your custom kernels
+	for these as well.
 
 	[9] If CPUTYPE is defined in your /etc/make.conf, make sure to use the
 	"?=" instead of the "=" assignment operator, so that buildworld can

From owner-svn-src-all@freebsd.org  Sat Mar  9 17:25:42 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D8159152ED8F;
 Sat,  9 Mar 2019 17:25:41 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com
 [IPv6:2607:f8b0:4864:20::42a])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 812BE68411;
 Sat,  9 Mar 2019 17:25:40 +0000 (UTC)
 (envelope-from yaneurabeya@gmail.com)
Received: by mail-pf1-x42a.google.com with SMTP id u9so496681pfn.1;
 Sat, 09 Mar 2019 09:25:40 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:subject:from:in-reply-to:date:cc
 :content-transfer-encoding:message-id:references:to;
 bh=7ZlJqjHz78Vbj5AeXlGbrfwAn/1+xMTD0JBcIkNi9WA=;
 b=hSRJX9SPFp/n9awSvYMDYs8UN30am0cpkuPjqtTEF3jvJWrkYT38uvP6Y464Dd0nzy
 V+OYCDEMZLv2QQkM5o85uFan7xxbiuuJmx64sAFvZo88/Hv/YL1bYlbyLxGsDyVnlipv
 T3rq40Dx6QHCC5lnNkd2Bs9KAOCcb4CWRD3QS3VoXLYZmUftfWQPMQwyUlX+pdq6g0bM
 KwFhQtIViKCbHUCa0uSXFU2b7w81cPs1Wk+BvK4Qs5IWK9EnO7hN7Z85jyNaaG7jxooq
 MmCnrFhr48PEdUvC7g+cRc41Fadl7Gj6aZuVRPtMw0sDS9YE6+dFRuFaj570tayBRy6s
 DoWg==
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=7ZlJqjHz78Vbj5AeXlGbrfwAn/1+xMTD0JBcIkNi9WA=;
 b=gOmz1D8+H4sB05Gu3DIPeV0nz/QuDxqlCfdrAG0QiFiBL8xXAFZkoPu6P4Py3YQPvV
 9jKwwZajTVTo/rnEMJyq6M3kBP4RAJDQg2Zt1uKN8isZTlhCabAhrDaZYV3a7l114j7+
 01iLE8i+TVMHT0Y/vz8tIZngpev8JG3mnz8cF7SlBa9Qwp5pNEuM5PpVqXSdOPiuIlLK
 Bxq0kdtw7IHqjus9P5f+H1r1LotTguPOSbBFMe6/DzsKpzJKW6dcpMRo8Am38IR2qicW
 b7+P9M0J4vcQsXy6b8a8BrnHsWW34MuMaWo3CKDnljLqgXJC/4V+DmVhkLGAK9Fr73EZ
 5Fvw==
X-Gm-Message-State: APjAAAXske+kqpKRC/V6rd4Iawsj1a5qzxjxmbfOF/OykeNVTzNx1eo+
 OrGrc75/Nb1GVeVHF3/egGAFhL5R
X-Google-Smtp-Source: APXvYqwWzFuVocALtMMyTCEtKIJ3rDflW7bkhhBS4QFxyPR50c9WNjOBvkXWOFq5d9BueGKs8mNGdQ==
X-Received: by 2002:a17:902:4081:: with SMTP id
 c1mr25263157pld.297.1552152338105; 
 Sat, 09 Mar 2019 09:25:38 -0800 (PST)
Received: from [192.168.20.7] (c-73-19-52-228.hsd1.wa.comcast.net.
 [73.19.52.228])
 by smtp.gmail.com with ESMTPSA id z67sm2261950pfi.152.2019.03.09.09.25.37
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 09 Mar 2019 09:25:37 -0800 (PST)
Content-Type: text/plain;
	charset=utf-8
Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\))
Subject: Re: svn commit: r344970 - head
From: Enji Cooper <yaneurabeya@gmail.com>
In-Reply-To: <201903091717.x29HHjcc069618@repo.freebsd.org>
Date: Sat, 9 Mar 2019 09:25:36 -0800
Cc: src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, svn-src-head@freebsd.org
Content-Transfer-Encoding: quoted-printable
Message-Id: <F052C962-1FBB-4427-B16A-937A93F27B09@gmail.com>
References: <201903091717.x29HHjcc069618@repo.freebsd.org>
To: Warner Losh <imp@FreeBSD.org>
X-Mailer: Apple Mail (2.3445.102.3)
X-Rspamd-Queue-Id: 812BE68411
X-Spamd-Bar: ------
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=gmail.com header.s=20161025 header.b=hSRJX9SP;
 dmarc=pass (policy=none) header.from=gmail.com;
 spf=pass (mx1.freebsd.org: domain of yaneurabeya@gmail.com designates
 2607:f8b0:4864:20::42a as permitted sender)
 smtp.mailfrom=yaneurabeya@gmail.com
X-Spamd-Result: default: False [-6.28 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 TO_DN_SOME(0.00)[];
 R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; MV_CASE(0.50)[];
 FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3];
 MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com];
 DKIM_TRACE(0.00)[gmail.com:+];
 DMARC_POLICY_ALLOW(-0.50)[gmail.com,none];
 NEURAL_HAM_SHORT(-0.99)[-0.993,0]; FROM_EQ_ENVFROM(0.00)[];
 MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 MID_RHS_MATCH_FROM(0.00)[];
 DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0];
 ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_ALL(0.00)[];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain];
 RCVD_TLS_LAST(0.00)[];
 IP_SCORE(-2.78)[ip: (-9.02), ipnet: 2607:f8b0::/32(-2.73), asn: 15169(-2.06),
 country: US(-0.07)]; 
 RCVD_IN_DNSWL_NONE(0.00)[a.2.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 17:25:42 -0000


> On Mar 9, 2019, at 9:17 AM, Warner Losh <imp@FreeBSD.org> wrote:
>=20
> Author: imp
> Date: Sat Mar  9 17:17:44 2019
> New Revision: 344970
> URL: https://svnweb.freebsd.org/changeset/base/344970
>=20
> Log:
>  Misc fixes based on upgrading a laptop from 11.1R to -current
>=20
>  Add note about needing to start zfs because mount -a doesn't do that.
>  Add the word 'supported' before 'older branches' for older binaries.
>  Add note about options in custom config files as well.

Another item that=E2=80=99s commonly missed is run the hostid rc.d =
script, e.g.,

service hostid restart

If you don=E2=80=99t do that, then the zpool import may fail as the =
cached hostid might differ between the last export and most current =
import attempt.

I always have to do this from ISO-based install media as the temporary =
path for the cached hostid is not writable on CDs/DVDs.

Cheers,
-Enji=

From owner-svn-src-all@freebsd.org  Sat Mar  9 17:17:58 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id A5D4E152E953;
 Sat,  9 Mar 2019 17:17:58 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org
 [IPv6:2610:1c1:1:606c::19:3])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 server-signature RSA-PSS (4096 bits)
 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 3E4DE8FD3B;
 Sat,  9 Mar 2019 17:17:58 +0000 (UTC) (envelope-from imp@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 BDFA3E617;
 Sat,  9 Mar 2019 17:17:55 +0000 (UTC) (envelope-from imp@FreeBSD.org)
Received: from repo.freebsd.org ([127.0.1.37])
 by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x29HHtER069676;
 Sat, 9 Mar 2019 17:17:55 GMT (envelope-from imp@FreeBSD.org)
Received: (from imp@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29HHt7A069675;
 Sat, 9 Mar 2019 17:17:55 GMT (envelope-from imp@FreeBSD.org)
Message-Id: <201903091717.x29HHt7A069675@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: imp set sender to imp@FreeBSD.org
 using -f
From: Warner Losh <imp@FreeBSD.org>
Date: Sat, 9 Mar 2019 17:17:55 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Subject: svn commit: r344971 - head
X-SVN-Group: head
X-SVN-Commit-Author: imp
X-SVN-Commit-Paths: head
X-SVN-Commit-Revision: 344971
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 3E4DE8FD3B
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.96 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.96)[-0.958,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US];
 NEURAL_HAM_LONG(-1.00)[-1.000,0]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 17:17:59 -0000

Author: imp
Date: Sat Mar  9 17:17:55 2019
New Revision: 344971
URL: https://svnweb.freebsd.org/changeset/base/344971

Log:
  Fix a number of entries (almost all mine) that were > 80 columns.
  
  When reading UPDATING from single user in vi, I noticed a few wrapped,
  so fix them to not wrap.
  	expand -8 UPDATING | awk 'length > 80'
  made this easy to find all the offenders.

Modified:
  head/UPDATING

Modified: head/UPDATING
==============================================================================
--- head/UPDATING	Sat Mar  9 17:17:44 2019	(r344970)
+++ head/UPDATING	Sat Mar  9 17:17:55 2019	(r344971)
@@ -133,8 +133,8 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 
 	Other than KPI chasing, drm-legacy-kmod will not be updated. As outlined
 	elsewhere, the drm and drm2 modules will be eliminated from the src base
-	soon (with a limited exception for arm). Please update to the package asap
-	and report any issues to x11@freebsd.org.
+	soon (with a limited exception for arm). Please update to the package
+	asap and report any issues to x11@freebsd.org.
 
 	Generally, anybody using the drm*-kmod packages should add
 	WITHOUT_DRM_MODULE=t and WITHOUT_DRM2_MODULE=t to avoid nasty
@@ -309,7 +309,8 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 20180628:
 	r335753 introduced a new quoting method. However, etc/devd/devmatch.conf
 	needed to be changed to work with it. This change was made with r335763
-	and requires a mergemaster / etcupdate / etc to update the installed file.
+	and requires a mergemaster / etcupdate / etc to update the installed
+	file.
 
 20180612:
 	r334930 changed the interface between the NFS modules, so they all
@@ -450,8 +451,9 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 
 20180211:
 	devmatch functionality has been turned on in devd. It will automatically
-	load drivers for unattached devices. This may cause unexpected drivers to
-	be loaded. Please report any problems to current@ and imp@freebsd.org.
+	load drivers for unattached devices. This may cause unexpected drivers
+	to be loaded. Please report any problems to current@ and
+	imp@freebsd.org.
 
 20180114:
 	Clang, llvm, lld, lldb, compiler-rt and libc++ have been upgraded to
@@ -469,9 +471,9 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 
 20180110:
 	On i386, pmtimer has been removed. Its functionality has been folded
-	into apm. It was a no-op on ACPI in current for a while now (but was still
-	needed on i386 in FreeBSD 11 and earlier). Users may need to remove it
-	from kernel config files.
+	into apm. It was a no-op on ACPI in current for a while now (but was
+	still needed on i386 in FreeBSD 11 and earlier). Users may need to
+	remove it from kernel config files.
 
 20180104:
 	The use of RSS hash from the network card aka flowid has been
@@ -813,7 +815,8 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 20170109:
 	The igb(4), em(4) and lem(4) ethernet drivers are now implemented via
 	IFLIB.  If you have a custom kernel configuration that excludes em(4)
-	but you use igb(4), you need to re-add em(4) to your custom configuration.
+	but you use igb(4), you need to re-add em(4) to your custom
+	configuration.
 
 20161217:
 	Clang, llvm, lldb, compiler-rt and libc++ have been upgraded to 3.9.1.

From owner-svn-src-all@freebsd.org  Sat Mar  9 18:34:57 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8A4331531B5A
 for <svn-src-all@mailman.ysv.freebsd.org>;
 Sat,  9 Mar 2019 18:34:57 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: from mail-qk1-x72c.google.com (mail-qk1-x72c.google.com
 [IPv6:2607:f8b0:4864:20::72c])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 4BE086D05B
 for <svn-src-all@freebsd.org>; Sat,  9 Mar 2019 18:34:56 +0000 (UTC)
 (envelope-from wlosh@bsdimp.com)
Received: by mail-qk1-x72c.google.com with SMTP id b74so456016qkg.9
 for <svn-src-all@freebsd.org>; Sat, 09 Mar 2019 10:34:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=bsdimp-com.20150623.gappssmtp.com; s=20150623;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=QfrW0AneKJsechniG9h/O613UMIn/I1EvqIiFbnEXHU=;
 b=EHe8c7/MsRB6ujRDj7xcuagB7vzAxToMsP4F91qwxQ3ymXJ6YIqHmoGfF7M1Nnr0tv
 RQXMsFjgrxZgPUzp9ns9MzTv7+GNDO4zU8+k63woAtUjzgJJrwuZzm5J0npSB/ib0QmZ
 h7qrdPZf9Q2pQR5NiML5oqO7S0VDO3VDLod78R+t5HZ32QHPWs/KZ5V23euRRbgK5ghM
 cC8FKFOpe3rDpc/0hUWpdzCPEroBnlbGUlqdMSVdZjMqHOCIHtsRZmQDKRfem4AE3h3i
 CJUA4VMO59Hb3e7OwFlzVEpQ1a2NtIc8Ec7UGGrrviiKyAESyjgNnLGcwi+ZwHq3Fz0r
 9Whw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=QfrW0AneKJsechniG9h/O613UMIn/I1EvqIiFbnEXHU=;
 b=MUmKThLgDxloDg/8fu0fGX+lH7plTgCOzkUrw3DJtEDvCC7L8afyza7wCOlOwDRLaP
 xns12Om3Y5K5uAnUH5o9juvCHH/JNX2EyVn7aDYIzf+SauKG4KU/U9veLpwfrm+COKTA
 MuIfrDpzV1Wfu4oNVNhGoTL7ayRkCP6A9RK6NZ0vGAf0PkDDphnT2NMqhHOJuVotBtxu
 HIdgucvn6Gd+zE4MK022Tmt/N7Mn4PGFdytqgekcVqPxozqQYfSelyP07Ludu0CyWpPm
 OFQXMKUgwN/ekP1ld3MAhLXHoehMfQ/FeKc0SvmGB+hOI+z9JKNJndynvcZTmz9Efy6+
 yfCA==
X-Gm-Message-State: APjAAAXNvJTaBXn7t+7jHFufhV9YLFr9010g2K3jlHY040Om1lo0Sveb
 wUkO6kc2gig92nNzIdPJvgwEHXe7Zpgb3m7GSNuugwVU
X-Google-Smtp-Source: APXvYqzTL30WtIU7VTI1h1KRz0pVx6/cLodyqa50IU0IuZrKRTIh3m0lVRoCod6X3z/xy8dunmSNd7+XVGTwev9JfKc=
X-Received: by 2002:a05:620a:1194:: with SMTP id
 b20mr19094146qkk.258.1552156495661; 
 Sat, 09 Mar 2019 10:34:55 -0800 (PST)
MIME-Version: 1.0
References: <201903091718.x29HI0cw069734@repo.freebsd.org>
 <CAOtMX2jq3m298OrrWXLzO1TWDJBxEFeU+MViZEwKiWXYTA-Bzw@mail.gmail.com>
In-Reply-To: <CAOtMX2jq3m298OrrWXLzO1TWDJBxEFeU+MViZEwKiWXYTA-Bzw@mail.gmail.com>
From: Warner Losh <imp@bsdimp.com>
Date: Sat, 9 Mar 2019 11:34:43 -0700
Message-ID: <CANCZdfq3pEjBfin2wE=6kAhUZSsMHafz79+ieoMUc+-j90E7Yg@mail.gmail.com>
Subject: Re: svn commit: r344972 - head
To: Alan Somers <asomers@freebsd.org>
Cc: Warner Losh <imp@freebsd.org>, src-committers <src-committers@freebsd.org>,
 svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>
X-Rspamd-Queue-Id: 4BE086D05B
X-Spamd-Bar: -----
Authentication-Results: mx1.freebsd.org;
 dkim=pass header.d=bsdimp-com.20150623.gappssmtp.com header.s=20150623
 header.b=EHe8c7/M
X-Spamd-Result: default: False [-5.83 / 15.00]; ARC_NA(0.00)[];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623];
 FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 PREVIOUSLY_DELIVERED(0.00)[svn-src-all@freebsd.org];
 DMARC_NA(0.00)[bsdimp.com]; RCPT_COUNT_FIVE(0.00)[5];
 TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[];
 DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+];
 MX_GOOD(-0.01)[cached: ALT1.aspmx.l.google.com];
 RCVD_IN_DNSWL_NONE(0.00)[c.2.7.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org
 : 127.0.5.0]; NEURAL_HAM_SHORT(-0.99)[-0.991,0];
 R_SPF_NA(0.00)[];
 FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com];
 MIME_TRACE(0.00)[0:+,1:+]; RCVD_TLS_LAST(0.00)[];
 ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US];
 FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com];
 IP_SCORE(-2.83)[ip: (-9.28), ipnet: 2607:f8b0::/32(-2.73), asn: 15169(-2.06),
 country: US(-0.07)]; RCVD_COUNT_TWO(0.00)[2]
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.29
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 18:34:57 -0000

On Sat, Mar 9, 2019 at 10:32 AM Alan Somers <asomers@freebsd.org> wrote:

> On Sat, Mar 9, 2019 at 10:18 AM Warner Losh <imp@freebsd.org> wrote:
> >
> > Author: imp
> > Date: Sat Mar  9 17:17:59 2019
> > New Revision: 344972
> > URL: https://svnweb.freebsd.org/changeset/base/344972
> >
> > Log:
> >   Augment ino64 entry
> >
> >   When updating across this change (the introduction of ino64), the
> >   "fast and loose" practice of rebooting to multiuser and then doing an
> >   installworld fails with missing symbols. Recommend strongly that users
> >   do this in single user mode. The multiuser case only ever works by
> >   accident because its requirements are stronger than is supported
> >   accross this change. It usually works because critical symbols don't
> >   change their version number in libc, which wasn't the case here.
> >
> > Modified:
> >   head/UPDATING
>
> Booting into single-user mode will work, but using boot environments
> works even better.  You can install both kernel and world into the new
> boot environment and then reboot into it.  The only downside is that
> it requires booting from ZFS.
>

We don't document that as the preferred upgrade path. Adding that
documentation is likely confusing unless it's a separate section in
UPDATING, so if you want to write a new section on how to do that, and when
you can and can't use it, we can include that in UPDATING....

Also boot environments in 11.1R were somewhat tricky and difficult to
arrange, absent tools not present in base at the time, which is where I was
coming from.

Warner

From owner-svn-src-all@freebsd.org  Sat Mar  9 20:00:38 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED8E8153488C;
 Sat,  9 Mar 2019 20:00:37 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140])
 (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id B32F8702CB;
 Sat,  9 Mar 2019 20:00:36 +0000 (UTC)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: from gndrsh.dnsmgr.net (localhost [127.0.0.1])
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3) with ESMTP id x29K0RrJ002121;
 Sat, 9 Mar 2019 12:00:27 -0800 (PST)
 (envelope-from freebsd@gndrsh.dnsmgr.net)
Received: (from freebsd@localhost)
 by  gndrsh.dnsmgr.net (8.13.3/8.13.3/Submit) id x29K0Rf6002120;
 Sat, 9 Mar 2019 12:00:27 -0800 (PST) (envelope-from freebsd)
From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net>
Message-Id: <201903092000.x29K0Rf6002120@ gndrsh.dnsmgr.net>
Subject: Re: svn commit: r344970 - head
In-Reply-To: <201903091717.x29HHjcc069618@repo.freebsd.org>
To: Warner Losh <imp@freebsd.org>
Date: Sat, 9 Mar 2019 12:00:27 -0800 (PST)
CC: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Reply-To: rgrimes@freebsd.org
X-Mailer: ELM [version 2.4ME+ PL121h (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
X-Rspamd-Queue-Id: B32F8702CB
X-Spamd-Bar: ++++
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [4.01 / 15.00]; ARC_NA(0.00)[];
 HAS_REPLYTO(0.00)[rgrimes@freebsd.org]; FROM_HAS_DN(0.00)[];
 RCPT_COUNT_THREE(0.00)[4]; TO_DN_SOME(0.00)[];
 TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain];
 DMARC_NA(0.00)[dnsmgr.net]; REPLYTO_DOM_NEQ_FROM_DOM(0.00)[];
 AUTH_NA(1.00)[]; NEURAL_SPAM_MEDIUM(0.44)[0.437,0];
 RCVD_COUNT_THREE(0.00)[3];
 IP_SCORE(0.00)[ip: (0.05), ipnet: 69.59.192.0/19(0.03), asn: 13868(0.01),
 country: US(-0.07)]; NEURAL_SPAM_SHORT(0.54)[0.537,0];
 MX_GOOD(-0.01)[cached: gndrsh.dnsmgr.net];
 NEURAL_SPAM_LONG(0.44)[0.440,0]; INVALID_MSGID(1.70)[];
 R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[];
 MIME_TRACE(0.00)[0:+];
 ASN(0.00)[asn:13868, ipnet:69.59.192.0/19, country:US];
 RCVD_TLS_LAST(0.00)[]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 20:00:38 -0000

> Author: imp
> Date: Sat Mar  9 17:17:44 2019
> New Revision: 344970
> URL: https://svnweb.freebsd.org/changeset/base/344970
> 
> Log:
>   Misc fixes based on upgrading a laptop from 11.1R to -current
>   
>   Add note about needing to start zfs because mount -a doesn't do that.
>   Add the word 'supported' before 'older branches' for older binaries.
>   Add note about options in custom config files as well.
> 
> Modified:
>   head/UPDATING
> 
> Modified: head/UPDATING
> ==============================================================================
> --- head/UPDATING	Sat Mar  9 12:54:10 2019	(r344969)
> +++ head/UPDATING	Sat Mar  9 17:17:44 2019	(r344970)
> @@ -1901,7 +1901,8 @@ COMMON ITEMS:
>  		fsck -p
>  		mount -u /
>  		mount -a
> -		cd src
> +		sh /etc/rc.d/zfs start	# mount zfs filesystem, if needed
> +		cd src			# full path to source
>  		adjkerntz -i		# if CMOS is wall time
>  	Also, when doing a major release upgrade, it is required that
>  	you boot into single user mode to do the installworld.
> @@ -1931,10 +1932,12 @@ COMMON ITEMS:
>  	option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x
>  	binaries).  Failure to do so may leave you with a system that is
>  	hard to boot to recover.  A GENERIC kernel will include suitable
> -	compatibility options to run binaries from older branches.
> +	compatibility options to run binaries from supported older branches.

This is probably not the best adjective here, supported only goes back to
11.x, there are COMPAT options that work all the way back to 4.

>  
>  	Make sure that you merge any new devices from GENERIC since the
> -	last time you updated your kernel config file.
> +	last time you updated your kernel config file. Options also
> +	change over time, so you may need to adjust your custom kernels
> +	for these as well.
>  
>  	[9] If CPUTYPE is defined in your /etc/make.conf, make sure to use the
>  	"?=" instead of the "=" assignment operator, so that buildworld can

-- 
Rod Grimes                                                 rgrimes@freebsd.org

From owner-svn-src-all@freebsd.org  Sat Mar  9 21:09:45 2019
Return-Path: <owner-svn-src-all@freebsd.org>
Delivered-To: svn-src-all@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6377615372F4;
 Sat,  9 Mar 2019 21:09: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)
 server-signature RSA-PSS (4096 bits)
 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 034DB72D2E;
 Sat,  9 Mar 2019 21:09: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 E6D5C18DCD;
 Sat,  9 Mar 2019 21:09: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 x29L9iD7092443;
 Sat, 9 Mar 2019 21:09:44 GMT (envelope-from markj@FreeBSD.org)
Received: (from markj@localhost)
 by repo.freebsd.org (8.15.2/8.15.2/Submit) id x29L9iJx092442;
 Sat, 9 Mar 2019 21:09:44 GMT (envelope-from markj@FreeBSD.org)
Message-Id: <201903092109.x29L9iJx092442@repo.freebsd.org>
X-Authentication-Warning: repo.freebsd.org: markj set sender to
 markj@FreeBSD.org using -f
From: Mark Johnston <markj@FreeBSD.org>
Date: Sat, 9 Mar 2019 21:09: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: r344973 - stable/12/usr.bin/write
X-SVN-Group: stable-12
X-SVN-Commit-Author: markj
X-SVN-Commit-Paths: stable/12/usr.bin/write
X-SVN-Commit-Revision: 344973
X-SVN-Commit-Repository: base
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Rspamd-Queue-Id: 034DB72D2E
X-Spamd-Bar: --
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [-2.94 / 15.00];
 local_wl_from(0.00)[FreeBSD.org];
 NEURAL_HAM_MEDIUM(-1.00)[-1.000,0];
 NEURAL_HAM_LONG(-1.00)[-1.000,0];
 NEURAL_HAM_SHORT(-0.94)[-0.943,0];
 ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]
X-BeenThere: svn-src-all@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "SVN commit messages for the entire src tree \(except for &quot;
 user&quot; and &quot; projects&quot; \)" <svn-src-all.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-all/>
List-Post: <mailto:svn-src-all@freebsd.org>
List-Help: <mailto:svn-src-all-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/svn-src-all>,
 <mailto:svn-src-all-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Mar 2019 21:09:45 -0000

Author: markj
Date: Sat Mar  9 21:09:44 2019
New Revision: 344973
URL: https://svnweb.freebsd.org/changeset/base/344973

Log:
  MFC r343354:
  Remove extraneous setutxent() calls in write(1).
  
  PR:	235096

Modified:
  stable/12/usr.bin/write/write.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/usr.bin/write/write.c
==============================================================================
--- stable/12/usr.bin/write/write.c	Sat Mar  9 17:17:59 2019	(r344972)
+++ stable/12/usr.bin/write/write.c	Sat Mar  9 21:09:44 2019	(r344973)
@@ -204,7 +204,6 @@ utmp_chk(char *user, char *tty)
 	struct utmpx lu, *u;
 
 	strncpy(lu.ut_line, tty, sizeof lu.ut_line);
-	setutxent();
 	while ((u = getutxline(&lu)) != NULL)
 		if (u->ut_type == USER_PROCESS &&
 		    strcmp(user, u->ut_user) == 0) {
@@ -237,7 +236,6 @@ search_utmp(int devfd, char *user, char *tty, char *my
 	bestatime = 0;
 	user_is_me = 0;
 
-	setutxent();
 	while ((u = getutxent()) != NULL)
 		if (u->ut_type == USER_PROCESS &&
 		    strcmp(user, u->ut_user) == 0) {