CVS commit: src/sys/sys

2019-04-29 Thread Valeriy E. Ushakov
Module Name:src
Committed By:   uwe
Date:   Mon Apr 29 23:12:12 UTC 2019

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

Log Message:
Format MAP_FMT so that it's more humanly readable.
Same object code is generated for kdump.


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/sys/sys/mman.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/mman.h
diff -u src/sys/sys/mman.h:1.59 src/sys/sys/mman.h:1.60
--- src/sys/sys/mman.h:1.59	Mon Apr 29 07:55:38 2019
+++ src/sys/sys/mman.h	Mon Apr 29 23:12:12 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: mman.h,v 1.59 2019/04/29 07:55:38 kre Exp $	*/
+/*	$NetBSD: mman.h,v 1.60 2019/04/29 23:12:12 uwe Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1986, 1993
@@ -117,49 +117,48 @@ typedef	__off_t		off_t;		/* file offset 
 #define	MAP_ALIGNMENT_64PB	MAP_ALIGNED(56)	/* 2^56 */
 
 #ifdef _NETBSD_SOURCE
-#define MAP_FMT	"\177\020\
-b\0SHARED\0\
-b\1PRIVATE\0\
-b\2COPY\0\
-b\4FIXED\0\
-b\5RENAME\0\
-b\6NORESERVE\0\
-b\7INHERIT\0\
-b\11HASSEMAPHORE\0\
-b\12TRYFIXED\0\
-b\13WIRED\0\
-F\14\1\0\
-:\0FILE\0\
-:\1ANONYMOUS\0\
-b\15STACK\0\
-F\30\010\0\
-:\000ALIGN=NONE\0\
-:\012ALIGN=1KB\0\
-:\013ALIGN=2KB\0\
-:\014ALIGN=4KB\0\
-:\015ALIGN=8KB\0\
-:\016ALIGN=16KB\0\
-:\017ALIGN=32KB\0\
-:\020ALIGN=64KB\0\
-:\021ALIGN=128KB\0\
-:\022ALIGN=256KB\0\
-:\023ALIGN=512KB\0\
-:\024ALIGN=1MB\0\
-:\025ALIGN=2MB\0\
-:\026ALIGN=4MB\0\
-:\027ALIGN=8MB\0\
-:\030ALIGN=16MB\0\
-:\034ALIGN=256MB\0\
-:\040ALIGN=4GB\0\
-:\044ALIGN=64GB\0\
-:\050ALIGN=1TB\0\
-:\054ALIGN=16TB\0\
-:\060ALIGN=256TB\0\
-:\064ALIGN=4PB\0\
-:\070ALIGN=64PB\0\
-:\074ALIGN=256PB\0\
-*ALIGN=2^%d\0\
-"
+#define MAP_FMT	"\177\020"			\
+	"b\0"  "SHARED\0"			\
+	"b\1"  "PRIVATE\0"			\
+	"b\2"  "COPY\0"\
+	"b\4"  "FIXED\0"			\
+	"b\5"  "RENAME\0"			\
+	"b\6"  "NORESERVE\0"			\
+	"b\7"  "INHERIT\0"			\
+	"b\11" "HASSEMAPHORE\0"			\
+	"b\12" "TRYFIXED\0"			\
+	"b\13" "WIRED\0"			\
+	"F\14\1\0"\
+		":\0" "FILE\0"			\
+		":\1" "ANONYMOUS\0"		\
+	"b\15STACK\0"\
+	"F\30\010\0"\
+		":\000" "ALIGN=NONE\0"		\
+		":\012" "ALIGN=1KB\0"		\
+		":\013" "ALIGN=2KB\0"		\
+		":\014" "ALIGN=4KB\0"		\
+		":\015" "ALIGN=8KB\0"		\
+		":\016" "ALIGN=16KB\0"		\
+		":\017" "ALIGN=32KB\0"		\
+		":\020" "ALIGN=64KB\0"		\
+		":\021" "ALIGN=128KB\0"		\
+		":\022" "ALIGN=256KB\0"		\
+		":\023" "ALIGN=512KB\0"		\
+		":\024" "ALIGN=1MB\0"		\
+		":\025" "ALIGN=2MB\0"		\
+		":\026" "ALIGN=4MB\0"		\
+		":\027" "ALIGN=8MB\0"		\
+		":\030" "ALIGN=16MB\0"		\
+		":\034" "ALIGN=256MB\0"		\
+		":\040" "ALIGN=4GB\0"		\
+		":\044" "ALIGN=64GB\0"		\
+		":\050" "ALIGN=1TB\0"		\
+		":\054" "ALIGN=16TB\0"		\
+		":\060" "ALIGN=256TB\0"		\
+		":\064" "ALIGN=4PB\0"		\
+		":\070" "ALIGN=64PB\0"		\
+		":\074" "ALIGN=256PB\0"		\
+		"*"	"ALIGN=2^%d\0"
 #endif
 
 /*



CVS commit: src/lib/libpthread

2019-04-29 Thread Kamil Rytarowski
Module Name:src
Committed By:   kamil
Date:   Mon Apr 29 20:11:44 UTC 2019

Modified Files:
src/lib/libpthread: thrd.c

Log Message:
Avoid incompatible function pointer casts in thrd_create(3)

Use an intermediate function trampoline to workaround different function
pointer prototypes.

While there, correct scenario returning thrd_nomem from thrd_create(3).
In practice ENOMEM is rarely returned from pthread(3).

Older code worked on tested ports, but was depending on unneeded UB.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/lib/libpthread/thrd.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/libpthread/thrd.c
diff -u src/lib/libpthread/thrd.c:1.2 src/lib/libpthread/thrd.c:1.3
--- src/lib/libpthread/thrd.c:1.2	Wed Apr 24 18:47:54 2019
+++ src/lib/libpthread/thrd.c	Mon Apr 29 20:11:43 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: thrd.c,v 1.2 2019/04/24 18:47:54 kamil Exp $	*/
+/*	$NetBSD: thrd.c,v 1.3 2019/04/29 20:11:43 kamil Exp $	*/
 
 /*-
  * Copyright (c) 2016 The NetBSD Foundation, Inc.
@@ -30,30 +30,67 @@
  */
 
 #include 
