CVS commit: src/share/mk

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Thu Oct 27 01:21:16 UTC 2016

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch x86 to the new binutils


To generate a diff of this commit:
cvs rdiff -u -r1.982 -r1.983 src/share/mk/bsd.own.mk

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

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.982 src/share/mk/bsd.own.mk:1.983
--- src/share/mk/bsd.own.mk:1.982	Wed Oct 26 13:32:46 2016
+++ src/share/mk/bsd.own.mk	Wed Oct 26 21:21:16 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.982 2016/10/26 17:32:46 christos Exp $
+#	$NetBSD: bsd.own.mk,v 1.983 2016/10/27 01:21:16 christos Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -152,7 +152,13 @@ EXTERNAL_GDB_SUBDIR=		/does/not/exist
 #
 # What binutils is used?
 #
+.if \
+${MACHINE_ARCH} == "i386" || \
+${MACHINE_ARCH} == "x86_64"
+HAVE_BINUTILS?=	227
+.else
 HAVE_BINUTILS?=	226
+.endif
 
 .if ${HAVE_BINUTILS} == 226
 EXTERNAL_BINUTILS_SUBDIR=	binutils.old



CVS commit: src/sys/arch/amd64/amd64

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 22:02:14 UTC 2016

Modified Files:
src/sys/arch/amd64/amd64: trap.c

Log Message:
print some more stuff


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/sys/arch/amd64/amd64/trap.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/amd64/amd64/trap.c
diff -u src/sys/arch/amd64/amd64/trap.c:1.86 src/sys/arch/amd64/amd64/trap.c:1.87
--- src/sys/arch/amd64/amd64/trap.c:1.86	Sun Sep 25 08:53:24 2016
+++ src/sys/arch/amd64/amd64/trap.c	Wed Oct 26 18:02:14 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: trap.c,v 1.86 2016/09/25 12:53:24 maxv Exp $	*/
+/*	$NetBSD: trap.c,v 1.87 2016/10/26 22:02:14 christos Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.86 2016/09/25 12:53:24 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.87 2016/10/26 22:02:14 christos Exp $");
 
 #include "opt_ddb.h"
 #include "opt_kgdb.h"
@@ -662,9 +662,10 @@ faultcommon:
 		}
 
 #ifdef TRAP_SIGDEBUG
-		printf("pid %d.%d (%s): signal %d at rip %lx addr %lx "
-		"error %d\n", p->p_pid, l->l_lid, p->p_comm, ksi.ksi_signo,
-		frame->tf_rip, va, error);
+		printf("pid %d.%d (%s): signal %d at rip %#lx addr %#lx "
+		"error %d trap %d cr2 %p\n", p->p_pid, l->l_lid, p->p_comm,
+		ksi.ksi_signo, frame->tf_rip, va, error, ksi.ksi_trap,
+		ksi.ksi_addr);
 		frame_dump(frame);
 #endif
 		(*p->p_emul->e_trapsignal)(l, );



CVS commit: src/distrib/sets/lists

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 21:24:20 UTC 2016

Modified Files:
src/distrib/sets/lists/base: shl.mi
src/distrib/sets/lists/comp: md.amd64 shl.mi
src/distrib/sets/lists/debug: shl.mi

Log Message:
everyone is now on binutils-2.26 or more


To generate a diff of this commit:
cvs rdiff -u -r1.788 -r1.789 src/distrib/sets/lists/base/shl.mi
cvs rdiff -u -r1.237 -r1.238 src/distrib/sets/lists/comp/md.amd64
cvs rdiff -u -r1.295 -r1.296 src/distrib/sets/lists/comp/shl.mi
cvs rdiff -u -r1.148 -r1.149 src/distrib/sets/lists/debug/shl.mi

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

Modified files:

Index: src/distrib/sets/lists/base/shl.mi
diff -u src/distrib/sets/lists/base/shl.mi:1.788 src/distrib/sets/lists/base/shl.mi:1.789
--- src/distrib/sets/lists/base/shl.mi:1.788	Fri Oct 14 12:09:45 2016
+++ src/distrib/sets/lists/base/shl.mi	Wed Oct 26 17:24:20 2016
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.788 2016/10/14 16:09:45 spz Exp $
+# $NetBSD: shl.mi,v 1.789 2016/10/26 21:24:20 christos Exp $
 #
 # Note:	Don't delete entries from here - mark them as "obsolete" instead,
 #	unless otherwise stated below.
@@ -190,10 +190,8 @@
 ./usr/lib/libavl.sobase-zfs-shlib		compatfile,zfs
 ./usr/lib/libavl.so.0base-zfs-shlib		compatfile,zfs
 ./usr/lib/libavl.so.0.0  		base-zfs-shlib		compatfile,zfs
-./usr/lib/libbfd.so.13base-sys-shlib		compatfile,binutils=223
-./usr/lib/libbfd.so.13.0			base-sys-shlib		compatfile,binutils=223
-./usr/lib/libbfd.so.14base-sys-shlib		compatfile,binutils=226
-./usr/lib/libbfd.so.14.0			base-sys-shlib		compatfile,binutils=226
+./usr/lib/libbfd.so.14base-sys-shlib		compatfile,binutils
+./usr/lib/libbfd.so.14.0			base-sys-shlib		compatfile,binutils
 ./usr/lib/libbind9.sobase-bind-shlib		compatfile
 ./usr/lib/libbind9.so.8base-bind-shlib		compatfile
 ./usr/lib/libbind9.so.8.4			base-bind-shlib		compatfile

Index: src/distrib/sets/lists/comp/md.amd64
diff -u src/distrib/sets/lists/comp/md.amd64:1.237 src/distrib/sets/lists/comp/md.amd64:1.238
--- src/distrib/sets/lists/comp/md.amd64:1.237	Wed Mar 16 01:39:49 2016
+++ src/distrib/sets/lists/comp/md.amd64	Wed Oct 26 17:24:20 2016
@@ -1,4 +1,4 @@
-# $NetBSD: md.amd64,v 1.237 2016/03/16 05:39:49 mrg Exp $
+# $NetBSD: md.amd64,v 1.238 2016/10/26 21:24:20 christos Exp $
 
 ./usr/include/amd64comp-c-include
 ./usr/include/amd64/ansi.h			comp-c-include
@@ -584,19 +584,19 @@
 ./usr/libdata/ldscripts/i386nbsd.xn		comp-util-bin		binutils
 ./usr/libdata/ldscripts/i386nbsd.xr		comp-util-bin		binutils
 ./usr/libdata/ldscripts/i386nbsd.xu		comp-util-bin		binutils
-./usr/libdata/ldscripts/elf_iamcu.x		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xbn		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xc		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xd		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xdc		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xdw		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xn		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xr		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xs		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xsc		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xsw		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xu		comp-util-bin		binutils=226
-./usr/libdata/ldscripts/elf_iamcu.xw		comp-util-bin		binutils=226
+./usr/libdata/ldscripts/elf_iamcu.x		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xbn		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xc		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xd		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xdc		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xdw		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xn		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xr		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xs		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xsc		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xsw		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xu		comp-util-bin		binutils
+./usr/libdata/ldscripts/elf_iamcu.xw		comp-util-bin		binutils
 ./usr/libdata/lint/llib-lx86_64.ln		comp-c-lintlib		lint
 ./usr/share/ldscripts/elf_i386.x		comp-obsolete		obsolete
 ./usr/share/ldscripts/elf_i386.xbn		comp-obsolete		obsolete

Index: src/distrib/sets/lists/comp/shl.mi
diff -u src/distrib/sets/lists/comp/shl.mi:1.295 src/distrib/sets/lists/comp/shl.mi:1.296
--- src/distrib/sets/lists/comp/shl.mi:1.295	Sun Sep  4 22:25:37 2016
+++ src/distrib/sets/lists/comp/shl.mi	Wed Oct 26 17:24:20 2016
@@ -1,4 +1,4 @@
-# $NetBSD: shl.mi,v 1.295 2016/09/05 02:25:37 ozaki-r Exp $
+# $NetBSD: shl.mi,v 1.296 2016/10/26 21:24:20 christos Exp $

CVS commit: src/external/gpl3/binutils

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 20:39:28 UTC 2016

Modified Files:
src/external/gpl3/binutils/lib/libbfd/arch/i386: bfd.h bfdver.h
config.h
src/external/gpl3/binutils/lib/libbfd/arch/x86_64: bfd.h bfdver.h
config.h
src/external/gpl3/binutils/lib/libopcodes/arch/i386: config.h
src/external/gpl3/binutils/lib/libopcodes/arch/x86_64: config.h
src/external/gpl3/binutils/usr.bin/common/arch/i386: config.h defs.mk
src/external/gpl3/binutils/usr.bin/common/arch/x86_64: config.h defs.mk
src/external/gpl3/binutils/usr.bin/gas/arch/i386: config.h
src/external/gpl3/binutils/usr.bin/gas/arch/x86_64: config.h
src/external/gpl3/binutils/usr.bin/gprof/arch/i386: gconfig.h
src/external/gpl3/binutils/usr.bin/gprof/arch/x86_64: gconfig.h
src/external/gpl3/binutils/usr.bin/ld/arch/i386: config.h
src/external/gpl3/binutils/usr.bin/ld/arch/x86_64: config.h

Log Message:
regen x86


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 \
src/external/gpl3/binutils/lib/libbfd/arch/i386/bfd.h
cvs rdiff -u -r1.9 -r1.10 \
src/external/gpl3/binutils/lib/libbfd/arch/i386/bfdver.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/lib/libbfd/arch/i386/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/lib/libbfd/arch/x86_64/bfd.h \
src/external/gpl3/binutils/lib/libbfd/arch/x86_64/config.h
cvs rdiff -u -r1.9 -r1.10 \
src/external/gpl3/binutils/lib/libbfd/arch/x86_64/bfdver.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/lib/libopcodes/arch/i386/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/lib/libopcodes/arch/x86_64/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/common/arch/i386/config.h
cvs rdiff -u -r1.7 -r1.8 \
src/external/gpl3/binutils/usr.bin/common/arch/i386/defs.mk
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/common/arch/x86_64/config.h
cvs rdiff -u -r1.7 -r1.8 \
src/external/gpl3/binutils/usr.bin/common/arch/x86_64/defs.mk
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/gas/arch/i386/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/gas/arch/x86_64/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/gprof/arch/i386/gconfig.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/gprof/arch/x86_64/gconfig.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/ld/arch/i386/config.h
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/binutils/usr.bin/ld/arch/x86_64/config.h

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/binutils/lib/libbfd/arch/i386/bfd.h
diff -u src/external/gpl3/binutils/lib/libbfd/arch/i386/bfd.h:1.6 src/external/gpl3/binutils/lib/libbfd/arch/i386/bfd.h:1.7
--- src/external/gpl3/binutils/lib/libbfd/arch/i386/bfd.h:1.6	Fri Jan 29 09:42:48 2016
+++ src/external/gpl3/binutils/lib/libbfd/arch/i386/bfd.h	Wed Oct 26 16:39:27 2016
@@ -11,7 +11,7 @@
 
 /* Main header file for the bfd library -- portable access to object files.
 
-   Copyright (C) 1990-2015 Free Software Foundation, Inc.
+   Copyright (C) 1990-2016 Free Software Foundation, Inc.
 
Contributed by Cygnus Support.
 
@@ -522,7 +522,6 @@ extern void warn_deprecated (const char 
 #define bfd_get_file_flags(abfd) ((abfd)->flags)
 #define bfd_applicable_file_flags(abfd) ((abfd)->xvec->object_flags)
 #define bfd_applicable_section_flags(abfd) ((abfd)->xvec->section_flags)
-#define bfd_my_archive(abfd) ((abfd)->my_archive)
 #define bfd_has_map(abfd) ((abfd)->has_armap)
 #define bfd_is_thin_archive(abfd) ((abfd)->is_thin_archive)
 
@@ -914,6 +913,9 @@ extern bfd_boolean bfd_elf32_arm_get_bfd
 extern bfd_boolean bfd_elf32_arm_add_glue_sections_to_bfd
   (bfd *, struct bfd_link_info *);
 
+extern void bfd_elf32_arm_keep_private_stub_output_sections
+  (struct bfd_link_info *);
+
 /* ELF ARM mapping symbol support.  */
 #define BFD_ARM_SPECIAL_SYM_TYPE_MAP	(1 << 0)
 #define BFD_ARM_SPECIAL_SYM_TYPE_TAG	(1 << 1)
