CVS commit: src/sys/arch/x86/include

2020-04-05 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Mon Apr  6 02:36:49 UTC 2020

Modified Files:
src/sys/arch/x86/include: specialreg.h

Log Message:
 CPUID Fn0001 %edx bit 8 is printed as "TSC", so rename CPUID Fn8000_0007
%edx bit 8 from "TSC" to "ITSC" (Invariant TSC) to avoid confusion.


To generate a diff of this commit:
cvs rdiff -u -r1.159 -r1.160 src/sys/arch/x86/include/specialreg.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x86/include/specialreg.h
diff -u src/sys/arch/x86/include/specialreg.h:1.159 src/sys/arch/x86/include/specialreg.h:1.160
--- src/sys/arch/x86/include/specialreg.h:1.159	Wed Apr  1 08:21:38 2020
+++ src/sys/arch/x86/include/specialreg.h	Mon Apr  6 02:36:49 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: specialreg.h,v 1.159 2020/04/01 08:21:38 msaitoh Exp $	*/
+/*	$NetBSD: specialreg.h,v 1.160 2020/04/06 02:36:49 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2014-2019 The NetBSD Foundation, Inc.
@@ -708,7 +708,7 @@
 #define CPUID_APM_STC	0x0020	/* Software thermal control (STC) */
 #define CPUID_APM_100	0x0040	/* 100MHz multiplier control */
 #define CPUID_APM_HWP	0x0080	/* HW P-State control */
-#define CPUID_APM_TSC	0x0100	/* TSC invariant */
+#define CPUID_APM_TSC	0x0100	/* TSC invariant (Intel, too) */
 #define CPUID_APM_CPB	0x0200	/* Core performance boost */
 #define CPUID_APM_EFF	0x0400	/* Effective Frequency (read-only) */
 #define CPUID_APM_PROCFI 0x0800	/* Proc Feedback Interface */
@@ -719,7 +719,7 @@
 #define CPUID_APM_FLAGS		"\20"	  \
 	"\1" "TS"	"\2" "FID"	"\3" "VID"	"\4" "TTP"	  \
 	"\5" "HTC"	"\6" "STC"	"\7" "100"	"\10" "HWP"	  \
-	"\11" "TSC"	"\12" "CPB"	"\13" "EffFreq"	"\14" "PROCFI"	  \
+	"\11" "ITSC"	"\12" "CPB"	"\13" "EffFreq"	"\14" "PROCFI"	  \
 	"\15" "PROCPR"	"\16" "CONNSTBY" "\17" "RAPL"
 
 /*



CVS commit: src/sys/arch/x86/include

2020-04-05 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Mon Apr  6 02:36:49 UTC 2020

Modified Files:
src/sys/arch/x86/include: specialreg.h

Log Message:
 CPUID Fn0001 %edx bit 8 is printed as "TSC", so rename CPUID Fn8000_0007
%edx bit 8 from "TSC" to "ITSC" (Invariant TSC) to avoid confusion.


To generate a diff of this commit:
cvs rdiff -u -r1.159 -r1.160 src/sys/arch/x86/include/specialreg.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/vax/boot/xxboot

2020-04-05 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Mon Apr  6 01:43:26 UTC 2020

Modified Files:
src/sys/arch/vax/boot/xxboot: start.S

Log Message:
fix comment in typo


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/vax/boot/xxboot/start.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/vax/boot/xxboot/start.S
diff -u src/sys/arch/vax/boot/xxboot/start.S:1.6 src/sys/arch/vax/boot/xxboot/start.S:1.7
--- src/sys/arch/vax/boot/xxboot/start.S:1.6	Mon May 22 17:00:55 2017
+++ src/sys/arch/vax/boot/xxboot/start.S	Mon Apr  6 01:43:26 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: start.S,v 1.6 2017/05/22 17:00:55 ragge Exp $ */
+/*	$NetBSD: start.S,v 1.7 2020/04/06 01:43:26 snj Exp $ */
 /*
  * Copyright (c) 1995 Ludd, University of Lule}, Sweden.
  * All rights reserved.
@@ -52,7 +52,7 @@ _C_LABEL(start):
 
 # At offset 0x02 we have a dual used area: VMB.EXE starts execution here,
 # and uVAX-ROM looks for a pointer to a parameter block. We arrange for
-# the parameter block offset to disassmble as a CASEL instructions which
+# the parameter block offset to disassemble as a CASEL instructions which
 # falls through to 0x08.
 .org	0x02			# information used by uVAX-ROM
 	.byte	0xcf		# offset in words to identification area



CVS commit: src/sys/arch/vax/boot/xxboot

2020-04-05 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Mon Apr  6 01:43:26 UTC 2020

Modified Files:
src/sys/arch/vax/boot/xxboot: start.S

Log Message:
fix comment in typo


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/vax/boot/xxboot/start.S

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/aarch64/aarch64

2020-04-05 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sun Apr  5 22:54:51 UTC 2020

Modified Files:
src/sys/arch/aarch64/aarch64: cpu.c cpufunc.c

Log Message:
Cleanup CPU attach output:
 - Always print the core's vendor and product name.
 - Print the CPU ID on the same line as the name. Single line of dmesg
   per core.
 - Use aprint_verbose for reporting additional details.


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 src/sys/arch/aarch64/aarch64/cpu.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/aarch64/aarch64/cpufunc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/aarch64/aarch64/cpu.c
diff -u src/sys/arch/aarch64/aarch64/cpu.c:1.42 src/sys/arch/aarch64/aarch64/cpu.c:1.43
--- src/sys/arch/aarch64/aarch64/cpu.c:1.42	Mon Mar 30 11:38:29 2020
+++ src/sys/arch/aarch64/aarch64/cpu.c	Sun Apr  5 22:54:51 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.c,v 1.42 2020/03/30 11:38:29 jmcneill Exp $ */
+/* $NetBSD: cpu.c,v 1.43 2020/04/05 22:54:51 jmcneill Exp $ */
 
 /*
  * Copyright (c) 2017 Ryo Shimizu 
@@ -27,7 +27,7 @@
  */
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: cpu.c,v 1.42 2020/03/30 11:38:29 jmcneill Exp $");
+__KERNEL_RCSID(1, "$NetBSD: cpu.c,v 1.43 2020/04/05 22:54:51 jmcneill Exp $");
 
 #include "locators.h"
 #include "opt_arm_debug.h"
@@ -158,32 +158,32 @@ cpu_attach(device_t dv, cpuid_t id)
 struct cpuidtab {
 	uint32_t cpu_partnum;
 	const char *cpu_name;
-	const char *cpu_class;
+	const char *cpu_vendor;
 	const char *cpu_architecture;
 };
 
 #define CPU_PARTMASK	(CPU_ID_IMPLEMENTOR_MASK | CPU_ID_PARTNO_MASK)
 
 const struct cpuidtab cpuids[] = {
-	{ CPU_ID_CORTEXA35R0 & CPU_PARTMASK, "Cortex-A35", "Cortex", "V8-A" },
-	{ CPU_ID_CORTEXA53R0 & CPU_PARTMASK, "Cortex-A53", "Cortex", "V8-A" },
-	{ CPU_ID_CORTEXA57R0 & CPU_PARTMASK, "Cortex-A57", "Cortex", "V8-A" },
-	{ CPU_ID_CORTEXA55R1 & CPU_PARTMASK, "Cortex-A55", "Cortex", "V8.2-A+" },
-	{ CPU_ID_CORTEXA65R0 & CPU_PARTMASK, "Cortex-A65", "Cortex", "V8.2-A+" },
-	{ CPU_ID_CORTEXA72R0 & CPU_PARTMASK, "Cortex-A72", "Cortex", "V8-A" },
-	{ CPU_ID_CORTEXA73R0 & CPU_PARTMASK, "Cortex-A73", "Cortex", "V8-A" },
-	{ CPU_ID_CORTEXA75R2 & CPU_PARTMASK, "Cortex-A75", "Cortex", "V8.2-A+" },
-	{ CPU_ID_CORTEXA76R3 & CPU_PARTMASK, "Cortex-A76", "Cortex", "V8.2-A+" },
-	{ CPU_ID_CORTEXA76AER1 & CPU_PARTMASK, "Cortex-A76AE", "Cortex", "V8.2-A+" },
-	{ CPU_ID_CORTEXA77R0 & CPU_PARTMASK, "Cortex-A77", "Cortex", "V8.2-A+" },
-	{ CPU_ID_NVIDIADENVER2 & CPU_PARTMASK, "NVIDIA", "Denver2", "V8-A" },
-	{ CPU_ID_EMAG8180 & CPU_PARTMASK, "Ampere eMAG", "Skylark", "V8-A" },
-	{ CPU_ID_NEOVERSEE1R1 & CPU_PARTMASK, "Neoverse E1", "Neoverse", "V8.2-A+" },
-	{ CPU_ID_NEOVERSEN1R3 & CPU_PARTMASK, "Neoverse N1", "Neoverse", "V8.2-A+" },
-	{ CPU_ID_THUNDERXRX, "Cavium ThunderX", "Cavium", "V8-A" },
-	{ CPU_ID_THUNDERX81XXRX, "Cavium ThunderX CN81XX", "Cavium", "V8-A" },
-	{ CPU_ID_THUNDERX83XXRX, "Cavium ThunderX CN83XX", "Cavium", "V8-A" },
-	{ CPU_ID_THUNDERX2RX, "Cavium ThunderX2", "Cavium", "V8.1-A" },
+	{ CPU_ID_CORTEXA35R0 & CPU_PARTMASK, "Cortex-A35", "Arm", "v8-A" },
+	{ CPU_ID_CORTEXA53R0 & CPU_PARTMASK, "Cortex-A53", "Arm", "v8-A" },
+	{ CPU_ID_CORTEXA57R0 & CPU_PARTMASK, "Cortex-A57", "Arm", "v8-A" },
+	{ CPU_ID_CORTEXA55R1 & CPU_PARTMASK, "Cortex-A55", "Arm", "v8.2-A+" },
+	{ CPU_ID_CORTEXA65R0 & CPU_PARTMASK, "Cortex-A65", "Arm", "v8.2-A+" },
+	{ CPU_ID_CORTEXA72R0 & CPU_PARTMASK, "Cortex-A72", "Arm", "v8-A" },
+	{ CPU_ID_CORTEXA73R0 & CPU_PARTMASK, "Cortex-A73", "Arm", "v8-A" },
+	{ CPU_ID_CORTEXA75R2 & CPU_PARTMASK, "Cortex-A75", "Arm", "v8.2-A+" },
+	{ CPU_ID_CORTEXA76R3 & CPU_PARTMASK, "Cortex-A76", "Arm", "v8.2-A+" },
+	{ CPU_ID_CORTEXA76AER1 & CPU_PARTMASK, "Cortex-A76AE", "Arm", "v8.2-A+" },
+	{ CPU_ID_CORTEXA77R0 & CPU_PARTMASK, "Cortex-A77", "Arm", "v8.2-A+" },
+	{ CPU_ID_NVIDIADENVER2 & CPU_PARTMASK, "Denver2", "NVIDIA", "v8-A" },
+	{ CPU_ID_EMAG8180 & CPU_PARTMASK, "eMAG", "Ampere", "v8-A" },
+	{ CPU_ID_NEOVERSEE1R1 & CPU_PARTMASK, "Neoverse E1", "Arm", "v8.2-A+" },
+	{ CPU_ID_NEOVERSEN1R3 & CPU_PARTMASK, "Neoverse N1", "Arm", "v8.2-A+" },
+	{ CPU_ID_THUNDERXRX, "ThunderX", "Cavium", "v8-A" },
+	{ CPU_ID_THUNDERX81XXRX, "ThunderX CN81XX", "Cavium", "v8-A" },
+	{ CPU_ID_THUNDERX83XXRX, "ThunderX CN83XX", "Cavium", "v8-A" },
+	{ CPU_ID_THUNDERX2RX, "ThunderX2", "Marvell", "v8.1-A" },
 };
 
 static void