-__RCSID("$NetBSD: thrd.c,v 1.2 2019/04/24 18:47:54 kamil Exp $");
+__RCSID("$NetBSD: thrd.c,v 1.3 2019/04/29 20:11:43 kamil Exp $");
 
 #include 
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
+struct __thrd_tramp_data {
+	thrd_start_t func;
+	void *arg;
+};
+
+static void *
+__thrd_create_tramp(void *arg)
+{
+	struct __thrd_tramp_data *cookie;
+	int ret;
+
+	_DIAGASSERT(arg != NULL);
+
+	cookie = (struct __thrd_tramp_data *)arg;
+
+	ret = (cookie->func)(cookie->arg);
+
+	free(cookie);
+
+	return (void *)(intptr_t)ret;
+}
+
 int
 thrd_create(thrd_t *thr, thrd_start_t func, void *arg)
 {
+	struct __thrd_tramp_data *cookie;
+	int error;
 
 	_DIAGASSERT(thr != NULL);
 	_DIAGASSERT(func != NULL);
 
-	switch(pthread_create(thr, NULL, (void *(*)(void *))func, arg)) {
+	cookie = malloc(sizeof(*cookie));
+	if (cookie == NULL)
+		return thrd_nomem;
+
+	cookie->func = func;
+	cookie->arg = arg;
+
+	switch(pthread_create(thr, NULL, __thrd_create_tramp, cookie)) {
 	case 0:
 		return thrd_success;
-	case EAGAIN:
-		return thrd_nomem;
+	case ENOMEM:
+		error = thrd_nomem;
+		break;
 	default:
-		return thrd_error;
+		error = thrd_error;
 	}
+
+	free(cookie);
+
+	return error;
 }
 
 thrd_t



CVS commit: src/sys/net

2019-04-29 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Apr 29 19:08:11 UTC 2019

Modified Files:
src/sys/net: dl_print.c

Log Message:
match definition of hexdigits[] to the declaration in 


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/net/dl_print.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/net/dl_print.c
diff -u src/sys/net/dl_print.c:1.4 src/sys/net/dl_print.c:1.5
--- src/sys/net/dl_print.c:1.4	Mon Apr 29 12:05:46 2019
+++ src/sys/net/dl_print.c	Mon Apr 29 15:08:11 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $	*/
+/*	$NetBSD: dl_print.c,v 1.5 2019/04/29 19:08:11 christos Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -29,12 +29,12 @@
 #include 
 
 #ifdef _KERNEL
-__KERNEL_RCSID(0, "$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dl_print.c,v 1.5 2019/04/29 19:08:11 christos Exp $");
 #include 
 #else
-__RCSID("$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $");
+__RCSID("$NetBSD: dl_print.c,v 1.5 2019/04/29 19:08:11 christos Exp $");
 #include 
-static const uint8_t hexdigits[] = "0123456789abcdef";
+static const char hexdigits[] = "0123456789abcdef";
 #endif
 #include 
 



CVS commit: src/lib/libnvmm

2019-04-29 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Mon Apr 29 19:03:17 UTC 2019

Modified Files:
src/lib/libnvmm: libnvmm.3

Log Message:
sync with reality


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 src/lib/libnvmm/libnvmm.3

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

Modified files:

Index: src/lib/libnvmm/libnvmm.3
diff -u src/lib/libnvmm/libnvmm.3:1.15 src/lib/libnvmm/libnvmm.3:1.16
--- src/lib/libnvmm/libnvmm.3:1.15	Mon Apr 29 18:54:25 2019
+++ src/lib/libnvmm/libnvmm.3	Mon Apr 29 19:03:17 2019
@@ -1,4 +1,4 @@
-.\"	$NetBSD: libnvmm.3,v 1.15 2019/04/29 18:54:25 maxv Exp $
+.\"	$NetBSD: libnvmm.3,v 1.16 2019/04/29 19:03:17 maxv Exp $
 .\"
 .\" Copyright (c) 2018, 2019 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 April 7, 2019
+.Dd April 29, 2019
 .Dt LIBNVMM 3
 .Os
 .Sh NAME
@@ -284,12 +284,9 @@ struct nvmm_capability {
 	uint64_t max_machines;
 	uint64_t max_vcpus;
 	uint64_t max_ram;
-	union {
-		struct {
-			...
-		} x86;
-		uint64_t rsvd[8];
-	} u;
+	struct {
+		...
+	} arch;
 };
 .Ed
 .Pp
@@ -384,26 +381,20 @@ The
 .Cd nvmm_exit
 structure is used to handle VM exits:
 .Bd -literal
-enum nvmm_exit_reason {
-	NVMM_EXIT_NONE		= 0x,
-
-	/* General. */
-	NVMM_EXIT_MEMORY	= 0x0001,
-	NVMM_EXIT_IO		= 0x0002,
-	NVMM_EXIT_MSR		= 0x0003,
-	NVMM_EXIT_INT_READY	= 0x0004,
-	NVMM_EXIT_NMI_READY	= 0x0005,
-	NVMM_EXIT_HALTED	= 0x0006,
-	NVMM_EXIT_SHUTDOWN	= 0x0007,
-
-	/* Instructions (x86). */
+/* Exit Reasons */
+#define NVMM_EXIT_NONE		0xULL
+#define NVMM_EXIT_MEMORY	0x0001ULL
+#define NVMM_EXIT_IO		0x0002ULL
+#define NVMM_EXIT_MSR		0x0003ULL
+#define NVMM_EXIT_INT_READY	0x0004ULL
+#define NVMM_EXIT_NMI_READY	0x0005ULL
+#define NVMM_EXIT_HALTED	0x0006ULL
+#define NVMM_EXIT_SHUTDOWN	0x0007ULL
 	...
-
-	NVMM_EXIT_INVALID	= 0x
-};
+#define NVMM_EXIT_INVALID	0xULL
 
 struct nvmm_exit {
-	enum nvmm_exit_reason reason;
+	uint64_t reason;
 	union {
 		...
 	} u;



CVS commit: src

2019-04-29 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Mon Apr 29 18:54:26 UTC 2019

Modified Files:
src/doc: TODO.nvmm
src/lib/libnvmm: libnvmm.3
src/sys/dev/nvmm/x86: nvmm_x86_svm.c nvmm_x86_vmx.c

Log Message:
Stop taking care of the INT/NMI windows in the kernel, the emulator is
supposed to do that itself.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/doc/TODO.nvmm
cvs rdiff -u -r1.14 -r1.15 src/lib/libnvmm/libnvmm.3
cvs rdiff -u -r1.43 -r1.44 src/sys/dev/nvmm/x86/nvmm_x86_svm.c
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/nvmm/x86/nvmm_x86_vmx.c

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

Modified files:

Index: src/doc/TODO.nvmm
diff -u src/doc/TODO.nvmm:1.2 src/doc/TODO.nvmm:1.3
--- src/doc/TODO.nvmm:1.2	Sun Apr 21 06:48:37 2019
+++ src/doc/TODO.nvmm	Mon Apr 29 18:54:25 2019
@@ -10,10 +10,6 @@ Known issues in NVMM, low priority in mo
On Intel that's not complicated, but on old AMD CPUs, we need to disassemble
the instruction, and I don't like that.
 
- * Maybe we shouldn't modify the INT/NMI windows during event injection. The
-   virtualizer is supposed to inject the event only when these windows allow
-   it. (Eg Qemu does.)
-
  * We need a cleaner way to handle CPUID exits. It is not complicated to solve,
but I'm still not sure which design is the cleanest.
 

Index: src/lib/libnvmm/libnvmm.3
diff -u src/lib/libnvmm/libnvmm.3:1.14 src/lib/libnvmm/libnvmm.3:1.15
--- src/lib/libnvmm/libnvmm.3:1.14	Sun Apr  7 14:13:03 2019
+++ src/lib/libnvmm/libnvmm.3	Mon Apr 29 18:54:25 2019
@@ -1,4 +1,4 @@
-.\"	$NetBSD: libnvmm.3,v 1.14 2019/04/07 14:13:03 maxv Exp $
+.\"	$NetBSD: libnvmm.3,v 1.15 2019/04/29 18:54:25 maxv Exp $
 .\"
 .\" Copyright (c) 2018, 2019 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -470,15 +470,15 @@ the event is a non-maskable interrupt (N
 in-NMI context.
 .El
 .Pp
-In this case,
-.Fn nvmm_vcpu_inject
-will return
-.Er EAGAIN ,
-and NVMM will cause a VM exit with reason
+VMM software can manage interrupt and NMI window-exiting via the
+.Va intr
+component of the VCPU state.
+When such window-exiting is enabled, NVMM will cause a VM exit with reason
 .Cd NVMM_EXIT_INT_READY
 or
 .Cd NVMM_EXIT_NMI_READY
-to indicate that VMM software can now reinject the desired event.
+to indicate that the guest is now able to handle the corresponding class
+of interrupts.
 .Ss Assist Callbacks
 In order to assist emulation of certain operations,
 .Nm
@@ -633,14 +633,6 @@ A query was made on a machine or a VCPU 
 .It Bq Er EPERM
 An attempt was made to access a machine that does not belong to the process.
 .El
-.Pp
-In addition,
-.Fn nvmm_vcpu_inject
-uses the following error codes:
-.Bl -tag -width [ENOBUFS]
-.It Bq Er EAGAIN
-The VCPU cannot receive the event immediately.
-.El
 .Sh SEE ALSO
 .Xr nvmm 4
 .Sh AUTHORS

Index: src/sys/dev/nvmm/x86/nvmm_x86_svm.c
diff -u src/sys/dev/nvmm/x86/nvmm_x86_svm.c:1.43 src/sys/dev/nvmm/x86/nvmm_x86_svm.c:1.44
--- src/sys/dev/nvmm/x86/nvmm_x86_svm.c:1.43	Sun Apr 28 14:22:13 2019
+++ src/sys/dev/nvmm/x86/nvmm_x86_svm.c	Mon Apr 29 18:54:25 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: nvmm_x86_svm.c,v 1.43 2019/04/28 14:22:13 maxv Exp $	*/
+/*	$NetBSD: nvmm_x86_svm.c,v 1.44 2019/04/29 18:54:25 maxv Exp $	*/
 
 /*
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: nvmm_x86_svm.c,v 1.43 2019/04/28 14:22:13 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nvmm_x86_svm.c,v 1.44 2019/04/29 18:54:25 maxv Exp $");
 
 #include 
 #include 
@@ -677,18 +677,7 @@ svm_vcpu_inject(struct nvmm_machine *mac
 		type = SVM_EVENT_TYPE_HW_INT;
 		if (event->vector == 2) {
 			type = SVM_EVENT_TYPE_NMI;
-		}
-		if (type == SVM_EVENT_TYPE_NMI) {
-			if (cpudata->nmi_window_exit) {
-return EAGAIN;
-			}
 			svm_event_waitexit_enable(vcpu, true);
-		} else {
-			if (((vmcb->state.rflags & PSL_I) == 0) ||
-			((vmcb->ctrl.intr & VMCB_CTRL_INTR_SHADOW) != 0)) {
-svm_event_waitexit_enable(vcpu, false);
-return EAGAIN;
-			}
 		}
 		err = 0;
 		break;

Index: src/sys/dev/nvmm/x86/nvmm_x86_vmx.c
diff -u src/sys/dev/nvmm/x86/nvmm_x86_vmx.c:1.31 src/sys/dev/nvmm/x86/nvmm_x86_vmx.c:1.32
--- src/sys/dev/nvmm/x86/nvmm_x86_vmx.c:1.31	Sun Apr 28 14:22:13 2019
+++ src/sys/dev/nvmm/x86/nvmm_x86_vmx.c	Mon Apr 29 18:54:26 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: nvmm_x86_vmx.c,v 1.31 2019/04/28 14:22:13 maxv Exp $	*/
+/*	$NetBSD: nvmm_x86_vmx.c,v 1.32 2019/04/29 18:54:26 maxv Exp $	*/
 
 /*
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: nvmm_x86_vmx.c,v 1.31 2019/04/28 14:22:13 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nvmm_x86_vmx.c,v 1.32 2019/04/29 18:54:26 maxv Exp $");
 
 #include 
 #include 
@@ -996,8 +996,8 @@ vmx_vcpu_inject(struct nvmm_machine *mac
 struct nvmm_event *event)
 {
 	struct vmx_cpudata *cpudata = vcpu->cpudata;
-	int type = 0, 

CVS commit: src/lib/libnvmm

2019-04-29 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Mon Apr 29 17:27:57 UTC 2019

Modified Files:
src/lib/libnvmm: libnvmm.c

Log Message:
Remove useless calls to nvmm_init().


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/lib/libnvmm/libnvmm.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/libnvmm/libnvmm.c
diff -u src/lib/libnvmm/libnvmm.c:1.10 src/lib/libnvmm/libnvmm.c:1.11
--- src/lib/libnvmm/libnvmm.c:1.10	Sun Apr 28 14:22:13 2019
+++ src/lib/libnvmm/libnvmm.c	Mon Apr 29 17:27:57 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: libnvmm.c,v 1.10 2019/04/28 14:22:13 maxv Exp $	*/
+/*	$NetBSD: libnvmm.c,v 1.11 2019/04/29 17:27:57 maxv Exp $	*/
 
 /*
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -237,10 +237,6 @@ nvmm_machine_destroy(struct nvmm_machine
 	struct nvmm_ioc_machine_destroy args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 
 	ret = ioctl(nvmm_fd, NVMM_IOC_MACHINE_DESTROY, );
@@ -259,10 +255,6 @@ nvmm_machine_configure(struct nvmm_machi
 	struct nvmm_ioc_machine_configure args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.op = op;
 	args.conf = conf;
@@ -281,10 +273,6 @@ nvmm_vcpu_create(struct nvmm_machine *ma
 	struct nvmm_comm_page *comm;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.cpuid = cpuid;
 
@@ -309,10 +297,6 @@ nvmm_vcpu_destroy(struct nvmm_machine *m
 	struct nvmm_comm_page *comm;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.cpuid = cpuid;
 
@@ -332,10 +316,6 @@ nvmm_vcpu_setstate(struct nvmm_machine *
 {
 	struct nvmm_comm_page *comm;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	if (__predict_false(cpuid >= mach->npages)) {
 		return -1;
 	}
@@ -356,10 +336,6 @@ nvmm_vcpu_getstate(struct nvmm_machine *
 	struct nvmm_comm_page *comm;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	if (__predict_false(cpuid >= mach->npages)) {
 		return -1;
 	}
@@ -389,10 +365,6 @@ nvmm_vcpu_inject(struct nvmm_machine *ma
 	struct nvmm_ioc_vcpu_inject args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.cpuid = cpuid;
 	memcpy(, event, sizeof(args.event));
@@ -411,10 +383,6 @@ nvmm_vcpu_run(struct nvmm_machine *mach,
 	struct nvmm_ioc_vcpu_run args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.cpuid = cpuid;
 	memset(, 0, sizeof(args.exit));
@@ -435,10 +403,6 @@ nvmm_gpa_map(struct nvmm_machine *mach, 
 	struct nvmm_ioc_gpa_map args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	ret = __area_add(mach, hva, gpa, size, prot);
 	if (ret == -1)
 		return -1;
@@ -465,10 +429,6 @@ nvmm_gpa_unmap(struct nvmm_machine *mach
 	struct nvmm_ioc_gpa_unmap args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	ret = __area_delete(mach, hva, gpa, size);
 	if (ret == -1)
 		return -1;
@@ -492,10 +452,6 @@ nvmm_hva_map(struct nvmm_machine *mach, 
 	struct nvmm_ioc_hva_map args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.hva = hva;
 	args.size = size;
@@ -513,10 +469,6 @@ nvmm_hva_unmap(struct nvmm_machine *mach
 	struct nvmm_ioc_hva_unmap args;
 	int ret;
 
-	if (nvmm_init() == -1) {
-		return -1;
-	}
-
 	args.machid = mach->machid;
 	args.hva = hva;
 	args.size = size;



CVS commit: src/sys/arch/ia64

2019-04-29 Thread Sean Cole
Module Name:src
Committed By:   scole
Date:   Mon Apr 29 16:39:58 UTC 2019

Modified Files:
src/sys/arch/ia64/acpi: madt.c
src/sys/arch/ia64/ia64: mainbus.c

Log Message:
Rename ACPI_NAME_SIZE -> ACPI_NAMESEG_SIZE with acpica update, see
src/sys/external/bsd/acpica/dist/changes.txt


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/ia64/acpi/madt.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/ia64/ia64/mainbus.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/ia64/acpi/madt.c
diff -u src/sys/arch/ia64/acpi/madt.c:1.3 src/sys/arch/ia64/acpi/madt.c:1.4
--- src/sys/arch/ia64/acpi/madt.c:1.3	Sun Apr  7 07:37:51 2013
+++ src/sys/arch/ia64/acpi/madt.c	Mon Apr 29 16:39:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: madt.c,v 1.3 2013/04/07 07:37:51 kiyohara Exp $	*/
+/*	$NetBSD: madt.c,v 1.4 2019/04/29 16:39:58 scole Exp $	*/
 /*-
  * Copyright (c) 2001 Doug Rabson
  * All rights reserved.
@@ -148,7 +148,7 @@ ia64_probe_sapics(void)
 			table->Header.Signature[3], table);
 
 		if (strncmp(table->Header.Signature, ACPI_SIG_MADT,
-		ACPI_NAME_SIZE) != 0 ||
+		ACPI_NAMESEG_SIZE) != 0 ||
 		ACPI_FAILURE(AcpiTbChecksum((void *)table,
 		table->Header.Length)))
 			continue;
@@ -242,7 +242,7 @@ ia64_count_cpus(void)
 		IA64_PHYS_TO_RR7(xsdt->TableOffsetEntry[t]);
 
 		if (strncmp(table->Header.Signature, ACPI_SIG_MADT,
-		ACPI_NAME_SIZE) != 0 ||
+		ACPI_NAMESEG_SIZE) != 0 ||
 		ACPI_FAILURE(AcpiTbChecksum((void *)table,
 			table->Header.Length)))
 			continue;

Index: src/sys/arch/ia64/ia64/mainbus.c
diff -u src/sys/arch/ia64/ia64/mainbus.c:1.10 src/sys/arch/ia64/ia64/mainbus.c:1.11
--- src/sys/arch/ia64/ia64/mainbus.c:1.10	Tue Jun 21 11:33:33 2016
+++ src/sys/arch/ia64/ia64/mainbus.c	Mon Apr 29 16:39:58 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: mainbus.c,v 1.10 2016/06/21 11:33:33 nonaka Exp $	*/
+/*	$NetBSD: mainbus.c,v 1.11 2019/04/29 16:39:58 scole Exp $	*/
 
 /*-
  * Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.10 2016/06/21 11:33:33 nonaka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.11 2019/04/29 16:39:58 scole Exp $");
 
 #include "acpica.h"
 
@@ -95,7 +95,7 @@ mainbus_attach(device_t parent, device_t
 		IA64_PHYS_TO_RR7(xsdt->TableOffsetEntry[i]);
 
 		sig = table->Header.Signature;
-		if (strncmp(sig, ACPI_SIG_MADT, ACPI_NAME_SIZE) != 0)
+		if (strncmp(sig, ACPI_SIG_MADT, ACPI_NAMESEG_SIZE) != 0)
 			continue;
 		len = table->Header.Length;
 		if (ACPI_FAILURE(AcpiTbChecksum((void *)table, len)))



CVS commit: src/sys

2019-04-29 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Mon Apr 29 16:12:30 UTC 2019

Modified Files:
src/sys/compat/common: rtsock_50.c
src/sys/compat/net: route.h
src/sys/kern: compat_stub.c
src/sys/net: route.h rtsock_shared.c
src/sys/netinet: if_arp.c
src/sys/netinet6: nd6_nbr.c
src/sys/sys: compat_stub.h

Log Message:
Introduce rt_addrmsg_src which adds RTA_AUTHOR to the message.
Use this when we notify userland of a duplicate address
and set RTA_AUTHOR to the hardware address of the sender.

While here, match the logging diagnostic of INET6 to the simpler one
of INET so it's consistent.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/compat/common/rtsock_50.c
cvs rdiff -u -r1.3 -r1.4 src/sys/compat/net/route.h
cvs rdiff -u -r1.10 -r1.11 src/sys/kern/compat_stub.c
cvs rdiff -u -r1.122 -r1.123 src/sys/net/route.h
cvs rdiff -u -r1.7 -r1.8 src/sys/net/rtsock_shared.c
cvs rdiff -u -r1.281 -r1.282 src/sys/netinet/if_arp.c
cvs rdiff -u -r1.165 -r1.166 src/sys/netinet6/nd6_nbr.c
cvs rdiff -u -r1.14 -r1.15 src/sys/sys/compat_stub.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/compat/common/rtsock_50.c
diff -u src/sys/compat/common/rtsock_50.c:1.12 src/sys/compat/common/rtsock_50.c:1.13
--- src/sys/compat/common/rtsock_50.c:1.12	Mon Apr 29 11:57:22 2019
+++ src/sys/compat/common/rtsock_50.c	Mon Apr 29 16:12:30 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: rtsock_50.c,v 1.12 2019/04/29 11:57:22 roy Exp $	*/
+/*	$NetBSD: rtsock_50.c,v 1.13 2019/04/29 16:12:30 roy Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -61,7 +61,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.12 2019/04/29 11:57:22 roy Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.13 2019/04/29 16:12:30 roy Exp $");
 
 #define	COMPAT_RTSOCK	/* Use the COMPATNAME/COMPATCALL macros and the
 			 * various other compat definitions - see
@@ -162,6 +162,8 @@ rtsock_50_init(void)
 	MODULE_HOOK_SET(rtsock_rt_ifmsg_50_hook, "rts_50", compat_50_rt_ifmsg);
 	MODULE_HOOK_SET(rtsock_rt_addrmsg_rt_50_hook, "rts_50",
 	compat_50_rt_addrmsg_rt);
+	MODULE_HOOK_SET(rtsock_rt_addrmsg_src_50_hook, "rts_50",
+	compat_50_rt_addrmsg_src);
 	MODULE_HOOK_SET(rtsock_rt_addrmsg_50_hook, "rts_50",
 	compat_50_rt_addrmsg);
 	MODULE_HOOK_SET(rtsock_rt_ifannouncemsg_50_hook, "rts_50",
@@ -181,6 +183,7 @@ rtsock_50_fini(void)
 	MODULE_HOOK_UNSET(rtsock_rt_missmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ifmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_addrmsg_rt_50_hook); 
+	MODULE_HOOK_UNSET(rtsock_rt_addrmsg_src_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_addrmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ifannouncemsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ieee80211msg_50_hook); 

Index: src/sys/compat/net/route.h
diff -u src/sys/compat/net/route.h:1.3 src/sys/compat/net/route.h:1.4
--- src/sys/compat/net/route.h:1.3	Mon Apr 29 11:57:22 2019
+++ src/sys/compat/net/route.h	Mon Apr 29 16:12:30 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: route.h,v 1.3 2019/04/29 11:57:22 roy Exp $	*/
+/*	$NetBSD: route.h,v 1.4 2019/04/29 16:12:30 roy Exp $	*/
 
 /*
  * Copyright (c) 1980, 1986, 1993
@@ -88,6 +88,7 @@ void	compat_50_rt_missmsg(int, const str
 struct mbuf *
 	compat_50_rt_msg1(int, struct rt_addrinfo *, void *, int);
 void	compat_50_rt_addrmsg_rt(int, struct ifaddr *, int, struct rtentry *);
+void	compat_50_rt_addrmsg_src(int, struct ifaddr *, const struct sockaddr *);
 void	compat_50_rt_addrmsg(int, struct ifaddr *);
 void	compat_70_rt_newaddrmsg1(int, struct ifaddr *);
 #endif

Index: src/sys/kern/compat_stub.c
diff -u src/sys/kern/compat_stub.c:1.10 src/sys/kern/compat_stub.c:1.11
--- src/sys/kern/compat_stub.c:1.10	Mon Apr 29 11:57:22 2019
+++ src/sys/kern/compat_stub.c	Mon Apr 29 16:12:30 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: compat_stub.c,v 1.10 2019/04/29 11:57:22 roy Exp $	*/
+/* $NetBSD: compat_stub.c,v 1.11 2019/04/29 16:12:30 roy Exp $	*/
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -204,6 +204,7 @@ struct rtsock_rt_missmsg_50_hook_t rtsoc
 struct rtsock_rt_ifmsg_50_hook_t rtsock_rt_ifmsg_50_hook;
 struct rtsock_rt_ifannouncemsg_50_hook_t rtsock_rt_ifannouncemsg_50_hook;
 struct rtsock_rt_addrmsg_rt_50_hook_t rtsock_rt_addrmsg_rt_50_hook;
+struct rtsock_rt_addrmsg_src_50_hook_t rtsock_rt_addrmsg_src_50_hook;
 struct rtsock_rt_addrmsg_50_hook_t rtsock_rt_addrmsg_50_hook;
 struct rtsock_rt_ieee80211msg_50_hook_t rtsock_rt_ieee80211msg_50_hook;
 

Index: src/sys/net/route.h
diff -u src/sys/net/route.h:1.122 src/sys/net/route.h:1.123
--- src/sys/net/route.h:1.122	Mon Apr 29 11:57:22 2019
+++ src/sys/net/route.h	Mon Apr 29 16:12:30 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: route.h,v 1.122 2019/04/29 11:57:22 roy Exp $	*/
+/*	$NetBSD: route.h,v 1.123 2019/04/29 16:12:30 roy Exp $	*/
 
 /*
  * Copyright (c) 1980, 1986, 1993
@@ -516,6 +516,7 @@ struct mbuf *
 	

CVS commit: src/sys

2019-04-29 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Mon Apr 29 16:05:46 UTC 2019

Modified Files:
src/sys/net: dl_print.c if_dl.h
src/sys/netinet: if_arp.c

Log Message:
Move lla_snprintf from if_arp.c to dl_print.c


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/net/dl_print.c
cvs rdiff -u -r1.26 -r1.27 src/sys/net/if_dl.h
cvs rdiff -u -r1.280 -r1.281 src/sys/netinet/if_arp.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/net/dl_print.c
diff -u src/sys/net/dl_print.c:1.3 src/sys/net/dl_print.c:1.4
--- src/sys/net/dl_print.c:1.3	Wed Apr  6 18:04:58 2016
+++ src/sys/net/dl_print.c	Mon Apr 29 16:05:46 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: dl_print.c,v 1.3 2016/04/06 18:04:58 christos Exp $	*/
+/*	$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -29,50 +29,46 @@
 #include 
 
 #ifdef _KERNEL
-__KERNEL_RCSID(0, "$NetBSD: dl_print.c,v 1.3 2016/04/06 18:04:58 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $");
 #include 
 #else
-__RCSID("$NetBSD: dl_print.c,v 1.3 2016/04/06 18:04:58 christos Exp $");
+__RCSID("$NetBSD: dl_print.c,v 1.4 2019/04/29 16:05:46 roy Exp $");
 #include 
 static const uint8_t hexdigits[] = "0123456789abcdef";
 #endif
 #include 
 
+char *
+lla_snprintf(char *dst, size_t dst_len, const void *src, size_t src_len)
+{
+	char *dp;
+	const uint8_t *sp, *ep;
+
+	if (src_len == 0 || dst_len < 3)
+		return NULL;
+
+	dp = dst;
+	sp = (const uint8_t *)src;
+	ep = sp + src_len;
+	while (sp < ep) {
+		if (dst_len < 3)
+			break;
+		dst_len -= 3;
+		*dp++ = hexdigits[(*sp) >> 4];
+		*dp++ = hexdigits[(*sp++) & 0xf];
+		*dp++ = ':';
+	}
+	*--dp = 0;
+
+	return dst;
+}
+
 int
 dl_print(char *buf, size_t len, const struct dl_addr *dl)
 {
-	const uint8_t *ap = (const uint8_t *)dl->dl_data;
-	char abuf[256 * 3], *cp, *ecp;
+	char abuf[256 * 3];
 
-	ap += dl->dl_nlen;
-	cp = abuf;
-	ecp = abuf + sizeof(abuf);
-
-#define ADDC(c) do { \
-		if (cp >= ecp) {\
-			cp++; \
-		} else \
-			*cp++ = (char)(c); \
-	} while (/*CONSTCOND*/0)
-
-#define ADDX(v) do { \
-		uint8_t n = hexdigits[(v)]; \
-		ADDC(n); \
-	} while (/*CONSTCOND*/0)
-
-	for (size_t i = 0; i < dl->dl_alen; i++) {
-		ADDX((u_int)ap[i] >> 4);
-		ADDX(ap[i] & 0xf);
-		ADDC(':');
-	}
-	if (cp > abuf)
-		--cp;
-	if (ecp > abuf) {
-		if (cp < ecp)
-			*cp = '\0';
-		else
-			*--ecp = '\0';
-	}
+	lla_snprintf(abuf, sizeof(abuf), dl->dl_data, dl->dl_alen);
 	return snprintf(buf, len, "%.*s/%hhu#%s",
 	(int)dl->dl_nlen, dl->dl_data, dl->dl_type, abuf);
 }