@@ -945,7 +947,8 @@ extern void elf32_arm_next_input_section
   (struct bfd_link_info *, struct bfd_section *);
 extern bfd_boolean elf32_arm_size_stubs
   (bfd *, bfd *, struct bfd_link_info *, bfd_signed_vma,
-   struct bfd_section * (*) (const char *, struct bfd_section *, unsigned int),
+   struct bfd_section * (*) (const char *, struct bfd_section *,
+			 struct bfd_section *, unsigned int),
void (*) (void));
 extern bfd_boolean elf32_arm_build_stubs
   (struct bfd_link_info *);
@@ -958,13 +961,6 @@ extern bfd_boolean elf32_arm_fix_exidx_c
 extern bfd_boolean elf32_tic6x_fix_exidx_coverage
 (struct bfd_section **, unsigned int, struct bfd_link_info *, bfd_boolean);
 
-/* PowerPC @tls opcode transform/validate.  */
-extern unsigned int 

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

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 20:26:20 UTC 2016

Modified Files:
src/external/gpl3/binutils/dist/ld: configure configure.ac

Log Message:
restore the initfini array tests


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/gpl3/binutils/dist/ld/configure
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/binutils/dist/ld/configure.ac

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/binutils/dist/ld/configure
diff -u src/external/gpl3/binutils/dist/ld/configure:1.4 src/external/gpl3/binutils/dist/ld/configure:1.5
--- src/external/gpl3/binutils/dist/ld/configure:1.4	Wed Oct 26 14:43:26 2016
+++ src/external/gpl3/binutils/dist/ld/configure	Wed Oct 26 16:26:20 2016
@@ -1454,7 +1454,7 @@ Optional Features:
   --enable-werror treat compile warnings as errors
   --enable-build-warnings enable build-time compiler warnings
   --disable-nls   do not use Native Language Support
-  --disable-initfini-array do not use .init_array/.fini_array sections
+  --enable-initfini-array	use .init_array/.fini_array sections
 
 Optional Packages:
   --with-PACKAGE[=ARG]use PACKAGE [ARG=yes]
@@ -16866,14 +16866,44 @@ fi
 
 # Check whether --enable-initfini-array was given.
 if test "${enable_initfini_array+set}" = set; then :
-  enableval=$enable_initfini_array; case "${enableval}" in
- yes|no) ;;
- *) as_fn_error "invalid --enable-initfini-array argument" "$LINENO" 5 ;;
- esac
+  enableval=$enable_initfini_array;
+else
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .preinit_array/.init_array/.fini_array support" >&5
+$as_echo_n "checking for .preinit_array/.init_array/.fini_array support... " >&6; }
+if test "${gcc_cv_initfini_array+set}" = set; then :
+  $as_echo_n "(cached) " >&6
+else
+if test "x${build}" = "x${target}" ; then
+if test "$cross_compiling" = yes; then :
+  gcc_cv_initfini_array=no
 else
-  enable_initfini_array=yes
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+static int x = -1;
+int main (void) { return x; }
+int foo (void) { x = 0; }
+int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gcc_cv_initfini_array=yes
+ else
+  gcc_cv_initfini_array=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
+   else
+ gcc_cv_initfini_array=no
+   fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_initfini_array" >&5
+$as_echo "$gcc_cv_initfini_array" >&6; }
+  enable_initfini_array=$gcc_cv_initfini_array
+
+ fi
 
 if test $enable_initfini_array = yes; then
 