@@ -198,9 +198,9 @@ identify_aarch64_model(uint32_t cpuid, c
 
 	for (i = 0; i < __arraycount(cpuids); i++) {
 		if (cpupart == cpuids[i].cpu_partnum) {
-			snprintf(buf, len, "%s r%dp%d (%s %s core)",
-			cpuids[i].cpu_name, variant, revision,
-			cpuids[i].cpu_class,
+			snprintf(buf, len, "%s %s r%dp%d (%s)",
+			cpuids[i].cpu_vendor, cpuids[i].cpu_name,
+			variant, revision,
 			cpuids[i].cpu_architecture);
 			return;
 		}
@@ -223,9 +223,7 @@ cpu_identify(device_t self, struct cpu_i
 	}
 
 	aprint_naive("\n");
-	

CVS commit: src/sys/arch/aarch64/aarch64

2020-04-05 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sun Apr  5 22:54:51 UTC 2020

Modified Files:
src/sys/arch/aarch64/aarch64: cpu.c cpufunc.c

Log Message:
Cleanup CPU attach output:
 - Always print the core's vendor and product name.
 - Print the CPU ID on the same line as the name. Single line of dmesg
   per core.
 - Use aprint_verbose for reporting additional details.


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 src/sys/arch/aarch64/aarch64/cpu.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/aarch64/aarch64/cpufunc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/doc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:56:04 UTC 2020

Modified Files:
src/doc: 3RDPARTY CHANGES

Log Message:
new OpenSSL/binutils


To generate a diff of this commit:
cvs rdiff -u -r1.1708 -r1.1709 src/doc/3RDPARTY
cvs rdiff -u -r1.2668 -r1.2669 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/doc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:56:04 UTC 2020

Modified Files:
src/doc: 3RDPARTY CHANGES

Log Message:
new OpenSSL/binutils


To generate a diff of this commit:
cvs rdiff -u -r1.1708 -r1.1709 src/doc/3RDPARTY
cvs rdiff -u -r1.2668 -r1.2669 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/3RDPARTY
diff -u src/doc/3RDPARTY:1.1708 src/doc/3RDPARTY:1.1709
--- src/doc/3RDPARTY:1.1708	Sat Apr  4 12:25:17 2020
+++ src/doc/3RDPARTY	Sun Apr  5 17:56:04 2020
@@ -1,4 +1,4 @@
-#	$NetBSD: 3RDPARTY,v 1.1708 2020/04/04 16:25:17 jdolecek Exp $
+#	$NetBSD: 3RDPARTY,v 1.1709 2020/04/05 21:56:04 christos Exp $
 #
 # This file contains a list of the software that has been integrated into
 # NetBSD where we are not the primary maintainer.
@@ -472,12 +472,12 @@ When updating GDB, it is imperative to t
 	  ("options KGDB") works correctly.
 
 Package:	binutils
-Version:	2.31.1
+Version:	2.34
 Current Vers:	2.34
 Maintainer:	FSF
 Archive Site:	ftp://ftp.gnu.org/gnu/binutils/
 Home Page:	http://www.gnu.org/software/binutils/
-Date:		2019-10-09
+Date:		2020-04-05
 Mailing List:	bug-gnu-ut...@gnu.org
 Responsible:	thorpej, mrg
 License:	GPLv3, LGPLv3, GPLv2, LGPLv2, BSD
@@ -1087,12 +1087,12 @@ markus is very cooperative about it):
 - adjust the DEFAULT_PKCS11_WHITELIST for ssh-agent
 
 Package:	OpenSSL
-Version:	1.0.2o/1.1.1e
+Version:	1.0.2o/1.1.1f
 Current Vers:	1.0.2t/1.1.1f
 Maintainer:	The OpenSSL Project
 Archive Site:	ftp://ftp.openssl.org/source/
 Home Page:	http://www.openssl.org/
-Date:		2020-03-31
+Date:		2020-04-05
 Mailing List:	openssl-annou...@openssl.org
 Responsible:	christos, mjf, tls, riastradh, spz
 License:	OpenSSL and SSLeay license (both BSD-like)

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.2668 src/doc/CHANGES:1.2669
--- src/doc/CHANGES:1.2668	Sun Apr  5 15:48:27 2020
+++ src/doc/CHANGES	Sun Apr  5 17:56:04 2020
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2668 $>
+# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2669 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -163,7 +163,9 @@ Changes from NetBSD 9.0 to NetBSD 10.0:
 	acpi(4): Updated ACPICA to 20200326. [christos 20200328]
 	ioctlprint(1): Add ioctl descriptive printer. [kamil 20200402]
 	dhcpcd(8): Import version 9.0.0 [roy 20200402]
+	binutils: Updated to FSF binutils 2.34. [christos 20200404]
 	mount_smbfs(8): Removed from the tree [jdolecek 20200404]
 	nsmb(4): Removed from the tree [jdolecek 20200404]
 	xen: remove legacy rx-flip support from xennet(4) and xvif(4)
 		[jdolecek 20200405]
+	OpenSSL: Imported 1.1.1f. [christos 20200405]



CVS commit: src/crypto/external/bsd/openssl/dist

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:53:45 UTC 2020

Modified Files:
src/crypto/external/bsd/openssl/dist: CHANGES NEWS README
src/crypto/external/bsd/openssl/dist/apps: s_server.c
src/crypto/external/bsd/openssl/dist/crypto: ex_data.c
src/crypto/external/bsd/openssl/dist/crypto/x509: x509_vfy.c
src/crypto/external/bsd/openssl/dist/ssl: ssl_err.c

Log Message:
merge conflicts


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/crypto/external/bsd/openssl/dist/CHANGES \
src/crypto/external/bsd/openssl/dist/NEWS \
src/crypto/external/bsd/openssl/dist/README
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/openssl/dist/apps/s_server.c
cvs rdiff -u -r1.6 -r1.7 \
src/crypto/external/bsd/openssl/dist/crypto/ex_data.c
cvs rdiff -u -r1.18 -r1.19 \
src/crypto/external/bsd/openssl/dist/crypto/x509/x509_vfy.c
cvs rdiff -u -r1.17 -r1.18 src/crypto/external/bsd/openssl/dist/ssl/ssl_err.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/crypto/external/bsd/openssl/dist/CHANGES
diff -u src/crypto/external/bsd/openssl/dist/CHANGES:1.22 src/crypto/external/bsd/openssl/dist/CHANGES:1.23
--- src/crypto/external/bsd/openssl/dist/CHANGES:1.22	Sat Mar 21 20:53:02 2020
+++ src/crypto/external/bsd/openssl/dist/CHANGES	Sun Apr  5 17:53:44 2020
@@ -7,6 +7,24 @@
  https://github.com/openssl/openssl/commits/ and pick the appropriate
  release branch.
 
+ Changes between 1.1.1e and 1.1.1f [31 Mar 2020]
+
+  *) Revert the change of EOF detection while reading in libssl to avoid
+ regressions in applications depending on the current way of reporting
+ the EOF. As the existing method is not fully accurate the change to
+ reporting the EOF via SSL_ERROR_SSL is kept on the current development
+ branch and will be present in the 3.0 release.
+ [Tomas Mraz]
+
+  *) Revised BN_generate_prime_ex to not avoid factors 3..17863 in p-1
+ when primes for RSA keys are computed.
+ Since we previously always generated primes == 2 (mod 3) for RSA keys,
+ the 2-prime and 3-prime RSA modules were easy to distinguish, since
+ N = p*q = 1 (mod 3), but N = p*q*r = 2 (mod 3). Therefore fingerprinting
+ 2-prime vs. 3-prime RSA keys was possible by computing N mod 3.
+ This avoids possible fingerprinting of newly generated RSA modules.
+ [Bernd Edlinger]
+
  Changes between 1.1.1d and 1.1.1e [17 Mar 2020]
   *) Properly detect EOF while reading in libssl. Previously if we hit an EOF
  while reading in libssl then we would report an error back to the
Index: src/crypto/external/bsd/openssl/dist/NEWS
diff -u src/crypto/external/bsd/openssl/dist/NEWS:1.22 src/crypto/external/bsd/openssl/dist/NEWS:1.23
--- src/crypto/external/bsd/openssl/dist/NEWS:1.22	Sat Mar 21 20:53:02 2020
+++ src/crypto/external/bsd/openssl/dist/NEWS	Sun Apr  5 17:53:44 2020
@@ -5,10 +5,16 @@
   This file gives a brief overview of the major changes between each OpenSSL
   release. For more details please read the CHANGES file.
 
+  Major changes between OpenSSL 1.1.1e and OpenSSL 1.1.1f [31 Mar 2020]
+
+  o Revert the unexpected EOF reporting via SSL_ERROR_SSL
+
   Major changes between OpenSSL 1.1.1d and OpenSSL 1.1.1e [17 Mar 2020]
 
   o Fixed an overflow bug in the x64_64 Montgomery squaring procedure
 used in exponentiation with 512-bit moduli (CVE-2019-1551)
+  o Properly detect unexpected EOF while reading in libssl and report
+it via SSL_ERROR_SSL
 
   Major changes between OpenSSL 1.1.1c and OpenSSL 1.1.1d [10 Sep 2019]
 
Index: src/crypto/external/bsd/openssl/dist/README
diff -u src/crypto/external/bsd/openssl/dist/README:1.22 src/crypto/external/bsd/openssl/dist/README:1.23
--- src/crypto/external/bsd/openssl/dist/README:1.22	Sat Mar 21 20:53:02 2020
+++ src/crypto/external/bsd/openssl/dist/README	Sun Apr  5 17:53:44 2020
@@ -1,7 +1,7 @@
 
- OpenSSL 1.1.1e 17 Mar 2020
+ OpenSSL 1.1.1f 31 Mar 2020
 
- Copyright (c) 1998-2019 The OpenSSL Project
+ Copyright (c) 1998-2020 The OpenSSL Project
  Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
  All rights reserved.
 

Index: src/crypto/external/bsd/openssl/dist/apps/s_server.c
diff -u src/crypto/external/bsd/openssl/dist/apps/s_server.c:1.22 src/crypto/external/bsd/openssl/dist/apps/s_server.c:1.23
--- src/crypto/external/bsd/openssl/dist/apps/s_server.c:1.22	Sun Mar 22 16:01:48 2020
+++ src/crypto/external/bsd/openssl/dist/apps/s_server.c	Sun Apr  5 17:53:44 2020
@@ -1,5 +1,5 @@
 /*
- * Copyright 1995-2019 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 1995-2020 The OpenSSL Project Authors. All Rights Reserved.
  * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
  * Copyright 2005 Nokia. All rights reserved.
  *
@@ -1904,7 +1904,7 @@ int s_server_main(int argc, char *argv[]
 BIO_printf(bio_s_out, 

CVS commit: src/crypto/external/bsd/openssl/dist

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:53:45 UTC 2020

Modified Files:
src/crypto/external/bsd/openssl/dist: CHANGES NEWS README
src/crypto/external/bsd/openssl/dist/apps: s_server.c
src/crypto/external/bsd/openssl/dist/crypto: ex_data.c
src/crypto/external/bsd/openssl/dist/crypto/x509: x509_vfy.c
src/crypto/external/bsd/openssl/dist/ssl: ssl_err.c

Log Message:
merge conflicts


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/crypto/external/bsd/openssl/dist/CHANGES \
src/crypto/external/bsd/openssl/dist/NEWS \
src/crypto/external/bsd/openssl/dist/README
cvs rdiff -u -r1.22 -r1.23 \
src/crypto/external/bsd/openssl/dist/apps/s_server.c
cvs rdiff -u -r1.6 -r1.7 \
src/crypto/external/bsd/openssl/dist/crypto/ex_data.c
cvs rdiff -u -r1.18 -r1.19 \
src/crypto/external/bsd/openssl/dist/crypto/x509/x509_vfy.c
cvs rdiff -u -r1.17 -r1.18 src/crypto/external/bsd/openssl/dist/ssl/ssl_err.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/etc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:03:08 UTC 2020

Modified Files:
src/etc: rc.subr

Log Message:
Prevent waiting for processes to exit forever by introducing _rc_kill_ntries,
which if set, will SIGKILL the processes that did not die yet.


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 src/etc/rc.subr

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/etc/rc.subr
diff -u src/etc/rc.subr:1.103 src/etc/rc.subr:1.104
--- src/etc/rc.subr:1.103	Sun Sep 23 19:02:39 2018
+++ src/etc/rc.subr	Sun Apr  5 17:03:08 2020
@@ -1,4 +1,4 @@
-# $NetBSD: rc.subr,v 1.103 2018/09/23 23:02:39 kre Exp $
+# $NetBSD: rc.subr,v 1.104 2020/04/05 21:03:08 christos Exp $
 #
 # Copyright (c) 1997-2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -43,6 +43,7 @@ _rc_pid=
 _rc_original_stdout_fd=
 _rc_original_stderr_fd=
 _rc_postprocessor_fd=
+_rc_kill_ntries=
 "
 
 #
@@ -313,35 +314,61 @@ _find_processes()
 }
 
 #
+# kill_pids signal pid [pid ...]
+#	kills the given pids with signal. 
+#	returns the list of pids killed successfully.
+#
+kill_pids()
+{
+	local signal=$1
+	shift
+	local list="$@"
+	local j=
+	local nlist=
+	for j in $list; do
+		if kill -$signal $j 2>/dev/null; then
+			nlist="${nlist}${nlist:+ }$j"
+		fi
+	done
+	echo $nlist
+}
+
+#
 # wait_for_pids pid [pid ...]
 #	spins until none of the pids exist
+#	if _rc_kill_ntries is set and exceeded, it SIGKILLS the remaining
+#	pids
 #
 wait_for_pids()
 {
-	_list="$@"
-	if [ -z "$_list" ]; then
+	local ntries=0
+	local prefix=
+	local list="$@"
+
+	if [ -z "$list" ]; then
 		return
 	fi
-	_prefix=
+
 	while true; do
-		_nlist="";
-		for _j in $_list; do
-			if kill -0 $_j 2>/dev/null; then
-_nlist="${_nlist}${_nlist:+ }$_j"
-			fi
-		done
-		if [ -z "$_nlist" ]; then
+		local nlist=$(kill_pids 0 $list)
+		if [ -z "$nlist" ]; then
 			break
 		fi
-		if [ "$_list" != "$_nlist" ]; then
-			_list=$_nlist
-			echo -n ${_prefix:-"Waiting for PIDS: "}$_list
-			_prefix=", "
+		if [ "$list" != "$nlist" ]; then
+			list=$nlist
+			echo -n ${prefix:-"Waiting for PIDS: "}$list
+			prefix=", "
 		fi
 		# We want this to be a tight loop for a fast exit
 		sleep 0.05
+		ntries=$((ntries + 1))
+		if [ -n "${_rc_kill_ntries}" ]; then
+			if [ ${ntries} -gt ${_rc_kill_ntries} ]; then
+kill_pids 9 $list > /dev/null
+			fi
+		fi
 	done
-	if [ -n "$_prefix" ]; then
+	if [ -n "$prefix" ]; then
 		echo "."
 	fi
 }



CVS commit: src/etc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 21:03:08 UTC 2020

Modified Files:
src/etc: rc.subr

Log Message:
Prevent waiting for processes to exit forever by introducing _rc_kill_ntries,
which if set, will SIGKILL the processes that did not die yet.


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 src/etc/rc.subr

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys

2020-04-05 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Sun Apr  5 20:59:39 UTC 2020

Modified Files:
src/sys/arch/mips/adm5120/dev: ahci.c
src/sys/dev/usb: ehci.c ohci.c uhci.c usb_mem.c usb_mem.h usbdi.c
xhci.c
src/sys/external/bsd/dwc2: dwc2.c
src/sys/external/bsd/dwc2/dist: dwc2_hcd.c dwc2_hcdddma.c

Log Message:
Switch USB to use non-coherent buffers for data transfers in the
same way as OpenBSD.

The use of coherent (uncacheable on ARM and other arches) mappings
for transfer buffers impacts performance, espcially where memcpys
are involved.

Audit the necessary usb_syncmem operations - a few were missing.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/mips/adm5120/dev/ahci.c
cvs rdiff -u -r1.277 -r1.278 src/sys/dev/usb/ehci.c
cvs rdiff -u -r1.300 -r1.301 src/sys/dev/usb/ohci.c
cvs rdiff -u -r1.299 -r1.300 src/sys/dev/usb/uhci.c
cvs rdiff -u -r1.75 -r1.76 src/sys/dev/usb/usb_mem.c
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/usb/usb_mem.h
cvs rdiff -u -r1.199 -r1.200 src/sys/dev/usb/usbdi.c
cvs rdiff -u -r1.123 -r1.124 src/sys/dev/usb/xhci.c
cvs rdiff -u -r1.72 -r1.73 src/sys/external/bsd/dwc2/dwc2.c
cvs rdiff -u -r1.23 -r1.24 src/sys/external/bsd/dwc2/dist/dwc2_hcd.c
cvs rdiff -u -r1.8 -r1.9 src/sys/external/bsd/dwc2/dist/dwc2_hcdddma.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys

2020-04-05 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Sun Apr  5 20:59:39 UTC 2020

Modified Files:
src/sys/arch/mips/adm5120/dev: ahci.c
src/sys/dev/usb: ehci.c ohci.c uhci.c usb_mem.c usb_mem.h usbdi.c
xhci.c
src/sys/external/bsd/dwc2: dwc2.c
src/sys/external/bsd/dwc2/dist: dwc2_hcd.c dwc2_hcdddma.c

Log Message:
Switch USB to use non-coherent buffers for data transfers in the
same way as OpenBSD.

The use of coherent (uncacheable on ARM and other arches) mappings
for transfer buffers impacts performance, espcially where memcpys
are involved.

Audit the necessary usb_syncmem operations - a few were missing.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/mips/adm5120/dev/ahci.c
cvs rdiff -u -r1.277 -r1.278 src/sys/dev/usb/ehci.c
cvs rdiff -u -r1.300 -r1.301 src/sys/dev/usb/ohci.c
cvs rdiff -u -r1.299 -r1.300 src/sys/dev/usb/uhci.c
cvs rdiff -u -r1.75 -r1.76 src/sys/dev/usb/usb_mem.c
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/usb/usb_mem.h
cvs rdiff -u -r1.199 -r1.200 src/sys/dev/usb/usbdi.c
cvs rdiff -u -r1.123 -r1.124 src/sys/dev/usb/xhci.c
cvs rdiff -u -r1.72 -r1.73 src/sys/external/bsd/dwc2/dwc2.c
cvs rdiff -u -r1.23 -r1.24 src/sys/external/bsd/dwc2/dist/dwc2_hcd.c
cvs rdiff -u -r1.8 -r1.9 src/sys/external/bsd/dwc2/dist/dwc2_hcdddma.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/mips/adm5120/dev/ahci.c
diff -u src/sys/arch/mips/adm5120/dev/ahci.c:1.21 src/sys/arch/mips/adm5120/dev/ahci.c:1.22
--- src/sys/arch/mips/adm5120/dev/ahci.c:1.21	Fri Feb 21 12:41:29 2020
+++ src/sys/arch/mips/adm5120/dev/ahci.c	Sun Apr  5 20:59:38 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: ahci.c,v 1.21 2020/02/21 12:41:29 skrll Exp $	*/
+/*	$NetBSD: ahci.c,v 1.22 2020/04/05 20:59:38 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2007 Ruslan Ermilov and Vsevolod Lobko.
@@ -64,7 +64,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ahci.c,v 1.21 2020/02/21 12:41:29 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ahci.c,v 1.22 2020/04/05 20:59:38 skrll Exp $");
 
 #include 
 #include 
@@ -879,7 +879,7 @@ ahci_device_ctrl_start(struct usbd_xfer 
 		td3 = (struct admhcd_td *)KSEG1ADDR(_v[3]);
 		err = usb_allocmem(>sc_bus,
 			sizeof(usb_device_request_t),
-			0, );
+			0, USBMALLOC_COHERENT, );
 		if (err)
 			return USBD_NOMEM;
 
@@ -1259,6 +1259,10 @@ ahci_device_bulk_start(struct usbd_xfer 
 	segs = i;
 	len = 0;
 
+	if (xfer->ux_length)
+		usb_syncmem(>ux_dmabuf, 0, xfer->ux_length,
+		isread ? BUS_DMASYNC_PREREAD : BUS_DMASYNC_PREWRITE);
+
 /*	printf("segs: %d\n",segs);
 	printf("ep: %p\n",ep);
 	printf("ep->control: %x\n",ep->control);
@@ -1317,6 +1321,10 @@ ahci_device_bulk_start(struct usbd_xfer 
 	level--;
 /*	printf("bulk_start<<<\n"); */
 