Index: src/sys/net/if_dl.h
diff -u src/sys/net/if_dl.h:1.26 src/sys/net/if_dl.h:1.27
--- src/sys/net/if_dl.h:1.26	Wed Dec  3 01:31:37 2014
+++ src/sys/net/if_dl.h	Mon Apr 29 16:05:46 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_dl.h,v 1.26 2014/12/03 01:31:37 christos Exp $	*/
+/*	$NetBSD: if_dl.h,v 1.27 2019/04/29 16:05:46 roy Exp $	*/
 
 /*
  * Copyright (c) 1990, 1993
@@ -119,7 +119,9 @@ __END_DECLS
 #if defined(_KERNEL) || defined(_TEST)
 // 255 xx: + 255 'a' + / + # + 3 digits + NUL
 #define LINK_ADDRSTRLEN	((255 * 4) + 5)
+#define	LLA_ADDRSTRLEN	(16 * 3)
 
+char	*lla_snprintf(char *, size_t, const void *, size_t);
 int	dl_print(char *, size_t, const struct dl_addr *);
 #define DL_PRINT(b, a) (dl_print((b), sizeof(b), (a)), (b))
 int	sdl_print(char *, size_t, const void *);

Index: src/sys/netinet/if_arp.c
diff -u src/sys/netinet/if_arp.c:1.280 src/sys/netinet/if_arp.c:1.281
--- src/sys/netinet/if_arp.c:1.280	Mon Apr 29 11:57:22 2019
+++ src/sys/netinet/if_arp.c	Mon Apr 29 16:05:46 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_arp.c,v 1.280 2019/04/29 11:57:22 roy Exp $	*/
+/*	$NetBSD: if_arp.c,v 1.281 2019/04/29 16:05:46 roy Exp $	*/
 
 /*
  * Copyright (c) 1998, 2000, 2008 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_arp.c,v 1.280 2019/04/29 11:57:22 roy Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_arp.c,v 1.281 2019/04/29 16:05:46 roy Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ddb.h"
@@ -214,36 +214,6 @@ static int log_permanent_modify = 1;
 static int log_wrong_iface = 1;
 static int log_unknown_network = 1;
 
-/*
- * this should be elsewhere.
- */
-
-#define	LLA_ADDRSTRLEN	(16 * 3)
-
-static char *
-lla_snprintf(char *, const u_int8_t *, int);
-
-static char *
-lla_snprintf(char *dst, const u_int8_t *adrp, int len)
-{
-	int i;
-	char *p;
-
-	p = dst;
-
-	*p++ = hexdigits[(*adrp) >> 4];
-	*p++ = hexdigits[(*adrp++) & 0xf];
-
-	for (i = 1; i < len && i < 16; i++) {
-		*p++ = ':';
-		*p++ = hexdigits[(*adrp) >> 4];
-		*p++ = hexdigits[(*adrp++) & 0xf];
-	}
-
-	*p = 0;
-	return dst;
-}
-
 DOMAIN_DEFINE(arpdomain);	/* forward declare and add to link set */
 
 static void