Index: src/external/gpl3/binutils/dist/ld/configure.ac
diff -u src/external/gpl3/binutils/dist/ld/configure.ac:1.3 src/external/gpl3/binutils/dist/ld/configure.ac:1.4
--- src/external/gpl3/binutils/dist/ld/configure.ac:1.3	Wed Oct 26 14:43:26 2016
+++ src/external/gpl3/binutils/dist/ld/configure.ac	Wed Oct 26 16:26:20 2016
@@ -226,11 +226,23 @@ AC_SEARCH_LIBS([dlopen], [dl])
 AM_CONDITIONAL([ENABLE_PLUGINS], [test x$plugins = xyes])
 
 AC_ARG_ENABLE(initfini-array,
-[  --disable-initfini-array do not use .init_array/.fini_array sections],
-[case "${enableval}" in
- yes|no) ;;
- *) AC_MSG_ERROR([invalid --enable-initfini-array argument]) ;;
- esac], [enable_initfini_array=yes])
+	[  --enable-initfini-array	use .init_array/.fini_array sections],
+	[], [
+AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
+		 gcc_cv_initfini_array, [dnl
+  if test "x${build}" = "x${target}" ; then
+AC_RUN_IFELSE([AC_LANG_SOURCE([
+static int x = -1;
+int main (void) { return x; }
+int foo (void) { x = 0; }
+int (*fp) (void) __attribute__ ((section (".init_array"))) = foo;])],
+	 [gcc_cv_initfini_array=yes], [gcc_cv_initfini_array=no],
+	 [gcc_cv_initfini_array=no])
+   else
+ gcc_cv_initfini_array=no
+   fi])
+  enable_initfini_array=$gcc_cv_initfini_array
+])
 AC_SUBST(enable_initfini_array)
 if test $enable_initfini_array = yes; then
   AC_DEFINE(HAVE_INITFINI_ARRAY, 1,



CVS commit: src/doc

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 20:05:11 UTC 2016

Modified Files:
src/doc: TODO.8

Log Message:
more stuff is done.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/doc/TODO.8

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.8
diff -u src/doc/TODO.8:1.4 src/doc/TODO.8:1.5
--- src/doc/TODO.8:1.4	Sat Sep  3 08:39:41 2016
+++ src/doc/TODO.8	Wed Oct 26 16:05:11 2016
@@ -1,89 +1,10 @@
-$NetBSD: TODO.8,v 1.4 2016/09/03 12:39:41 christos Exp $
+$NetBSD: TODO.8,v 1.5 2016/10/26 20:05:11 christos Exp $
 
 Items we (currently) plan to finish before branching netbsd-8:
 
  - find a releng release driver volunteer
- - import binutils 2.26.1 [christos]
- - switch all architectures to gcc 5.4
- - switch all architectures to new binutils and gdb
  - enable PIE/ASLR on all architectures (that have switched to gcc 5.4 if
we fail previous item) where it works
  - get lfs64 done for experimental use [dholland]
 
 and of course: fix as many bugs as possible.
-
-		gcc-54	but-226	gdb-710	PIE	ASLR	MPROT	
-aarch64		N	
-acorn26		Y	Y	Y	Y	Y	Y
-acorn32		Y	Y	Y	Y	Y	Y
-algor
-alpha		Y	Y
-amd64		Y	Y	Y	Y	Y	Y
-amiga
-amigappc	Y	Y	Y
-arc
-arm
-atari
-bebox		Y	Y	Y
-cats		Y	Y	Y	Y
-cesfic
-cobalt
-dreamcast	Y	Y	Y	Y
-emips		Y	Y	Y	Y
-epoc32
-evbarm		Y	Y	Y	Y	Y	Y
-evbarm64	N	Y	
-evbcf
-evbmips		Y	Y	Y	Y
-evbppc		Y	Y	Y
-evbsh3		Y	Y	Y	Y
-evbsh5
-ews4800mips	Y	Y	Y	Y
-hp300
-hp700		Y	Y
-hpc
-hpcarm		Y	Y	Y
-hpcmips		Y	Y	Y	Y
-hpcsh		Y	Y	Y	Y
-hppa		Y	Y
-i386		Y	Y	Y	Y	Y	Y
-ia64		Y	Y
-ibmnws
-iyonix
-landisk		Y	Y	Y	Y	Y	Y
-luna68k
-m68k
-mac68k
-macppc		Y	Y
-mips
-mipsco
-mmeye		Y	Y	Y	Y	Y	Y
-mvme68k
-mvmeppc		Y	Y	Y
-netwinder
-news68k
-newsmips	Y	Y	Y	Y
-next68k
-ofppc		Y	Y	Y
-or1k
-playstation2	Y	Y	Y
-pmax		Y	Y	Y	Y	Y	Y
-pmppc		Y	Y	Y
-powerpc		Y	Y	Y
-prep		Y	Y	Y
-riscv
-rs6000		Y	Y	Y
-sandpoint	Y	Y	Y
-sbmips		Y	Y	Y	Y
-sgimips		Y	Y	Y	Y
-shark		Y	Y	Y	Y	Y	Y
-sparc		Y	Y	Y	Y	Y	N
-sparc64		Y	Y	Y	Y	Y	N
-sun2
-sun3
-sun68k
-vax		Y	Y	Y
-x68k
-x86		Y	Y	Y	Y	Y	Y
-xen		Y	Y	Y	Y	Y	Y
-zaurus



CVS commit: src/doc

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 20:05:21 UTC 2016

Modified Files:
src/doc: 3RDPARTY CHANGES

Log Message:
new binutils


To generate a diff of this commit:
cvs rdiff -u -r1.1370 -r1.1371 src/doc/3RDPARTY
cvs rdiff -u -r1.2201 -r1.2202 src/doc/CHANGES

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

Modified files:

Index: src/doc/3RDPARTY
diff -u src/doc/3RDPARTY:1.1370 src/doc/3RDPARTY:1.1371
--- src/doc/3RDPARTY:1.1370	Thu Oct 20 19:16:23 2016
+++ src/doc/3RDPARTY	Wed Oct 26 16:05:21 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: 3RDPARTY,v 1.1370 2016/10/20 23:16:23 kre Exp $
+#	$NetBSD: 3RDPARTY,v 1.1371 2016/10/26 20:05:21 christos Exp $
 #
 # This file contains a list of the software that has been integrated into
 # NetBSD where we are not the primary maintainer.
@@ -171,7 +171,7 @@ Todo[4]: Re-entrant functions of net/*
 Todo[5]: Reconcile the doc directory.
 
 Package:	binutils
-Version:	2.23.2
+Version:	2.27
 Current Vers:	2.27
 Maintainer:	FSF
 Archive Site:	ftp://ftp.gnu.org/gnu/binutils/

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.2201 src/doc/CHANGES:1.2202
--- src/doc/CHANGES:1.2201	Thu Oct 20 19:16:23 2016
+++ src/doc/CHANGES	Wed Oct 26 16:05:21 2016
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2201 $>
+# LIST OF CHANGES FROM LAST RELEASE:			<$Revision: 1.2202 $>
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -386,3 +386,5 @@ Changes from NetBSD 7.0 to NetBSD 8.0:
 	libc: Add the wcsnlen(3) function in . [kamil 20161015]
 	libc: Update to tzcode2016h. [christos 20161020]
 	zoneinfo: Import tzdata2016h.  [kre 20161020]
+	binutils: Updated to FSF binutils 2.27.  [christos 20161026]
+



CVS commit: src/external/gpl3/binutils

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 18:00:56 UTC 2016

Added Files:
src/external/gpl3/binutils: binutils2netbsd

Log Message:
for next time


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/external/gpl3/binutils/binutils2netbsd

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

Added files:

Index: src/external/gpl3/binutils/binutils2netbsd
diff -u /dev/null src/external/gpl3/binutils/binutils2netbsd:1.1
--- /dev/null	Wed Oct 26 14:00:56 2016
+++ src/external/gpl3/binutils/binutils2netbsd	Wed Oct 26 14:00:56 2016
@@ -0,0 +1,52 @@
+#! /bin/sh
+#
+#	$NetBSD: binutils2netbsd,v 1.1 2016/10/26 18:00:56 christos Exp $
+#
+# Copyright (c) 2016 The NetBSD Foundation, Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#notice, this list of conditions and the following disclaimer in the
+#documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# binutils2netbsd:  convert a file source tree into a
+# format suitable for import.  Works on first arg dir.
+# You can run this only once if you want it to work.
+#
+# based on file 2netbsd
+#
+PROG="$(basename "$0")"
+
+if [ -z "$1" ]
+then
+	echo "Usage: $PROG " 1>&2
+	exit 1
+fi
+DIR="$1"
+
+### Remove the $'s around RCS tags
+cleantags "$DIR"
+
+find "$DIR" -name testsuite -exec rm -fr {} +
+
+echo You can import now.  Use the following command:
+echo cvs import src/external/gpl3/binutils/dist FSF binutils-X-YY-Z
+
+exit 0



CVS commit: src/external/gpl3/binutils

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 18:00:47 UTC 2016

Modified Files:
src/external/gpl3/binutils: Makefile.inc

Log Message:
use the real top


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/external/gpl3/binutils/Makefile.inc

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

Modified files:

Index: src/external/gpl3/binutils/Makefile.inc
diff -u src/external/gpl3/binutils/Makefile.inc:1.1 src/external/gpl3/binutils/Makefile.inc:1.2
--- src/external/gpl3/binutils/Makefile.inc:1.1	Tue Jan 26 14:37:46 2016
+++ src/external/gpl3/binutils/Makefile.inc	Wed Oct 26 14:00:46 2016
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.1 2016/01/26 19:37:46 christos Exp $
+# $NetBSD: Makefile.inc,v 1.2 2016/10/26 18:00:46 christos Exp $
 .include 
-TOP=	${NETBSDSRCDIR}/external/gpl3/${EXTERNAL_BINUTILS_SUBDIR}
-DIST=	${TOP}/dist
+TOP:=	${.PARSEDIR}
+DIST:=	${TOP}/dist



CVS commit: src/external/gpl3/binutils.old

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 17:58:48 UTC 2016

Modified Files:
src/external/gpl3/binutils.old: Makefile.inc

Log Message:
use our real top


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/binutils.old/Makefile.inc

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

Modified files:

Index: src/external/gpl3/binutils.old/Makefile.inc
diff -u src/external/gpl3/binutils.old/Makefile.inc:1.3 src/external/gpl3/binutils.old/Makefile.inc:1.4
--- src/external/gpl3/binutils.old/Makefile.inc:1.3	Wed Oct 26 13:08:37 2016
+++ src/external/gpl3/binutils.old/Makefile.inc	Wed Oct 26 13:58:48 2016
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.3 2016/10/26 17:08:37 christos Exp $
+# $NetBSD: Makefile.inc,v 1.4 2016/10/26 17:58:48 christos Exp $
 .include 
-TOP=	${NETBSDSRCDIR}/external/gpl3/${EXTERNAL_BINUTILS_SUBDIR}
-DIST=	${TOP}/dist
+TOP:=	${.PARSEDIR}
+DIST:=	${TOP}/dist



CVS commit: src/share/mk

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 17:32:46 UTC 2016

Modified Files:
src/share/mk: bsd.own.mk

Log Message:
switch everyone to binutils.old


To generate a diff of this commit:
cvs rdiff -u -r1.981 -r1.982 src/share/mk/bsd.own.mk

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

Modified files:

Index: src/share/mk/bsd.own.mk
diff -u src/share/mk/bsd.own.mk:1.981 src/share/mk/bsd.own.mk:1.982
--- src/share/mk/bsd.own.mk:1.981	Sat Oct 22 07:06:15 2016
+++ src/share/mk/bsd.own.mk	Wed Oct 26 13:32:46 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: bsd.own.mk,v 1.981 2016/10/22 11:06:15 skrll Exp $
+#	$NetBSD: bsd.own.mk,v 1.982 2016/10/26 17:32:46 christos Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -155,6 +155,8 @@ EXTERNAL_GDB_SUBDIR=		/does/not/exist
 HAVE_BINUTILS?=	226
 
 .if ${HAVE_BINUTILS} == 226
+EXTERNAL_BINUTILS_SUBDIR=	binutils.old
+.elif ${HAVE_BINUTILS} == 227
 EXTERNAL_BINUTILS_SUBDIR=	binutils
 .else
 EXTERNAL_BINUTILS_SUBDIR=	/does/not/exist



CVS commit: src/sys/external/bsd/acpica/dist/disassembler

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 15:41:04 UTC 2016

Modified Files:
src/sys/external/bsd/acpica/dist/disassembler: dmresrcl2.c

Log Message:
PR/51579: Henning Petersen: Fix more , -> ;


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 \
src/sys/external/bsd/acpica/dist/disassembler/dmresrcl2.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/external/bsd/acpica/dist/disassembler/dmresrcl2.c
diff -u src/sys/external/bsd/acpica/dist/disassembler/dmresrcl2.c:1.6 src/sys/external/bsd/acpica/dist/disassembler/dmresrcl2.c:1.7
--- src/sys/external/bsd/acpica/dist/disassembler/dmresrcl2.c:1.6	Sun Oct  9 10:35:33 2016
+++ src/sys/external/bsd/acpica/dist/disassembler/dmresrcl2.c	Wed Oct 26 11:41:04 2016
@@ -203,7 +203,7 @@ AcpiDmGpioCommon (
 if (Resource->Gpio.ResSourceOffset)
 {
 DeviceName = ACPI_ADD_PTR (char,
-Resource, Resource->Gpio.ResSourceOffset),
+Resource, Resource->Gpio.ResSourceOffset);
 AcpiUtPrintString (DeviceName, ACPI_UINT16_MAX);
 }
 
@@ -601,7 +601,7 @@ AcpiDmSpiSerialBusDescriptor (
 ResourceSourceOffset = sizeof (AML_RESOURCE_COMMON_SERIALBUS) +
 Resource->CommonSerialBus.TypeDataLength;
 
-DeviceName = ACPI_ADD_PTR (char, Resource, ResourceSourceOffset),
+DeviceName = ACPI_ADD_PTR (char, Resource, ResourceSourceOffset);
 AcpiUtPrintString (DeviceName, ACPI_UINT16_MAX);
 
 /* ResourceSourceIndex, ResourceUsage */
@@ -687,7 +687,7 @@ AcpiDmUartSerialBusDescriptor (
 ResourceSourceOffset = sizeof (AML_RESOURCE_COMMON_SERIALBUS) +
 Resource->CommonSerialBus.TypeDataLength;
 
-DeviceName = ACPI_ADD_PTR (char, Resource, ResourceSourceOffset),
+DeviceName = ACPI_ADD_PTR (char, Resource, ResourceSourceOffset);
 AcpiUtPrintString (DeviceName, ACPI_UINT16_MAX);
 
 /* ResourceSourceIndex, ResourceUsage */



CVS commit: src/lib/libc/rpc

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 15:39:30 UTC 2016

Modified Files:
src/lib/libc/rpc: getnetconfig.c

Log Message:
PR/51578: Henning Petersen: Fix leak on error.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/lib/libc/rpc/getnetconfig.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/libc/rpc/getnetconfig.c
diff -u src/lib/libc/rpc/getnetconfig.c:1.23 src/lib/libc/rpc/getnetconfig.c:1.24
--- src/lib/libc/rpc/getnetconfig.c:1.23	Wed Oct 26 11:36:17 2016
+++ src/lib/libc/rpc/getnetconfig.c	Wed Oct 26 11:39:30 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: getnetconfig.c,v 1.23 2016/10/26 15:36:17 christos Exp $	*/
+/*	$NetBSD: getnetconfig.c,v 1.24 2016/10/26 15:39:30 christos Exp $	*/
 
 /*
  * Copyright (c) 2010, Oracle America, Inc.
@@ -36,7 +36,7 @@
 #if 0
 staticchar sccsid[] = "@(#)getnetconfig.c	1.12 91/12/19 SMI";
 #else
-__RCSID("$NetBSD: getnetconfig.c,v 1.23 2016/10/26 15:36:17 christos Exp $");
+__RCSID("$NetBSD: getnetconfig.c,v 1.24 2016/10/26 15:39:30 christos Exp $");
 #endif
 #endif
 
@@ -649,12 +649,12 @@ static struct netconfig *
 dup_ncp(struct netconfig *ncp)
 {
 	struct netconfig	*p;
-	char	*tmp;
+	char	*tmp, *tmp2;
 	u_int	i;
 
 	_DIAGASSERT(ncp != NULL);
 
-	if ((tmp = malloc(MAXNETCONFIGLINE)) == NULL)
+	if ((tmp2 = tmp = malloc(MAXNETCONFIGLINE)) == NULL)
 		return NULL;
 	if ((p = malloc(sizeof(*p))) == NULL) {
 		free(tmp);
@@ -679,6 +679,7 @@ dup_ncp(struct netconfig *ncp)
 	p->nc_device = strcpy(tmp, ncp->nc_device);
 	p->nc_lookups = calloc((size_t)(p->nc_nlookups + 1), sizeof(char *));
 	if (p->nc_lookups == NULL) {
+		free(tmp2);
 		free(p->nc_netid);
 		free(p);
 		return NULL;



CVS commit: src/lib/libc/rpc

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 15:36:17 UTC 2016

Modified Files:
src/lib/libc/rpc: getnetconfig.c

Log Message:
KNF, no real change (except malloc(x * y) -> calloc(x, y))


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/lib/libc/rpc/getnetconfig.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/libc/rpc/getnetconfig.c
diff -u src/lib/libc/rpc/getnetconfig.c:1.22 src/lib/libc/rpc/getnetconfig.c:1.23
--- src/lib/libc/rpc/getnetconfig.c:1.22	Thu Sep 18 09:58:20 2014
+++ src/lib/libc/rpc/getnetconfig.c	Wed Oct 26 11:36:17 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: getnetconfig.c,v 1.22 2014/09/18 13:58:20 christos Exp $	*/
+/*	$NetBSD: getnetconfig.c,v 1.23 2016/10/26 15:36:17 christos Exp $	*/
 
 /*
  * Copyright (c) 2010, Oracle America, Inc.
@@ -36,7 +36,7 @@
 #if 0
 staticchar sccsid[] = "@(#)getnetconfig.c	1.12 91/12/19 SMI";
 #else
-__RCSID("$NetBSD: getnetconfig.c,v 1.22 2014/09/18 13:58:20 christos Exp $");
+__RCSID("$NetBSD: getnetconfig.c,v 1.23 2016/10/26 15:36:17 christos Exp $");
 #endif
 #endif
 
@@ -174,7 +174,7 @@ __nc_error(void)
 		nc_addr = malloc(sizeof (int));
 		if (nc_addr == NULL)
 			return _error;
-		if (thr_setspecific(nc_key, (void *) nc_addr) != 0) {
+		if (thr_setspecific(nc_key, nc_addr) != 0) {
 			if (nc_addr)
 free(nc_addr);
 			return _error;
@@ -213,7 +213,7 @@ setnetconfig(void)
 	struct netconfig_vars *nc_vars;
 
 	if ((nc_vars = malloc(sizeof(*nc_vars))) == NULL) {
-		return(NULL);
+		return NULL;
 	}
 
 	/*
@@ -225,12 +225,12 @@ setnetconfig(void)
 		nc_vars->valid = NC_VALID;
 		nc_vars->flag = 0;
 		nc_vars->nc_configs = ni.head;
-		return ((void *)nc_vars);
+		return nc_vars;
 	}
 	ni.ref--;
 	nc_error = NC_NONETCONFIG;
 	free(nc_vars);
-	return (NULL);
+	return NULL;
 }
 
 
@@ -245,7 +245,7 @@ setnetconfig(void)
 struct netconfig *
 getnetconfig(void *handlep)
 {
-	struct netconfig_vars *ncp = (struct netconfig_vars *)handlep;
+	struct netconfig_vars *ncp = handlep;
 	char *stringp;		/* tmp string pointer */
 	struct netconfig_list	*list;
 	struct netconfig *np;
@@ -255,7 +255,7 @@ getnetconfig(void *handlep)
 	 */
 	if (ncp == NULL || nc_file == NULL) {
 		nc_error = NC_NOTINIT;
-		return (NULL);
+		return NULL;
 	}
 
 	switch (ncp->valid) {
@@ -273,12 +273,12 @@ getnetconfig(void *handlep)
 			ncp->flag = 1;
 			ncp->nc_configs = ni.head;
 			if (ncp->nc_configs != NULL) /* entry already exist */
-return(ncp->nc_configs->ncp);
+return ncp->nc_configs->ncp;
 		}
 		else if (ncp->nc_configs != NULL &&
 		ncp->nc_configs->next != NULL) {
 			ncp->nc_configs = ncp->nc_configs->next;
-			return(ncp->nc_configs->ncp);
+			return ncp->nc_configs->ncp;
 		}
 
 		/*
@@ -286,16 +286,16 @@ getnetconfig(void *handlep)
 		 * we give up.
 		 */
 		if (ni.eof == 1)
-			return(NULL);
+			return NULL;
 		break;
 	default:
 		nc_error = NC_NOTINIT;
-		return (NULL);
+		return NULL;
 	}
 
 	stringp = malloc(MAXNETCONFIGLINE);
 	if (stringp == NULL)
-		return (NULL);
+		return NULL;
 
 #ifdef MEM_CHK
 	if (malloc_verify() == 0) {
@@ -311,20 +311,20 @@ getnetconfig(void *handlep)
 		if (fgets(stringp, MAXNETCONFIGLINE, nc_file) == NULL) {
 			free(stringp);
 			ni.eof = 1;
-			return (NULL);
+			return NULL;
 		}
 	} while (*stringp == '#');
 
 	list = malloc(sizeof(*list));
 	if (list == NULL) {
 		free(stringp);
-		return(NULL);
+		return NULL;
 	}
 	np = malloc(sizeof(*np));
 	if (np == NULL) {
 		free(stringp);
 		free(list);
-		return(NULL);
+		return NULL;
 	}
 	list->ncp = np;
 	list->next = NULL;
@@ -334,7 +334,7 @@ getnetconfig(void *handlep)
 		free(stringp);
 		free(np);
 		free(list);
-		return (NULL);
+		return NULL;
 	} else {
 		/*
 		 * If this is the first entry that's been read, it is the
@@ -349,7 +349,7 @@ getnetconfig(void *handlep)
 			ni.tail = ni.tail->next;
 		}
 		ncp->nc_configs = ni.tail;
-		return(ni.tail->ncp);
+		return ni.tail->ncp;
 	}
 }
 
@@ -363,7 +363,7 @@ getnetconfig(void *handlep)
 int
 endnetconfig(void *handlep)
 {
-	struct netconfig_vars *nc_handlep = (struct netconfig_vars *)handlep;
+	struct netconfig_vars *nc_handlep = handlep;
 
 	struct netconfig_list *q, *p;
 
@@ -373,7 +373,7 @@ endnetconfig(void *handlep)
 	if (nc_handlep == NULL || (nc_handlep->valid != NC_VALID &&
 	nc_handlep->valid != NC_STORAGE)) {
 		nc_error = NC_NOTINIT;
-		return (-1);
+		return -1;
 	}
 
 	/*
@@ -384,7 +384,7 @@ endnetconfig(void *handlep)
 	nc_handlep->nc_configs = NULL;
 	if (--ni.ref > 0) {
 		free(nc_handlep);
-		return(0);
+		return 0;
 	}
 
 	/*
@@ -408,7 +408,7 @@ endnetconfig(void *handlep)
 
 	fclose(nc_file);
 	nc_file = NULL;
-	return (0);
+	return 0;
 }
 
 /*
@@ -429,7 +429,7 @@ getnetconfigent(const char *netid)
 	struct netconfig_list *list;	/* pointer to cache list */
 
 	if (netid == NULL || strlen(netid) == 0)
-		return (NULL);
+		return NULL;
 
 	/*
 	 * Look 

CVS commit: xsrc/external/mit/xf86-video-sunffb/dist/src

2016-10-26 Thread Michael Lorenz
Module Name:xsrc
Committed By:   macallan
Date:   Wed Oct 26 14:29:48 UTC 2016

Modified Files:
xsrc/external/mit/xf86-video-sunffb/dist/src: ffb_driver.c

Log Message:
default to exa if we don't have xaa


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 \
xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c

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

Modified files:

Index: xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c
diff -u xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c:1.10 xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c:1.11
--- xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c:1.10	Wed Sep  7 17:10:18 2016
+++ xsrc/external/mit/xf86-video-sunffb/dist/src/ffb_driver.c	Wed Oct 26 14:29:48 2016
@@ -755,20 +755,27 @@ FFBScreenInit(SCREEN_INIT_ARGS_DECL)
 if (!pFfb->NoAccel) {
 	char *optstr;
 	optstr = (char *)xf86GetOptValString(pFfb->Options, OPTION_ACCELMETHOD);
+#ifdef HAVE_XAA_H
 	if (optstr == NULL) optstr = "xaa";
+#else
+	if (optstr == NULL) optstr = "exa";
+#endif
 	if (xf86NameCmp(optstr, "EXA") == 0) {
 	xf86Msg(X_INFO, "using EXA\n");
 	if (xf86LoadSubModule(pScrn, "exa") != NULL) {
 		if (!FFBInitEXA(pScreen))
 		return FALSE;
 	}
-	} else if (xf86NameCmp(optstr, "XAA") == 0) {
+	}
+#ifdef HAVE_XAA_H
+	  else if (xf86NameCmp(optstr, "XAA") == 0) {
 	xf86Msg(X_INFO, "using XAA\n");
 	if (xf86LoadSubModule(pScrn, "xaa") != NULL) {
 		if (!FFBAccelInit(pScreen, pFfb))
 		return FALSE;
 	}
 	}
+#endif
 }
 
 



CVS commit: src/sys/dev/hil

2016-10-26 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 26 13:47:05 UTC 2016

Modified Files:
src/sys/dev/hil: devlist2h.awk

Log Message:
don't escape the unescapable


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/hil/devlist2h.awk

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/hil/devlist2h.awk
diff -u src/sys/dev/hil/devlist2h.awk:1.1 src/sys/dev/hil/devlist2h.awk:1.2
--- src/sys/dev/hil/devlist2h.awk:1.1	Sun Feb  6 13:26:54 2011
+++ src/sys/dev/hil/devlist2h.awk	Wed Oct 26 09:47:05 2016
@@ -1,5 +1,5 @@
 #! /usr/bin/awk -f
-#	$NetBSD: devlist2h.awk,v 1.1 2011/02/06 18:26:54 tsutsui Exp $
+#	$NetBSD: devlist2h.awk,v 1.2 2016/10/26 13:47:05 christos Exp $
 #	$OpenBSD: devlist2h.awk,v 1.4 2006/08/10 23:44:16 miod Exp $
 #
 # Copyright (c) 2003, Miodrag Vallat.
@@ -32,7 +32,7 @@ NR == 1 {
 	VERSION = $0
 	gsub("\\$", "", VERSION)
 
-	printf("/*\t\$NetBSD\$\t*/\n\n")
+	printf("/*\t$NetBSD%s\t*/\n\n", "$")
 	printf("/*\n")
 	printf(" * THIS FILE AUTOMATICALLY GENERATED.  DO NOT EDIT.\n")
 	printf(" *\n")



CVS commit: src/sys/dev/pci

2016-10-26 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Wed Oct 26 10:21:45 UTC 2016

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

Log Message:
Use wm_gmii_82544_{read,write}reg() on non-82567 ICH8, 9 and 10.


To generate a diff of this commit:
cvs rdiff -u -r1.427 -r1.428 src/sys/dev/pci/if_wm.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/if_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.427 src/sys/dev/pci/if_wm.c:1.428
--- src/sys/dev/pci/if_wm.c:1.427	Wed Oct 26 07:22:14 2016
+++ src/sys/dev/pci/if_wm.c	Wed Oct 26 10:21:44 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.427 2016/10/26 07:22:14 msaitoh Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.428 2016/10/26 10:21:44 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -84,7 +84,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.427 2016/10/26 07:22:14 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.428 2016/10/26 10:21:44 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -8157,7 +8157,7 @@ wm_gmii_mediainit(struct wm_softc *sc, p
 	case PCI_PRODUCT_INTEL_82801J_D_BM_LM:
 	case PCI_PRODUCT_INTEL_82801J_D_BM_LF:
 	case PCI_PRODUCT_INTEL_82801J_R_BM_V:
-		/* 82567 */
+		/* ICH8, 9, 10 with 82567 */
 		sc->sc_phytype = WMPHY_BM;
 		mii->mii_readreg = wm_gmii_bm_readreg;
 		mii->mii_writereg = wm_gmii_bm_writereg;
@@ -8168,6 +8168,10 @@ wm_gmii_mediainit(struct wm_softc *sc, p
 			/* SGMII */
 			mii->mii_readreg = wm_sgmii_readreg;
 			mii->mii_writereg = wm_sgmii_writereg;
+		} else if (sc->sc_type >= WM_T_ICH8) {
+			/* non-82567 ICH8, 9 and 10 */
+			mii->mii_readreg = wm_gmii_i82544_readreg;
+			mii->mii_writereg = wm_gmii_i82544_writereg;
 		} else if (sc->sc_type >= WM_T_80003) {
 			/* 80003 */
 			mii->mii_readreg = wm_gmii_i80003_readreg;



CVS commit: [nick-nhusb] src/sys/dev/usb

2016-10-26 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Wed Oct 26 07:31:24 UTC 2016

Modified Files:
src/sys/dev/usb [nick-nhusb]: usb_subr.c

Log Message:
PR kern/48243 (inconsistant usage of 'up->parent' in usb_subr.c)

Add a KASSERT and comment to explain what's going on.


To generate a diff of this commit:
cvs rdiff -u -r1.198.2.34 -r1.198.2.35 src/sys/dev/usb/usb_subr.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/usb/usb_subr.c
diff -u src/sys/dev/usb/usb_subr.c:1.198.2.34 src/sys/dev/usb/usb_subr.c:1.198.2.35
--- src/sys/dev/usb/usb_subr.c:1.198.2.34	Fri Oct  7 10:37:42 2016
+++ src/sys/dev/usb/usb_subr.c	Wed Oct 26 07:31:24 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: usb_subr.c,v 1.198.2.34 2016/10/07 10:37:42 skrll Exp $	*/
+/*	$NetBSD: usb_subr.c,v 1.198.2.35 2016/10/26 07:31:24 skrll Exp $	*/
 /*	$FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.18 1999/11/17 22:33:47 n_hibma Exp $	*/
 
 /*
@@ -32,7 +32,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.198.2.34 2016/10/07 10:37:42 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: usb_subr.c,v 1.198.2.35 2016/10/26 07:31:24 skrll Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_compat_netbsd.h"
@@ -1261,6 +1261,11 @@ usbd_new_device(device_t parent, struct 
 		err = usbd_get_initial_ddesc(dev, dd);
 		if (!err)
 			break;
+		/*
+		 * The root hub can never fail to give the initial descriptor,
+		 * but assert it just in case.
+		 */
+		KASSERT(up->up_parent);
 		usbd_delay_ms(dev, 200);
 		if ((i & 3) == 3)
 			usbd_reset_port(up->up_parent, port, );



CVS commit: src/sys/dev/pci

2016-10-26 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Wed Oct 26 07:22:14 UTC 2016

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

Log Message:
82567V_3 is BME1000_E_2(bm). Tested with Advantech AIMB-212 1st Ethernet port.


To generate a diff of this commit:
cvs rdiff -u -r1.426 -r1.427 src/sys/dev/pci/if_wm.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/if_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.426 src/sys/dev/pci/if_wm.c:1.427
--- src/sys/dev/pci/if_wm.c:1.426	Wed Oct 26 06:51:35 2016
+++ src/sys/dev/pci/if_wm.c	Wed Oct 26 07:22:14 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.426 2016/10/26 06:51:35 msaitoh Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.427 2016/10/26 07:22:14 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -84,7 +84,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.426 2016/10/26 06:51:35 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.427 2016/10/26 07:22:14 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -8150,6 +8150,7 @@ wm_gmii_mediainit(struct wm_softc *sc, p
 		/* 82579 */
 		sc->sc_phytype = WMPHY_82579;
 		break;
+	case PCI_PRODUCT_INTEL_82801H_82567V_3:
 	case PCI_PRODUCT_INTEL_82801I_BM:
 	case PCI_PRODUCT_INTEL_82801J_R_BM_LM:
 	case PCI_PRODUCT_INTEL_82801J_R_BM_LF:



CVS commit: src/sys/dev/pci

2016-10-26 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Wed Oct 26 06:51:35 UTC 2016

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

Log Message:
82567V-3 is not ICH9 but ICH8.


To generate a diff of this commit:
cvs rdiff -u -r1.425 -r1.426 src/sys/dev/pci/if_wm.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/if_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.425 src/sys/dev/pci/if_wm.c:1.426
--- src/sys/dev/pci/if_wm.c:1.425	Fri Oct 21 08:30:48 2016
+++ src/sys/dev/pci/if_wm.c	Wed Oct 26 06:51:35 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.425 2016/10/21 08:30:48 msaitoh Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.426 2016/10/26 06:51:35 msaitoh Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -84,7 +84,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.425 2016/10/21 08:30:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.426 2016/10/26 06:51:35 msaitoh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -1138,6 +1138,9 @@ static const struct wm_product {
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801H_IFE_G,
 	  "Intel i82801H IFE (G) LAN Controller",
 	  WM_T_ICH8,		WMP_F_COPPER },
+	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801H_82567V_3,
+	  "82567V-3 LAN Controller",
+	  WM_T_ICH8,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801I_IGP_AMT,
 	  "82801I (AMT) LAN Controller",
 	  WM_T_ICH9,		WMP_F_COPPER },
@@ -1165,9 +1168,6 @@ static const struct wm_product {
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801I_BM,
 	  "82567LM-4 LAN Controller",
 	  WM_T_ICH9,		WMP_F_COPPER },
-	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801I_82567V_3,
-	  "82567V-3 LAN Controller",
-	  WM_T_ICH9,		WMP_F_COPPER },
 	{ PCI_VENDOR_INTEL,	PCI_PRODUCT_INTEL_82801J_R_BM_LM,
 	  "82567LM-2 LAN Controller",
 	  WM_T_ICH10,		WMP_F_COPPER },



CVS commit: src/sys/dev/pci

2016-10-26 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Wed Oct 26 06:50:44 UTC 2016

Modified Files:
src/sys/dev/pci: pcidevs.h pcidevs_data.h

Log Message:
regen.


To generate a diff of this commit:
cvs rdiff -u -r1.1261 -r1.1262 src/sys/dev/pci/pcidevs.h
cvs rdiff -u -r1.1260 -r1.1261 src/sys/dev/pci/pcidevs_data.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/pcidevs.h
diff -u src/sys/dev/pci/pcidevs.h:1.1261 src/sys/dev/pci/pcidevs.h:1.1262
--- src/sys/dev/pci/pcidevs.h:1.1261	Mon Oct 24 06:04:26 2016
+++ src/sys/dev/pci/pcidevs.h	Wed Oct 26 06:50:43 2016
@@ -1,10 +1,10 @@
-/*	$NetBSD: pcidevs.h,v 1.1261 2016/10/24 06:04:26 msaitoh Exp $	*/
+/*	$NetBSD: pcidevs.h,v 1.1262 2016/10/26 06:50:43 msaitoh Exp $	*/
 
 /*
  * THIS FILE AUTOMATICALLY GENERATED.  DO NOT EDIT.
  *
  * generated from:
- *	NetBSD: pcidevs,v 1.1269 2016/10/24 06:03:52 msaitoh Exp
+ *	NetBSD: pcidevs,v 1.1270 2016/10/26 06:50:20 msaitoh Exp
  */
 
 /*
@@ -2973,7 +2973,7 @@
 #define	PCI_PRODUCT_INTEL_82870P2_PPB	0x1460		/* 82870P2 P64H2 PCI-PCI Bridge */
 #define	PCI_PRODUCT_INTEL_82870P2_IOxAPIC	0x1461		/* 82870P2 P64H2 IOxAPIC */
 #define	PCI_PRODUCT_INTEL_82870P2_HPLUG	0x1462		/* 82870P2 P64H2 Hot Plug Controller */
-#define	PCI_PRODUCT_INTEL_82801I_82567V_3	0x1501		/* i82567V-3 LAN Controller */
+#define	PCI_PRODUCT_INTEL_82801H_82567V_3	0x1501		/* i82567V-3 LAN Controller */
 #define	PCI_PRODUCT_INTEL_PCH2_LV_LM	0x1502		/* 82579LM Gigabit Network Connection */
 #define	PCI_PRODUCT_INTEL_PCH2_LV_V	0x1503		/* 82579V Gigabit Network Connection */
 #define	PCI_PRODUCT_INTEL_82599_SFP_EM	0x1507		/* 82599 10G Ethernet Express Module */

Index: src/sys/dev/pci/pcidevs_data.h
diff -u src/sys/dev/pci/pcidevs_data.h:1.1260 src/sys/dev/pci/pcidevs_data.h:1.1261
--- src/sys/dev/pci/pcidevs_data.h:1.1260	Mon Oct 24 06:04:27 2016
+++ src/sys/dev/pci/pcidevs_data.h	Wed Oct 26 06:50:43 2016
@@ -1,10 +1,10 @@
-/*	$NetBSD: pcidevs_data.h,v 1.1260 2016/10/24 06:04:27 msaitoh Exp $	*/
+/*	$NetBSD: pcidevs_data.h,v 1.1261 2016/10/26 06:50:43 msaitoh Exp $	*/
 
 /*
  * THIS FILE AUTOMATICALLY GENERATED.  DO NOT EDIT.
  *
  * generated from:
- *	NetBSD: pcidevs,v 1.1269 2016/10/24 06:03:52 msaitoh Exp
+ *	NetBSD: pcidevs,v 1.1270 2016/10/26 06:50:20 msaitoh Exp
  */
 
 /*
@@ -4682,7 +4682,7 @@ static const uint16_t pci_products[] = {
 	19352, 19360, 17451, 0,
 	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82870P2_HPLUG, 
 	19352, 19360, 19366, 19370, 6293, 0,
-	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801I_82567V_3, 
+	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_82801H_82567V_3, 
 	19375, 4534, 6293, 0,
 	PCI_VENDOR_INTEL, PCI_PRODUCT_INTEL_PCH2_LV_LM, 
 	19385, 5547, 3888, 18497, 0,



CVS commit: src/sys/dev/pci

2016-10-26 Thread SAITOH Masanobu
Module Name:src
Committed By:   msaitoh
Date:   Wed Oct 26 06:50:20 UTC 2016

Modified Files:
src/sys/dev/pci: pcidevs

Log Message:
i82567V-3 is not ICH9 but ICH8.


To generate a diff of this commit:
cvs rdiff -u -r1.1269 -r1.1270 src/sys/dev/pci/pcidevs

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/pcidevs
diff -u src/sys/dev/pci/pcidevs:1.1269 src/sys/dev/pci/pcidevs:1.1270
--- src/sys/dev/pci/pcidevs:1.1269	Mon Oct 24 06:03:52 2016
+++ src/sys/dev/pci/pcidevs	Wed Oct 26 06:50:20 2016
@@ -1,4 +1,4 @@
-$NetBSD: pcidevs,v 1.1269 2016/10/24 06:03:52 msaitoh Exp $
+$NetBSD: pcidevs,v 1.1270 2016/10/26 06:50:20 msaitoh Exp $
 
 /*
  * Copyright (c) 1995, 1996 Christopher G. Demetriou
@@ -2966,7 +2966,7 @@ product INTEL 82439HX		0x1250	82439HX (T
 product INTEL 82870P2_PPB	0x1460	82870P2 P64H2 PCI-PCI Bridge
 product INTEL 82870P2_IOxAPIC	0x1461	82870P2 P64H2 IOxAPIC
 product INTEL 82870P2_HPLUG	0x1462	82870P2 P64H2 Hot Plug Controller
-product INTEL 82801I_82567V_3	0x1501	i82567V-3 LAN Controller
+product INTEL 82801H_82567V_3	0x1501	i82567V-3 LAN Controller
 product INTEL PCH2_LV_LM	0x1502	82579LM Gigabit Network Connection
 product INTEL PCH2_LV_V		0x1503	82579V Gigabit Network Connection
 product INTEL 82599_SFP_EM	0x1507	82599 10G Ethernet Express Module



CVS commit: src/sys/net

2016-10-26 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Wed Oct 26 06:49:10 UTC 2016

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

Log Message:
Pull RTM_CHANGE code out of route_output to make further changes easy

No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.197 -r1.198 src/sys/net/rtsock.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/rtsock.c
diff -u src/sys/net/rtsock.c:1.197 src/sys/net/rtsock.c:1.198
--- src/sys/net/rtsock.c:1.197	Mon Oct  3 11:06:06 2016
+++ src/sys/net/rtsock.c	Wed Oct 26 06:49:10 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: rtsock.c,v 1.197 2016/10/03 11:06:06 ozaki-r Exp $	*/
+/*	$NetBSD: rtsock.c,v 1.198 2016/10/26 06:49:10 ozaki-r Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -61,7 +61,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rtsock.c,v 1.197 2016/10/03 11:06:06 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtsock.c,v 1.198 2016/10/26 06:49:10 ozaki-r Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -593,6 +593,73 @@ out:
 	return ifa;
 }
 
+static int
+route_output_change(struct rtentry *rt, struct rt_addrinfo *info,
+struct rt_xmsghdr *rtm)
+{
+	int error = 0;
+	struct ifnet *ifp, *new_ifp;
+	struct ifaddr *ifa, *new_ifa;
+	struct psref psref_ifa, psref_new_ifa, psref_ifp;
+
+	/*
+	 * new gateway could require new ifaddr, ifp;
+	 * flags may also be different; ifp may be specified
+	 * by ll sockaddr when protocol address is ambiguous
+	 */
+	ifp = rt_getifp(info, _ifp);
+	ifa = rt_getifa(info, _ifa);
+	if (ifa == NULL) {
+		error = ENETUNREACH;
+		goto out;
+	}
+	if (info->rti_info[RTAX_GATEWAY]) {
+		error = rt_setgate(rt, info->rti_info[RTAX_GATEWAY]);
+		if (error != 0)
+			goto out;
+	}
+	if (info->rti_info[RTAX_TAG]) {
+		const struct sockaddr *tag;
+		tag = rt_settag(rt, info->rti_info[RTAX_TAG]);
+		if (tag == NULL) {
+			error = ENOBUFS;
+			goto out;
+		}
+	}
+	/* new gateway could require new ifaddr, ifp;
+	   flags may also be different; ifp may be specified
+	   by ll sockaddr when protocol address is ambiguous */
+	new_ifa = route_output_get_ifa(*info, rt, _ifp, _new_ifa);
+	if (new_ifa != NULL) {
+		ifa_release(ifa, _ifa);
+		ifa = new_ifa;
+	}
+	if (ifa) {
+		struct ifaddr *oifa = rt->rt_ifa;
+		if (oifa != ifa) {
+			if (oifa && oifa->ifa_rtrequest)
+oifa->ifa_rtrequest(RTM_DELETE, rt, info);
+			rt_replace_ifa(rt, ifa);
+			rt->rt_ifp = new_ifp;
+		}
+		if (new_ifa == NULL)
+			ifa_release(ifa, _ifa);
+	}
+	ifa_release(new_ifa, _new_ifa);
+	if (new_ifp && rt->rt_ifp != new_ifp)
+		rt->rt_ifp = new_ifp;
+	rt_setmetrics(rtm->rtm_inits, rtm, rt);
+	if (rt->rt_flags != info->rti_flags)
+		rt->rt_flags = (info->rti_flags & ~PRESERVED_RTF)
+		| (rt->rt_flags & PRESERVED_RTF);
+	if (rt->rt_ifa && rt->rt_ifa->ifa_rtrequest)
+		rt->rt_ifa->ifa_rtrequest(RTM_ADD, rt, info);
+out:
+	if_put(ifp, _ifp);
+
+	return error;
+}
+
 /*ARGSUSED*/
 int
 COMPATNAME(route_output)(struct mbuf *m, struct socket *so)
@@ -604,11 +671,8 @@ COMPATNAME(route_output)(struct mbuf *m,
 	struct rtentry *saved_nrt = NULL;
 	struct rt_addrinfo info;
 	int len, error = 0;
-	struct ifnet *ifp = NULL;
-	struct ifaddr *ifa = NULL;
 	sa_family_t family;
 	struct sockaddr_dl sdl;
-	struct psref psref;
 	int bound = curlwp_bind();
 
 #define senderr(e) do { error = e; goto flush;} while (/*CONSTCOND*/ 0)
@@ -818,70 +882,11 @@ COMPATNAME(route_output)(struct mbuf *m,
 			}
 			break;
 
-		case RTM_CHANGE: {
-			struct ifnet *_ifp;
-			struct ifaddr *_ifa;
-			struct psref _psref, psref_ifp;
-			/*
-			 * new gateway could require new ifaddr, ifp;
-			 * flags may also be different; ifp may be specified
-			 * by ll sockaddr when protocol address is ambiguous
-			 */
-			_ifp = rt_getifp(, _ifp);
-			ifa = rt_getifa(, );
-			if (ifa == NULL) {
-if_put(_ifp, _ifp);
-senderr(ENETUNREACH);
-			}
-			if (info.rti_info[RTAX_GATEWAY]) {
-error = rt_setgate(rt,
-info.rti_info[RTAX_GATEWAY]);
-if (error != 0) {
-	if_put(_ifp, _ifp);
-	senderr(error);
-}
-			}
-			if (info.rti_info[RTAX_TAG]) {
-const struct sockaddr *tag;
-tag = rt_settag(rt, info.rti_info[RTAX_TAG]);
-if (tag == NULL) {
-	if_put(_ifp, _ifp);
-	senderr(ENOBUFS);
-}
-			}
-			/* new gateway could require new ifaddr, ifp;
-			   flags may also be different; ifp may be specified
-			   by ll sockaddr when protocol address is ambiguous */
-			_ifa = route_output_get_ifa(info, rt, , &_psref);
-			if (_ifa != NULL) {
-ifa_release(ifa, );
-ifa = _ifa;
-			}
-			if (ifa) {
-struct ifaddr *oifa = rt->rt_ifa;
-if (oifa != ifa) {
-	if (oifa && oifa->ifa_rtrequest) {
-		oifa->ifa_rtrequest(RTM_DELETE,
-		rt, );
-	}
-	rt_replace_ifa(rt, ifa);
-	rt->rt_ifp = ifp;
-}
-if (_ifa == NULL)
-	ifa_release(ifa, );
-			}
-			ifa_release(_ifa, &_psref);
-			if (ifp 

CVS commit: src/sys/dev

2016-10-26 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Wed Oct 26 06:10:40 UTC 2016

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

Log Message:
Avoid writing beyond the end of the buffer we were given.

This should actually cure the "stack overflow" reported earlier (and
was worked around by increasing the size of the buffer).


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/sys/dev/dev_verbose.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/dev_verbose.c
diff -u src/sys/dev/dev_verbose.c:1.2 src/sys/dev/dev_verbose.c:1.3
--- src/sys/dev/dev_verbose.c:1.2	Wed Feb  3 05:29:43 2016
+++ src/sys/dev/dev_verbose.c	Wed Oct 26 06:10:39 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: dev_verbose.c,v 1.2 2016/02/03 05:29:43 christos Exp $	*/
+/*	$NetBSD: dev_verbose.c,v 1.3 2016/10/26 06:10:39 pgoyette Exp $	*/
 
 /*
  * Redistribution and use in source and binary forms, with or without
@@ -23,7 +23,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: dev_verbose.c,v 1.2 2016/02/03 05:29:43 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dev_verbose.c,v 1.3 2016/10/26 06:10:39 pgoyette Exp $");
 
 #include 
 
@@ -41,10 +41,14 @@ dev_untokenstring(const char *words, con
 size_t len)
 {
 	char *cp = buf;
+	size_t newlen;
 
 	buf[0] = '\0';
 	for (; *token != 0; token++) {
-		cp = buf + strlcat(buf, words + *token, len - 2);
+		newlen = strlcat(buf, words + *token, len - 2);
+		if (newlen > len - 2)
+			newlen = len - 2;
+		cp = buf + newlen;
 		cp[0] = ' ';
 		cp[1] = '\0';
 	}