+	if (xfer->ux_length)
+		usb_syncmem(>ux_dmabuf, 0, xfer->ux_length,
+		isread ? BUS_DMASYNC_POSTREAD : BUS_DMASYNC_POSTWRITE);
+
 	usb_transfer_complete(xfer);
 	mutex_exit(>sc_lock);
 

Index: src/sys/dev/usb/ehci.c
diff -u src/sys/dev/usb/ehci.c:1.277 src/sys/dev/usb/ehci.c:1.278
--- src/sys/dev/usb/ehci.c:1.277	Sat Mar 14 02:35:33 2020
+++ src/sys/dev/usb/ehci.c	Sun Apr  5 20:59:38 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: ehci.c,v 1.277 2020/03/14 02:35:33 christos Exp $ */
+/*	$NetBSD: ehci.c,v 1.278 2020/04/05 20:59:38 skrll Exp $ */
 
 /*
  * Copyright (c) 2004-2012 The NetBSD Foundation, Inc.
@@ -53,7 +53,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ehci.c,v 1.277 2020/03/14 02:35:33 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ehci.c,v 1.278 2020/04/05 20:59:38 skrll Exp $");
 
 #include "ohci.h"
 #include "uhci.h"
@@ -517,7 +517,7 @@ ehci_init(ehci_softc_t *sc)
 	case 3: return EIO;
 	}
 	err = usb_allocmem(>sc_bus, sc->sc_flsize * sizeof(ehci_link_t),
-	EHCI_FLALIGN_ALIGN, >sc_fldma);
+	EHCI_FLALIGN_ALIGN, USBMALLOC_COHERENT, >sc_fldma);
 	if (err)
 		return err;
 	DPRINTF("flsize=%jd", sc->sc_flsize, 0, 0, 0);
@@ -2003,7 +2003,7 @@ ehci_open(struct usbd_pipe *pipe)
 	switch (xfertype) {
 	case UE_CONTROL:
 		err = usb_allocmem(>sc_bus, sizeof(usb_device_request_t),
-   0, >ctrl.reqdma);
+		0, USBMALLOC_COHERENT, >ctrl.reqdma);
 #ifdef EHCI_DEBUG
 		if (err)
 			printf("ehci_open: usb_allocmem()=%d\n", err);
@@ -2803,7 +2803,7 @@ ehci_alloc_sqh(ehci_softc_t *sc)
 		mutex_exit(>sc_lock);
 
 		err = usb_allocmem(>sc_bus, EHCI_SQH_SIZE * EHCI_SQH_CHUNK,
-			  EHCI_PAGE_SIZE, );
+		EHCI_PAGE_SIZE, USBMALLOC_COHERENT, );
 #ifdef EHCI_DEBUG
 		if (err)
 			printf("ehci_alloc_sqh: usb_allocmem()=%d\n", err);
@@ -2856,7 +2856,7 @@ ehci_alloc_sqtd(ehci_softc_t *sc)
 		mutex_exit(>sc_lock);
 
 		err = usb_allocmem(>sc_bus, EHCI_SQTD_SIZE*EHCI_SQTD_CHUNK,
-			  EHCI_PAGE_SIZE, );
+		EHCI_PAGE_SIZE, USBMALLOC_COHERENT, );
 #ifdef EHCI_DEBUG
 		if (err)
 			printf("ehci_alloc_sqtd: usb_allocmem()=%d\n", err);
@@ -3113,8 +3113,9 @@ ehci_alloc_itd(ehci_softc_t *sc)
 	if (freeitd == NULL) {
 		

CVS commit: src/sys/sys

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 20:53:46 UTC 2020

Modified Files:
src/sys/sys: proc.h

Log Message:
There is no "s" lock.


To generate a diff of this commit:
cvs rdiff -u -r1.360 -r1.361 src/sys/sys/proc.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/sys/proc.h
diff -u src/sys/sys/proc.h:1.360 src/sys/sys/proc.h:1.361
--- src/sys/sys/proc.h:1.360	Sat Mar 14 16:23:51 2020
+++ src/sys/sys/proc.h	Sun Apr  5 16:53:46 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: proc.h,v 1.360 2020/03/14 20:23:51 ad Exp $	*/
+/*	$NetBSD: proc.h,v 1.361 2020/04/05 20:53:46 christos Exp $	*/
 
 /*-
  * Copyright (c) 2006, 2007, 2008, 2020 The NetBSD Foundation, Inc.
@@ -252,7 +252,7 @@ struct proc {
 	int		p_exitsig;	/* l: signal to send to parent on exit */
 	int		p_flag;		/* p: PK_* flags */
 	int		p_sflag;	/* p: PS_* flags */
-	int		p_slflag;	/* s, l: PSL_* flags */
+	int		p_slflag;	/* p, l: PSL_* flags */
 	int		p_lflag;	/* l: PL_* flags */
 	int		p_stflag;	/* t: PST_* flags */
 	char		p_stat;		/* p: S* process status. */



CVS commit: src/sys/sys

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 20:53:46 UTC 2020

Modified Files:
src/sys/sys: proc.h

Log Message:
There is no "s" lock.


To generate a diff of this commit:
cvs rdiff -u -r1.360 -r1.361 src/sys/sys/proc.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 20:53:17 UTC 2020

Modified Files:
src/sys/kern: kern_exec.c kern_fork.c kern_sig.c
src/sys/sys: signalvar.h

Log Message:
- Untangle spawn_return by splitting it up to sub-functions.
- Merge the eventswitch parent notification code which was copied in two
  places (eventswitchchild)
- Fix bugs in the eventswitch parent notification code:
  1. p_slflags should be accessed holding both proc_lock and p->p_lock
  2. p->p_opptr can be NULL if the parent was PSL_CHTRACED and exited.

Fixes random crashes the posix_spawn_kill_spawner unit test which tried
to dereference a NULL pptr.


To generate a diff of this commit:
cvs rdiff -u -r1.493 -r1.494 src/sys/kern/kern_exec.c
cvs rdiff -u -r1.219 -r1.220 src/sys/kern/kern_fork.c
cvs rdiff -u -r1.385 -r1.386 src/sys/kern/kern_sig.c
cvs rdiff -u -r1.100 -r1.101 src/sys/sys/signalvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/kern_exec.c
diff -u src/sys/kern/kern_exec.c:1.493 src/sys/kern/kern_exec.c:1.494
--- src/sys/kern/kern_exec.c:1.493	Sun Feb 23 17:14:03 2020
+++ src/sys/kern/kern_exec.c	Sun Apr  5 16:53:17 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_exec.c,v 1.493 2020/02/23 22:14:03 ad Exp $	*/
+/*	$NetBSD: kern_exec.c,v 1.494 2020/04/05 20:53:17 christos Exp $	*/
 
 /*-
  * Copyright (c) 2008, 2019, 2020 The NetBSD Foundation, Inc.
@@ -62,7 +62,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.493 2020/02/23 22:14:03 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.494 2020/04/05 20:53:17 christos Exp $");
 
 #include "opt_exec.h"
 #include "opt_execfmt.h"
@@ -2062,6 +2062,156 @@ spawn_exec_data_release(struct spawn_exe
 	kmem_free(data, sizeof(*data));
 }
 
+static int
+handle_posix_spawn_file_actions(struct posix_spawn_file_actions *actions)
+{
+	struct lwp *l = curlwp;
+	register_t retval;
+	int error, newfd;
+
+	if (actions == NULL)
+		return 0;
+
+	for (size_t i = 0; i < actions->len; i++) {
+		const struct posix_spawn_file_actions_entry *fae =
+		>fae[i];
+		switch (fae->fae_action) {
+		case FAE_OPEN:
+			if (fd_getfile(fae->fae_fildes) != NULL) {
+error = fd_close(fae->fae_fildes);
+if (error)
+	return error;
+			}
+			error = fd_open(fae->fae_path, fae->fae_oflag,
+			fae->fae_mode, );
+			if (error)
+return error;
+			if (newfd != fae->fae_fildes) {
+error = dodup(l, newfd,
+fae->fae_fildes, 0, );
+if (fd_getfile(newfd) != NULL)
+	fd_close(newfd);
+			}
+			break;
+		case FAE_DUP2:
+			error = dodup(l, fae->fae_fildes,
+			fae->fae_newfildes, 0, );
+			break;
+		case FAE_CLOSE:
+			if (fd_getfile(fae->fae_fildes) == NULL) {
+return EBADF;
+			}
+			error = fd_close(fae->fae_fildes);
+			break;
+		}
+		if (error)
+			return error;
+	}
+	return 0;
+}
+
+static int
+handle_posix_spawn_attrs(struct posix_spawnattr *attrs, struct proc *parent)
+{
+	struct sigaction sigact;
+	int error;
+	struct proc *p = curproc;
+	struct lwp *l = curlwp;
+
+	if (attrs == NULL)
+		return 0;
+
+	memset(, 0, sizeof(sigact));
+	sigact._sa_u._sa_handler = SIG_DFL;
+	sigact.sa_flags = 0;
+
+	/* 
+	 * set state to SSTOP so that this proc can be found by pid.
+	 * see proc_enterprp, do_sched_setparam below
+	 */
+	mutex_enter(proc_lock);
+	/*
+	 * p_stat should be SACTIVE, so we need to adjust the
+	 * parent's p_nstopchild here.  For safety, just make
+	 * we're on the good side of SDEAD before we adjust.
+	 */
+	int ostat = p->p_stat;
+	KASSERT(ostat < SSTOP);
+	p->p_stat = SSTOP;
+	p->p_waited = 0;
+	p->p_pptr->p_nstopchild++;
+	mutex_exit(proc_lock);
+
+	/* Set process group */
+	if (attrs->sa_flags & POSIX_SPAWN_SETPGROUP) {
+		pid_t mypid = p->p_pid;
+		pid_t pgrp = attrs->sa_pgroup;
+
+		if (pgrp == 0)
+			pgrp = mypid;
+
+		error = proc_enterpgrp(parent, mypid, pgrp, false);
+		if (error)
+			goto out;
+	}
+
+	/* Set scheduler policy */
+	if (attrs->sa_flags & POSIX_SPAWN_SETSCHEDULER)
+		error = do_sched_setparam(p->p_pid, 0, attrs->sa_schedpolicy,
+		>sa_schedparam);
+	else if (attrs->sa_flags & POSIX_SPAWN_SETSCHEDPARAM) {
+		error = do_sched_setparam(parent->p_pid, 0,
+		SCHED_NONE, >sa_schedparam);
+	}
+	if (error)
+		goto out;
+
+	/* Reset user ID's */
+	if (attrs->sa_flags & POSIX_SPAWN_RESETIDS) {
+		error = do_setresuid(l, -1, kauth_cred_getgid(l->l_cred), -1,
+		 ID_E_EQ_R | ID_E_EQ_S);
+		if (error)
+			return error;
+		error = do_setresuid(l, -1, kauth_cred_getuid(l->l_cred), -1,
+		ID_E_EQ_R | ID_E_EQ_S);
+		if (error)
+			goto out;
+	}
+
+	/* Set signal masks/defaults */
+	if (attrs->sa_flags & POSIX_SPAWN_SETSIGMASK) {
+		mutex_enter(p->p_lock);
+		error = sigprocmask1(l, SIG_SETMASK, >sa_sigmask, NULL);
+		mutex_exit(p->p_lock);
+		if (error)
+			goto out;
+	}
+
+	if (attrs->sa_flags & POSIX_SPAWN_SETSIGDEF) {
+		/*
+		 * The following sigaction call is using a sigaction
+		

CVS commit: src/sys

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 20:53:17 UTC 2020

Modified Files:
src/sys/kern: kern_exec.c kern_fork.c kern_sig.c
src/sys/sys: signalvar.h

Log Message:
- Untangle spawn_return by splitting it up to sub-functions.
- Merge the eventswitch parent notification code which was copied in two
  places (eventswitchchild)
- Fix bugs in the eventswitch parent notification code:
  1. p_slflags should be accessed holding both proc_lock and p->p_lock
  2. p->p_opptr can be NULL if the parent was PSL_CHTRACED and exited.

Fixes random crashes the posix_spawn_kill_spawner unit test which tried
to dereference a NULL pptr.


To generate a diff of this commit:
cvs rdiff -u -r1.493 -r1.494 src/sys/kern/kern_exec.c
cvs rdiff -u -r1.219 -r1.220 src/sys/kern/kern_fork.c
cvs rdiff -u -r1.385 -r1.386 src/sys/kern/kern_sig.c
cvs rdiff -u -r1.100 -r1.101 src/sys/sys/signalvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: [vfs_cache] Re: CVS commit: src/sys/kern

2020-04-05 Thread Andrew Doran
On Sun, Mar 29, 2020 at 11:41:23AM +0200, Maxime Villard wrote:
> Le 23/03/2020 ? 21:02, Andrew Doran a ?crit?:
> > Module Name:src
> > Committed By:   ad
> > Date:   Mon Mar 23 20:02:14 UTC 2020
> > 
> > Modified Files:
> > src/sys/kern: vfs_cache.c
> > 
> > Log Message:
> > cache_remove(): remove from the vnode list first, so cache_revlookup()
> > doesn't try to re-activate an entry no longer on the LRU list.
> > 
> > 
> > To generate a diff of this commit:
> > cvs rdiff -u -r1.133 -r1.134 src/sys/kern/vfs_cache.c
> > 
> > Please note that diffs are not public domain; they are subject to the
> > copyright notices on the relevant files.
> 
> It appears that your recent changes in vfs_cache.c have introduced a
> use-after-free. Booting KASAN gives:
> 
>   ASan: Unauthorized Access In 0x...: Addr 0x... [1 byte, read, 
> PoolUseAfterFree]
> 
> It seems that the problem is here:
> 
> 557   if (nameiop == CREATE && (cnflags & ISLASTCN) != 0) {
> 558   /*
> 559* Last component and we are preparing to create
> 560* the named object, so flush the negative cache
> 561* entry.
> 562*/
> 563   COUNT(ncs_badhits);
> 564   cache_remove(ncp, true);< HERE
> 565   hit = false;
> 566   } else {
> 567   COUNT(ncs_neghits);
> 568   SDT_PROBE(vfs, namecache, lookup, hit, dvp, name,
> 569   namelen, 0, 0);
> 570   /* found neg entry; vn is already null from above */
> 571   hit = true;
> 572   }
> 573   if (iswht_ret != NULL) {
> 574   /*
> 575* Restore the ISWHITEOUT flag saved earlier.
> 576*/
> 577   *iswht_ret = ncp->nc_whiteout;  <-- ouch
> 578   } else {
> 579   KASSERT(!ncp->nc_whiteout);  <-- ouch
> 580   }
> 
> cache_remove() frees 'ncp', and then 'ncp->nc_whiteout' is read.