@@ -1035,7 +1005,7 @@ in_arpinput(struct mbuf *m)
 	uint64_t *arps;
 	struct psref psref, psref_ia;
 	int s;
-	char llabuf[LLA_ADDRSTRLEN];
+	char 

CVS commit: src/sys/arch/arm/acpi

2019-04-29 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Mon Apr 29 12:53:15 UTC 2019

Modified Files:
src/sys/arch/arm/acpi: gtmr_acpi.c

Log Message:
Catch up with constant name change.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/acpi/gtmr_acpi.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/arm/acpi/gtmr_acpi.c
diff -u src/sys/arch/arm/acpi/gtmr_acpi.c:1.2 src/sys/arch/arm/acpi/gtmr_acpi.c:1.3
--- src/sys/arch/arm/acpi/gtmr_acpi.c:1.2	Fri Nov 16 18:24:28 2018
+++ src/sys/arch/arm/acpi/gtmr_acpi.c	Mon Apr 29 08:53:15 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: gtmr_acpi.c,v 1.2 2018/11/16 23:24:28 jmcneill Exp $ */
+/* $NetBSD: gtmr_acpi.c,v 1.3 2019/04/29 12:53:15 christos Exp $ */
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: gtmr_acpi.c,v 1.2 2018/11/16 23:24:28 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gtmr_acpi.c,v 1.3 2019/04/29 12:53:15 christos Exp $");
 
 #include 
 #include 
