CVS commit: src/external/mit/xorg/lib/gallium

2019-06-08 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Jun  9 01:56:49 UTC 2019

Modified Files:
src/external/mit/xorg/lib/gallium: Makefile

Log Message:
add ARMDisassembler for the arm section.  fixes linkage issue.

unfortunately, this doesn't work.  something generates code
with an R_ARM_REL32 relocation and the
llvm::RuntimeDyldELF::resolveARMRelocation() function doesn not
support this and boom:

500   switch (Type) {
501   default:
502 llvm_unreachable("Not implemented relocation type!");


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/external/mit/xorg/lib/gallium/Makefile

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

Modified files:

Index: src/external/mit/xorg/lib/gallium/Makefile
diff -u src/external/mit/xorg/lib/gallium/Makefile:1.31 src/external/mit/xorg/lib/gallium/Makefile:1.32
--- src/external/mit/xorg/lib/gallium/Makefile:1.31	Fri Jun  7 12:11:43 2019
+++ src/external/mit/xorg/lib/gallium/Makefile	Sun Jun  9 01:56:49 2019
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.31 2019/06/07 12:11:43 mrg Exp $
+# $NetBSD: Makefile,v 1.32 2019/06/09 01:56:49 mrg Exp $
 
 # Link the gallium mega driver.
 
@@ -1013,6 +1013,7 @@ LLVMRT_LIBS+=	\
 # XXX duplicates
 LLVMRT_LIBS+=	\
 		ARMCodeGen \
+		ARMDisassembler \
 		ARMTargetInfo \
 		ARMMCTargetDesc \
 		ARMAsmParser \



CVS commit: src/external/mit/xorg/lib/gallium

2019-06-08 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sun Jun  9 01:56:49 UTC 2019

Modified Files:
src/external/mit/xorg/lib/gallium: Makefile

Log Message:
add ARMDisassembler for the arm section.  fixes linkage issue.

unfortunately, this doesn't work.  something generates code
with an R_ARM_REL32 relocation and the
llvm::RuntimeDyldELF::resolveARMRelocation() function doesn not
support this and boom:

500   switch (Type) {
501   default:
502 llvm_unreachable("Not implemented relocation type!");


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/external/mit/xorg/lib/gallium/Makefile

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



CVS commit: src/sys/uvm

2019-06-08 Thread Chuck Silvers
Module Name:src
Committed By:   chs
Date:   Sat Jun  8 23:48:33 UTC 2019

Modified Files:
src/sys/uvm: uvm_map.c

Log Message:
in uvm_map_protect(), do a pmap_update() before possibly switching from
removing pmap entries to creating them.  this fixes the problem reported in
https://syzkaller.appspot.com/bug?id=cc89e47f05e4eea2fd69bcccb5e837f8d1ab4d60


To generate a diff of this commit:
cvs rdiff -u -r1.359 -r1.360 src/sys/uvm/uvm_map.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/uvm/uvm_map.c
diff -u src/sys/uvm/uvm_map.c:1.359 src/sys/uvm/uvm_map.c:1.360
--- src/sys/uvm/uvm_map.c:1.359	Thu Mar 14 19:10:04 2019
+++ src/sys/uvm/uvm_map.c	Sat Jun  8 23:48:33 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: uvm_map.c,v 1.359 2019/03/14 19:10:04 kre Exp $	*/
+/*	$NetBSD: uvm_map.c,v 1.360 2019/06/08 23:48:33 chs Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -66,7 +66,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: uvm_map.c,v 1.359 2019/03/14 19:10:04 kre Exp $");
+__KERNEL_RCSID(0, "$NetBSD: uvm_map.c,v 1.360 2019/06/08 23:48:33 chs Exp $");
 
 #include "opt_ddb.h"
 #include "opt_pax.h"
@@ -3127,6 +3127,17 @@ uvm_map_protect(struct vm_map *map, vadd
 		VM_MAPENT_ISWIRED(current) == 0 &&
 		old_prot == VM_PROT_NONE &&
 		new_prot != VM_PROT_NONE) {
+
+			/*
+			 * We must call pmap_update() here because the
+			 * pmap_protect() call above might have removed some
+			 * pmap entries and uvm_map_pageable() might create
+			 * some new pmap entries that rely on the prior
+			 * removals being completely finished.
+			 */
+
+			pmap_update(map->pmap);
+
 			if (uvm_map_pageable(map, current->start,
 			current->end, false,
 			UVM_LK_ENTER|UVM_LK_EXIT) != 0) {



CVS commit: src/sys/uvm

2019-06-08 Thread Chuck Silvers
Module Name:src
Committed By:   chs
Date:   Sat Jun  8 23:48:33 UTC 2019

Modified Files:
src/sys/uvm: uvm_map.c

Log Message:
in uvm_map_protect(), do a pmap_update() before possibly switching from
removing pmap entries to creating them.  this fixes the problem reported in
https://syzkaller.appspot.com/bug?id=cc89e47f05e4eea2fd69bcccb5e837f8d1ab4d60


To generate a diff of this commit:
cvs rdiff -u -r1.359 -r1.360 src/sys/uvm/uvm_map.c

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



CVS commit: src/sys/netinet

2019-06-08 Thread Robert Swindells
Module Name:src
Committed By:   rjs
Date:   Sat Jun  8 23:23:34 UTC 2019

Modified Files:
src/sys/netinet: sctp_asconf.h sctp_pcb.h

Log Message:
Don't need 'extern' for function prototypes.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/netinet/sctp_asconf.h
cvs rdiff -u -r1.1 -r1.2 src/sys/netinet/sctp_pcb.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/netinet/sctp_asconf.h
diff -u src/sys/netinet/sctp_asconf.h:1.2 src/sys/netinet/sctp_asconf.h:1.3
--- src/sys/netinet/sctp_asconf.h:1.2	Sun Feb 24 17:01:52 2019
+++ src/sys/netinet/sctp_asconf.h	Sat Jun  8 23:23:34 2019
@@ -1,5 +1,5 @@
 /*	$KAME: sctp_asconf.h,v 1.8 2005/03/06 16:04:16 itojun Exp $	*/
-/*	$NetBSD: sctp_asconf.h,v 1.2 2019/02/24 17:01:52 kamil Exp $ */
+/*	$NetBSD: sctp_asconf.h,v 1.3 2019/06/08 23:23:34 rjs Exp $ */
 
 #ifndef _NETINET_SCTP_ASCONF_H_
 #define _NETINET_SCTP_ASCONF_H_
@@ -43,29 +43,29 @@ struct sockaddr;
 struct sctp_inpcb;
 struct sctp_asconf_ack_chunk;
 
-extern void sctp_asconf_cleanup(struct sctp_tcb *, struct sctp_nets *);
+void sctp_asconf_cleanup(struct sctp_tcb *, struct sctp_nets *);
 
-extern struct mbuf *sctp_compose_asconf(struct sctp_tcb *);
+struct mbuf *sctp_compose_asconf(struct sctp_tcb *);
 
-extern void sctp_handle_asconf(struct mbuf *, unsigned int, struct sctp_asconf_chunk *,
+void sctp_handle_asconf(struct mbuf *, unsigned int, struct sctp_asconf_chunk *,
 	struct sctp_tcb *, struct sctp_nets *);
 
-extern void sctp_handle_asconf_ack(struct mbuf *, int,
+void sctp_handle_asconf_ack(struct mbuf *, int,
 	struct sctp_asconf_ack_chunk *, struct sctp_tcb *, struct sctp_nets *);
 
-extern uint32_t sctp_addr_mgmt_ep_sa(struct sctp_inpcb *, struct sockaddr *,
+uint32_t sctp_addr_mgmt_ep_sa(struct sctp_inpcb *, struct sockaddr *,
 	uint16_t);
 
-extern void sctp_add_ip_address(struct ifaddr *);
+void sctp_add_ip_address(struct ifaddr *);
 
-extern void sctp_delete_ip_address(struct ifaddr *);
+void sctp_delete_ip_address(struct ifaddr *);
 
-extern int32_t sctp_set_primary_ip_address_sa(struct sctp_tcb *,
+int32_t sctp_set_primary_ip_address_sa(struct sctp_tcb *,
 	struct sockaddr *);
 
-extern void sctp_set_primary_ip_address(struct ifaddr *);
+void sctp_set_primary_ip_address(struct ifaddr *);
 
-extern void sctp_check_address_list(struct sctp_tcb *, struct mbuf *, int, int,
+void sctp_check_address_list(struct sctp_tcb *, struct mbuf *, int, int,
 	struct sockaddr *, uint16_t, uint16_t, uint16_t, uint16_t);
 
 #endif /* _KERNEL */

Index: src/sys/netinet/sctp_pcb.h
diff -u src/sys/netinet/sctp_pcb.h:1.1 src/sys/netinet/sctp_pcb.h:1.2
--- src/sys/netinet/sctp_pcb.h:1.1	Tue Oct 13 21:28:35 2015
+++ src/sys/netinet/sctp_pcb.h	Sat Jun  8 23:23:34 2019
@@ -1,5 +1,5 @@
 /*	$KAME: sctp_pcb.h,v 1.21 2005/07/16 01:18:47 suz Exp $	*/
-/*	$NetBSD: sctp_pcb.h,v 1.1 2015/10/13 21:28:35 rjs Exp $ */
+/*	$NetBSD: sctp_pcb.h,v 1.2 2019/06/08 23:23:34 rjs Exp $ */
 
 #ifndef __SCTP_PCB_H__
 #define __SCTP_PCB_H__
@@ -754,7 +754,7 @@ int
 sctp_initiate_iterator(asoc_func af, uint32_t, uint32_t, void *, uint32_t,
 		   end_func ef, struct sctp_inpcb *);
 
-extern void in6_sin6_2_sin (struct sockaddr_in *,
+void in6_sin6_2_sin (struct sockaddr_in *,
 struct sockaddr_in6 *sin6);
 
 #endif /* _KERNEL */



CVS commit: src/sys/netinet

2019-06-08 Thread Robert Swindells
Module Name:src
Committed By:   rjs
Date:   Sat Jun  8 23:23:34 UTC 2019

Modified Files:
src/sys/netinet: sctp_asconf.h sctp_pcb.h

Log Message:
Don't need 'extern' for function prototypes.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/netinet/sctp_asconf.h
cvs rdiff -u -r1.1 -r1.2 src/sys/netinet/sctp_pcb.h

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



CVS commit: src/external/gpl3/gdb/dist/gdb

2019-06-08 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Jun  8 14:59:01 UTC 2019

Modified Files:
src/external/gpl3/gdb/dist/gdb: aarch64-nbsd-nat.c

Log Message:
make this compile.  now arm64 gdb works again.  yay.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c

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



CVS commit: src/external/gpl3/gdb/dist/gdb

2019-06-08 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Jun  8 14:59:01 UTC 2019

Modified Files:
src/external/gpl3/gdb/dist/gdb: aarch64-nbsd-nat.c

Log Message:
make this compile.  now arm64 gdb works again.  yay.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.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/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c
diff -u src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c:1.4 src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c:1.5
--- src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c:1.4	Thu May 30 01:19:36 2019
+++ src/external/gpl3/gdb/dist/gdb/aarch64-nbsd-nat.c	Sat Jun  8 14:59:01 2019
@@ -59,7 +59,7 @@ getfpregs_supplies (struct gdbarch *gdba
 }
 
 void
-aarch64_nbsd_nat_target::fetch_registers (struct regcache *regcache, int regno)
+aarch64_nbsd_nat_target::fetch_registers (struct regcache *regcache, int regnum)
 {
   ptid_t ptid = regcache->ptid ();
   pid_t pid = ptid.pid ();
@@ -93,7 +93,7 @@ aarch64_nbsd_nat_target::fetch_registers
this for all registers.  */
 
 void
-aarch64_nbsd_nat_target::store_registers (struct regcache *regcache, int regno)
+aarch64_nbsd_nat_target::store_registers (struct regcache *regcache, int regnum)
 {
   ptid_t ptid = regcache->ptid ();
   pid_t pid = ptid.pid ();
@@ -110,7 +110,7 @@ aarch64_nbsd_nat_target::store_registers
   regcache_collect_regset (&aarch64_nbsd_gregset, regcache,regnum, ®s,
 			   sizeof (regs));
 
-  if (ptrace (PT_SETREGS, pid, (PTRACE_TYPE_ARG3) ®s, tid) == -1)
+  if (ptrace (PT_SETREGS, pid, (PTRACE_TYPE_ARG3) ®s, lwp) == -1)
 	perror_with_name (_("Couldn't write registers"));
 }
 
@@ -118,13 +118,13 @@ aarch64_nbsd_nat_target::store_registers
 {
   struct fpreg fpregs;
 
-  if (ptrace (PT_GETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, tid) == -1)
+  if (ptrace (PT_GETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, lwp) == -1)
 	perror_with_name (_("Couldn't get floating point status"));
 
   regcache_collect_regset (&aarch64_nbsd_fpregset, regcache,regnum, &fpregs,
 sizeof (fpregs));
 
-  if (ptrace (PT_SETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, tid) == -1)
+  if (ptrace (PT_SETFPREGS, pid, (PTRACE_TYPE_ARG3) &fpregs, lwp) == -1)
 	perror_with_name (_("Couldn't write floating point status"));
 }
 }



CVS commit: src/share/misc

2019-06-08 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Sat Jun  8 13:13:01 UTC 2019

Modified Files:
src/share/misc: acronyms.comp

Log Message:
Add MAMR


To generate a diff of this commit:
cvs rdiff -u -r1.262 -r1.263 src/share/misc/acronyms.comp

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

Modified files:

Index: src/share/misc/acronyms.comp
diff -u src/share/misc/acronyms.comp:1.262 src/share/misc/acronyms.comp:1.263
--- src/share/misc/acronyms.comp:1.262	Fri Jun  7 11:41:44 2019
+++ src/share/misc/acronyms.comp	Sat Jun  8 13:13:01 2019
@@ -1,4 +1,4 @@
-$NetBSD: acronyms.comp,v 1.262 2019/06/07 11:41:44 sevan Exp $
+$NetBSD: acronyms.comp,v 1.263 2019/06/08 13:13:01 pgoyette Exp $
 3WHS	three-way handshake
 8VSB	8-state vestigial side band modulation
 AA	anti-aliasing
@@ -853,6 +853,7 @@ MAC	mandatory access control
 MAC	{media,medium} access control
 MAC	message authentication {check,code}
 MADT	multiple APIC descriptor table
+MAMR	microwave-assisted magnetic recording
 MB	megabyte
 MBA	multi-boot agent
 MBR	master boot record



CVS commit: src/share/misc

2019-06-08 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Sat Jun  8 13:13:01 UTC 2019

Modified Files:
src/share/misc: acronyms.comp

Log Message:
Add MAMR


To generate a diff of this commit:
cvs rdiff -u -r1.262 -r1.263 src/share/misc/acronyms.comp

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



CVS commit: src/external/gpl3/gdb

2019-06-08 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun  8 12:47:44 UTC 2019

Modified Files:
src/external/gpl3/gdb/dist/gdb: configure.nat
src/external/gpl3/gdb/lib/libgdb/arch/aarch64: defs.mk init.c

Log Message:
add a section for arch64-nbsd and regen.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/gdb/dist/gdb/configure.nat
cvs rdiff -u -r1.2 -r1.3 \
src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk \
src/external/gpl3/gdb/lib/libgdb/arch/aarch64/init.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/gpl3/gdb/dist/gdb/configure.nat
diff -u src/external/gpl3/gdb/dist/gdb/configure.nat:1.2 src/external/gpl3/gdb/dist/gdb/configure.nat:1.3
--- src/external/gpl3/gdb/dist/gdb/configure.nat:1.2	Wed May 29 18:07:47 2019
+++ src/external/gpl3/gdb/dist/gdb/configure.nat	Sat Jun  8 08:47:43 2019
@@ -332,6 +332,10 @@ case ${gdb_host} in
 	NATDEPFILES="${NATDEPFILES} nbsd-nat.o bsd-kvm.o"
 	LOADLIBES='-lkvm'
 	case ${gdb_host_cpu} in
+	aarch64)
+		# Host: NetBSD/aarch64
+		NATDEPFILES="${NATDEPFILES} aarch64-nbsd-nat.o"
+		;;
 	alpha)
 		# Host: NetBSD/alpha
 		NATDEPFILES="${NATDEPFILES} alpha-bsd-nat.o"

Index: src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk
diff -u src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk:1.2 src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk:1.3
--- src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk:1.2	Thu May 30 09:43:03 2019
+++ src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk	Sat Jun  8 08:47:44 2019
@@ -3,5 +3,5 @@
 # Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp 
 #
 G_INTERNAL_CFLAGS=   -I. -I${GNUHOSTDIST}/gdb -I${GNUHOSTDIST}/gdb/config -DLOCALEDIR=\"/usr/share/locale\" -DHAVE_CONFIG_H -I${GNUHOSTDIST}/gdb/../include/opcode -I${GNUHOSTDIST}/gdb/../readline/.. -I${GNUHOSTDIST}/gdb/../zlib -I../bfd -I${GNUHOSTDIST}/gdb/../bfd -I${GNUHOSTDIST}/gdb/../include -I../libdecnumber -I${GNUHOSTDIST}/gdb/../libdecnumber -I./../intl -I${GNUHOSTDIST}/gdb/gnulib/import -Ibuild-gnulib/import  -DTUI=1 -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-variable -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-error=maybe-uninitialized -Wsuggest-override -Wimplicit-fallthrough=3 -Wduplicated-cond -Wshadow=local -Wformat -Wformat-nonliteral 
-G_LIBGDB_OBS=aarch64-nbsd-tdep.o aarch64-ravenscar-thread.o aarch64-tdep.o ada-exp.o ada-lang.o ada-tasks.o ada-typeprint.o ada-valprint.o ada-varobj.o addrmap.o agent.o annotate.o arch-utils.o aarch64-insn.o aarch64.o auto-load.o auxv.o ax-gdb.o ax-general.o bcache.o bfd-target.o block.o blockframe.o break-catch-sig.o break-catch-syscall.o break-catch-throw.o breakpoint.o bsd-kvm.o btrace.o build-id.o buildsym-legacy.o buildsym.o c-exp.o c-lang.o c-typeprint.o c-valprint.o c-varobj.o charset.o cli-out.o cli-cmds.o cli-decode.o cli-dump.o cli-interp.o cli-logging.o cli-script.o cli-setshow.o cli-style.o cli-utils.o coff-pe-read.o coffread.o common-agent.o btrace-common.o buffer.o cleanups.o common-debug.o common-exceptions.o common-regcache.o common-utils.o environ.o errors.o fileio.o filestuff.o format.o gdb_tilde_expand.o gdb_vecs.o job-control.o netstuff.o new-op.o pathstuff.o posix-strerror.o print-utils.o ptid.o rsp-low.o run-time-clock.o scoped_mmap.o signals-state-save-restor
 e.o signals.o tdesc.o vec.o xml-utils.o compile-c-support.o compile-c-symbols.o compile-c-types.o compile-cplus-symbols.o compile-cplus-types.o compile-loc2c.o compile-object-load.o compile-object-run.o compile.o complaints.o completer.o continuations.o copying.o corefile.o corelow.o cp-abi.o cp-name-parser.o cp-namespace.o cp-support.o cp-valprint.o ctf.o d-exp.o d-lang.o d-namespace.o d-valprint.o dbxread.o dcache.o debug.o demangle.o dictionary.o disasm-selftests.o disasm.o dtrace-probe.o dummy-frame.o dwarf-index-cache.o dwarf-index-common.o dwarf-index-write.o dwarf2-frame-tailcall.o dwarf2-frame.o dwarf2expr.o dwarf2loc.o dwarf2read.o elfread.o eval.o event-loop.o event-top.o exceptions.o exec.o expprint.o extension.o f-exp.o f-lang.o f-typeprint.o f-valprint.o filename-seen-cache.o filesystem.o findcmd.o findvar.o fork-child.o frame-base.o frame-unwind.o frame.o gcore.o gdb-dlfcn.o gdb_bfd.o gdb_obstack.o gdb_regex.o gdb_usleep.o gdbarch-selftests.o gdbarch.o gdbtypes.o gnu-v
 2-abi.o gnu-v3-abi.o go-exp.o go-lang.o go-typeprint.o go-valprint.o guile.o inf-child.o inf-loop.o inf-ptrace.o infcall.o infcmd.o inferior.o inflow.o infrun.o inline-frame.o interps.o jit.o language.o linespec.o location.o m2-exp.o m2-lang.o m2-typeprint.o m2-valprint.o macrocmd.o macroexp.o macroscope.o macrotab.o main.o maint.o mdebugread.o mem-break.o memattr.o memory-map.o memrange.o mi-cmd-break.o mi-cmd-catch.o mi-cmd-disas.o mi-cmd-env.o mi-cmd-file.o mi

CVS commit: src/external/gpl3/gdb

2019-06-08 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun  8 12:47:44 UTC 2019

Modified Files:
src/external/gpl3/gdb/dist/gdb: configure.nat
src/external/gpl3/gdb/lib/libgdb/arch/aarch64: defs.mk init.c

Log Message:
add a section for arch64-nbsd and regen.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/gdb/dist/gdb/configure.nat
cvs rdiff -u -r1.2 -r1.3 \
src/external/gpl3/gdb/lib/libgdb/arch/aarch64/defs.mk \
src/external/gpl3/gdb/lib/libgdb/arch/aarch64/init.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/arm/arm32

2019-06-08 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Sat Jun  8 11:57:27 UTC 2019

Modified Files:
src/sys/arch/arm/arm32: bus_dma.c

Log Message:
Fix comment


To generate a diff of this commit:
cvs rdiff -u -r1.113 -r1.114 src/sys/arch/arm/arm32/bus_dma.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/arm32/bus_dma.c
diff -u src/sys/arch/arm/arm32/bus_dma.c:1.113 src/sys/arch/arm/arm32/bus_dma.c:1.114
--- src/sys/arch/arm/arm32/bus_dma.c:1.113	Fri Sep 14 10:13:02 2018
+++ src/sys/arch/arm/arm32/bus_dma.c	Sat Jun  8 11:57:27 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: bus_dma.c,v 1.113 2018/09/14 10:13:02 skrll Exp $	*/
+/*	$NetBSD: bus_dma.c,v 1.114 2019/06/08 11:57:27 skrll Exp $	*/
 
 /*-
  * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
 #include "opt_cputypes.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.113 2018/09/14 10:13:02 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bus_dma.c,v 1.114 2019/06/08 11:57:27 skrll Exp $");
 
 #include 
 #include 
@@ -1022,9 +1022,6 @@ _bus_dmamap_sync_uio(bus_dma_tag_t t, bu
  * Common function for DMA map synchronization.  May be called
  * by bus-specific DMA map synchronization functions.
  *
- * This version works for the Virtually Indexed Virtually Tagged
- * cache found on 32-bit ARM processors.
- *
  * XXX Should have separate versions for write-through vs.
  * XXX write-back caches.  We currently assume write-back
  * XXX here, which is not as efficient as it could be for



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

2019-06-08 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Sat Jun  8 11:57:27 UTC 2019

Modified Files:
src/sys/arch/arm/arm32: bus_dma.c

Log Message:
Fix comment


To generate a diff of this commit:
cvs rdiff -u -r1.113 -r1.114 src/sys/arch/arm/arm32/bus_dma.c

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



CVS commit: src/sys/dev/audio

2019-06-08 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Sat Jun  8 08:20:11 UTC 2019

Modified Files:
src/sys/dev/audio: audio.c

Log Message:
Improve checking and displaying property.
- Full/half duplex and independentness are valid only on bidirectional
  device.
- MMAP is no longer hardware driver's property.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/audio/audio.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/audio/audio.c
diff -u src/sys/dev/audio/audio.c:1.12 src/sys/dev/audio/audio.c:1.13
--- src/sys/dev/audio/audio.c:1.12	Sat Jun  8 08:02:37 2019
+++ src/sys/dev/audio/audio.c	Sat Jun  8 08:20:10 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: audio.c,v 1.12 2019/06/08 08:02:37 isaki Exp $	*/
+/*	$NetBSD: audio.c,v 1.13 2019/06/08 08:20:10 isaki Exp $	*/
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -142,7 +142,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: audio.c,v 1.12 2019/06/08 08:02:37 isaki Exp $");
+__KERNEL_RCSID(0, "$NetBSD: audio.c,v 1.13 2019/06/08 08:20:10 isaki Exp $");
 
 #ifdef _KERNEL_OPT
 #include "audio.h"
@@ -838,7 +838,10 @@ audioattach(device_t parent, device_t se
 	audio_filter_reg_t rfil;
 	const struct sysctlnode *node;
 	void *hdlp;
-	bool is_indep;
+	bool has_playback;
+	bool has_capture;
+	bool has_indep;
+	bool has_fulldup;
 	int mode;
 	int props;
 	int error;
@@ -884,38 +887,47 @@ audioattach(device_t parent, device_t se
 	props = audio_get_props(sc);
 	mutex_exit(sc->sc_lock);
 
-	if ((props & AUDIO_PROP_FULLDUPLEX))
-		aprint_normal(": full duplex");
-	else
-		aprint_normal(": half duplex");
+	has_playback = (props & AUDIO_PROP_PLAYBACK);
+	has_capture  = (props & AUDIO_PROP_CAPTURE);
+	has_indep= (props & AUDIO_PROP_INDEPENDENT);
+	has_fulldup  = (props & AUDIO_PROP_FULLDUPLEX);
+
+	KASSERT(has_playback || has_capture);
+	/* Unidirectional device must have neither FULLDUP nor INDEPENDENT. */
+	if (!has_playback || !has_capture) {
+		KASSERT(!has_indep);
+		KASSERT(!has_fulldup);
+	}
 
-	is_indep = (props & AUDIO_PROP_INDEPENDENT);
 	mode = 0;
-	if ((props & AUDIO_PROP_PLAYBACK)) {
+	if (has_playback) {
+		aprint_normal(": playback");
 		mode |= AUMODE_PLAY;
-		aprint_normal(", playback");
 	}
-	if ((props & AUDIO_PROP_CAPTURE)) {
+	if (has_capture) {
+		aprint_normal("%c capture", has_playback ? ',' : ':');
 		mode |= AUMODE_RECORD;
-		aprint_normal(", capture");
 	}
-	if ((props & AUDIO_PROP_MMAP) != 0)
-		aprint_normal(", mmap");
-	if (is_indep)
-		aprint_normal(", independent");
+	if (has_playback && has_capture) {
+		if (has_fulldup)
+			aprint_normal(", full duplex");
+		else
+			aprint_normal(", half duplex");
+
+		if (has_indep)
+			aprint_normal(", independent");
+	}
 
 	aprint_naive("\n");
 	aprint_normal("\n");
 
-	KASSERT((mode & (AUMODE_PLAY | AUMODE_RECORD)) != 0);
-
 	/* probe hw params */
 	memset(&phwfmt, 0, sizeof(phwfmt));
 	memset(&rhwfmt, 0, sizeof(rhwfmt));
 	memset(&pfil, 0, sizeof(pfil));
 	memset(&rfil, 0, sizeof(rfil));
 	mutex_enter(sc->sc_lock);
-	error = audio_hw_probe(sc, is_indep, &mode, &phwfmt, &rhwfmt);
+	error = audio_hw_probe(sc, has_indep, &mode, &phwfmt, &rhwfmt);
 	if (error) {
 		mutex_exit(sc->sc_lock);
 		aprint_error_dev(self, "audio_hw_probe failed, "



CVS commit: src/sys/dev/audio

2019-06-08 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Sat Jun  8 08:20:11 UTC 2019

Modified Files:
src/sys/dev/audio: audio.c

Log Message:
Improve checking and displaying property.
- Full/half duplex and independentness are valid only on bidirectional
  device.
- MMAP is no longer hardware driver's property.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/audio/audio.c

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



CVS commit: src/sys

2019-06-08 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Sat Jun  8 08:02:38 UTC 2019

Modified Files:
src/sys/arch/amiga/dev: aucc.c repulse.c toccata.c
src/sys/arch/arm/iomd: vidcaudio.c
src/sys/arch/arm/sunxi: sunxi_codec.c sunxi_i2s.c
src/sys/arch/arm/xscale: pxa2x0_ac97.c
src/sys/arch/hpcmips/vr: vraiu.c
src/sys/arch/hppa/gsc: harmony.c
src/sys/arch/macppc/dev: awacs.c snapper.c
src/sys/arch/x68k/dev: vs.c
src/sys/arch/zaurus/dev: zaudio.c
src/sys/dev/audio: audio.c
src/sys/dev/bluetooth: btsco.c
src/sys/dev/hdaudio: hdafg.c
src/sys/dev/ic: am7930.c arcofi.c cs4231.c interwave.c tms320av110.c
src/sys/dev/isa: ad1848_isa.c aria.c ess.c gus.c sbdsp.c
src/sys/dev/pci: auacer.c auich.c auixp.c autri.c auvia.c azalia.c
cmpci.c cs428x.c eap.c emuxki.c esa.c esm.c eso.c fms.c gcscaudio.c
neo.c sv.c yds.c
src/sys/dev/sbus: dbri.c
src/sys/dev/tc: bba.c

Log Message:
Clean get_props().
- Make get_props() return AUDIO_PROP_{PLAYBACK,CAPTURE} properly.
  This eliminates need for audio.c to take care of such (old)
  drivers which don't return both of PLAYBACK and CAPTURE.
- All get_props() doesn't need to return AUDIO_PROP_MMAP.
  It is handled in the audio layer now.


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/amiga/dev/aucc.c
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/amiga/dev/repulse.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/amiga/dev/toccata.c
cvs rdiff -u -r1.58 -r1.59 src/sys/arch/arm/iomd/vidcaudio.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/sunxi/sunxi_codec.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/sunxi/sunxi_i2s.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/xscale/pxa2x0_ac97.c
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/hpcmips/vr/vraiu.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/hppa/gsc/harmony.c
cvs rdiff -u -r1.47 -r1.48 src/sys/arch/macppc/dev/awacs.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/macppc/dev/snapper.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/x68k/dev/vs.c
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/zaurus/dev/zaudio.c
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/audio/audio.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/bluetooth/btsco.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/hdaudio/hdafg.c
cvs rdiff -u -r1.58 -r1.59 src/sys/dev/ic/am7930.c
cvs rdiff -u -r1.2 -r1.3 src/sys/dev/ic/arcofi.c
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/ic/cs4231.c
cvs rdiff -u -r1.41 -r1.42 src/sys/dev/ic/interwave.c
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/ic/tms320av110.c
cvs rdiff -u -r1.39 -r1.40 src/sys/dev/isa/ad1848_isa.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/isa/aria.c
cvs rdiff -u -r1.85 -r1.86 src/sys/dev/isa/ess.c
cvs rdiff -u -r1.116 -r1.117 src/sys/dev/isa/gus.c
cvs rdiff -u -r1.140 -r1.141 src/sys/dev/isa/sbdsp.c
cvs rdiff -u -r1.37 -r1.38 src/sys/dev/pci/auacer.c
cvs rdiff -u -r1.156 -r1.157 src/sys/dev/pci/auich.c
cvs rdiff -u -r1.46 -r1.47 src/sys/dev/pci/auixp.c src/sys/dev/pci/fms.c
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/pci/autri.c
cvs rdiff -u -r1.83 -r1.84 src/sys/dev/pci/auvia.c
cvs rdiff -u -r1.87 -r1.88 src/sys/dev/pci/azalia.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/pci/cmpci.c src/sys/dev/pci/sv.c
cvs rdiff -u -r1.19 -r1.20 src/sys/dev/pci/cs428x.c
cvs rdiff -u -r1.100 -r1.101 src/sys/dev/pci/eap.c
cvs rdiff -u -r1.69 -r1.70 src/sys/dev/pci/emuxki.c
cvs rdiff -u -r1.64 -r1.65 src/sys/dev/pci/esa.c
cvs rdiff -u -r1.62 -r1.63 src/sys/dev/pci/esm.c
cvs rdiff -u -r1.70 -r1.71 src/sys/dev/pci/eso.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/pci/gcscaudio.c
cvs rdiff -u -r1.53 -r1.54 src/sys/dev/pci/neo.c
cvs rdiff -u -r1.63 -r1.64 src/sys/dev/pci/yds.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/sbus/dbri.c
cvs rdiff -u -r1.43 -r1.44 src/sys/dev/tc/bba.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/amiga/dev/aucc.c
diff -u src/sys/arch/amiga/dev/aucc.c:1.45 src/sys/arch/amiga/dev/aucc.c:1.46
--- src/sys/arch/amiga/dev/aucc.c:1.45	Wed May  8 13:40:14 2019
+++ src/sys/arch/amiga/dev/aucc.c	Sat Jun  8 08:02:36 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: aucc.c,v 1.45 2019/05/08 13:40:14 isaki Exp $ */
+/*	$NetBSD: aucc.c,v 1.46 2019/06/08 08:02:36 isaki Exp $ */
 
 /*
  * Copyright (c) 1999 Bernardo Innocenti
@@ -46,7 +46,7 @@
 #if NAUCC > 0
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: aucc.c,v 1.45 2019/05/08 13:40:14 isaki Exp $");
+__KERNEL_RCSID(0, "$NetBSD: aucc.c,v 1.46 2019/06/08 08:02:36 isaki Exp $");
 
 #include 
 #include 
@@ -693,7 +693,8 @@ aucc_get_port(void *addr, mixer_ctrl_t *
 int
 aucc_get_props(void *addr)
 {
-	return 0;
+
+	return AUDIO_PROP_PLAYBACK | AUDIO_PROP_CAPTURE;
 }
 
 

Index: src/sys/arch/amiga/dev/repulse.c
diff -u src/sys/arch/amiga/dev/repulse.c:1.22 src/sys/arch/amiga/dev/repulse.c:1.23
--- src/sys/arch/amiga/dev/repulse.c:1.22	Wed May  8 13:40:14 2019
+++ src/sys/arch/amiga/dev/repulse.c	Sat Jun  8 08:02:36 2019

CVS commit: src/sys

2019-06-08 Thread Tetsuya Isaki
Module Name:src
Committed By:   isaki
Date:   Sat Jun  8 08:02:38 UTC 2019

Modified Files:
src/sys/arch/amiga/dev: aucc.c repulse.c toccata.c
src/sys/arch/arm/iomd: vidcaudio.c
src/sys/arch/arm/sunxi: sunxi_codec.c sunxi_i2s.c
src/sys/arch/arm/xscale: pxa2x0_ac97.c
src/sys/arch/hpcmips/vr: vraiu.c
src/sys/arch/hppa/gsc: harmony.c
src/sys/arch/macppc/dev: awacs.c snapper.c
src/sys/arch/x68k/dev: vs.c
src/sys/arch/zaurus/dev: zaudio.c
src/sys/dev/audio: audio.c
src/sys/dev/bluetooth: btsco.c
src/sys/dev/hdaudio: hdafg.c
src/sys/dev/ic: am7930.c arcofi.c cs4231.c interwave.c tms320av110.c
src/sys/dev/isa: ad1848_isa.c aria.c ess.c gus.c sbdsp.c
src/sys/dev/pci: auacer.c auich.c auixp.c autri.c auvia.c azalia.c
cmpci.c cs428x.c eap.c emuxki.c esa.c esm.c eso.c fms.c gcscaudio.c
neo.c sv.c yds.c
src/sys/dev/sbus: dbri.c
src/sys/dev/tc: bba.c

Log Message:
Clean get_props().
- Make get_props() return AUDIO_PROP_{PLAYBACK,CAPTURE} properly.
  This eliminates need for audio.c to take care of such (old)
  drivers which don't return both of PLAYBACK and CAPTURE.
- All get_props() doesn't need to return AUDIO_PROP_MMAP.
  It is handled in the audio layer now.


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/amiga/dev/aucc.c
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/amiga/dev/repulse.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/amiga/dev/toccata.c
cvs rdiff -u -r1.58 -r1.59 src/sys/arch/arm/iomd/vidcaudio.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/sunxi/sunxi_codec.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/sunxi/sunxi_i2s.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/xscale/pxa2x0_ac97.c
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/hpcmips/vr/vraiu.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/hppa/gsc/harmony.c
cvs rdiff -u -r1.47 -r1.48 src/sys/arch/macppc/dev/awacs.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/macppc/dev/snapper.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/x68k/dev/vs.c
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/zaurus/dev/zaudio.c
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/audio/audio.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/bluetooth/btsco.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/hdaudio/hdafg.c
cvs rdiff -u -r1.58 -r1.59 src/sys/dev/ic/am7930.c
cvs rdiff -u -r1.2 -r1.3 src/sys/dev/ic/arcofi.c
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/ic/cs4231.c
cvs rdiff -u -r1.41 -r1.42 src/sys/dev/ic/interwave.c
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/ic/tms320av110.c
cvs rdiff -u -r1.39 -r1.40 src/sys/dev/isa/ad1848_isa.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/isa/aria.c
cvs rdiff -u -r1.85 -r1.86 src/sys/dev/isa/ess.c
cvs rdiff -u -r1.116 -r1.117 src/sys/dev/isa/gus.c
cvs rdiff -u -r1.140 -r1.141 src/sys/dev/isa/sbdsp.c
cvs rdiff -u -r1.37 -r1.38 src/sys/dev/pci/auacer.c
cvs rdiff -u -r1.156 -r1.157 src/sys/dev/pci/auich.c
cvs rdiff -u -r1.46 -r1.47 src/sys/dev/pci/auixp.c src/sys/dev/pci/fms.c
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/pci/autri.c
cvs rdiff -u -r1.83 -r1.84 src/sys/dev/pci/auvia.c
cvs rdiff -u -r1.87 -r1.88 src/sys/dev/pci/azalia.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/pci/cmpci.c src/sys/dev/pci/sv.c
cvs rdiff -u -r1.19 -r1.20 src/sys/dev/pci/cs428x.c
cvs rdiff -u -r1.100 -r1.101 src/sys/dev/pci/eap.c
cvs rdiff -u -r1.69 -r1.70 src/sys/dev/pci/emuxki.c
cvs rdiff -u -r1.64 -r1.65 src/sys/dev/pci/esa.c
cvs rdiff -u -r1.62 -r1.63 src/sys/dev/pci/esm.c
cvs rdiff -u -r1.70 -r1.71 src/sys/dev/pci/eso.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/pci/gcscaudio.c
cvs rdiff -u -r1.53 -r1.54 src/sys/dev/pci/neo.c
cvs rdiff -u -r1.63 -r1.64 src/sys/dev/pci/yds.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/sbus/dbri.c
cvs rdiff -u -r1.43 -r1.44 src/sys/dev/tc/bba.c

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



CVS commit: src

2019-06-08 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun  8 07:27:44 UTC 2019

Modified Files:
src/lib/libnvmm: libnvmm.3 libnvmm.c libnvmm_x86.c nvmm.h
src/tests/lib/libnvmm: h_io_assist.c h_mem_assist.c

Log Message:
Change the NVMM API to reduce data movements. Sent to tech-kern@.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/lib/libnvmm/libnvmm.3
cvs rdiff -u -r1.13 -r1.14 src/lib/libnvmm/libnvmm.c
cvs rdiff -u -r1.30 -r1.31 src/lib/libnvmm/libnvmm_x86.c
cvs rdiff -u -r1.11 -r1.12 src/lib/libnvmm/nvmm.h
cvs rdiff -u -r1.7 -r1.8 src/tests/lib/libnvmm/h_io_assist.c
cvs rdiff -u -r1.10 -r1.11 src/tests/lib/libnvmm/h_mem_assist.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.3
diff -u src/lib/libnvmm/libnvmm.3:1.18 src/lib/libnvmm/libnvmm.3:1.19
--- src/lib/libnvmm/libnvmm.3:1.18	Sat May 11 07:44:00 2019
+++ src/lib/libnvmm/libnvmm.3	Sat Jun  8 07:27:44 2019
@@ -1,4 +1,4 @@
-.\"	$NetBSD: libnvmm.3,v 1.18 2019/05/11 07:44:00 maxv Exp $
+.\"	$NetBSD: libnvmm.3,v 1.19 2019/06/08 07:27:44 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 May 11, 2019
+.Dd May 30, 2019
 .Dt LIBNVMM 3
 .Os
 .Sh NAME
@@ -47,21 +47,20 @@
 .Fn nvmm_machine_configure "struct nvmm_machine *mach" "uint64_t op" \
 "void *conf"
 .Ft int
-.Fn nvmm_vcpu_create "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid"
+.Fn nvmm_vcpu_create "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
+"struct nvmm_vcpu *vcpu"
 .Ft int
-.Fn nvmm_vcpu_destroy "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid"
+.Fn nvmm_vcpu_destroy "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu"
 .Ft int
-.Fn nvmm_vcpu_getstate "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"void *state" "uint64_t flags"
+.Fn nvmm_vcpu_getstate "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu" \
+"uint64_t flags"
 .Ft int
-.Fn nvmm_vcpu_setstate "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"void *state" "uint64_t flags"
+.Fn nvmm_vcpu_setstate "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu" \
+"uint64_t flags"
 .Ft int
-.Fn nvmm_vcpu_inject "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"struct nvmm_event *event"
+.Fn nvmm_vcpu_inject "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu"
 .Ft int
-.Fn nvmm_vcpu_run "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"struct nvmm_exit *exit"
+.Fn nvmm_vcpu_run "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu"
 .Ft int
 .Fn nvmm_hva_map "struct nvmm_machine *mach" "uintptr_t hva" "size_t size"
 .Ft int
@@ -73,17 +72,15 @@
 .Fn nvmm_gpa_unmap "struct nvmm_machine *mach" "uintptr_t hva" "gpaddr_t gpa" \
 "size_t size"
 .Ft int
-.Fn nvmm_gva_to_gpa "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
+.Fn nvmm_gva_to_gpa "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu" \
 "gvaddr_t gva" "gpaddr_t *gpa" "nvmm_prot_t *prot"
 .Ft int
 .Fn nvmm_gpa_to_hva "struct nvmm_machine *mach" "gpaddr_t gpa" \
 "uintptr_t *hva" "nvmm_prot_t *prot"
 .Ft int
-.Fn nvmm_assist_io "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"struct nvmm_exit *exit"
+.Fn nvmm_assist_io "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu"
 .Ft int
-.Fn nvmm_assist_mem "struct nvmm_machine *mach" "nvmm_cpuid_t cpuid" \
-"struct nvmm_exit *exit"
+.Fn nvmm_assist_mem "struct nvmm_machine *mach" "struct nvmm_vcpu *vcpu"
 .Sh DESCRIPTION
 .Nm
 provides a library for emulator software to handle hardware-accelerated virtual
@@ -95,6 +92,8 @@ Emulator software should not attempt to 
 should use the API provided by
 .Nm
 to manage virtual machines.
+A virtual CPU is described by a public structure,
+.Cd nvmm_vcpu .
 .Pp
 .Fn nvmm_capability
 gets the capabilities of NVMM.
@@ -124,61 +123,61 @@ describes the value of the parameter.
 creates a virtual CPU in the machine
 .Fa mach ,
 giving it the CPU id
-.Fa cpuid .
+.Fa cpuid ,
+and initializes
+.Fa vcpu .
 .Pp
 .Fn nvmm_vcpu_destroy
 destroys the virtual CPU identified by
-.Fa cpuid
+.Fa vcpu
 in the machine
 .Fa mach .
 .Pp
 .Fn nvmm_vcpu_getstate
 gets the state of the virtual CPU identified by
-.Fa cpuid
+.Fa vcpu
 in the machine
 .Fa mach .
-The
-.Fa state
-argument is the address of a state area, and
 .Fa flags
 is the bitmap of the components that are to be retrieved.
+The components are located in
+.Fa vcpu->state .
 See
 .Sx VCPU State Area
 below for details.
 .Pp
 .Fn nvmm_vcpu_setstate
 sets the state of the virtual CPU identified by
-.Fa cpuid
+.Fa vcpu
 in the machine
 .Fa mach .
-The
-.Fa state
-argument is the address of a state area, and
 .Fa flags
 is the bitmap of the components that are to be set.
+The components are located in
+.Fa vcpu->state .
 See
 .Sx VCPU State Area
 below for details.

CVS commit: src

2019-06-08 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun  8 07:27:44 UTC 2019

Modified Files:
src/lib/libnvmm: libnvmm.3 libnvmm.c libnvmm_x86.c nvmm.h
src/tests/lib/libnvmm: h_io_assist.c h_mem_assist.c

Log Message:
Change the NVMM API to reduce data movements. Sent to tech-kern@.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/lib/libnvmm/libnvmm.3
cvs rdiff -u -r1.13 -r1.14 src/lib/libnvmm/libnvmm.c
cvs rdiff -u -r1.30 -r1.31 src/lib/libnvmm/libnvmm_x86.c
cvs rdiff -u -r1.11 -r1.12 src/lib/libnvmm/nvmm.h
cvs rdiff -u -r1.7 -r1.8 src/tests/lib/libnvmm/h_io_assist.c
cvs rdiff -u -r1.10 -r1.11 src/tests/lib/libnvmm/h_mem_assist.c

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