Fixed with vfs_cache.c 1.136.  Thank you for bringing it to my attention.

Andrew


CVS commit: src/doc

2020-04-05 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Apr  5 19:48:27 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
fix the mrg arm entry text that said v7 + v7, not v7 + v8.

noticed while checking what was wrong with the prior ;)


To generate a diff of this commit:
cvs rdiff -u -r1.2667 -r1.2668 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/doc

2020-04-05 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Apr  5 19:48:27 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
fix the mrg arm entry text that said v7 + v7, not v7 + v8.

noticed while checking what was wrong with the prior ;)


To generate a diff of this commit:
cvs rdiff -u -r1.2667 -r1.2668 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.2667 src/doc/CHANGES:1.2668
--- src/doc/CHANGES:1.2667	Sun Apr  5 19:01:36 2020
+++ src/doc/CHANGES	Sun Apr  5 19:48:27 2020
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2667 $>
+# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2668 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -122,7 +122,7 @@ Changes from NetBSD 9.0 to NetBSD 10.0:
 		across different physical CPU packages, and can effectively
 		run asymmetric systems with slow and fast CPUs [ad 20200113]
 	evbarm: Add support for NXP i.MX 8M family SoCs. [jmcneill 20200114]
-	arm: Add support for cpu topology for ARMv7 and ARMv7 CPUs.
+	arm: Add support for cpu topology for ARMv7 and ARMv8 CPUs.
 		[mrg 20200114]
 	uvm: More precisely track clean/dirty pages, and change how they are
 		indexed, speeding up fsync() on large files by orders of



CVS commit: src/share/man/man4

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 19:03:30 UTC 2020

Modified Files:
src/share/man/man4: xennet.4

Log Message:
remove RX flip from diagnostic, it was removed


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/share/man/man4/xennet.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/share/man/man4/xennet.4
diff -u src/share/man/man4/xennet.4:1.4 src/share/man/man4/xennet.4:1.5
--- src/share/man/man4/xennet.4:1.4	Fri Nov 20 17:02:58 2015
+++ src/share/man/man4/xennet.4	Sun Apr  5 19:03:30 2020
@@ -1,4 +1,4 @@
-.\"	$NetBSD: xennet.4,v 1.4 2015/11/20 17:02:58 christos Exp $
+.\"	$NetBSD: xennet.4,v 1.5 2020/04/05 19:03:30 jdolecek Exp $
 .\"
 .\" Copyright (c) 2011 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,7 +27,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd November 20, 2015
+.Dd April 5, 2020
 .Dt XENNET 4 xen
 .Os
 .Sh NAME
@@ -82,11 +82,6 @@ The
 .Nm
 and its associated endpoint use copy mode for communication: packets
 are copied from one domain's memory to another.
-.It "xennet%d: using RX flip mode"
-The
-.Nm
-and its associated endpoint use flip mode for communication: packets
-are passed by remapping memory pages between domains.
 .El
 .Sh SEE ALSO
 .Xr bridge 4 ,



CVS commit: src/share/man/man4

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 19:03:30 UTC 2020

Modified Files:
src/share/man/man4: xennet.4

Log Message:
remove RX flip from diagnostic, it was removed


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/share/man/man4/xennet.4

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/doc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 19:01:36 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
fix date for mrg arm entry


To generate a diff of this commit:
cvs rdiff -u -r1.2666 -r1.2667 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.2666 src/doc/CHANGES:1.2667
--- src/doc/CHANGES:1.2666	Sun Apr  5 17:45:19 2020
+++ src/doc/CHANGES	Sun Apr  5 19:01:36 2020
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2666 $>
+# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2667 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -123,7 +123,7 @@ Changes from NetBSD 9.0 to NetBSD 10.0:
 		run asymmetric systems with slow and fast CPUs [ad 20200113]
 	evbarm: Add support for NXP i.MX 8M family SoCs. [jmcneill 20200114]
 	arm: Add support for cpu topology for ARMv7 and ARMv7 CPUs.
-		[mrg 20201114]
+		[mrg 20200114]
 	uvm: More precisely track clean/dirty pages, and change how they are
 		indexed, speeding up fsync() on large files by orders of
 		magnitude.  Original work done by yamt@. [ad 20200115]



CVS commit: src/doc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 19:01:36 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
fix date for mrg arm entry


To generate a diff of this commit:
cvs rdiff -u -r1.2666 -r1.2667 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/sys/arch/xen/xen

2020-04-05 Thread Manuel Bouyer
On Sun, Apr 05, 2020 at 05:26:47PM +, Jaromir Dolecek wrote:
> Module Name:  src
> Committed By: jdolecek
> Date: Sun Apr  5 17:26:47 UTC 2020
> 
> Modified Files:
>   src/sys/arch/xen/xen: if_xennet_xenbus.c xennetback_xenbus.c
> 
> Log Message:
> remove support for legacy rx-flip mode for xennet(4)/xvif(4), making
> rx-copy (first shipped in NetBSD 6.0 in 2012) the only supported
> mode

did you actually read my reply to your proposal to port-xen ?
The example provided in the xen 4.11 sources still use rx-flip, so I'm not
sure it's not supported any more by linux dom0.

-- 
Manuel Bouyer 
 NetBSD: 26 ans d'experience feront toujours la difference
--


CVS commit: src/sys/arch/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:48:30 UTC 2020

Modified Files:
src/sys/arch/xen/include: granttables.h
src/sys/arch/xen/xen: xengnt.c

Log Message:
remove xengnt_grant_transfer() and xengnt_revoke_transfer(), nothing
uses it any more


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/xen/include/granttables.h
cvs rdiff -u -r1.27 -r1.28 src/sys/arch/xen/xen/xengnt.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/xen/include/granttables.h
diff -u src/sys/arch/xen/include/granttables.h:1.10 src/sys/arch/xen/include/granttables.h:1.11
--- src/sys/arch/xen/include/granttables.h:1.10	Sat Feb  2 12:32:55 2019
+++ src/sys/arch/xen/include/granttables.h	Sun Apr  5 17:48:30 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: granttables.h,v 1.10 2019/02/02 12:32:55 cherry Exp $ */
+/* $NetBSD: granttables.h,v 1.11 2020/04/05 17:48:30 jdolecek Exp $ */
 /*
  * Copyright (c) 2006 Manuel Bouyer.
  *
@@ -46,12 +46,6 @@ int xengnt_grant_access(domid_t, paddr_t
  */
 void xengnt_revoke_access(grant_ref_t);
 
-/* allow a page transfer from a remote domain */
-int xengnt_grant_transfer(domid_t, grant_ref_t *);
-
-/* end transfer, return the new page address or 0 */
-paddr_t xengnt_revoke_transfer(grant_ref_t);
-
 /*
  * Query grant status (i.e. if remote has a valid mapping to this grant).
  * Returns GTF_reading | GTF_writing (0 if remote does not use it anymore).

Index: src/sys/arch/xen/xen/xengnt.c
diff -u src/sys/arch/xen/xen/xengnt.c:1.27 src/sys/arch/xen/xen/xengnt.c:1.28
--- src/sys/arch/xen/xen/xengnt.c:1.27	Sun Nov 10 21:16:34 2019
+++ src/sys/arch/xen/xen/xengnt.c	Sun Apr  5 17:48:30 2020
@@ -1,4 +1,4 @@
-/*  $NetBSD: xengnt.c,v 1.27 2019/11/10 21:16:34 chs Exp $  */
+/*  $NetBSD: xengnt.c,v 1.28 2020/04/05 17:48:30 jdolecek Exp $  */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -26,7 +26,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: xengnt.c,v 1.27 2019/11/10 21:16:34 chs Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xengnt.c,v 1.28 2020/04/05 17:48:30 jdolecek Exp $");
 
 #include 
 #include 
@@ -331,59 +331,6 @@ xengnt_revoke_access(grant_ref_t entry)
 }
 
 int
-xengnt_grant_transfer(domid_t dom, grant_ref_t *entryp)
-{
-	mutex_enter(_lock);
-
-	*entryp = xengnt_get_entry();
-	if (__predict_false(*entryp == XENGNT_NO_ENTRY)) {
-		mutex_exit(_lock);
-		return ENOMEM;
-	}
-
-	grant_table[*entryp].frame = 0;
-	grant_table[*entryp].domid = dom;
-	/*
-	 * ensure that the above values reach global visibility 
-	 * before permitting frame's transfer (done when we set flags)
-	 */
-	xen_rmb();
-	grant_table[*entryp].flags = GTF_accept_transfer;
-	mutex_exit(_lock);
-	return 0;
-}
-
-paddr_t
-xengnt_revoke_transfer(grant_ref_t entry)
-{
-	paddr_t page;
-	uint16_t flags;
-
-	/* if the transfer has not started, free the entry and return 0 */
-	while (!((flags = grant_table[entry].flags) & GTF_transfer_committed)) {
-		if (xen_atomic_cmpxchg16(_table[entry].flags,
-		flags, 0) == flags ) {
-			xengnt_free_entry(entry);
-			return 0;
-		}
-		HYPERVISOR_yield();
-	}
-
-	/* If transfer in progress, wait for completion */
-	while (!((flags = grant_table[entry].flags) & GTF_transfer_completed))
-		HYPERVISOR_yield();
-
-	/* Read the frame number /after/ reading completion status. */
-	__insn_barrier();
-	page = grant_table[entry].frame;
-	if (page == 0)
-		printf("xengnt_revoke_transfer: guest sent pa 0\n");
-
-	xengnt_free_entry(entry);
-	return page;
-}
-
-int
 xengnt_status(grant_ref_t entry)
 {
 	return (grant_table[entry].flags & (GTF_reading|GTF_writing));



CVS commit: src/sys/arch/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:48:30 UTC 2020

Modified Files:
src/sys/arch/xen/include: granttables.h
src/sys/arch/xen/xen: xengnt.c

Log Message:
remove xengnt_grant_transfer() and xengnt_revoke_transfer(), nothing
uses it any more


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/xen/include/granttables.h
cvs rdiff -u -r1.27 -r1.28 src/sys/arch/xen/xen/xengnt.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/doc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:45:19 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
note removal of xen rx-flip


To generate a diff of this commit:
cvs rdiff -u -r1.2665 -r1.2666 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.2665 src/doc/CHANGES:1.2666
--- src/doc/CHANGES:1.2665	Sat Apr  4 16:07:40 2020
+++ src/doc/CHANGES	Sun Apr  5 17:45:19 2020
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2665 $>
+# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2666 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -165,3 +165,5 @@ Changes from NetBSD 9.0 to NetBSD 10.0:
 	dhcpcd(8): Import version 9.0.0 [roy 20200402]
 	mount_smbfs(8): Removed from the tree [jdolecek 20200404]
 	nsmb(4): Removed from the tree [jdolecek 20200404]
+	xen: remove legacy rx-flip support from xennet(4) and xvif(4)
+		[jdolecek 20200405]



CVS commit: src/doc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:45:19 UTC 2020

Modified Files:
src/doc: CHANGES

Log Message:
note removal of xen rx-flip


To generate a diff of this commit:
cvs rdiff -u -r1.2665 -r1.2666 src/doc/CHANGES

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/xen/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:26:47 UTC 2020

Modified Files:
src/sys/arch/xen/xen: if_xennet_xenbus.c xennetback_xenbus.c

Log Message:
remove support for legacy rx-flip mode for xennet(4)/xvif(4), making
rx-copy (first shipped in NetBSD 6.0 in 2012) the only supported
mode

this is mostly to simplify maintenance and future development

rx-flip is not supported by Linux Dom0/DomU, and NetBSD Dom0/DomU
defaults to rx-copy for over 8 years now too, so there is little
need to keep the support for compatibility

besides compatibility there is no other reason to keep rx-flip -
page transfer is generally slower than copy due to necessary MMU/TLB
manipulation, especially on MP systems


To generate a diff of this commit:
cvs rdiff -u -r1.98 -r1.99 src/sys/arch/xen/xen/if_xennet_xenbus.c
cvs rdiff -u -r1.91 -r1.92 src/sys/arch/xen/xen/xennetback_xenbus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/xen/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 17:26:47 UTC 2020

Modified Files:
src/sys/arch/xen/xen: if_xennet_xenbus.c xennetback_xenbus.c

Log Message:
remove support for legacy rx-flip mode for xennet(4)/xvif(4), making
rx-copy (first shipped in NetBSD 6.0 in 2012) the only supported
mode

this is mostly to simplify maintenance and future development

rx-flip is not supported by Linux Dom0/DomU, and NetBSD Dom0/DomU
defaults to rx-copy for over 8 years now too, so there is little
need to keep the support for compatibility

besides compatibility there is no other reason to keep rx-flip -
page transfer is generally slower than copy due to necessary MMU/TLB
manipulation, especially on MP systems


To generate a diff of this commit:
cvs rdiff -u -r1.98 -r1.99 src/sys/arch/xen/xen/if_xennet_xenbus.c
cvs rdiff -u -r1.91 -r1.92 src/sys/arch/xen/xen/xennetback_xenbus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/xen/xen/if_xennet_xenbus.c
diff -u src/sys/arch/xen/xen/if_xennet_xenbus.c:1.98 src/sys/arch/xen/xen/if_xennet_xenbus.c:1.99
--- src/sys/arch/xen/xen/if_xennet_xenbus.c:1.98	Sun Apr  5 14:20:18 2020
+++ src/sys/arch/xen/xen/if_xennet_xenbus.c	Sun Apr  5 17:26:46 2020
@@ -1,4 +1,4 @@
-/*  $NetBSD: if_xennet_xenbus.c,v 1.98 2020/04/05 14:20:18 jdolecek Exp $  */
+/*  $NetBSD: if_xennet_xenbus.c,v 1.99 2020/04/05 17:26:46 jdolecek Exp $  */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -81,7 +81,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.98 2020/04/05 14:20:18 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.99 2020/04/05 17:26:46 jdolecek Exp $");
 
 #include "opt_xen.h"
 #include "opt_nfs_boot.h"
@@ -208,18 +208,11 @@ struct xennet_xenbus_softc {
 #define BEST_DISCONNECTED	1
 #define BEST_CONNECTED		2
 #define BEST_SUSPENDED		3
-	unsigned long sc_rx_feature;
-#define FEATURE_RX_FLIP		0
-#define FEATURE_RX_COPY		1
 	krndsource_t sc_rnd_source;
 };
 #define SC_NLIVEREQ(sc) ((sc)->sc_rx_ring.req_prod_pvt - \
 			(sc)->sc_rx_ring.sring->rsp_prod)
 