@@ -61,7 +61,7 @@ gtmr_acpi_match(device_t parent, cfdata_
 {
 	ACPI_TABLE_HEADER *hdrp = aux;
 
-	return memcmp(hdrp->Signature, ACPI_SIG_GTDT, ACPI_NAME_SIZE) == 0;
+	return memcmp(hdrp->Signature, ACPI_SIG_GTDT, ACPI_NAMESEG_SIZE) == 0;
 }
 
 static void



CVS commit: src/sys

2019-04-29 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Mon Apr 29 11:57:22 UTC 2019

Modified Files:
src/sys/compat/common: rtsock_50.c
src/sys/compat/net: route.h
src/sys/kern: compat_stub.c
src/sys/net: link_proto.c route.c route.h rtsock_shared.c
src/sys/netinet: if_arp.c in.c
src/sys/netinet6: in6.c nd6.c nd6_nbr.c nd6_rtr.c
src/sys/sys: compat_stub.h

Log Message:
rtsock: Route address message simplification

Rename rt_newaddrmsg to rt_addrmsg_rt.
Add rt_addrmsg which drops the error and route arguments which are only
needed by one caller.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/sys/compat/common/rtsock_50.c
cvs rdiff -u -r1.2 -r1.3 src/sys/compat/net/route.h
cvs rdiff -u -r1.9 -r1.10 src/sys/kern/compat_stub.c
cvs rdiff -u -r1.37 -r1.38 src/sys/net/link_proto.c
cvs rdiff -u -r1.217 -r1.218 src/sys/net/route.c
cvs rdiff -u -r1.121 -r1.122 src/sys/net/route.h
cvs rdiff -u -r1.6 -r1.7 src/sys/net/rtsock_shared.c
cvs rdiff -u -r1.279 -r1.280 src/sys/netinet/if_arp.c
cvs rdiff -u -r1.233 -r1.234 src/sys/netinet/in.c
cvs rdiff -u -r1.274 -r1.275 src/sys/netinet6/in6.c
cvs rdiff -u -r1.252 -r1.253 src/sys/netinet6/nd6.c
cvs rdiff -u -r1.164 -r1.165 src/sys/netinet6/nd6_nbr.c
cvs rdiff -u -r1.144 -r1.145 src/sys/netinet6/nd6_rtr.c
cvs rdiff -u -r1.13 -r1.14 src/sys/sys/compat_stub.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/compat/common/rtsock_50.c
diff -u src/sys/compat/common/rtsock_50.c:1.11 src/sys/compat/common/rtsock_50.c:1.12
--- src/sys/compat/common/rtsock_50.c:1.11	Mon Apr 29 08:31:29 2019
+++ src/sys/compat/common/rtsock_50.c	Mon Apr 29 11:57:22 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: rtsock_50.c,v 1.11 2019/04/29 08:31:29 pgoyette Exp $	*/
+/*	$NetBSD: rtsock_50.c,v 1.12 2019/04/29 11:57:22 roy Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -61,7 +61,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.11 2019/04/29 08:31:29 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.12 2019/04/29 11:57:22 roy Exp $");
 
 #define	COMPAT_RTSOCK	/* Use the COMPATNAME/COMPATCALL macros and the
 			 * various other compat definitions - see
@@ -160,8 +160,10 @@ rtsock_50_init(void)
 	MODULE_HOOK_SET(rtsock_rt_missmsg_50_hook, "rts_50",
 	compat_50_rt_missmsg);
 	MODULE_HOOK_SET(rtsock_rt_ifmsg_50_hook, "rts_50", compat_50_rt_ifmsg);
-	MODULE_HOOK_SET(rtsock_rt_newaddrmsg_50_hook, "rts_50",
-	compat_50_rt_newaddrmsg);
+	MODULE_HOOK_SET(rtsock_rt_addrmsg_rt_50_hook, "rts_50",
+	compat_50_rt_addrmsg_rt);
+	MODULE_HOOK_SET(rtsock_rt_addrmsg_50_hook, "rts_50",
+	compat_50_rt_addrmsg);
 	MODULE_HOOK_SET(rtsock_rt_ifannouncemsg_50_hook, "rts_50",
 	compat_50_rt_ifannouncemsg);
 	MODULE_HOOK_SET(rtsock_rt_ieee80211msg_50_hook, "rts_50",
@@ -178,7 +180,8 @@ rtsock_50_fini(void)
 	MODULE_HOOK_UNSET(rtsock_oifmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_missmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ifmsg_50_hook); 
-	MODULE_HOOK_UNSET(rtsock_rt_newaddrmsg_50_hook); 
+	MODULE_HOOK_UNSET(rtsock_rt_addrmsg_rt_50_hook); 
+	MODULE_HOOK_UNSET(rtsock_rt_addrmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ifannouncemsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_ieee80211msg_50_hook); 
 }

Index: src/sys/compat/net/route.h
diff -u src/sys/compat/net/route.h:1.2 src/sys/compat/net/route.h:1.3
--- src/sys/compat/net/route.h:1.2	Wed Sep 21 10:50:23 2016
+++ src/sys/compat/net/route.h	Mon Apr 29 11:57:22 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: route.h,v 1.2 2016/09/21 10:50:23 roy Exp $	*/
+/*	$NetBSD: route.h,v 1.3 2019/04/29 11:57:22 roy Exp $	*/
 
 /*
  * Copyright (c) 1980, 1986, 1993
@@ -87,7 +87,8 @@ void	compat_50_rt_ifmsg(struct ifnet *);
 void	compat_50_rt_missmsg(int, const struct rt_addrinfo *, int, int);
 struct mbuf *
 	compat_50_rt_msg1(int, struct rt_addrinfo *, void *, int);
-void	compat_50_rt_newaddrmsg(int, struct ifaddr *, int, struct rtentry *);
+void	compat_50_rt_addrmsg_rt(int, struct ifaddr *, int, struct rtentry *);
+void	compat_50_rt_addrmsg(int, struct ifaddr *);
 void	compat_70_rt_newaddrmsg1(int, struct ifaddr *);
 #endif
 

Index: src/sys/kern/compat_stub.c
diff -u src/sys/kern/compat_stub.c:1.9 src/sys/kern/compat_stub.c:1.10
--- src/sys/kern/compat_stub.c:1.9	Mon Apr 15 02:07:11 2019
+++ src/sys/kern/compat_stub.c	Mon Apr 29 11:57:22 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: compat_stub.c,v 1.9 2019/04/15 02:07:11 pgoyette Exp $	*/
+/* $NetBSD: compat_stub.c,v 1.10 2019/04/29 11:57:22 roy Exp $	*/
 
 /*-
  * Copyright (c) 2018 The NetBSD Foundation, Inc.
@@ -203,7 +203,8 @@ struct rtsock_oifmsg_50_hook_t rtsock_oi
 struct rtsock_rt_missmsg_50_hook_t rtsock_rt_missmsg_50_hook;
 struct rtsock_rt_ifmsg_50_hook_t rtsock_rt_ifmsg_50_hook;
 struct rtsock_rt_ifannouncemsg_50_hook_t rtsock_rt_ifannouncemsg_50_hook;
-struct rtsock_rt_newaddrmsg_50_hook_t 

CVS commit: [isaki-audio2] src/sys/dev/pci

2019-04-29 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Mon Apr 29 09:30:18 UTC 2019

Modified Files:
src/sys/dev/pci [isaki-audio2]: sv.c

Log Message:
Adapt to audio2.
- Drop INDEPENDENT property.  Both play and rec seems to share the
  sample rate (however, they require different calculations?).
- XXX It's better to modify frequency list more strictly.
- Remove obsoleted and empty methods.


To generate a diff of this commit:
cvs rdiff -u -r1.54.2.1 -r1.54.2.2 src/sys/dev/pci/sv.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/sv.c
diff -u src/sys/dev/pci/sv.c:1.54.2.1 src/sys/dev/pci/sv.c:1.54.2.2
--- src/sys/dev/pci/sv.c:1.54.2.1	Sun Apr 21 05:11:22 2019
+++ src/sys/dev/pci/sv.c	Mon Apr 29 09:30:18 2019
@@ -1,4 +1,4 @@
-/*  $NetBSD: sv.c,v 1.54.2.1 2019/04/21 05:11:22 isaki Exp $ */
+/*  $NetBSD: sv.c,v 1.54.2.2 2019/04/29 09:30:18 isaki Exp $ */
 /*  $OpenBSD: sv.c,v 1.2 1998/07/13 01:50:15 csapuntz Exp $ */
 
 /*
@@ -67,7 +67,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: sv.c,v 1.54.2.1 2019/04/21 05:11:22 isaki Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sv.c,v 1.54.2.2 2019/04/29 09:30:18 isaki Exp $");
 
 #include 
 #include 
@@ -81,8 +81,6 @@ __KERNEL_RCSID(0, "$NetBSD: sv.c,v 1.54.
 
 #include 
 #include 
-#include 
-#include 
 
 #include 
 #include 
@@ -141,10 +139,10 @@ static int	sv_freemem(struct sv_softc *,
 static void	sv_init_mixer(struct sv_softc *);
 
 static int	sv_open(void *, int);
-static int	sv_query_encoding(void *, struct audio_encoding *);
-static int	sv_set_params(void *, int, int, audio_params_t *,
-			  audio_params_t *, stream_filter_list_t *,
-			  stream_filter_list_t *);
+static int	sv_query_format(void *, audio_format_query_t *);
+static int	sv_set_format(void *, int,
+			  const audio_params_t *, const audio_params_t *,
+			  audio_filter_reg_t *, audio_filter_reg_t *);
 static int	sv_round_blocksize(void *, int, int, const audio_params_t *);
 static int	sv_trigger_output(void *, void *, void *, int, void (*)(void *),
   void *, const audio_params_t *);
@@ -158,8 +156,6 @@ static int	sv_mixer_get_port(void *, mix
 static int	sv_query_devinfo(void *, mixer_devinfo_t *);
 static void *	sv_malloc(void *, int, size_t);
 static void	sv_free(void *, void *, size_t);
-static size_t	sv_round_buffersize(void *, int, size_t);
-static paddr_t	sv_mappage(void *, void *, off_t, int);
 static int	sv_get_props(void *);
 static void	sv_get_locks(void *, kmutex_t **, kmutex_t **);
 
@@ -169,8 +165,8 @@ voidsv_dumpregs(struct sv_softc *sc)
 
 static const struct audio_hw_if sv_hw_if = {
 	.open			= sv_open,
-	.query_encoding		= sv_query_encoding,
-	.set_params		= sv_set_params,
+	.query_format		= sv_query_format,
+	.set_format		= sv_set_format,
 	.round_blocksize	= sv_round_blocksize,
 	.halt_output		= sv_halt_output,
 	.halt_input		= sv_halt_input,
@@ -180,32 +176,25 @@ static const struct audio_hw_if sv_hw_if
 	.query_devinfo		= sv_query_devinfo,
 	.allocm			= sv_malloc,
 	.freem			= sv_free,
-	.round_buffersize	= sv_round_buffersize,
-	.mappage		= sv_mappage,
 	.get_props		= sv_get_props,
 	.trigger_output		= sv_trigger_output,
 	.trigger_input		= sv_trigger_input,
 	.get_locks		= sv_get_locks,
 };
 
-#define SV_NFORMATS	4
-#define SV_FORMAT(enc, prec, ch, chmask) \
-	{ \
-		.mode		= AUMODE_PLAY | AUMODE_RECORD, \
-		.encoding	= (enc), \
-		.validbits	= (prec), \
-		.precision	= (prec), \
-		.channels	= (ch), \
-		.channel_mask	= (chmask), \
-		.frequency_type	= 0, \
-		.frequency	= { 2000, 48000 }, \
-	}
-static const struct audio_format sv_formats[SV_NFORMATS] = {
-	SV_FORMAT(AUDIO_ENCODING_SLINEAR_LE, 16, 2, AUFMT_STEREO),
-	SV_FORMAT(AUDIO_ENCODING_SLINEAR_LE, 16, 1, AUFMT_MONAURAL),
-	SV_FORMAT(AUDIO_ENCODING_ULINEAR_LE,  8, 2, AUFMT_STEREO),
-	SV_FORMAT(AUDIO_ENCODING_ULINEAR_LE,  8, 1, AUFMT_MONAURAL),
+static const struct audio_format sv_formats[] = {
+	{
+		.mode		= AUMODE_PLAY | AUMODE_RECORD,
+		.encoding	= AUDIO_ENCODING_SLINEAR_LE,
+		.validbits	= 16,
+		.precision	= 16,
+		.channels	= 2,
+		.channel_mask	= AUFMT_STEREO,
+		.frequency_type	= 0,
+		.frequency	= { 2000, 48000 },
+	},
 };
+#define SV_NFORMATS	__arraycount(sv_formats)
 
 
 static void
@@ -582,105 +571,25 @@ sv_open(void *addr, int flags)
 }
 
 static int
-sv_query_encoding(void *addr, struct audio_encoding *fp)
+sv_query_format(void *addr, audio_format_query_t *afp)
 {
 
-	switch (fp->index) {
-	case 0:
-		strcpy(fp->name, AudioEulinear);
-		fp->encoding = AUDIO_ENCODING_ULINEAR;
-		fp->precision = 8;
-		fp->flags = 0;
-		return 0;
-	case 1:
-		strcpy(fp->name, AudioEmulaw);
-		fp->encoding = AUDIO_ENCODING_ULAW;
-		fp->precision = 8;
-		fp->flags = AUDIO_ENCODINGFLAG_EMULATED;
-		return 0;
-	case 2:
-		strcpy(fp->name, AudioEalaw);
-		fp->encoding = AUDIO_ENCODING_ALAW;
-		fp->precision = 8;
-		fp->flags = AUDIO_ENCODINGFLAG_EMULATED;
-		return 0;
-	case 3:

CVS commit: [isaki-audio2] src/sys/dev/pci

2019-04-29 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Mon Apr 29 09:32:07 UTC 2019

Modified Files:
src/sys/dev/pci [isaki-audio2]: yds.c ydsvar.h

Log Message:
Adapt to audio2.


To generate a diff of this commit:
cvs rdiff -u -r1.61.2.1 -r1.61.2.2 src/sys/dev/pci/yds.c
cvs rdiff -u -r1.12 -r1.12.10.1 src/sys/dev/pci/ydsvar.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/dev/pci/yds.c
diff -u src/sys/dev/pci/yds.c:1.61.2.1 src/sys/dev/pci/yds.c:1.61.2.2
--- src/sys/dev/pci/yds.c:1.61.2.1	Sun Apr 21 05:11:22 2019
+++ src/sys/dev/pci/yds.c	Mon Apr 29 09:32:07 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: yds.c,v 1.61.2.1 2019/04/21 05:11:22 isaki Exp $	*/
+/*	$NetBSD: yds.c,v 1.61.2.2 2019/04/29 09:32:07 isaki Exp $	*/
 
 /*
  * Copyright (c) 2000, 2001 Kazuki Sakamoto and Minoura Makoto.
@@ -39,7 +39,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: yds.c,v 1.61.2.1 2019/04/21 05:11:22 isaki Exp $");
+__KERNEL_RCSID(0, "$NetBSD: yds.c,v 1.61.2.2 2019/04/29 09:32:07 isaki Exp $");
 
 #include "mpu.h"
 
@@ -57,8 +57,6 @@ __KERNEL_RCSID(0, "$NetBSD: yds.c,v 1.61
 
 #include 
 #include 
-#include 
-#include 
 #include 
 #include 
 #include 
@@ -151,10 +149,10 @@ CFATTACH_DECL_NEW(yds, sizeof(struct yds
 
 static int	yds_open(void *, int);
 static void	yds_close(void *);
-static int	yds_query_encoding(void *, struct audio_encoding *);
-static int	yds_set_params(void *, int, int, audio_params_t *,
-			   audio_params_t *, stream_filter_list_t *,
-			   stream_filter_list_t *);
+static int	yds_query_format(void *, audio_format_query_t *);
+static int	yds_set_format(void *, int,
+			   const audio_params_t *, const audio_params_t *,
+			   audio_filter_reg_t *, audio_filter_reg_t *);
 static int	yds_round_blocksize(void *, int, int, const audio_params_t *);
 static int	yds_trigger_output(void *, void *, void *, int,
    void (*)(void *), void *,
@@ -170,7 +168,6 @@ static int	yds_mixer_get_port(void *, mi
 static void *	yds_malloc(void *, int, size_t);
 static void	yds_free(void *, void *, size_t);
 static size_t	yds_round_buffersize(void *, int, size_t);
-static paddr_t	yds_mappage(void *, void *, off_t, int);
 static int	yds_get_props(void *);
 static int	yds_query_devinfo(void *, mixer_devinfo_t *);
 static void	yds_get_locks(void *, kmutex_t **, kmutex_t **);
@@ -206,8 +203,8 @@ static const struct audio_hw_if yds_hw_i
 	.open		  = yds_open,
 	.close		  = yds_close,
 	.drain		  = NULL,
-	.query_encoding	  = yds_query_encoding,
-	.set_params	  = yds_set_params,
+	.query_format	  = yds_query_format,
+	.set_format	  = yds_set_format,
 	.round_blocksize  = yds_round_blocksize,
 	.commit_settings  = NULL,
 	.init_output	  = NULL,
@@ -225,7 +222,6 @@ static const struct audio_hw_if yds_hw_i
 	.allocm		  = yds_malloc,
 	.freem		  = yds_free,
 	.round_buffersize = yds_round_buffersize,
-	.mappage	  = yds_mappage,
 	.get_props	  = yds_get_props,
 	.trigger_output	  = yds_trigger_output,
 	.trigger_input	  = yds_trigger_input,
@@ -267,22 +263,18 @@ static const struct {
 #define YDS_CAP_BITS	"\020\005P44\004LEGFLEX\003LEGSEL\002MCODE1E\001MCODE1"
 #endif
 
-#define YDS_FORMAT(enc, prec, ch, chmask) \
-	{ \
-		.mode		= AUMODE_PLAY | AUMODE_RECORD, \
-		.encoding	= (enc), \
-		.validbits	= (prec), \
-		.precision	= (prec), \
-		.channels	= (ch), \
-		.channel_mask	= (chmask), \
-		.frequency_type	= 0, \
-		.frequency	= { 4000, 48000 }, \
-	}
 static const struct audio_format yds_formats[] = {
-	YDS_FORMAT(AUDIO_ENCODING_SLINEAR_LE, 16, 2, AUFMT_STEREO),
-	YDS_FORMAT(AUDIO_ENCODING_SLINEAR_LE, 16, 1, AUFMT_MONAURAL),
-	YDS_FORMAT(AUDIO_ENCODING_ULINEAR_LE,  8, 2, AUFMT_STEREO),
-	YDS_FORMAT(AUDIO_ENCODING_ULINEAR_LE,  8, 1, AUFMT_MONAURAL),
+	{
+		.mode		= AUMODE_PLAY | AUMODE_RECORD,
+		.encoding	= AUDIO_ENCODING_SLINEAR_LE,
+		.validbits	= 16,
+		.precision	= 16,
+		.channels	= 2,
+		.channel_mask	= AUFMT_STEREO,
+		.frequency_type	= 8,
+		.frequency	=
+		{ 5512, 8000, 11025, 16000, 22050, 32000, 44100, 48000 },
+	},
 };
 #define	YDS_NFORMATS	(sizeof(yds_formats) / sizeof(struct audio_format))
 
@@ -937,13 +929,6 @@ detected:
 		}
 	}
 
-	if (0 != auconv_create_encodings(yds_formats, YDS_NFORMATS,
-	>sc_encodings)) {
-		mutex_destroy(>sc_lock);
-		mutex_destroy(>sc_intr_lock);
-		return;
-	}
-
 	audio_attach_mi(_hw_if, sc, self);
 
 	sc->sc_legacy_iot = pa->pa_iot;
@@ -1253,29 +1238,17 @@ yds_close(void *addr)
 }
 
 static int
-yds_query_encoding(void *addr, struct audio_encoding *fp)
+yds_query_format(void *addr, audio_format_query_t *afp)
 {
-	struct yds_softc *sc;
 
-	sc = addr;
-	return auconv_query_encoding(sc->sc_encodings, fp);
+	return audio_query_format(yds_formats, YDS_NFORMATS, afp);
 }
 
 static int
-yds_set_params(void *addr, int setmode, int usemode,
-	   audio_params_t *play, audio_params_t* rec,
-	   stream_filter_list_t *pfil, stream_filter_list_t *rfil)

CVS commit: src/sys/compat/common

2019-04-29 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Mon Apr 29 08:31:29 UTC 2019

Modified Files:
src/sys/compat/common: rtsock_50.c rtsock_70.c

Log Message:
Move the set-up of the net.oroute... sysctl tree to compat_50 since
the new AF_ROUTE was introduced in NetBSD-6.0


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/compat/common/rtsock_50.c
cvs rdiff -u -r1.6 -r1.7 src/sys/compat/common/rtsock_70.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/compat/common/rtsock_50.c
diff -u src/sys/compat/common/rtsock_50.c:1.10 src/sys/compat/common/rtsock_50.c:1.11
--- src/sys/compat/common/rtsock_50.c:1.10	Fri Mar  1 11:06:56 2019
+++ src/sys/compat/common/rtsock_50.c	Mon Apr 29 08:31:29 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: rtsock_50.c,v 1.10 2019/03/01 11:06:56 pgoyette Exp $	*/
+/*	$NetBSD: rtsock_50.c,v 1.11 2019/04/29 08:31:29 pgoyette Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -61,7 +61,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.10 2019/03/01 11:06:56 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,v 1.11 2019/04/29 08:31:29 pgoyette Exp $");
 
 #define	COMPAT_RTSOCK	/* Use the COMPATNAME/COMPATCALL macros and the
 			 * various other compat definitions - see
@@ -71,6 +71,8 @@ __KERNEL_RCSID(0, "$NetBSD: rtsock_50.c,
 #include 
 #include 
 
+struct sysctllog *clog;
+
 void
 compat_50_rt_oifmsg(struct ifnet *ifp)
 {
@@ -164,12 +166,14 @@ rtsock_50_init(void)
 	compat_50_rt_ifannouncemsg);
 	MODULE_HOOK_SET(rtsock_rt_ieee80211msg_50_hook, "rts_50",
 	compat_50_rt_ieee80211msg);
+	sysctl_net_route_setup(, PF_OROUTE, "ortable");
 }
  
 void
 rtsock_50_fini(void)
 {  
 
+	sysctl_teardown();
 	MODULE_HOOK_UNSET(rtsock_iflist_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_oifmsg_50_hook); 
 	MODULE_HOOK_UNSET(rtsock_rt_missmsg_50_hook); 

Index: src/sys/compat/common/rtsock_70.c
diff -u src/sys/compat/common/rtsock_70.c:1.6 src/sys/compat/common/rtsock_70.c:1.7
--- src/sys/compat/common/rtsock_70.c:1.6	Mon Apr 29 05:42:09 2019
+++ src/sys/compat/common/rtsock_70.c	Mon Apr 29 08:31:29 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: rtsock_70.c,v 1.6 2019/04/29 05:42:09 pgoyette Exp $	*/
+/*	$NetBSD: rtsock_70.c,v 1.7 2019/04/29 08:31:29 pgoyette Exp $	*/
 
 /*
  * Copyright (c) 2016 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rtsock_70.c,v 1.6 2019/04/29 05:42:09 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtsock_70.c,v 1.7 2019/04/29 08:31:29 pgoyette Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -46,8 +46,6 @@ __KERNEL_RCSID(0, "$NetBSD: rtsock_70.c,
 #include 
 #include 
 
-struct sysctllog *clog;
-
 void
 compat_70_rt_newaddrmsg1(int cmd, struct ifaddr *ifa)
 {
@@ -124,14 +122,12 @@ rtsock_70_init(void)
 	MODULE_HOOK_SET(rtsock_newaddr_70_hook, "rts_70",
 	compat_70_rt_newaddrmsg1);
 	MODULE_HOOK_SET(rtsock_iflist_70_hook, "rts_70", compat_70_iflist_addr);
-	sysctl_net_route_setup(, PF_OROUTE, "ortable");
 }
 
 void
 rtsock_70_fini(void)
 {
 
-	sysctl_teardown();
 	MODULE_HOOK_UNSET(rtsock_newaddr_70_hook);
 	MODULE_HOOK_UNSET(rtsock_iflist_70_hook);
 }



CVS commit: src

2019-04-29 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Mon Apr 29 07:55:38 UTC 2019

Modified Files:
src/common/lib/libutil: snprintb.c
src/lib/libutil: snprintb.3
src/sys/sys: mman.h
src/tests/lib/libutil: t_snprintb.c

Log Message:
snprintb(3) says that, in the new(?) Torek format, all fields specs end with \0
The F spec is one of those, it should be terminated with \0 just like all
the others (irrelevant that it has no extra data to delimit).

Fix  to define the snprintb() format string correctly (include
the missing \0's).   Fix the copy of that definition included into
snprintb(3) to match the updated mman.h version (ride the date bump
from the day before yesterday .. this is the same change, just corrected).

Undo the previous snprintb.c change ("off by one" fix) which was an
attempt to make the broken mman.h usage work (and did, but not the way
it should be done).   Also, after using the new * format (instead of only
when something has already matched) skip the associated data so we don't
attempt to interpret it as more field specifiers.  This func needs lots of TLC!

Fix the ATF tests for snprintb() to not assume that F format is really
exactly like f format, and has data after the field specifier.  It doesn't.
Add several more tests (including testing the '*' field operator
recently added).


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/common/lib/libutil/snprintb.c
cvs rdiff -u -r1.20 -r1.21 src/lib/libutil/snprintb.3
cvs rdiff -u -r1.58 -r1.59 src/sys/sys/mman.h
cvs rdiff -u -r1.5 -r1.6 src/tests/lib/libutil/t_snprintb.c

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

Modified files:

Index: src/common/lib/libutil/snprintb.c
diff -u src/common/lib/libutil/snprintb.c:1.19 src/common/lib/libutil/snprintb.c:1.20
--- src/common/lib/libutil/snprintb.c:1.19	Sat Apr 27 17:45:28 2019
+++ src/common/lib/libutil/snprintb.c	Mon Apr 29 07:55:38 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: snprintb.c,v 1.19 2019/04/27 17:45:28 christos Exp $	*/
+/*	$NetBSD: snprintb.c,v 1.20 2019/04/29 07:55:38 kre Exp $	*/
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -41,7 +41,7 @@
 
 #  include 
 #  if defined(LIBC_SCCS) && !defined(lint)
-__RCSID("$NetBSD: snprintb.c,v 1.19 2019/04/27 17:45:28 christos Exp $");
+__RCSID("$NetBSD: snprintb.c,v 1.20 2019/04/29 07:55:38 kre Exp $");
 #  endif
 
 #  include 
@@ -51,7 +51,7 @@ __RCSID("$NetBSD: snprintb.c,v 1.19 2019
 #  include 
 # else /* ! _KERNEL */
 #  include 
-__KERNEL_RCSID(0, "$NetBSD: snprintb.c,v 1.19 2019/04/27 17:45:28 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: snprintb.c,v 1.20 2019/04/29 07:55:38 kre Exp $");
 #  include 
 #  include 
 #  include 
@@ -226,8 +226,12 @@ snprintb_m(char *buf, size_t buflen, con
 PUTSEP;
 if (restart == 0)
 	sep = ',';
-if (ch == 'F') 		/* just extract */
+if (ch == 'F') {	/* just extract */
+	/* duplicate PUTS() effect on bitfmt */
+	while (*bitfmt++ != '\0')
+		continue;
 	break;
+}
 if (restart == 0)
 	PUTS(bitfmt);
 if (restart == 0)
@@ -258,7 +262,6 @@ snprintb_m(char *buf, size_t buflen, con
 if (!matched) {
 	matched = 1;
 	FMTSTR(bitfmt, field);
-	break;
 }
 /*FALLTHROUGH*/
 			default:

Index: src/lib/libutil/snprintb.3
diff -u src/lib/libutil/snprintb.3:1.20 src/lib/libutil/snprintb.3:1.21
--- src/lib/libutil/snprintb.3:1.20	Sat Apr 27 17:58:51 2019
+++ src/lib/libutil/snprintb.3	Mon Apr 29 07:55:38 2019
@@ -1,4 +1,4 @@
-.\" $NetBSD: snprintb.3,v 1.20 2019/04/27 17:58:51 wiz Exp $
+.\" $NetBSD: snprintb.3,v 1.21 2019/04/29 07:55:38 kre Exp $
 .\"
 .\" Copyright (c) 1998 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -280,11 +280,11 @@ b\e7INHERIT\e0\e
 b\e11HASSEMAPHORE\e0\e
 b\e12TRYFIXED\e0\e
 b\e13WIRED\e0\e
-F\e14\e1\e
+F\e14\e1\e0\e
 :\e0FILE\e0\e
 :\e1ANONYMOUS\e0\e
 b\e15STACK\e0\e
-F\e30\e010\e
+F\e30\e010\e0\e
 :\e000ALIGN=NONE\e0\e
 :\e012ALIGN=1KB\e0\e
 :\e013ALIGN=2KB\e0\e

Index: src/sys/sys/mman.h
diff -u src/sys/sys/mman.h:1.58 src/sys/sys/mman.h:1.59
--- src/sys/sys/mman.h:1.58	Sat Apr 27 17:53:26 2019
+++ src/sys/sys/mman.h	Mon Apr 29 07:55:38 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: mman.h,v 1.58 2019/04/27 17:53:26 christos Exp $	*/
+/*	$NetBSD: mman.h,v 1.59 2019/04/29 07:55:38 kre Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1986, 1993
@@ -128,11 +128,11 @@ b\7INHERIT\0\
 b\11HASSEMAPHORE\0\
 b\12TRYFIXED\0\
 b\13WIRED\0\
-F\14\1\
+F\14\1\0\
 :\0FILE\0\
 :\1ANONYMOUS\0\
 b\15STACK\0\
-F\30\010\
+F\30\010\0\
 :\000ALIGN=NONE\0\
 :\012ALIGN=1KB\0\
 :\013ALIGN=2KB\0\

Index: src/tests/lib/libutil/t_snprintb.c
diff -u src/tests/lib/libutil/t_snprintb.c:1.5 src/tests/lib/libutil/t_snprintb.c:1.6
--- src/tests/lib/libutil/t_snprintb.c:1.5	Sat Oct 14 18:41:44 2017
+++ src/tests/lib/libutil/t_snprintb.c	Mon Apr 29 07:55:38 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: t_snprintb.c,v 1.5 2017/10/14 18:41:44 ryo Exp