-/* too big to be on stack */
-static multicall_entry_t rx_mcl[NET_RX_RING_SIZE+1];
-static u_long xennet_pages[NET_RX_RING_SIZE];
-
 static pool_cache_t if_xennetrxbuf_cache;
 static int if_xennetrxbuf_cache_inited=0;
 
@@ -551,16 +544,12 @@ xennet_talk_to_backend(struct xennet_xen
 
 	error = xenbus_read_ul(NULL, sc->sc_xbusd->xbusd_otherend,
 	"feature-rx-copy", _copy, 10);
-	if (error)
-		rx_copy = 0; /* default value if key is absent */
-
-	if (rx_copy == 1) {
-		aprint_normal_dev(sc->sc_dev, "using RX copy mode\n");
-		sc->sc_rx_feature = FEATURE_RX_COPY;
-	} else {
-		aprint_normal_dev(sc->sc_dev, "using RX flip mode\n");
-		sc->sc_rx_feature = FEATURE_RX_FLIP;
+	if (error || !rx_copy) {
+		xenbus_dev_fatal(sc->sc_xbusd, error,
+		"feature-rx-copy not supported");
+		return false;
 	}
+	aprint_normal_dev(sc->sc_dev, "using RX copy mode\n");
 
 again:
 	xbt = xenbus_transaction_start();
@@ -705,8 +694,7 @@ xennet_alloc_rx_buffer(struct xennet_xen
 	RING_IDX req_prod = sc->sc_rx_ring.req_prod_pvt;
 	RING_IDX i;
 	struct xennet_rxreq *req;
-	struct xen_memory_reservation reservation;
-	int s, otherend_id, notify;
+	int otherend_id, notify;
 
 	otherend_id = sc->sc_xbusd->xbusd_otherend_id;
 
@@ -718,23 +706,10 @@ xennet_alloc_rx_buffer(struct xennet_xen
 		RING_GET_REQUEST(>sc_rx_ring, req_prod + i)->id =
 		req->rxreq_id;
 
-		switch (sc->sc_rx_feature) {
-		case FEATURE_RX_COPY:
-			if (xengnt_grant_access(otherend_id,
-			xpmap_ptom_masked(req->rxreq_pa),
-			0, >rxreq_gntref) != 0) {
-goto out_loop;
-			}
-			break;
-		case FEATURE_RX_FLIP:
-			if (xengnt_grant_transfer(otherend_id,
-			>rxreq_gntref) != 0) {
-goto out_loop;
-			}
-			break;
-		default:
-			panic("%s: unsupported RX feature mode: %ld\n",
-			__func__, sc->sc_rx_feature);
+		if (xengnt_grant_access(otherend_id,
+		xpmap_ptom_masked(req->rxreq_pa),
+		0, >rxreq_gntref) != 0) {
+			goto out_loop;
 		}
 
 		RING_GET_REQUEST(>sc_rx_ring, req_prod + i)->gref =
@@ -742,19 +717,6 @@ xennet_alloc_rx_buffer(struct xennet_xen
 
 		SLIST_REMOVE_HEAD(>sc_rxreq_head, rxreq_next);
 		sc->sc_free_rxreql--;
-
-		if (sc->sc_rx_feature == FEATURE_RX_FLIP) {
-			/* unmap the page */
-			MULTI_update_va_mapping(_mcl[i],
-			req->rxreq_va, 0, 0);
-			/*
-			 * Remove this page from pseudo phys map before
-			 * passing back to Xen.
-			 */
-			xennet_pages[i] =
-			xpmap_ptom(req->rxreq_pa) >> PAGE_SHIFT;
-			xpmap_ptom_unmap(req->rxreq_pa);
-		}
 	}
 
 out_loop:
@@ -762,34 +724,6 @@ out_loop:
 		return;
 	}
 
-	if (sc->sc_rx_feature == FEATURE_RX_FLIP) {
-		/* also make sure to flush all TLB entries */
-		rx_mcl[i-1].args[MULTI_UVMFLAGS_INDEX] =
-		UVMF_TLB_FLUSH | UVMF_ALL;
-		/*
-		 * We may have allocated buffers which have entries
-		 * 

CVS commit: src/external/bsd/dhcpcd/dist/src

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 15:41:45 UTC 2020

Modified Files:
src/external/bsd/dhcpcd/dist/src: script.c

Log Message:
Don't block signals when running hooks. Here ctx->sigset == defsigs ==
0x60006003, which blocks SIGTERM by default, so running something simple
from a hook, like /etc/rc.d/racoon restart does not work. The script
is then stuck waiting for the daemon to die, which it won't since it will
never receive the signal, and the hook never terminates.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/bsd/dhcpcd/dist/src/script.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/bsd/dhcpcd/dist/src

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 15:41:45 UTC 2020

Modified Files:
src/external/bsd/dhcpcd/dist/src: script.c

Log Message:
Don't block signals when running hooks. Here ctx->sigset == defsigs ==
0x60006003, which blocks SIGTERM by default, so running something simple
from a hook, like /etc/rc.d/racoon restart does not work. The script
is then stuck waiting for the daemon to die, which it won't since it will
never receive the signal, and the hook never terminates.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/bsd/dhcpcd/dist/src/script.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/bsd/dhcpcd/dist/src/script.c
diff -u src/external/bsd/dhcpcd/dist/src/script.c:1.3 src/external/bsd/dhcpcd/dist/src/script.c:1.4
--- src/external/bsd/dhcpcd/dist/src/script.c:1.3	Thu Apr  2 08:41:48 2020
+++ src/external/bsd/dhcpcd/dist/src/script.c	Sun Apr  5 11:41:45 2020
@@ -108,7 +108,8 @@ script_exec(const struct dhcpcd_ctx *ctx
 	for (i = 0; i < dhcpcd_signals_len; i++)
 		sigaddset(, dhcpcd_signals[i]);
 	posix_spawnattr_setsigdefault(, );
-	posix_spawnattr_setsigmask(, >sigset);
+	sigemptyset();
+	posix_spawnattr_setsigmask(, );
 #endif
 	errno = 0;
 	r = posix_spawn(, argv[0], NULL, , argv, env);



CVS commit: src

2020-04-05 Thread Joerg Sonnenberger
Module Name:src
Committed By:   joerg
Date:   Sun Apr  5 15:25:40 UTC 2020

Modified Files:
src/include/protocols: dumprestore.h
src/sbin/dump: dump.h main.c
src/sbin/fsck_ext2fs: fsck.h main.c
src/sbin/fsck_ffs: fsck.h main.c
src/sbin/fsdb: fsdb.c
src/sbin/iscsid: iscsid_globals.h
src/sbin/newfs_udf: newfs_udf.c newfs_udf.h udf_create.c
src/sbin/restore: main.c restore.h

Log Message:
Fix depenency on common symbols in sbin.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/include/protocols/dumprestore.h
cvs rdiff -u -r1.57 -r1.58 src/sbin/dump/dump.h
cvs rdiff -u -r1.76 -r1.77 src/sbin/dump/main.c
cvs rdiff -u -r1.16 -r1.17 src/sbin/fsck_ext2fs/fsck.h
cvs rdiff -u -r1.40 -r1.41 src/sbin/fsck_ext2fs/main.c
cvs rdiff -u -r1.53 -r1.54 src/sbin/fsck_ffs/fsck.h
cvs rdiff -u -r1.86 -r1.87 src/sbin/fsck_ffs/main.c
cvs rdiff -u -r1.50 -r1.51 src/sbin/fsdb/fsdb.c
cvs rdiff -u -r1.9 -r1.10 src/sbin/iscsid/iscsid_globals.h
cvs rdiff -u -r1.19 -r1.20 src/sbin/newfs_udf/newfs_udf.c
cvs rdiff -u -r1.6 -r1.7 src/sbin/newfs_udf/newfs_udf.h
cvs rdiff -u -r1.26 -r1.27 src/sbin/newfs_udf/udf_create.c
cvs rdiff -u -r1.35 -r1.36 src/sbin/restore/main.c
cvs rdiff -u -r1.21 -r1.22 src/sbin/restore/restore.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src

2020-04-05 Thread Joerg Sonnenberger
Module Name:src
Committed By:   joerg
Date:   Sun Apr  5 15:25:40 UTC 2020

Modified Files:
src/include/protocols: dumprestore.h
src/sbin/dump: dump.h main.c
src/sbin/fsck_ext2fs: fsck.h main.c
src/sbin/fsck_ffs: fsck.h main.c
src/sbin/fsdb: fsdb.c
src/sbin/iscsid: iscsid_globals.h
src/sbin/newfs_udf: newfs_udf.c newfs_udf.h udf_create.c
src/sbin/restore: main.c restore.h

Log Message:
Fix depenency on common symbols in sbin.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/include/protocols/dumprestore.h
cvs rdiff -u -r1.57 -r1.58 src/sbin/dump/dump.h
cvs rdiff -u -r1.76 -r1.77 src/sbin/dump/main.c
cvs rdiff -u -r1.16 -r1.17 src/sbin/fsck_ext2fs/fsck.h
cvs rdiff -u -r1.40 -r1.41 src/sbin/fsck_ext2fs/main.c
cvs rdiff -u -r1.53 -r1.54 src/sbin/fsck_ffs/fsck.h
cvs rdiff -u -r1.86 -r1.87 src/sbin/fsck_ffs/main.c
cvs rdiff -u -r1.50 -r1.51 src/sbin/fsdb/fsdb.c
cvs rdiff -u -r1.9 -r1.10 src/sbin/iscsid/iscsid_globals.h
cvs rdiff -u -r1.19 -r1.20 src/sbin/newfs_udf/newfs_udf.c
cvs rdiff -u -r1.6 -r1.7 src/sbin/newfs_udf/newfs_udf.h
cvs rdiff -u -r1.26 -r1.27 src/sbin/newfs_udf/udf_create.c
cvs rdiff -u -r1.35 -r1.36 src/sbin/restore/main.c
cvs rdiff -u -r1.21 -r1.22 src/sbin/restore/restore.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/include/protocols/dumprestore.h
diff -u src/include/protocols/dumprestore.h:1.18 src/include/protocols/dumprestore.h:1.19
--- src/include/protocols/dumprestore.h:1.18	Fri Jan 22 23:11:50 2016
+++ src/include/protocols/dumprestore.h	Sun Apr  5 15:25:39 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: dumprestore.h,v 1.18 2016/01/22 23:11:50 dholland Exp $	*/
+/*	$NetBSD: dumprestore.h,v 1.19 2020/04/05 15:25:39 joerg Exp $	*/
 
 /*
  * Copyright (c) 1980, 1993
@@ -68,7 +68,7 @@
 #endif
 #define CHECKSUM	(int)84446
 
-union u_spcl {
+extern union u_spcl {
 	char dummy[TP_BSIZE];
 	struct	s_spcl {
 		int32_t	c_type;		/* record type (see below) */

Index: src/sbin/dump/dump.h
diff -u src/sbin/dump/dump.h:1.57 src/sbin/dump/dump.h:1.58
--- src/sbin/dump/dump.h:1.57	Mon Mar 25 02:13:01 2019
+++ src/sbin/dump/dump.h	Sun Apr  5 15:25:39 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: dump.h,v 1.57 2019/03/25 02:13:01 manu Exp $	*/
+/*	$NetBSD: dump.h,v 1.58 2020/04/05 15:25:39 joerg Exp $	*/
 
 /*-
  * Copyright (c) 1980, 1993
@@ -85,15 +85,15 @@ struct ufsi {
 	b) >= UFS_NDADDR || DIP((d), size) >= ((b)+1) << (u)->ufs_bshift \
 		? (u)->ufs_bsize \
 		: (ufs_fragroundup((u), ufs_blkoff(u, DIP((d), size)))
-struct ufsi *ufsib;
+extern struct ufsi *ufsib;
 
 /*
  * Dump maps used to describe what is to be dumped.
  */
-int	mapsize;	/* size of the state maps */
-char	*usedinomap;	/* map of allocated inodes */
-char	*dumpdirmap;	/* map of directories to be dumped */
-char	*dumpinomap;	/* map of files to be dumped */
+extern int	mapsize;	/* size of the state maps */
+extern char	*usedinomap;	/* map of allocated inodes */
+extern char	*dumpdirmap;	/* map of directories to be dumped */
+extern char	*dumpinomap;	/* map of files to be dumped */
 /*
  * Map manipulation macros.
  */
@@ -107,29 +107,29 @@ char	*dumpinomap;	/* map of files to be 
 /*
  *	All calculations done in 0.1" units!
  */
-char	*disk;		/* name of the disk file */
-char	*disk_dev;	/* name of the raw device we are dumping */
-const char *tape;	/* name of the tape file */
-const char *dumpdates;	/* name of the file containing dump date information*/
-const char *temp;	/* name of the file for doing rewrite of dumpdates */
-char	lastlevel;	/* dump level of previous dump */
-char	level;		/* dump level of this dump */
-int	uflag;		/* update flag */
-const char *dumpdev;	/* device name in dumpdates */
-int	eflag;		/* eject flag */
-int	lflag;		/* autoload flag */
-int	diskfd;		/* disk file descriptor */
-int	tapefd;		/* tape file descriptor */
-int	pipeout;	/* true => output to standard output */
-int	trueinc;	/* true => "true incremental", i.e use last 9 as ref */
-ino_t	curino;		/* current inumber; used globally */
-int	newtape;	/* new tape flag */
-u_int64_t	tapesize;	/* estimated tape size, blocks */
-long	tsize;		/* tape size in 0.1" units */
-long	asize;		/* number of 0.1" units written on current tape */
-int	etapes;		/* estimated number of tapes */
-int	nonodump;	/* if set, do not honor UF_NODUMP user flags */
-int	unlimited;	/* if set, write to end of medium */
+extern char	*disk;		/* name of the disk file */
+extern char	*disk_dev;	/* name of the raw device we are dumping */
+extern const char *tape;	/* name of the tape file */
+extern const char *dumpdates;	/* name of the file containing dump date information*/
+extern const char *temp;	/* name of the file for doing rewrite of dumpdates */
+extern char	lastlevel;	/* dump level of previous dump */
+extern char	level;		/* dump level of this dump */
+extern int	uflag;		/* update flag */
+extern const 

CVS commit: src/sys/rump/librump/rumpkern

2020-04-05 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Sun Apr  5 15:16:11 UTC 2020

Modified Files:
src/sys/rump/librump/rumpkern: rumpcopy.c

Log Message:
Return early on 0-sized transfers (usually to/from NULL-objects)

This logic is already present in subr_copy.c:copyin_vmspace() and
rumpcopy.c:copyinstr().

This avoids memcpy() calls for NULL objects that is Undefined Behavior,
allowed in the kernel space (-fno-delete-null-pointer-checks), but not
in userland.

Reported by UBSan.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/rump/librump/rumpkern/rumpcopy.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/rump/librump/rumpkern

2020-04-05 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Sun Apr  5 15:16:11 UTC 2020

Modified Files:
src/sys/rump/librump/rumpkern: rumpcopy.c

Log Message:
Return early on 0-sized transfers (usually to/from NULL-objects)

This logic is already present in subr_copy.c:copyin_vmspace() and
rumpcopy.c:copyinstr().

This avoids memcpy() calls for NULL objects that is Undefined Behavior,
allowed in the kernel space (-fno-delete-null-pointer-checks), but not
in userland.

Reported by UBSan.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/rump/librump/rumpkern/rumpcopy.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/rump/librump/rumpkern/rumpcopy.c
diff -u src/sys/rump/librump/rumpkern/rumpcopy.c:1.23 src/sys/rump/librump/rumpkern/rumpcopy.c:1.24
--- src/sys/rump/librump/rumpkern/rumpcopy.c:1.23	Sat Apr  6 03:06:28 2019
+++ src/sys/rump/librump/rumpkern/rumpcopy.c	Sun Apr  5 15:16:11 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: rumpcopy.c,v 1.23 2019/04/06 03:06:28 thorpej Exp $	*/
+/*	$NetBSD: rumpcopy.c,v 1.24 2020/04/05 15:16:11 kamil Exp $	*/
 
 /*
  * Copyright (c) 2009 Antti Kantee.  All Rights Reserved.
@@ -26,7 +26,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rumpcopy.c,v 1.23 2019/04/06 03:06:28 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rumpcopy.c,v 1.24 2020/04/05 15:16:11 kamil Exp $");
 
 #define	__UFETCHSTORE_PRIVATE
 #define	__UCAS_PRIVATE
@@ -45,6 +45,9 @@ copyin(const void *uaddr, void *kaddr, s
 {
 	int error = 0;
 
+	if (len == 0)
+		return 0;
+
 	if (__predict_false(uaddr == NULL && len)) {
 		return EFAULT;
 	}
@@ -64,6 +67,9 @@ copyout(const void *kaddr, void *uaddr, 
 {
 	int error = 0;
 
+	if (len == 0)
+		return 0;
+
 	if (__predict_false(uaddr == NULL && len)) {
 		return EFAULT;
 	}
@@ -137,6 +143,9 @@ copyoutstr(const void *kaddr, void *uadd
 	size_t slen;
 	int error;
 
+	if (len == 0)
+		return 0;
+
 	if (__predict_false(uaddr == NULL && len)) {
 		return EFAULT;
 	}
@@ -160,6 +169,9 @@ int
 kcopy(const void *src, void *dst, size_t len)
 {
 
+	if (len == 0)
+		return 0;
+
 	memcpy(dst, src, len);
 	return 0;
 }



CVS commit: src/lib/libterminfo

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 14:53:39 UTC 2020

Modified Files:
src/lib/libterminfo: term.c termcap.c

Log Message:
Conditionalize a few more functions (hopefully fixing the build)


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 src/lib/libterminfo/term.c
cvs rdiff -u -r1.23 -r1.24 src/lib/libterminfo/termcap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libterminfo

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 14:53:39 UTC 2020

Modified Files:
src/lib/libterminfo: term.c termcap.c

Log Message:
Conditionalize a few more functions (hopefully fixing the build)


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 src/lib/libterminfo/term.c
cvs rdiff -u -r1.23 -r1.24 src/lib/libterminfo/termcap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libterminfo/term.c
diff -u src/lib/libterminfo/term.c:1.33 src/lib/libterminfo/term.c:1.34
--- src/lib/libterminfo/term.c:1.33	Sun Apr  5 12:31:02 2020
+++ src/lib/libterminfo/term.c	Sun Apr  5 14:53:39 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: term.c,v 1.33 2020/04/05 12:31:02 roy Exp $ */
+/* $NetBSD: term.c,v 1.34 2020/04/05 14:53:39 martin Exp $ */
 
 /*
  * Copyright (c) 2009, 2010, 2011, 2020 The NetBSD Foundation, Inc.
@@ -28,7 +28,7 @@
  */
 
 #include 
-__RCSID("$NetBSD: term.c,v 1.33 2020/04/05 12:31:02 roy Exp $");
+__RCSID("$NetBSD: term.c,v 1.34 2020/04/05 14:53:39 martin Exp $");
 
 #include 
 
@@ -349,6 +349,11 @@ _ti_dbgettermp(TERMINAL *term, const cha
 static int
 _ti_findterm(TERMINAL *term, const char *name, int flags)
 {
+#ifndef TERMINFO_DB
+	_ti_database = NULL;
+
+	return 0;
+#else
 	int r;
 	char *c, *e;
 
@@ -359,10 +364,8 @@ _ti_findterm(TERMINAL *term, const char 
 	r = 0;
 
 	e = getenv("TERMINFO");
-#ifdef TERMINFO_DB
 	if (e != NULL && *e == '/')
 		return _ti_dbgetterm(term, e, name, flags);
-#endif
 
 	c = NULL;
 #ifdef TERMINFO_COMPILE
@@ -410,9 +413,7 @@ _ti_findterm(TERMINAL *term, const char 
 			return r;
 		}
 	}
-#endif
 
-#ifdef TERMINFO_DB
 	if ((e = getenv("TERMINFO_DIRS")) != NULL)
 		return _ti_dbgettermp(term, e, name, flags);
 
@@ -427,6 +428,7 @@ _ti_findterm(TERMINAL *term, const char 
 #endif
 
 	return r;
+#endif
 }
 
 int

Index: src/lib/libterminfo/termcap.c
diff -u src/lib/libterminfo/termcap.c:1.23 src/lib/libterminfo/termcap.c:1.24
--- src/lib/libterminfo/termcap.c:1.23	Fri Mar 27 17:39:53 2020
+++ src/lib/libterminfo/termcap.c	Sun Apr  5 14:53:39 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: termcap.c,v 1.23 2020/03/27 17:39:53 christos Exp $ */
+/* $NetBSD: termcap.c,v 1.24 2020/04/05 14:53:39 martin Exp $ */
 
 /*
  * Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -28,7 +28,7 @@
  */
 
 #include 
-__RCSID("$NetBSD: termcap.c,v 1.23 2020/03/27 17:39:53 christos Exp $");
+__RCSID("$NetBSD: termcap.c,v 1.24 2020/04/05 14:53:39 martin Exp $");
 
 #include 
 #include 
@@ -183,6 +183,7 @@ tgoto(const char *cm, int destcol, int d
 	return tiparm(cm, destline, destcol);
 }
 
+#ifdef TERMINFO_COMPILE
 static const char *
 flagname(const char *key)
 {
@@ -600,4 +601,4 @@ captoinfo(char *cap)
 	*ip = '\0';
 	return info;
 }
-
+#endif



CVS commit: src

2020-04-05 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr  5 14:36:43 UTC 2020

Modified Files:
src/distrib/macppc/floppies/ramdisk: Makefile
src/etc/etc.macppc: MAKEDEV.conf
src/sys/arch/macppc/conf: INSTALL

Log Message:
Support the use of DHCP in the install environment


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 src/distrib/macppc/floppies/ramdisk/Makefile
cvs rdiff -u -r1.12 -r1.13 src/etc/etc.macppc/MAKEDEV.conf
cvs rdiff -u -r1.130 -r1.131 src/sys/arch/macppc/conf/INSTALL

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/macppc/floppies/ramdisk/Makefile
diff -u src/distrib/macppc/floppies/ramdisk/Makefile:1.51 src/distrib/macppc/floppies/ramdisk/Makefile:1.52
--- src/distrib/macppc/floppies/ramdisk/Makefile:1.51	Sun Dec 29 18:26:17 2019
+++ src/distrib/macppc/floppies/ramdisk/Makefile	Sun Apr  5 14:36:43 2020
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.51 2019/12/29 18:26:17 christos Exp $
+#	$NetBSD: Makefile,v 1.52 2020/04/05 14:36:43 sevan Exp $
 
 .include 
 .include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
@@ -37,6 +37,7 @@ HACKSRC=	${DISTRIBDIR}/utils/libhack
 ${CRUNCHBIN}:	libhack.o
 
 .include "${DISTRIBDIR}/common/Makefile.crunch"
+.include "${DISTRIBDIR}/common/Makefile.dhcpcd"
 .include "${DISTRIBDIR}/common/Makefile.makedev"
 .include "${DISTRIBDIR}/common/Makefile.image"
 

Index: src/etc/etc.macppc/MAKEDEV.conf
diff -u src/etc/etc.macppc/MAKEDEV.conf:1.12 src/etc/etc.macppc/MAKEDEV.conf:1.13
--- src/etc/etc.macppc/MAKEDEV.conf:1.12	Sun Sep 23 09:20:59 2018
+++ src/etc/etc.macppc/MAKEDEV.conf	Sun Apr  5 14:36:43 2020
@@ -1,10 +1,11 @@
-# $NetBSD: MAKEDEV.conf,v 1.12 2018/09/23 09:20:59 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.13 2020/04/05 14:36:43 sevan Exp $
 
 all_md)
 	makedev wscons sd0 sd1 sd2 st0 st1 cd0 cd1 wd0 wd1 wd2 wd3
 	makedev ss0 ch0 uk0 uk1
 	makedev mlx0 ld0 ld1 ld2 ld3
 	makedev tty00 tty01 tty10
+	makedev bpf
 	makedev usbs ttyCZ0 ttyCY0 audio speaker
 	makedev music rmidi0 rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 rmidi6 rmidi7
 	makedev nvram apm adb grf0 openfirm
@@ -25,6 +26,7 @@ floppy)
 	makedev st0 st1 cd0 cd1 wd0 wd1 wd2 wd3 md0
 	makedev ttyE0 wsmouse0 wskbd0 ttyEcfg
 	makedev raid0 raid1 raid2 raid3 raid4 raid5 raid6 raid7
+	makedev bpf
 	;;
 
 tty1[0-9])

Index: src/sys/arch/macppc/conf/INSTALL
diff -u src/sys/arch/macppc/conf/INSTALL:1.130 src/sys/arch/macppc/conf/INSTALL:1.131
--- src/sys/arch/macppc/conf/INSTALL:1.130	Wed Jan  8 13:28:14 2020
+++ src/sys/arch/macppc/conf/INSTALL	Sun Apr  5 14:36:43 2020
@@ -1,4 +1,4 @@
-#	$NetBSD: INSTALL,v 1.130 2020/01/08 13:28:14 macallan Exp $
+#	$NetBSD: INSTALL,v 1.131 2020/04/05 14:36:43 sevan Exp $
 #
 # config file for INSTALL FLOPPY
 #
@@ -204,6 +204,7 @@ udav*	at uhub? port ?		# Davicom DM9601 
 pseudo-device	md			# memory disk
 #pseudo-device	fss			# file system snapshot device
 pseudo-device	loop			# network loopback
+pseudo-device	bpfilter		# packet filter
 pseudo-device	pty			# pseudo-terminals
 
 pseudo-device	wsmux			# mouse and keyboard multiplexor



CVS commit: src

2020-04-05 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Sun Apr  5 14:36:43 UTC 2020

Modified Files:
src/distrib/macppc/floppies/ramdisk: Makefile
src/etc/etc.macppc: MAKEDEV.conf
src/sys/arch/macppc/conf: INSTALL

Log Message:
Support the use of DHCP in the install environment


To generate a diff of this commit:
cvs rdiff -u -r1.51 -r1.52 src/distrib/macppc/floppies/ramdisk/Makefile
cvs rdiff -u -r1.12 -r1.13 src/etc/etc.macppc/MAKEDEV.conf
cvs rdiff -u -r1.130 -r1.131 src/sys/arch/macppc/conf/INSTALL

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/xen/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 14:20:18 UTC 2020

Modified Files:
src/sys/arch/xen/xen: if_xennet_xenbus.c

Log Message:
no need to pollute dmesg by xennet_watchdog(), turn the message into DPRINTFN()


To generate a diff of this commit:
cvs rdiff -u -r1.97 -r1.98 src/sys/arch/xen/xen/if_xennet_xenbus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/xen/xen/if_xennet_xenbus.c
diff -u src/sys/arch/xen/xen/if_xennet_xenbus.c:1.97 src/sys/arch/xen/xen/if_xennet_xenbus.c:1.98
--- src/sys/arch/xen/xen/if_xennet_xenbus.c:1.97	Fri Mar 27 18:37:30 2020
+++ src/sys/arch/xen/xen/if_xennet_xenbus.c	Sun Apr  5 14:20:18 2020
@@ -1,4 +1,4 @@
-/*  $NetBSD: if_xennet_xenbus.c,v 1.97 2020/03/27 18:37:30 jdolecek Exp $  */
+/*  $NetBSD: if_xennet_xenbus.c,v 1.98 2020/04/05 14:20:18 jdolecek Exp $  */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -81,7 +81,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.97 2020/03/27 18:37:30 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.98 2020/04/05 14:20:18 jdolecek Exp $");
 
 #include "opt_xen.h"
 #include "opt_nfs_boot.h"
@@ -1340,7 +1340,7 @@ xennet_ioctl(struct ifnet *ifp, u_long c
 void
 xennet_watchdog(struct ifnet *ifp)
 {
-	aprint_verbose_ifnet(ifp, "xennet_watchdog\n");
+	DPRINTFN(XEDB_FOLLOW, ("%s: xennet_watchdog\n", ifp->if_xname));
 }
 
 int



CVS commit: src/sys/arch/xen/xen

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 14:20:18 UTC 2020

Modified Files:
src/sys/arch/xen/xen: if_xennet_xenbus.c

Log Message:
no need to pollute dmesg by xennet_watchdog(), turn the message into DPRINTFN()


To generate a diff of this commit:
cvs rdiff -u -r1.97 -r1.98 src/sys/arch/xen/xen/if_xennet_xenbus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/etc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 14:09:18 UTC 2020

Modified Files:
src/etc/etc.acorn32: MAKEDEV.conf
src/etc/etc.alpha: MAKEDEV.conf
src/etc/etc.amd64: MAKEDEV.conf
src/etc/etc.amiga: MAKEDEV.conf
src/etc/etc.amigappc: MAKEDEV.conf
src/etc/etc.cobalt: MAKEDEV.conf
src/etc/etc.i386: MAKEDEV.conf
src/etc/etc.ia64: MAKEDEV.conf
src/etc/etc.landisk: MAKEDEV.conf
src/etc/etc.sparc: MAKEDEV.conf
src/etc/etc.sparc64: MAKEDEV.conf

Log Message:
remove nsmb from MD list of devices to create for 'all'


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/etc/etc.acorn32/MAKEDEV.conf
cvs rdiff -u -r1.13 -r1.14 src/etc/etc.alpha/MAKEDEV.conf
cvs rdiff -u -r1.28 -r1.29 src/etc/etc.amd64/MAKEDEV.conf
cvs rdiff -u -r1.13 -r1.14 src/etc/etc.amiga/MAKEDEV.conf
cvs rdiff -u -r1.4 -r1.5 src/etc/etc.amigappc/MAKEDEV.conf
cvs rdiff -u -r1.16 -r1.17 src/etc/etc.cobalt/MAKEDEV.conf
cvs rdiff -u -r1.30 -r1.31 src/etc/etc.i386/MAKEDEV.conf
cvs rdiff -u -r1.3 -r1.4 src/etc/etc.ia64/MAKEDEV.conf
cvs rdiff -u -r1.10 -r1.11 src/etc/etc.landisk/MAKEDEV.conf
cvs rdiff -u -r1.18 -r1.19 src/etc/etc.sparc/MAKEDEV.conf
cvs rdiff -u -r1.19 -r1.20 src/etc/etc.sparc64/MAKEDEV.conf

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/etc/etc.acorn32/MAKEDEV.conf
diff -u src/etc/etc.acorn32/MAKEDEV.conf:1.11 src/etc/etc.acorn32/MAKEDEV.conf:1.12
--- src/etc/etc.acorn32/MAKEDEV.conf:1.11	Sun Sep 23 09:20:57 2018
+++ src/etc/etc.acorn32/MAKEDEV.conf	Sun Apr  5 14:09:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.11 2018/09/23 09:20:57 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.12 2020/04/05 14:09:17 jdolecek Exp $
 
 all_md)
 	makedev wscons fd0 fd1 wd0 wd1 wd2 wd3 sd0 sd1 sd2 sd3
@@ -8,7 +8,6 @@ all_md)
 	makedev music rmidi0 rmidi1 rmidi2 rmidi3 rmidi4 rmidi5 rmidi6 rmidi7
 	makedev scsibus0 scsibus1 scsibus2 scsibus3
 	makedev ses0 ses1 ses2 ses3
-	makedev nsmb0 nsmb1 nsmb2 nsmb3
 	makedev cfs
 	;;
 

Index: src/etc/etc.alpha/MAKEDEV.conf
diff -u src/etc/etc.alpha/MAKEDEV.conf:1.13 src/etc/etc.alpha/MAKEDEV.conf:1.14
--- src/etc/etc.alpha/MAKEDEV.conf:1.13	Sun Jan 27 08:53:28 2019
+++ src/etc/etc.alpha/MAKEDEV.conf	Sun Apr  5 14:09:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.13 2019/01/27 08:53:28 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.14 2020/04/05 14:09:17 jdolecek Exp $
 
 all_md)
 	makedev wscons stic0 sd0 sd1 sd2 sd3 sd4
@@ -20,7 +20,6 @@ all_md)
 	makedev bktr
 	makedev radio
 	makedev kttcp
-	makedev nsmb
 	;;
 
 minimal)

Index: src/etc/etc.amd64/MAKEDEV.conf
diff -u src/etc/etc.amd64/MAKEDEV.conf:1.28 src/etc/etc.amd64/MAKEDEV.conf:1.29
--- src/etc/etc.amd64/MAKEDEV.conf:1.28	Sun Jul 21 11:14:18 2019
+++ src/etc/etc.amd64/MAKEDEV.conf	Sun Apr  5 14:09:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.28 2019/07/21 11:14:18 maya Exp $
+# $NetBSD: MAKEDEV.conf,v 1.29 2020/04/05 14:09:17 jdolecek Exp $
 
 # As of 2003-04-17, the "init" case must not create more than 890 entries.
 all_md)
@@ -43,7 +43,6 @@ all_md)
 	makedev altq
 	makedev cir0 cir1 irframe0 irframe1
 	makedev kttcp
-	makedev nsmb
 	makedev bio
 	;;
 

Index: src/etc/etc.amiga/MAKEDEV.conf
diff -u src/etc/etc.amiga/MAKEDEV.conf:1.13 src/etc/etc.amiga/MAKEDEV.conf:1.14
--- src/etc/etc.amiga/MAKEDEV.conf:1.13	Sun Sep 23 09:20:58 2018
+++ src/etc/etc.amiga/MAKEDEV.conf	Sun Apr  5 14:09:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.13 2018/09/23 09:20:58 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.14 2020/04/05 14:09:17 jdolecek Exp $
 
 all_md)
 	makedev wscons std_amiga fd0 fd1 fd2 fd3 kbd mouse0 mouse1 par0
@@ -15,7 +15,6 @@ all_md)
 	makedev vnd4 vnd5 vnd6
 	makedev audio speaker
 	makedev scsibus0 scsibus1 scsibus2 scsibus3
-	makedev nsmb
 	;;
 
 floppy)

Index: src/etc/etc.amigappc/MAKEDEV.conf
diff -u src/etc/etc.amigappc/MAKEDEV.conf:1.4 src/etc/etc.amigappc/MAKEDEV.conf:1.5
--- src/etc/etc.amigappc/MAKEDEV.conf:1.4	Sun Sep 23 09:20:58 2018
+++ src/etc/etc.amigappc/MAKEDEV.conf	Sun Apr  5 14:09:18 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.4 2018/09/23 09:20:58 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.5 2020/04/05 14:09:18 jdolecek Exp $
 
 all_md)
 	makedev wscons std_amiga fd0 fd1 fd2 fd3 kbd mouse0 mouse1 par0
@@ -14,7 +14,6 @@ all_md)
 	makedev vnd4 vnd5 vnd6
 	makedev audio speaker
 	makedev scsibus0 scsibus1 scsibus2 scsibus3
-	makedev nsmb
 	;;
 
 floppy)

Index: src/etc/etc.cobalt/MAKEDEV.conf
diff -u src/etc/etc.cobalt/MAKEDEV.conf:1.16 src/etc/etc.cobalt/MAKEDEV.conf:1.17
--- src/etc/etc.cobalt/MAKEDEV.conf:1.16	Sun Sep 23 09:20:58 2018
+++ src/etc/etc.cobalt/MAKEDEV.conf	Sun Apr  5 14:09:17 2020
@@ -1,4 +1,4 @@
-# $NetBSD: MAKEDEV.conf,v 1.16 2018/09/23 09:20:58 maxv Exp $
+# $NetBSD: MAKEDEV.conf,v 1.17 2020/04/05 14:09:17 jdolecek Exp $
 
 all_md)
 	makedev wd0 wd1 sd0 sd1 sd2 sd3
@@ -14,7 +14,6 @@ all_md)

CVS commit: src/etc

2020-04-05 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sun Apr  5 14:09:18 UTC 2020

Modified Files:
src/etc/etc.acorn32: MAKEDEV.conf
src/etc/etc.alpha: MAKEDEV.conf
src/etc/etc.amd64: MAKEDEV.conf
src/etc/etc.amiga: MAKEDEV.conf
src/etc/etc.amigappc: MAKEDEV.conf
src/etc/etc.cobalt: MAKEDEV.conf
src/etc/etc.i386: MAKEDEV.conf
src/etc/etc.ia64: MAKEDEV.conf
src/etc/etc.landisk: MAKEDEV.conf
src/etc/etc.sparc: MAKEDEV.conf
src/etc/etc.sparc64: MAKEDEV.conf

Log Message:
remove nsmb from MD list of devices to create for 'all'


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/etc/etc.acorn32/MAKEDEV.conf
cvs rdiff -u -r1.13 -r1.14 src/etc/etc.alpha/MAKEDEV.conf
cvs rdiff -u -r1.28 -r1.29 src/etc/etc.amd64/MAKEDEV.conf
cvs rdiff -u -r1.13 -r1.14 src/etc/etc.amiga/MAKEDEV.conf
cvs rdiff -u -r1.4 -r1.5 src/etc/etc.amigappc/MAKEDEV.conf
cvs rdiff -u -r1.16 -r1.17 src/etc/etc.cobalt/MAKEDEV.conf
cvs rdiff -u -r1.30 -r1.31 src/etc/etc.i386/MAKEDEV.conf
cvs rdiff -u -r1.3 -r1.4 src/etc/etc.ia64/MAKEDEV.conf
cvs rdiff -u -r1.10 -r1.11 src/etc/etc.landisk/MAKEDEV.conf
cvs rdiff -u -r1.18 -r1.19 src/etc/etc.sparc/MAKEDEV.conf
cvs rdiff -u -r1.19 -r1.20 src/etc/etc.sparc64/MAKEDEV.conf

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/gpl3/binutils/dist/binutils/doc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 13:25:01 UTC 2020

Removed Files:
src/external/gpl3/binutils/dist/binutils/doc: c++filt.1

Log Message:
We generate this.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r0 src/external/gpl3/binutils/dist/binutils/doc/c++filt.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/external/gpl3/binutils/dist/binutils/doc

2020-04-05 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Apr  5 13:25:01 UTC 2020

Removed Files:
src/external/gpl3/binutils/dist/binutils/doc: c++filt.1

Log Message:
We generate this.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r0 src/external/gpl3/binutils/dist/binutils/doc/c++filt.1

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/tools/tic

2020-04-05 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Sun Apr  5 12:31:39 UTC 2020

Modified Files:
src/tools/tic: Makefile

Log Message:
tools: Build tic with full fat terminfo


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tools/tic/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tools/tic/Makefile
diff -u src/tools/tic/Makefile:1.5 src/tools/tic/Makefile:1.6
--- src/tools/tic/Makefile:1.5	Wed Nov  2 17:49:20 2011
+++ src/tools/tic/Makefile	Sun Apr  5 12:31:39 2020
@@ -1,7 +1,10 @@
-#	$NetBSD: Makefile,v 1.5 2011/11/02 17:49:20 christos Exp $
+#	$NetBSD: Makefile,v 1.6 2020/04/05 12:31:39 roy Exp $
 
 HOSTPROGNAME=	${_TOOL_PREFIX}tic
 HOST_SRCDIR=	usr.bin/tic
+
+# We need our libterminfo to compile compat and write to the database
+CPPFLAGS+=	-DTERMINFO_COMPILE -DTERMINFO_COMPAT -DTERMINFO_DB
 HOST_SRCS=	compile.c hash.c
 
 TERMINFODIR=	${NETBSDSRCDIR}/lib/libterminfo



CVS commit: src/tools/tic

2020-04-05 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Sun Apr  5 12:31:39 UTC 2020

Modified Files:
src/tools/tic: Makefile

Log Message:
tools: Build tic with full fat terminfo


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tools/tic/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/lib/libterminfo

2020-04-05 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Sun Apr  5 12:31:02 UTC 2020

Modified Files:
src/lib/libterminfo: Makefile compile.c term.c

Log Message:
terminfo: Add guards to optionally build parts of libterminfo

Reading from a database is now optional.
Compiling terminfo descriptions (including from $TERMINFO) is now optional.
Compat support is now optional.

This removes 17k on amd64 from the binary size, which allows it to be used
again on space constrained ramdisks.


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/lib/libterminfo/Makefile
cvs rdiff -u -r1.24 -r1.25 src/lib/libterminfo/compile.c
cvs rdiff -u -r1.32 -r1.33 src/lib/libterminfo/term.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libterminfo/Makefile
diff -u src/lib/libterminfo/Makefile:1.22 src/lib/libterminfo/Makefile:1.23
--- src/lib/libterminfo/Makefile:1.22	Wed Mar 21 05:37:44 2012
+++ src/lib/libterminfo/Makefile	Sun Apr  5 12:31:02 2020
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.22 2012/03/21 05:37:44 matt Exp $
+#	$NetBSD: Makefile,v 1.23 2020/04/05 12:31:02 roy Exp $
 
 .include 
 
@@ -10,10 +10,20 @@ WARNS?=		5
 CPPFLAGS+=	-I${.CURDIR}
 
 SRCS=		term.c ti.c setupterm.c curterm.c tparm.c tputs.c
-SRCS+=		compile.c hash.c
+SRCS+=		hash.c
 INCS=		term.h
 INCSDIR=	/usr/include
 
+# For ramdisks there is no database to read from so remove compat
+# and the need to read from them.
+# While here, remove the ability to compile terminfo descriptions
+# from $TERMINFO as well.
+# This means the library requires any terminal needed built into it.
+.if !defined(SMALLPROG)
+CPPFLAGS+=	-DTERMINFO_COMPILE -DTERMINFO_DB -DTERMINFO_COMPAT
+SRCS+=		compile.c
+.endif
+
 COPTS.tparm.c = -Wno-format-nonliteral
 
 MAN=		terminfo.3 terminfo.5

Index: src/lib/libterminfo/compile.c
diff -u src/lib/libterminfo/compile.c:1.24 src/lib/libterminfo/compile.c:1.25
--- src/lib/libterminfo/compile.c:1.24	Mon Mar 30 02:08:11 2020
+++ src/lib/libterminfo/compile.c	Sun Apr  5 12:31:02 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: compile.c,v 1.24 2020/03/30 02:08:11 roy Exp $ */
+/* $NetBSD: compile.c,v 1.25 2020/04/05 12:31:02 roy Exp $ */
 
 /*
  * Copyright (c) 2009, 2010, 2011, 2020 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #endif
 
 #include 
-__RCSID("$NetBSD: compile.c,v 1.24 2020/03/30 02:08:11 roy Exp $");
+__RCSID("$NetBSD: compile.c,v 1.25 2020/04/05 12:31:02 roy Exp $");
 
 #if !HAVE_NBTOOL_CONFIG_H || HAVE_SYS_ENDIAN_H
 #include 
@@ -64,6 +64,7 @@ dowarn(int flags, const char *fmt, ...)
 	}
 }
 
+#ifdef TERMINFO_COMPAT
 int
 _ti_promote(TIC *tic)
 {
@@ -165,6 +166,7 @@ _ti_promote(TIC *tic)
 
 	return error;
 }
+#endif
 
 char *
 _ti_grow_tbuf(TBUF *tbuf, size_t len)
@@ -257,6 +259,7 @@ _ti_find_extra(TIC *tic, TBUF *tbuf, con
 char *
 _ti_getname(int rtype, const char *orig)
 {
+#ifdef TERMINFO_COMPAT
 	const char *delim;
 	char *name;
 	const char *verstr;
@@ -286,6 +289,9 @@ _ti_getname(int rtype, const char *orig)
 	memcpy(name, orig, diff);
 	memcpy(name + diff, verstr, vlen + 1);
 	return name;
+#else
+	return strdup(orig);
+#endif
 }
 
 size_t
@@ -626,7 +632,11 @@ _ti_compile(char *cap, int flags)
 	if (tic == NULL)
 		return NULL;
 
+#ifdef TERMINFO_COMPAT
 	tic->rtype = TERMINFO_RTYPE_O1; /* will promote if needed */
+#else
+	tic->rtype = TERMINFO_RTYPE;
+#endif
 	buf.buf = NULL;
 	buf.buflen = 0;
 

Index: src/lib/libterminfo/term.c
diff -u src/lib/libterminfo/term.c:1.32 src/lib/libterminfo/term.c:1.33
--- src/lib/libterminfo/term.c:1.32	Fri Mar 27 17:39:53 2020
+++ src/lib/libterminfo/term.c	Sun Apr  5 12:31:02 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: term.c,v 1.32 2020/03/27 17:39:53 christos Exp $ */
+/* $NetBSD: term.c,v 1.33 2020/04/05 12:31:02 roy Exp $ */
 
 /*
  * Copyright (c) 2009, 2010, 2011, 2020 The NetBSD Foundation, Inc.
@@ -28,7 +28,7 @@
  */
 
 #include 
-__RCSID("$NetBSD: term.c,v 1.32 2020/03/27 17:39:53 christos Exp $");
+__RCSID("$NetBSD: term.c,v 1.33 2020/04/05 12:31:02 roy Exp $");
 
 #include 
 
@@ -50,7 +50,9 @@ __RCSID("$NetBSD: term.c,v 1.32 2020/03/
  */
 #define _PATH_TERMINFO	"/usr/share/misc/terminfo"
 
+#ifdef TERMINFO_DB
 static char __ti_database[PATH_MAX];
+#endif
 const char *_ti_database;
 
 /* Include a generated list of pre-compiled terminfo descriptions. */
@@ -227,6 +229,7 @@ out:
 	return -1;
 }
 
+#if defined(TERMINFO_DB) || defined(TERMINFO_COMPILE)
 static int
 _ti_checkname(const char *name, const char *termname, const char *termalias)
 {
@@ -259,7 +262,9 @@ _ti_checkname(const char *name, const ch
 	/* No match. */
 	return 0;
 }
+#endif
 
+#ifdef TERMINFO_DB
 static int
 _ti_dbgetterm(TERMINAL *term, const char *path, const char *name, int flags)
 {
@@ -339,6 +344,7 @@ _ti_dbgettermp(TERMINAL *term, const cha
 	} while (*path++ == ':');
 	return e;
 }
+#endif
 
 static int
 _ti_findterm(TERMINAL *term, const char *name, int flags)
@@ -352,12 +358,14 @@ 

CVS commit: src/lib/libterminfo

2020-04-05 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Sun Apr  5 12:31:02 UTC 2020

Modified Files:
src/lib/libterminfo: Makefile compile.c term.c

Log Message:
terminfo: Add guards to optionally build parts of libterminfo

Reading from a database is now optional.
Compiling terminfo descriptions (including from $TERMINFO) is now optional.
Compat support is now optional.

This removes 17k on amd64 from the binary size, which allows it to be used
again on space constrained ramdisks.


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/lib/libterminfo/Makefile
cvs rdiff -u -r1.24 -r1.25 src/lib/libterminfo/compile.c
cvs rdiff -u -r1.32 -r1.33 src/lib/libterminfo/term.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/distrib

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 11:19:01 UTC 2020

Modified Files:
src/distrib/atari/floppies/common: list.images
src/distrib/ews4800mips/floppies/ramdisk: list
src/distrib/sun3/miniroot: list

Log Message:
Adapt to libterminfo as part of libhack-curses


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/distrib/atari/floppies/common/list.images
cvs rdiff -u -r1.11 -r1.12 src/distrib/ews4800mips/floppies/ramdisk/list
cvs rdiff -u -r1.30 -r1.31 src/distrib/sun3/miniroot/list

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/distrib

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 11:19:01 UTC 2020

Modified Files:
src/distrib/atari/floppies/common: list.images
src/distrib/ews4800mips/floppies/ramdisk: list
src/distrib/sun3/miniroot: list

Log Message:
Adapt to libterminfo as part of libhack-curses


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/distrib/atari/floppies/common/list.images
cvs rdiff -u -r1.11 -r1.12 src/distrib/ews4800mips/floppies/ramdisk/list
cvs rdiff -u -r1.30 -r1.31 src/distrib/sun3/miniroot/list

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/atari/floppies/common/list.images
diff -u src/distrib/atari/floppies/common/list.images:1.13 src/distrib/atari/floppies/common/list.images:1.14
--- src/distrib/atari/floppies/common/list.images:1.13	Sun Jul 28 10:28:49 2019
+++ src/distrib/atari/floppies/common/list.images	Sun Apr  5 11:19:01 2020
@@ -1,7 +1,7 @@
-#	$NetBSD: list.images,v 1.13 2019/07/28 10:28:49 martin Exp $
+#	$NetBSD: list.images,v 1.14 2020/04/05 11:19:01 martin Exp $
 
 SRCDIRS	bin sbin usr.bin usr.sbin sys/arch/atari/stand
-LIBS	libhack.o -lprop -lrmt -lz -lutil -lterminfo -ll -lm
+LIBS	libhack.o -lprop -lrmt -lz -lutil -ll -lm
 
 # init invokes the shell as -sh
 ARGVLN	sh -sh

Index: src/distrib/ews4800mips/floppies/ramdisk/list
diff -u src/distrib/ews4800mips/floppies/ramdisk/list:1.11 src/distrib/ews4800mips/floppies/ramdisk/list:1.12
--- src/distrib/ews4800mips/floppies/ramdisk/list:1.11	Mon Dec 25 06:15:50 2017
+++ src/distrib/ews4800mips/floppies/ramdisk/list	Sun Apr  5 11:19:01 2020
@@ -1,4 +1,4 @@
-#	$NetBSD: list,v 1.11 2017/12/25 06:15:50 rin Exp $
+#	$NetBSD: list,v 1.12 2020/04/05 11:19:01 martin Exp $
 
 SRCDIRS	bin sbin usr.bin usr.sbin
 
@@ -67,7 +67,7 @@ SPECIAL	ping		srcdir	distrib/utils/x_pin
 SPECIAL	route		srcdir	distrib/utils/x_route
 SPECIAL	umount		srcdir	distrib/utils/x_umount
 
-LIBS	libhack.o -ledit -lutil -lcurses -lterminfo -lrmt -ll -lm -lz -lprop
+LIBS	libhack.o -ledit -lutil-lrmt -ll -lm -lz -lprop
 
 COPY	${DESTDIR}/usr/mdec/bootxx_ustarfs	usr/mdec/bootxx_ustarfs
 COPY	${DESTDIR}/usr/mdec/bootxx_bfs		usr/mdec/bootxx_bfs

Index: src/distrib/sun3/miniroot/list
diff -u src/distrib/sun3/miniroot/list:1.30 src/distrib/sun3/miniroot/list:1.31
--- src/distrib/sun3/miniroot/list:1.30	Sun Jul 28 10:29:49 2019
+++ src/distrib/sun3/miniroot/list	Sun Apr  5 11:19:01 2020
@@ -1,5 +1,5 @@
 #
-# $NetBSD: list,v 1.30 2019/07/28 10:29:49 martin Exp $
+# $NetBSD: list,v 1.31 2020/04/05 11:19:01 martin Exp $
 #
 
 COPY	${KERNEL3}			netbsd.sun3
@@ -150,4 +150,4 @@ SPECIAL	edlabel		srcdir	distrib/utils/ed
 ARGVLN	sh -sh
 
 LIBS	libhack.o
-LIBS	-lrmt -ledit -lutil -lterminfo -lcrypt -ll -lm -lkvm -lz -lprop
+LIBS	-lrmt -ledit -lutil -lcrypt -ll -lm -lkvm -lz -lprop



CVS commit: src/distrib/utils/libhack

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 11:18:02 UTC 2020

Modified Files:
src/distrib/utils/libhack: Makefile.inc

Log Message:
Extend the curses hack to terminfo - build selected parts of
libterminfo as part of libhack, so we can drop unwanted features
for small install media.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/distrib/utils/libhack/Makefile.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/distrib/utils/libhack

2020-04-05 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Sun Apr  5 11:18:02 UTC 2020

Modified Files:
src/distrib/utils/libhack: Makefile.inc

Log Message:
Extend the curses hack to terminfo - build selected parts of
libterminfo as part of libhack, so we can drop unwanted features
for small install media.


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/distrib/utils/libhack/Makefile.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/utils/libhack/Makefile.inc
diff -u src/distrib/utils/libhack/Makefile.inc:1.34 src/distrib/utils/libhack/Makefile.inc:1.35
--- src/distrib/utils/libhack/Makefile.inc:1.34	Mon Mar  2 16:01:52 2020
+++ src/distrib/utils/libhack/Makefile.inc	Sun Apr  5 11:18:02 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.34 2020/03/02 16:01:52 roy Exp $
+# $NetBSD: Makefile.inc,v 1.35 2020/04/05 11:18:02 martin Exp $
 #
 # Include this fragment to build libhack.o
 # It is .o and not .a to make sure these are the
@@ -41,6 +41,23 @@ CPPFLAGS.${s}+=	-DDISABLE_WCHAR -DSMALL 
 HACKOBJS+=	${s:S/.c/.o/}
 ${s:S/.c/.o/}:	${HACKSRC}/../../../lib/libcurses/${s}
 .endfor
+
+TERMINFO_SRC!=	cd ${HACKSRC}/../../../lib/libterminfo && \
+		${MAKE} SMALLPROG=1 -v SRCS
+TERMINFO_PATH!=	cd ${HACKSRC}/../../../lib/libterminfo && \
+		${MAKE} -v .OBJDIR
+
+.for s in ${TERMINFO_SRC}
+CPPFLAGS.${s}+=	-DDISABLE_WCHAR -DSMALL \
+		-I${HACKSRC}/../../../lib/libterminfo \
+		-I${TERMINFO_PATH}
+HACKOBJS+=	${s:S/.c/.o/}
+.if ${s:Mhash*} != ""
+${s:S/.c/.o/}:	${TERMINFO_PATH}/${s}
+.else
+${s:S/.c/.o/}:	${HACKSRC}/../../../lib/libterminfo/${s}
+.endif
+.endfor
 .endif
 
 CPPFLAGS.runetable.c+= -I${HACKSRC}/../../../lib/libc/citrus \



CVS commit: src/sys/dev/pci

2020-04-05 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Sun Apr  5 10:43:09 UTC 2020

Modified Files:
src/sys/dev/pci: pucdata.c

Log Message:
add entry for NetMos NM9900 Octa UART

notice: On the boards I've obtained, the number on the cable stamp
doesn't match the actual unit number of the attached device.
Cable's 0,1,2,..,7 corresponds to comN+0,2,4,6,1,3,5,7 :-(


To generate a diff of this commit:
cvs rdiff -u -r1.106 -r1.107 src/sys/dev/pci/pucdata.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/pucdata.c
diff -u src/sys/dev/pci/pucdata.c:1.106 src/sys/dev/pci/pucdata.c:1.107
--- src/sys/dev/pci/pucdata.c:1.106	Tue Mar 24 18:09:07 2020
+++ src/sys/dev/pci/pucdata.c	Sun Apr  5 10:43:09 2020
@@ -1,4 +1,4 @@
-/*	$NetBSD: pucdata.c,v 1.106 2020/03/24 18:09:07 ryo Exp $	*/
+/*	$NetBSD: pucdata.c,v 1.107 2020/04/05 10:43:09 ryo Exp $	*/
 
 /*
  * Copyright (c) 1998, 1999 Christopher G. Demetriou.  All rights reserved.
@@ -36,7 +36,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: pucdata.c,v 1.106 2020/03/24 18:09:07 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pucdata.c,v 1.107 2020/04/05 10:43:09 ryo Exp $");
 
 #include 
 #include 
@@ -992,6 +992,16 @@ const struct puc_device_description puc_
 	},
 	},
 
+	/* NetMos PCIe NM9900 : 8S */
+	{   "NetMos NM9900 UART 8S",
+	{	PCI_VENDOR_NETMOS, PCI_PRODUCT_NETMOS_NM9900, 0xa000, 0x3002 },
+	{	0x,	0x,  0x, 0x },
+	{
+		{ PUC_PORT_TYPE_COM, PCI_BAR0, 0x00, COM_FREQ },
+		{ PUC_PORT_TYPE_COM, PCI_BAR3, 0x00, COM_FREQ },
+	},
+	},
+
 	/* NetMos PCIe Peripheral Controller :UART part */
 	{   "NetMos NM9901 UART",
 	{   PCI_VENDOR_NETMOS, PCI_PRODUCT_NETMOS_NM9901, 0xa000, 0x1000 },



CVS commit: src/sys/dev/pci

2020-04-05 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Sun Apr  5 10:43:09 UTC 2020

Modified Files:
src/sys/dev/pci: pucdata.c

Log Message:
add entry for NetMos NM9900 Octa UART

notice: On the boards I've obtained, the number on the cable stamp
doesn't match the actual unit number of the attached device.
Cable's 0,1,2,..,7 corresponds to comN+0,2,4,6,1,3,5,7 :-(


To generate a diff of this commit:
cvs rdiff -u -r1.106 -r1.107 src/sys/dev/pci/pucdata.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/lib/libc/string

2020-04-05 Thread Robert Elz
Date:Sat, 4 Apr 2020 21:16:45 +
From:David Holland 
Message-ID:  <20200404211645.ga19...@netbsd.org>

  | I fail to see any scenario in which it's legitimate for an application
  | to scribble in internal data belonging to libc. Why should this be
  | permitted?

You've never done something like

p = getenv("PATH"); /* NULL check omitted here */
while (q = strchr(p, ':')) {
*q = '\0';
/* use p to do a lookup, printf, or whatever */
*q = ':';
p = q + 1;
}
/* use p here too */

??

If you have, what's the difference, genenv() is also returning data
from libc, it could also be const char *, but isn't.

In neither case is this what would normally be called "internal data"
though, it isn't as if we're directly modifying the data structs malloc()
uses (that would be internal data) - these are the results returned from
libc to the application.

  | I don't understand. It is a bug that the library returns a writeable
  | pointer to data that should not be modified.

But we aren't returning a pointer to data that can't be modified,
libc doesn't care, one way or the other.   Apps shouldn't modify it
(shouldn't attempt to) because of portability concerns with other
implementations.If we did as Joerg suggested and mmapped
the message catalog pages for the relevant locale, and simply returned
a pointer to the relevant entry, one of those could be us.But isn't.

  | Anyway, this is moot because strerror is defined by C;

That was my point.   The entry in the BUGS section of the man page was
merely a rant, as this isn't (wasn't ever) something that can be fixed.

  | but because it *should* be const,
  | it should be (and is) declared with __aconst in string.h.
  |
  | Please don't change that.

Not planning anything like that - this was all about the man page.

  | Also, perhaps we should swipe the text about not modifyingthe string
  | buffer from strsignal.3.

I believe that what is in strerror(3) now is more or less aligned
with the intent (if not the actual language) of that.

Note that strsignal(3) doesn't contain a BUGS section ranting about
how it should really be const char *strsignal().

kre