CVS commit: src/sys/dev/wscons

2017-06-17 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Sun Jun 18 05:57:58 UTC 2017

Modified Files:
src/sys/dev/wscons: files.wscons

Log Message:
wsbellmux.c doesn't need a needs-flag


To generate a diff of this commit:
cvs rdiff -u -r1.52 -r1.53 src/sys/dev/wscons/files.wscons

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



CVS commit: src/sys/dev/wscons

2017-06-17 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Sun Jun 18 05:57:58 UTC 2017

Modified Files:
src/sys/dev/wscons: files.wscons

Log Message:
wsbellmux.c doesn't need a needs-flag


To generate a diff of this commit:
cvs rdiff -u -r1.52 -r1.53 src/sys/dev/wscons/files.wscons

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/wscons/files.wscons
diff -u src/sys/dev/wscons/files.wscons:1.52 src/sys/dev/wscons/files.wscons:1.53
--- src/sys/dev/wscons/files.wscons:1.52	Mon Jun 12 07:06:45 2017
+++ src/sys/dev/wscons/files.wscons	Sun Jun 18 05:57:58 2017
@@ -1,4 +1,4 @@
-# $NetBSD: files.wscons,v 1.52 2017/06/12 07:06:45 pgoyette Exp $
+# $NetBSD: files.wscons,v 1.53 2017/06/18 05:57:58 pgoyette Exp $
 
 #
 # "Workstation Console" glue; attaches frame buffer to emulator & keyboard,
@@ -70,7 +70,7 @@ file	dev/wscons/wscons_rops.c	wsrasterem
 
 defpseudo	wsmux
 file	dev/wscons/wsmux.c		wsmux			needs-flag
-file	dev/wscons/wsbellmux.c		wsmux			needs-flag
+file	dev/wscons/wsbellmux.c		wsmux
 
 define	tpcalib
 file	dev/wscons/tpcalib.c		tpcalib



Re: CVS commit: [jdolecek-ncq] src/sys/dev/ata

2017-06-17 Thread Jaromír Doleček
2017-06-17 20:00 GMT+02:00 Jonathan A. Kollasch :
>
> I really think we need to make ata_xfer_init() private to
> ata_queue_alloc(), and use ata_get_xfer() everywhere.  That we can
> fabricate an xfer on the stack anywhere that will trample all over an
> active command slot is fundamentally wrong.

Any non-NCQ command which goes via atastart() is safe, since that routine
makes sure there is only one non-NCQ command being executed by HBA.

The on-stack xfer was carried over from previous design. I kept it mostly
since I didn't want to change those codepaths to deal with xfer not being
available.

As far as I see, ahcisata(4) reset should be actually fine, since it does
the reset
without using the xfers/slots.

I had a look at siisata_reset_drive(). That thing indeed can't reliably
work as-is.
Arguably it should be changed to use the on-stack xfer, currently it e.g.
doesn't
do anything if all slots are taken, which is wrong. I'll have a look.

> ata_queue_downsize() currently appears to leak xfers.  Additionally once
> you put a QD1 drive on the channel you're stuck there forever, even if
> you replace the channel population entirely with QD32 drives.

Okay, I need to look at this - original assumption was that it's never
called while there are other transfers. This is false with PMP.

Jaromir


CVS commit: src/lib/libc/net

2017-06-17 Thread Emmanuel Dreyfus
Module Name:src
Committed By:   manu
Date:   Sun Jun 18 04:03:44 UTC 2017

Modified Files:
src/lib/libc/net: Makefile.inc

Log Message:
Include IPv6 global variable in USE_INET6=no libc

This ensures a binary built with USE_INET6=yes libc can still link at
runtime with a USE_INET6=no libc. Of course IPv6 functionnality is not
available, but dynamic linking is not killed by missing symbols such
as in6addr_any.


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/lib/libc/net/Makefile.inc

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



CVS commit: src/lib/libc/net

2017-06-17 Thread Emmanuel Dreyfus
Module Name:src
Committed By:   manu
Date:   Sun Jun 18 04:03:44 UTC 2017

Modified Files:
src/lib/libc/net: Makefile.inc

Log Message:
Include IPv6 global variable in USE_INET6=no libc

This ensures a binary built with USE_INET6=yes libc can still link at
runtime with a USE_INET6=no libc. Of course IPv6 functionnality is not
available, but dynamic linking is not killed by missing symbols such
as in6addr_any.


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/lib/libc/net/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/lib/libc/net/Makefile.inc
diff -u src/lib/libc/net/Makefile.inc:1.86 src/lib/libc/net/Makefile.inc:1.87
--- src/lib/libc/net/Makefile.inc:1.86	Wed Apr 15 19:13:46 2015
+++ src/lib/libc/net/Makefile.inc	Sun Jun 18 04:03:44 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.86 2015/04/15 19:13:46 mrg Exp $
+#	$NetBSD: Makefile.inc,v 1.87 2017/06/18 04:03:44 manu Exp $
 #	@(#)Makefile.inc	8.2 (Berkeley) 9/5/93
 
 # net sources
@@ -21,8 +21,9 @@ SRCS+=	hesiod.c
 
 SRCS+=	getaddrinfo.c getnameinfo.c
 .if (${USE_INET6} != "no")
-SRCS+=	ip6opt.c rthdr.c vars6.c inet6_scopeid.c
+SRCS+=	ip6opt.c rthdr.c inet6_scopeid.c
 .endif
+SRCS+=	vars6.c
 SRCS+=	if_indextoname.c if_nameindex.c if_nametoindex.c
 
 LPREFIX=_nsyy



CVS commit: src

2017-06-17 Thread Emmanuel Dreyfus
Module Name:src
Committed By:   manu
Date:   Sun Jun 18 03:56:39 UTC 2017

Modified Files:
src/distrib/utils/libhack: Makefile Makefile.inc
src/lib/libc/gen: getcap.c

Log Message:
Make shared -DSMALL libc buildable without breaking libhack

We used -DSMALL to exclude code from libc in order to build
libhack. Introduce -DLIBHACK to do this without so that
-DSMALL does not remove code necessary for building a shared libc


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/distrib/utils/libhack/Makefile
cvs rdiff -u -r1.26 -r1.27 src/distrib/utils/libhack/Makefile.inc
cvs rdiff -u -r1.56 -r1.57 src/lib/libc/gen/getcap.c

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

Modified files:

Index: src/distrib/utils/libhack/Makefile
diff -u src/distrib/utils/libhack/Makefile:1.24 src/distrib/utils/libhack/Makefile:1.25
--- src/distrib/utils/libhack/Makefile:1.24	Tue Aug 27 09:53:33 2013
+++ src/distrib/utils/libhack/Makefile	Sun Jun 18 03:56:39 2017
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.24 2013/08/27 09:53:33 christos Exp $
+# $NetBSD: Makefile,v 1.25 2017/06/18 03:56:39 manu Exp $
 #
 # Stubs to kill off some things from libc:
 # This save space on a boot system.
@@ -10,6 +10,7 @@ HACKSRC?=${.CURDIR}
 HACKOBJ?=${.OBJDIR}
 
 CPPFLAGS+=	-DSMALL
+CPPFLAGS+=	-DLIBHACK
 CPPFLAGS.runetable.c+=	-I${HACKSRC}/../../../lib/libc/citrus \
 			-DALL_80_TO_FF_SW1
 CPPFLAGS.syslog.c+=	-I${HACKSRC}/../../../lib/libc/include

Index: src/distrib/utils/libhack/Makefile.inc
diff -u src/distrib/utils/libhack/Makefile.inc:1.26 src/distrib/utils/libhack/Makefile.inc:1.27
--- src/distrib/utils/libhack/Makefile.inc:1.26	Mon Aug 25 14:11:51 2014
+++ src/distrib/utils/libhack/Makefile.inc	Sun Jun 18 03:56:39 2017
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.inc,v 1.26 2014/08/25 14:11:51 christos Exp $
+# $NetBSD: Makefile.inc,v 1.27 2017/06/18 03:56:39 manu Exp $
 #
 # Include this fragment to build libhack.o
 # It is .o and not .a to make sure these are the
@@ -17,6 +17,7 @@
 #			
 
 CPPFLAGS+=	-DSMALL
+CPPFLAGS+=	-DLIBHACK
 HACKOBJS+=	getcap.o getgrent.o getnet.o getnetgr.o getpwent.o \
 		localeconv.o multibyte.o perror.o runetable.o setlocale.o \
 		strerror.o strsignal.o syslog.o utmp.o yplib.o

Index: src/lib/libc/gen/getcap.c
diff -u src/lib/libc/gen/getcap.c:1.56 src/lib/libc/gen/getcap.c:1.57
--- src/lib/libc/gen/getcap.c:1.56	Wed Sep 24 13:18:52 2014
+++ src/lib/libc/gen/getcap.c	Sun Jun 18 03:56:39 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: getcap.c,v 1.56 2014/09/24 13:18:52 christos Exp $	*/
+/*	$NetBSD: getcap.c,v 1.57 2017/06/18 03:56:39 manu Exp $	*/
 
 /*-
  * Copyright (c) 1992, 1993
@@ -41,11 +41,11 @@
 #if 0
 static char sccsid[] = "@(#)getcap.c	8.3 (Berkeley) 3/25/94";
 #else
-__RCSID("$NetBSD: getcap.c,v 1.56 2014/09/24 13:18:52 christos Exp $");
+__RCSID("$NetBSD: getcap.c,v 1.57 2017/06/18 03:56:39 manu Exp $");
 #endif
 #endif /* LIBC_SCCS and not lint */
 
-#ifndef SMALL
+#ifndef LIBHACK
 #include "namespace.h"
 #endif
 #include 
@@ -65,7 +65,7 @@ __RCSID("$NetBSD: getcap.c,v 1.56 2014/0
 #include 
 #include 
 
-#if defined(__weak_alias) && !defined(SMALL)
+#if defined(__weak_alias) && !defined(LIBHACK)
 __weak_alias(cgetcap,_cgetcap)
 __weak_alias(cgetclose,_cgetclose)
 __weak_alias(cgetent,_cgetent)



CVS commit: src

2017-06-17 Thread Emmanuel Dreyfus
Module Name:src
Committed By:   manu
Date:   Sun Jun 18 03:56:39 UTC 2017

Modified Files:
src/distrib/utils/libhack: Makefile Makefile.inc
src/lib/libc/gen: getcap.c

Log Message:
Make shared -DSMALL libc buildable without breaking libhack

We used -DSMALL to exclude code from libc in order to build
libhack. Introduce -DLIBHACK to do this without so that
-DSMALL does not remove code necessary for building a shared libc


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/distrib/utils/libhack/Makefile
cvs rdiff -u -r1.26 -r1.27 src/distrib/utils/libhack/Makefile.inc
cvs rdiff -u -r1.56 -r1.57 src/lib/libc/gen/getcap.c

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



CVS commit: src/etc

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Jun 18 02:43:43 UTC 2017

Modified Files:
src/etc: Makefile

Log Message:
no need for debug printing.


To generate a diff of this commit:
cvs rdiff -u -r1.429 -r1.430 src/etc/Makefile

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

Modified files:

Index: src/etc/Makefile
diff -u src/etc/Makefile:1.429 src/etc/Makefile:1.430
--- src/etc/Makefile:1.429	Sat Jun 17 21:03:30 2017
+++ src/etc/Makefile	Sat Jun 17 22:43:43 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.429 2017/06/18 01:03:30 christos Exp $
+#	$NetBSD: Makefile,v 1.430 2017/06/18 02:43:43 christos Exp $
 #	from: @(#)Makefile	8.7 (Berkeley) 5/25/95
 
 # Environment variables without default values:
@@ -605,7 +605,7 @@ build_kernelsets: .PHONY
 .if ${configfile} == ${configsel}
 build_kernelsets: kernset-${configfile}
 kernset-${configfile}: .PHONY build_kernels snap_pre
-	@ set -x; kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile}); \
+	@kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile}); \
 	kerndir=${KERNOBJDIR}/${configfile:C/.*\///}; \
 	kernsuffixes="${KERNEL_SUFFIXES:S/^/./}"; \
 	kern_tgz=${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/sets/kern-${configfile}.tgz; \
@@ -647,7 +647,7 @@ build_releasekernels: .PHONY
 .if ${configfile} == ${configsel}
 build_releasekernels: releasekern-${configfile}
 releasekern-${configfile}: .PHONY build_kernels snap_pre
-	@ set -x;  kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile:C/.*\///}); \
+	@kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile:C/.*\///}); \
 	kerndir=${KERNOBJDIR}/${configfile:C/.*\///}; \
 	kernsuffixes="${KERNEL_SUFFIXES:S/^/./}"; \
 	dest="${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/kernel"; \



CVS commit: src/etc

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Jun 18 02:43:43 UTC 2017

Modified Files:
src/etc: Makefile

Log Message:
no need for debug printing.


To generate a diff of this commit:
cvs rdiff -u -r1.429 -r1.430 src/etc/Makefile

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



Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
On Jun 18, 12:36am, jo...@bec.de (Joerg Sonnenberger) wrote:
-- Subject: Re: CVS commit: src/usr.bin/make

| Please do not unilaterally change behavior. Especially if it has been
| discussed in the past. This is rude at best and not everyone shares your
| opinion.

Please explain the use case (aside for looking at the internal representation
of a variable). For example, if .OBJDIR, LIB, etc. ended up unexpanded, many
things would break. I just don't think it is useful to be the default, and
using -V '${var}' to get it to expand is counter-intuitive. Why should it
behave differently in the first place?

christos


CVS commit: src/etc

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Jun 18 01:03:30 UTC 2017

Modified Files:
src/etc: Makefile

Log Message:
put the dtb files with their kernels.


To generate a diff of this commit:
cvs rdiff -u -r1.428 -r1.429 src/etc/Makefile

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

Modified files:

Index: src/etc/Makefile
diff -u src/etc/Makefile:1.428 src/etc/Makefile:1.429
--- src/etc/Makefile:1.428	Sun May 21 11:28:38 2017
+++ src/etc/Makefile	Sat Jun 17 21:03:30 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile,v 1.428 2017/05/21 15:28:38 riastradh Exp $
+#	$NetBSD: Makefile,v 1.429 2017/06/18 01:03:30 christos Exp $
 #	from: @(#)Makefile	8.7 (Berkeley) 5/25/95
 
 # Environment variables without default values:
@@ -605,7 +605,7 @@ build_kernelsets: .PHONY
 .if ${configfile} == ${configsel}
 build_kernelsets: kernset-${configfile}
 kernset-${configfile}: .PHONY build_kernels snap_pre
-	@ kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile}); \
+	@ set -x; kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile}); \
 	kerndir=${KERNOBJDIR}/${configfile:C/.*\///}; \
 	kernsuffixes="${KERNEL_SUFFIXES:S/^/./}"; \
 	kern_tgz=${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/sets/kern-${configfile}.tgz; \
@@ -625,6 +625,10 @@ kernset-${configfile}: .PHONY build_kern
 			echo "echo $${kernels} | $${pax_cmd}"; \
 			( echo "/set uname=${BINOWN} gname=${BINGRP}"; \
 			echo ". type=dir optional"; \
+			dtblist=$$(${MAKE} -V DTB); \
+			for dtb in $${dtblist}; do \
+echo "./$${dtb} type=file"; \
+			done; \
 			for kernel in $${kernels}; do \
 echo "./$${kernel} type=file"; \
 			done ) | eval $${pax_cmd}; \
@@ -643,15 +647,25 @@ build_releasekernels: .PHONY
 .if ${configfile} == ${configsel}
 build_releasekernels: releasekern-${configfile}
 releasekern-${configfile}: .PHONY build_kernels snap_pre
-	@ kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile:C/.*\///}); \
+	@ set -x;  kernlist=$$(${GETKERNELAWK} ${KERNCONFDIR}/${configfile:C/.*\///}); \
 	kerndir=${KERNOBJDIR}/${configfile:C/.*\///}; \
 	kernsuffixes="${KERNEL_SUFFIXES:S/^/./}"; \
+	dest="${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/kernel"; \
 	cd $${kerndir} && {	\
+		dtblist=$$(${MAKE} -V DTB); \
+		for dtb in $${dtblist}; do \
+			[ ! -f $${dtb} ] && continue; \
+			dtb_gz="$${dest}/$${dtb}.gz"; \
+			[ $${dtb_gz} -nt $${dtb} ] && continue; \
+			rm -f $${dtb_gz}; \
+			echo "${TOOL_GZIP} ${GZIP_FLAGS} -c < $${kerndir}/$${dtb} > $${dtb_gz}"; \
+			${TOOL_GZIP} ${GZIP_FLAGS} -c < $${dtb} > $${dtb_gz}; \
+		done; \
 		for kernel in $${kernlist}; do \
 			for s in "" $${kernsuffixes}; do \
 ks="$${kernel}$${s}"; \
 [ ! -f $${ks} ] && continue; \
-knl_gz="${RELEASEDIR}/${RELEASEMACHINEDIR}/binary/kernel/$${kernel}-${configfile:C/.*\///}$${s}.gz"; \
+knl_gz="$${dest}/$${kernel}-${configfile:C/.*\///}$${s}.gz"; \
 [ $${knl_gz} -nt $${ks} ] && continue; \
 rm -f $${knl_gz}; \
 echo "${TOOL_GZIP} ${GZIP_FLAGS} -c < $${kerndir}/$${ks} > $${knl_gz}"; \



CVS commit: src/etc

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sun Jun 18 01:03:30 UTC 2017

Modified Files:
src/etc: Makefile

Log Message:
put the dtb files with their kernels.


To generate a diff of this commit:
cvs rdiff -u -r1.428 -r1.429 src/etc/Makefile

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/cortex

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 22:49:37 UTC 2017

Modified Files:
src/sys/arch/arm/cortex: gtmr.c

Log Message:
Interrupts are enabled before the timer is configured. Ensure that the
timer is disabled when attaching so it doesn't go crazy between the time
interrupts are enabled and clocks are initialized. My RPI3 makes it
multi-user now.


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/cortex/gtmr.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/cortex/gtmr.c
diff -u src/sys/arch/arm/cortex/gtmr.c:1.17 src/sys/arch/arm/cortex/gtmr.c:1.18
--- src/sys/arch/arm/cortex/gtmr.c:1.17	Sun May 28 00:29:55 2017
+++ src/sys/arch/arm/cortex/gtmr.c	Sat Jun 17 22:49:37 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: gtmr.c,v 1.17 2017/05/28 00:29:55 jmcneill Exp $	*/
+/*	$NetBSD: gtmr.c,v 1.18 2017/06/17 22:49:37 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.17 2017/05/28 00:29:55 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.18 2017/06/17 22:49:37 jmcneill Exp $");
 
 #include 
 #include 
@@ -149,6 +149,10 @@ gtmr_attach(device_t parent, device_t se
 	gtmr_timecounter.tc_frequency = sc->sc_freq;
 
 	tc_init(_timecounter);
+
+	/* Disable the timer until we are ready */
+	armreg_cntv_ctl_write(0);
+	armreg_cntp_ctl_write(0);
 }
 
 void



CVS commit: src/sys/arch/evbarm/rpi

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 22:50:23 UTC 2017

Modified Files:
src/sys/arch/evbarm/rpi: rpi_machdep.c

Log Message:
Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W


To generate a diff of this commit:
cvs rdiff -u -r1.71 -r1.72 src/sys/arch/evbarm/rpi/rpi_machdep.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/evbarm/rpi/rpi_machdep.c
diff -u src/sys/arch/evbarm/rpi/rpi_machdep.c:1.71 src/sys/arch/evbarm/rpi/rpi_machdep.c:1.72
--- src/sys/arch/evbarm/rpi/rpi_machdep.c:1.71	Sat Jun 17 17:03:40 2017
+++ src/sys/arch/evbarm/rpi/rpi_machdep.c	Sat Jun 17 22:50:23 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: rpi_machdep.c,v 1.71 2017/06/17 17:03:40 jmcneill Exp $	*/
+/*	$NetBSD: rpi_machdep.c,v 1.72 2017/06/17 22:50:23 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.71 2017/06/17 17:03:40 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.72 2017/06/17 22:50:23 jmcneill Exp $");
 
 #include "opt_arm_debug.h"
 #include "opt_bcm283x.h"
@@ -74,6 +74,7 @@ __KERNEL_RCSID(0, "$NetBSD: rpi_machdep.
 #include 
 #include 
 #include 
+#include 
 #include 
 
 #include 
@@ -180,6 +181,7 @@ static struct plcom_instance rpi_pi = {
 static struct __aligned(16) {
 	struct vcprop_buffer_hdr	vb_hdr;
 	struct vcprop_tag_clockrate	vbt_uartclockrate;
+	struct vcprop_tag_boardrev	vbt_boardrev;
 	struct vcprop_tag end;
 } vb_uart = {
 	.vb_hdr = {
@@ -194,6 +196,13 @@ static struct __aligned(16) {
 		},
 		.id = VCPROP_CLK_UART
 	},
+	.vbt_boardrev = {
+		.tag = {
+			.vpt_tag = VCPROPTAG_GET_BOARDREVISION,
+			.vpt_len = VCPROPTAG_LEN(vb_uart.vbt_boardrev),
+			.vpt_rcode = VCPROPTAG_REQUEST
+		},
+	},
 	.end = {
 		.vpt_tag = VCPROPTAG_NULL
 	}
@@ -426,7 +435,20 @@ rpi_uartinit(void)
 
 	bcm2835_mbox_read(iot, ioh, BCMMBOX_CHANARM2VC, );
 
-	cpu_dcache_inv_range((vaddr_t), sizeof(vb));
+	cpu_dcache_inv_range((vaddr_t)_uart, sizeof(vb_uart));
+
+	if (vcprop_tag_success_p(_uart.vbt_boardrev.tag) &&
+	(vb_uart.vbt_boardrev.rev & VCPROP_REV_ENCFLAG) != 0) {
+		const uint32_t rev = vb_uart.vbt_boardrev.rev;
+		switch (__SHIFTOUT(rev, VCPROP_REV_MODEL)) {
+		case RPI_MODEL_B_PI3:
+		case RPI_MODEL_ZERO_W:
+			/* Enable UART0 (PL011) on GPIO header */
+			bcm2835gpio_function_select(14, BCM2835_GPIO_ALT0);
+			bcm2835gpio_function_select(15, BCM2835_GPIO_ALT0);
+			break;
+		}
+	}
 
 	if (vcprop_tag_success_p(_uart.vbt_uartclockrate.tag))
 		uart_clk = vb_uart.vbt_uartclockrate.rate;



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

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 22:49:37 UTC 2017

Modified Files:
src/sys/arch/arm/cortex: gtmr.c

Log Message:
Interrupts are enabled before the timer is configured. Ensure that the
timer is disabled when attaching so it doesn't go crazy between the time
interrupts are enabled and clocks are initialized. My RPI3 makes it
multi-user now.


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/cortex/gtmr.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/evbarm/rpi

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 22:50:23 UTC 2017

Modified Files:
src/sys/arch/evbarm/rpi: rpi_machdep.c

Log Message:
Enable UART0 (PL011) on GPIO header for Raspberry Pi 3 / Zero W


To generate a diff of this commit:
cvs rdiff -u -r1.71 -r1.72 src/sys/arch/evbarm/rpi/rpi_machdep.c

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



Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Joerg Sonnenberger
On Sun, Jun 18, 2017 at 12:40:20AM +0200, Kamil Rytarowski wrote:
> Can we reuse show-var from pkgsrc?
> 
> $ make show-var VARNAME=MACHINE_CPU
> x86_64

It's no better than just using -V '${expr}' directly.

Joerg


Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Kamil Rytarowski
On 18.06.2017 00:31, Christos Zoulas wrote:
> In article <20170617222558.ga24...@britannica.bec.de>,
> Joerg Sonnenberger   wrote:
>> On Sun, Jun 18, 2017 at 12:22:13AM +0200, Kamil Rytarowski wrote:
>>> On 18.06.2017 00:16, Christos Zoulas wrote:
 In article <20170617213136.ga21...@britannica.bec.de>,
 Joerg Sonnenberger   wrote:
> On Sat, Jun 17, 2017 at 05:28:07PM -0400, Christos Zoulas wrote:
>> On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
>> -- Subject: Re: CVS commit: src/usr.bin/make
>>
>> | Agreed, please revert. This was discussed at the time and FreeBSD
>> | behavior you have now implemented is much less useful.
>>
>> You can get the original with -V '\VAR'
>
> That's no better than the behavior before.

 Now you get:

 $ make -V MACHINE_CPU
 arm
 $ make -V \\MACHINE_CPU

>> ${MACHINE_ARCH:C/mipse[bl]/mips/:C/mips64e[bl]/mips/:C/sh3e[bl]/sh3/:S/coldfire/m68k/:S/m68000/m68k/:C/arm.*/arm/:C/earm.*/arm/:S/earm/arm/:S/powerpc64/powerpc/:S/aarch64eb/aarch64/:S/or1knd/or1k/:C/riscv../riscv/}

 The second is the original version.

 christos

>>>
>>> How about "make -V" getting the original behavior and "make -VV"
>>> resulting with evaluated one?
>>
>> I find -V '${foo}' a perfectly reasonable way to spell it, especially
>> since it works consistently with modifiers. No need for more complexity.
> 
> And it still does. You cannot use -VV because of getopt(3). You can use
> a different letter. The complexity is when I get this long string instead
> of the evaluated variable.
> 
> christos
> 

Can we reuse show-var from pkgsrc?

$ make show-var VARNAME=MACHINE_CPU
x86_64

# show-var:
# show-vars:
# show-subdir-var:
#   Convenience targets, to display make variables from the command
#   line. Examples:
#
#   make show-var VARNAME=PKGNAME
#   make show-vars VARNAMES="PKGNAME PKGVERSION PKGREVISION"
#   make show-subdir-var VARNAME=DISTFILES
#
#   In category directories, show-var and show-vars descend
#   recursively into each subdirectory, printing the variables of


#   the individual packages. To show a variable from the category
#   itself, use show-subdir-var.
.PHONY: show-var
show-var:
@${ECHO} ${${VARNAME}:Q

 -- /usr/pkgsrc/mk/bsd.pkg.mk



signature.asc
Description: OpenPGP digital signature


CVS commit: src/sys/dev/scsipi

2017-06-17 Thread Michael van Elst
Module Name:src
Committed By:   mlelstv
Date:   Sat Jun 17 22:35:50 UTC 2017

Modified Files:
src/sys/dev/scsipi: atapiconf.c cd.c scsi_base.c scsiconf.c
scsipi_base.c sd.c ss.c st.c

Log Message:
The atapibus detach path did hold the channel mutex while calling into autoconf,
which would trigger a panic when unplugging a USB ATAPI CDROM.

Align detach code for scsibus and atapibus to fix this.

Also avoid races when detaching devices by replacing callout_stop with
callout_halt.


To generate a diff of this commit:
cvs rdiff -u -r1.90 -r1.91 src/sys/dev/scsipi/atapiconf.c
cvs rdiff -u -r1.340 -r1.341 src/sys/dev/scsipi/cd.c
cvs rdiff -u -r1.91 -r1.92 src/sys/dev/scsipi/scsi_base.c
cvs rdiff -u -r1.279 -r1.280 src/sys/dev/scsipi/scsiconf.c
cvs rdiff -u -r1.175 -r1.176 src/sys/dev/scsipi/scsipi_base.c
cvs rdiff -u -r1.324 -r1.325 src/sys/dev/scsipi/sd.c
cvs rdiff -u -r1.88 -r1.89 src/sys/dev/scsipi/ss.c
cvs rdiff -u -r1.230 -r1.231 src/sys/dev/scsipi/st.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/scsipi

2017-06-17 Thread Michael van Elst
Module Name:src
Committed By:   mlelstv
Date:   Sat Jun 17 22:35:50 UTC 2017

Modified Files:
src/sys/dev/scsipi: atapiconf.c cd.c scsi_base.c scsiconf.c
scsipi_base.c sd.c ss.c st.c

Log Message:
The atapibus detach path did hold the channel mutex while calling into autoconf,
which would trigger a panic when unplugging a USB ATAPI CDROM.

Align detach code for scsibus and atapibus to fix this.

Also avoid races when detaching devices by replacing callout_stop with
callout_halt.


To generate a diff of this commit:
cvs rdiff -u -r1.90 -r1.91 src/sys/dev/scsipi/atapiconf.c
cvs rdiff -u -r1.340 -r1.341 src/sys/dev/scsipi/cd.c
cvs rdiff -u -r1.91 -r1.92 src/sys/dev/scsipi/scsi_base.c
cvs rdiff -u -r1.279 -r1.280 src/sys/dev/scsipi/scsiconf.c
cvs rdiff -u -r1.175 -r1.176 src/sys/dev/scsipi/scsipi_base.c
cvs rdiff -u -r1.324 -r1.325 src/sys/dev/scsipi/sd.c
cvs rdiff -u -r1.88 -r1.89 src/sys/dev/scsipi/ss.c
cvs rdiff -u -r1.230 -r1.231 src/sys/dev/scsipi/st.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/scsipi/atapiconf.c
diff -u src/sys/dev/scsipi/atapiconf.c:1.90 src/sys/dev/scsipi/atapiconf.c:1.91
--- src/sys/dev/scsipi/atapiconf.c:1.90	Tue Nov 29 03:23:00 2016
+++ src/sys/dev/scsipi/atapiconf.c	Sat Jun 17 22:35:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: atapiconf.c,v 1.90 2016/11/29 03:23:00 mlelstv Exp $	*/
+/*	$NetBSD: atapiconf.c,v 1.91 2017/06/17 22:35:50 mlelstv Exp $	*/
 
 /*
  * Copyright (c) 1996, 2001 Manuel Bouyer.  All rights reserved.
@@ -25,7 +25,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: atapiconf.c,v 1.90 2016/11/29 03:23:00 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: atapiconf.c,v 1.91 2017/06/17 22:35:50 mlelstv Exp $");
 
 #include 
 #include 
@@ -147,6 +147,7 @@ atapibusattach(device_t parent, device_t
 	sc->sc_dev = self;
 
 	chan->chan_name = device_xname(sc->sc_dev);
+	chan->chan_id = -1;
 
 	/* ATAPI has no LUNs. */
 	chan->chan_nluns = 1;
@@ -192,38 +193,27 @@ atapibuschilddet(device_t self, device_t
 	mutex_exit(chan_mtx(chan));
 }
 
+/* same as scsibusdetach */
 static int
 atapibusdetach(device_t self, int flags)
 {
 	struct atapibus_softc *sc = device_private(self);
 	struct scsipi_channel *chan = sc->sc_channel;
-	struct scsipi_periph *periph;
-	int target, error = 0;
+	int error = 0;
 
 	/*
-	 * Shut down the channel.
+	 * Detach all of the periphs.
 	 */
-	scsipi_channel_shutdown(chan);
+	error = scsipi_target_detach(chan, -1, -1, flags);
+	if (error)
+		return error;
 
-	/* for config_detach() */
-	KERNEL_LOCK(1, curlwp);
+	pmf_device_deregister(self);
 
 	/*
-	 * Now detach all of the periphs.
+	 * Shut down the channel.
 	 */
-	mutex_enter(chan_mtx(chan));
-	for (target = 0; target < chan->chan_ntargets; target++) {
-		periph = scsipi_lookup_periph_locked(chan, target, 0);
-		if (periph == NULL)
-			continue;
-		error = config_detach(periph->periph_dev, flags);
-		if (error) {
-			mutex_exit(chan_mtx(chan));
-			goto out;
-		}
-		KASSERT(scsipi_lookup_periph(chan, target, 0) == NULL);
-	}
-	mutex_exit(chan_mtx(chan));
+	scsipi_channel_shutdown(chan);
 
 	cv_destroy(>chan_cv_xs);
 	cv_destroy(>chan_cv_comp);
@@ -232,10 +222,7 @@ atapibusdetach(device_t self, int flags)
 	if (atomic_dec_uint_nv(_running(chan)) == 0)
 		mutex_destroy(chan_mtx(chan));
 
-out:
-	/* XXXSMP scsipi */
-	KERNEL_UNLOCK_ONE(curlwp);
-	return error;
+	return 0;
 }
 
 static int

Index: src/sys/dev/scsipi/cd.c
diff -u src/sys/dev/scsipi/cd.c:1.340 src/sys/dev/scsipi/cd.c:1.341
--- src/sys/dev/scsipi/cd.c:1.340	Sat Apr  8 13:50:23 2017
+++ src/sys/dev/scsipi/cd.c	Sat Jun 17 22:35:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: cd.c,v 1.340 2017/04/08 13:50:23 mlelstv Exp $	*/
+/*	$NetBSD: cd.c,v 1.341 2017/06/17 22:35:50 mlelstv Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2001, 2003, 2004, 2005, 2008 The NetBSD Foundation,
@@ -50,7 +50,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: cd.c,v 1.340 2017/04/08 13:50:23 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cd.c,v 1.341 2017/06/17 22:35:50 mlelstv Exp $");
 
 #include 
 #include 
@@ -354,7 +354,7 @@ cddetach(device_t self, int flags)
 	}
 
 	/* kill any pending restart */
-	callout_stop(>sc_callout);
+	callout_halt(>sc_callout, NULL);
 
 	dk_drain(dksc);
 

Index: src/sys/dev/scsipi/scsi_base.c
diff -u src/sys/dev/scsipi/scsi_base.c:1.91 src/sys/dev/scsipi/scsi_base.c:1.92
--- src/sys/dev/scsipi/scsi_base.c:1.91	Sun Nov 20 15:37:19 2016
+++ src/sys/dev/scsipi/scsi_base.c	Sat Jun 17 22:35:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: scsi_base.c,v 1.91 2016/11/20 15:37:19 mlelstv Exp $	*/
+/*	$NetBSD: scsi_base.c,v 1.92 2017/06/17 22:35:50 mlelstv Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2004 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: scsi_base.c,v 1.91 2016/11/20 15:37:19 mlelstv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: scsi_base.c,v 1.92 2017/06/17 22:35:50 mlelstv Exp $");
 
 #include 

Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
In article <20170617222558.ga24...@britannica.bec.de>,
Joerg Sonnenberger   wrote:
>On Sun, Jun 18, 2017 at 12:22:13AM +0200, Kamil Rytarowski wrote:
>> On 18.06.2017 00:16, Christos Zoulas wrote:
>> > In article <20170617213136.ga21...@britannica.bec.de>,
>> > Joerg Sonnenberger   wrote:
>> >> On Sat, Jun 17, 2017 at 05:28:07PM -0400, Christos Zoulas wrote:
>> >>> On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
>> >>> -- Subject: Re: CVS commit: src/usr.bin/make
>> >>>
>> >>> | Agreed, please revert. This was discussed at the time and FreeBSD
>> >>> | behavior you have now implemented is much less useful.
>> >>>
>> >>> You can get the original with -V '\VAR'
>> >>
>> >> That's no better than the behavior before.
>> > 
>> > Now you get:
>> > 
>> > $ make -V MACHINE_CPU
>> > arm
>> > $ make -V \\MACHINE_CPU
>> >
>${MACHINE_ARCH:C/mipse[bl]/mips/:C/mips64e[bl]/mips/:C/sh3e[bl]/sh3/:S/coldfire/m68k/:S/m68000/m68k/:C/arm.*/arm/:C/earm.*/arm/:S/earm/arm/:S/powerpc64/powerpc/:S/aarch64eb/aarch64/:S/or1knd/or1k/:C/riscv../riscv/}
>> > 
>> > The second is the original version.
>> > 
>> > christos
>> > 
>> 
>> How about "make -V" getting the original behavior and "make -VV"
>> resulting with evaluated one?
>
>I find -V '${foo}' a perfectly reasonable way to spell it, especially
>since it works consistently with modifiers. No need for more complexity.

And it still does. You cannot use -VV because of getopt(3). You can use
a different letter. The complexity is when I get this long string instead
of the evaluated variable.

christos



Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Kamil Rytarowski
On 18.06.2017 00:16, Christos Zoulas wrote:
> In article <20170617213136.ga21...@britannica.bec.de>,
> Joerg Sonnenberger   wrote:
>> On Sat, Jun 17, 2017 at 05:28:07PM -0400, Christos Zoulas wrote:
>>> On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
>>> -- Subject: Re: CVS commit: src/usr.bin/make
>>>
>>> | Agreed, please revert. This was discussed at the time and FreeBSD
>>> | behavior you have now implemented is much less useful.
>>>
>>> You can get the original with -V '\VAR'
>>
>> That's no better than the behavior before.
> 
> Now you get:
> 
> $ make -V MACHINE_CPU
> arm
> $ make -V \\MACHINE_CPU
> ${MACHINE_ARCH:C/mipse[bl]/mips/:C/mips64e[bl]/mips/:C/sh3e[bl]/sh3/:S/coldfire/m68k/:S/m68000/m68k/:C/arm.*/arm/:C/earm.*/arm/:S/earm/arm/:S/powerpc64/powerpc/:S/aarch64eb/aarch64/:S/or1knd/or1k/:C/riscv../riscv/}
> 
> The second is the original version.
> 
> christos
> 

How about "make -V" getting the original behavior and "make -VV"
resulting with evaluated one?



signature.asc
Description: OpenPGP digital signature


Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
In article <20170617213136.ga21...@britannica.bec.de>,
Joerg Sonnenberger   wrote:
>On Sat, Jun 17, 2017 at 05:28:07PM -0400, Christos Zoulas wrote:
>> On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
>> -- Subject: Re: CVS commit: src/usr.bin/make
>> 
>> | Agreed, please revert. This was discussed at the time and FreeBSD
>> | behavior you have now implemented is much less useful.
>> 
>> You can get the original with -V '\VAR'
>
>That's no better than the behavior before.

Now you get:

$ make -V MACHINE_CPU
arm
$ make -V \\MACHINE_CPU
${MACHINE_ARCH:C/mipse[bl]/mips/:C/mips64e[bl]/mips/:C/sh3e[bl]/sh3/:S/coldfire/m68k/:S/m68000/m68k/:C/arm.*/arm/:C/earm.*/arm/:S/earm/arm/:S/powerpc64/powerpc/:S/aarch64eb/aarch64/:S/or1knd/or1k/:C/riscv../riscv/}

The second is the original version.

christos



CVS commit: src/doc

2017-06-17 Thread Christos Zoulas
[christos 20170210]
+	byacc: update to 20170201 [christos 20170211]
+	ptrace(2): Add signal mask information accessors API:
+		PT_GET_SIGMASK and PT_SET_SIGMASK [kamil 20170212]
+	postfix(1): Import version 3.1.4. [christos 20170213]
+	l2tp(4): Add L2TPv3 interface. [knakahara 20170216]
+	siginfo(2): Add new si_code for SIGTRAP: TRAP_DBREG [kamil 20170217]
+	disklabel(5): Add DISKLABEL_EI (``Endian-Independent'' disklabel)
+		kernel option to machines that support Master Boot Record
+		(MBR). [rin 20170219]
+	ptrace(2): Add new API replacing PT_WATCHPOINT for Debug Registers:
+		PT_GETDBREGS and PT_SETDBREGS [kamil 20170223]
+	dk(4): Add DKWEDGE_METHOD_RDB option to enable Amiga Rigid Disk Block
+		(RDB) partitioning detection method. [rin 20170226]
+	siginfo(2): Add new si_code values for SIGTRAP: TRAP_SCE and TRAP_SCX
+		[kamil 20170228]
+	zoneinfo: Import tzdata2017a.  [kre 20170301]
+	vioscsi(4): Allocate bus dma maps on attach, improves stability
+		and performance, adresses kern/52043 [jdolecek 20170307]
+	luna68k: Add a driver for LUNA's front panel LCD.  Ported from
+		OpenBSD/luna88k. [tsutsui 20170309]
+	sqlite3: Import 3.17.0. [christos 20170311]
+	libc: Update to tzcode2017a. [christos 20170311]
+	mdocml: Import 1.14.1. [christos 20170318]
+	sh(1): Arithmetic parser imported from dash (via FreeBSD)
+		adding support for all required operators, as well
+		as being smaller and faster.  [kre 20170320]
+	zoneinfo: Import tzdata2017b.  [kre 20170321]
+	virtio(4): Refactor child driver attach code for better modularization
+		[jdolecek 20170325]
+	vioscsi(4): Use MSI/MSI-X, reduce disk probe time [jdolecek 20170325]
+	dhcpcd(8): Import dhcpcd-7.0.0-beta2 [roy 20170402]
+	ptrace(2): Add operations to single step specified threads:
+		PT_SETSTEP and PT_CLEARSTEP [kamil 20170408]
+	route(4): Add RO_MSGFILTER [roy 20170411]
+	dc(1): Import from OpenBSD (replaced GPL version) [christos 20170410]
+	bind: Import version 9.10.4-P8. [christos 20170413]
+	ntp: Import ntp 4.2.8p10. [christos 20170413]
+	dhcpcd: Import dhcpcd 7.0.0-beta3 [roy 20170414]
+	OpenSSH: Imported 7.5. [christos 20170418]
+	tmux(1): Import of tmux 2.4 [christos 20170423]
+	libc: Update to tzcode2017b. [christos 20170425]
+	lua: Updated to Lua 5.3.4. [mbalmer 20170426]
+	acpi(4): Updated ACPICA to 20170303. [christos 20170430]
+	openpam(3): update to 20170430 (resedacea) [christos 20170506]
+	dhcpcd: Import dhcpcd 7.0.0-rc1 [roy 20170510]
+	vioscsi(4): Stability fixes [jdolecek 20170515]
+	localcount(9): Add localcount ref-count primitives [pgoyette 20170519]
+	openssl: Remove MKCRYPTO_RC5 option now that the patents have expired.
+		[riastradh 20170521]
+	src: Remove MKCRYPTO option and always include cryptography.
+		[riastradh 20170521]
+	file(1): Upgraded to 5.31. [christos 20170524]
+	can(4): Added a socketcan implementation, a socket layer for
+		CAN busses. [bouyer 20170527]
 	byacc: update to 20170430 [christos 20170605]
 	vax: Add support for VAXstation 4000 TURBOchannel. [flxd 20170609]
 	wsbell(4): added console bell support for all speaker devices, not
 		only those attached at pcppi [nat 20170612]
 	bind: Import version 9.10.5-P1. [christos 20170615]
+	expat: Import 2.2.1 (security fixes) [christos 20170617]



CVS commit: src/doc

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 22:06:54 UTC 2017

Modified Files:
src/doc: 3RDPARTY CHANGES

Log Message:
new expat


To generate a diff of this commit:
cvs rdiff -u -r1.1453 -r1.1454 src/doc/3RDPARTY
cvs rdiff -u -r1.2292 -r1.2293 src/doc/CHANGES

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



CVS commit: src/external/mit/expat/dist

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 22:05:21 UTC 2017

Modified Files:
src/external/mit/expat/dist/lib: xmlparse.c xmltok.c
src/external/mit/expat/dist/tests: xmltest.sh
Removed Files:
src/external/mit/expat/dist: configure.in expat.dsw
src/external/mit/expat/dist/amiga: Makefile README.txt expat.xml
expat_68k.c expat_68k.h expat_68k_handler_stubs.c expat_base.h
expat_lib.c expat_vectors.c launch.c
src/external/mit/expat/dist/amiga/include/inline4: expat.h
src/external/mit/expat/dist/amiga/include/interfaces: expat.h
src/external/mit/expat/dist/amiga/include/libraries: expat.h
src/external/mit/expat/dist/amiga/include/proto: expat.h
src/external/mit/expat/dist/bcb5: README.txt all_projects.bpg
elements.bpf elements.bpr elements.mak expat.bpf expat.bpr
expat.mak expat_static.bpf expat_static.bpr expat_static.mak
expatw.bpf expatw.bpr expatw.mak expatw_static.bpf
expatw_static.bpr expatw_static.mak libexpat_mtd.def
libexpatw_mtd.def makefile.mak outline.bpf outline.bpr outline.mak
setup.bat xmlwf.bpf xmlwf.bpr xmlwf.mak
src/external/mit/expat/dist/examples: elements.dsp outline.dsp
src/external/mit/expat/dist/lib: Makefile.MPW amigaconfig.h expat.dsp
expat_static.dsp expatw.dsp expatw_static.dsp macconfig.h
src/external/mit/expat/dist/tests/benchmark: benchmark.dsp
benchmark.dsw
src/external/mit/expat/dist/vms: README.vms descrip.mms expat_config.h
src/external/mit/expat/dist/xmlwf: xmlwf.dsp

Log Message:
merge conflicts


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/configure.in
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/expat.dsw
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/amiga/Makefile \
src/external/mit/expat/dist/amiga/README.txt \
src/external/mit/expat/dist/amiga/expat_lib.c \
src/external/mit/expat/dist/amiga/expat_vectors.c \
src/external/mit/expat/dist/amiga/launch.c
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/amiga/expat.xml \
src/external/mit/expat/dist/amiga/expat_68k.c \
src/external/mit/expat/dist/amiga/expat_68k.h \
src/external/mit/expat/dist/amiga/expat_68k_handler_stubs.c \
src/external/mit/expat/dist/amiga/expat_base.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/inline4/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/interfaces/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/libraries/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/proto/expat.h
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/bcb5/README.txt \
src/external/mit/expat/dist/bcb5/all_projects.bpg \
src/external/mit/expat/dist/bcb5/elements.bpf \
src/external/mit/expat/dist/bcb5/elements.mak \
src/external/mit/expat/dist/bcb5/expat.bpf \
src/external/mit/expat/dist/bcb5/expat_static.bpf \
src/external/mit/expat/dist/bcb5/expatw.bpf \
src/external/mit/expat/dist/bcb5/expatw_static.bpf \
src/external/mit/expat/dist/bcb5/libexpat_mtd.def \
src/external/mit/expat/dist/bcb5/libexpatw_mtd.def \
src/external/mit/expat/dist/bcb5/makefile.mak \
src/external/mit/expat/dist/bcb5/outline.bpf \
src/external/mit/expat/dist/bcb5/outline.mak \
src/external/mit/expat/dist/bcb5/setup.bat \
src/external/mit/expat/dist/bcb5/xmlwf.bpf
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/bcb5/elements.bpr \
src/external/mit/expat/dist/bcb5/expat.mak \
src/external/mit/expat/dist/bcb5/expat_static.mak \
src/external/mit/expat/dist/bcb5/expatw.mak \
src/external/mit/expat/dist/bcb5/expatw_static.mak \
src/external/mit/expat/dist/bcb5/outline.bpr \
src/external/mit/expat/dist/bcb5/xmlwf.mak
cvs rdiff -u -r1.1.1.3 -r0 src/external/mit/expat/dist/bcb5/expat.bpr \
src/external/mit/expat/dist/bcb5/expat_static.bpr \
src/external/mit/expat/dist/bcb5/expatw.bpr \
src/external/mit/expat/dist/bcb5/expatw_static.bpr \
src/external/mit/expat/dist/bcb5/xmlwf.bpr
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/examples/elements.dsp \
src/external/mit/expat/dist/examples/outline.dsp
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/lib/Makefile.MPW \
src/external/mit/expat/dist/lib/macconfig.h
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/lib/amigaconfig.h \
src/external/mit/expat/dist/lib/expatw_static.dsp
cvs rdiff -u -r1.1.1.3 -r0 src/external/mit/expat/dist/lib/expat.dsp \
src/external/mit/expat/dist/lib/expat_static.dsp \
src/external/mit/expat/dist/lib/expatw.dsp
cvs rdiff -u -r1.6 -r1.7 src/external/mit/expat/dist/lib/xmlparse.c
cvs rdiff -u -r1.3 -r1.4 src/external/mit/expat/dist/lib/xmltok.c
cvs rdiff -u 

CVS commit: src/external/mit/expat/dist

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 22:05:21 UTC 2017

Modified Files:
src/external/mit/expat/dist/lib: xmlparse.c xmltok.c
src/external/mit/expat/dist/tests: xmltest.sh
Removed Files:
src/external/mit/expat/dist: configure.in expat.dsw
src/external/mit/expat/dist/amiga: Makefile README.txt expat.xml
expat_68k.c expat_68k.h expat_68k_handler_stubs.c expat_base.h
expat_lib.c expat_vectors.c launch.c
src/external/mit/expat/dist/amiga/include/inline4: expat.h
src/external/mit/expat/dist/amiga/include/interfaces: expat.h
src/external/mit/expat/dist/amiga/include/libraries: expat.h
src/external/mit/expat/dist/amiga/include/proto: expat.h
src/external/mit/expat/dist/bcb5: README.txt all_projects.bpg
elements.bpf elements.bpr elements.mak expat.bpf expat.bpr
expat.mak expat_static.bpf expat_static.bpr expat_static.mak
expatw.bpf expatw.bpr expatw.mak expatw_static.bpf
expatw_static.bpr expatw_static.mak libexpat_mtd.def
libexpatw_mtd.def makefile.mak outline.bpf outline.bpr outline.mak
setup.bat xmlwf.bpf xmlwf.bpr xmlwf.mak
src/external/mit/expat/dist/examples: elements.dsp outline.dsp
src/external/mit/expat/dist/lib: Makefile.MPW amigaconfig.h expat.dsp
expat_static.dsp expatw.dsp expatw_static.dsp macconfig.h
src/external/mit/expat/dist/tests/benchmark: benchmark.dsp
benchmark.dsw
src/external/mit/expat/dist/vms: README.vms descrip.mms expat_config.h
src/external/mit/expat/dist/xmlwf: xmlwf.dsp

Log Message:
merge conflicts


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/configure.in
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/expat.dsw
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/amiga/Makefile \
src/external/mit/expat/dist/amiga/README.txt \
src/external/mit/expat/dist/amiga/expat_lib.c \
src/external/mit/expat/dist/amiga/expat_vectors.c \
src/external/mit/expat/dist/amiga/launch.c
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/amiga/expat.xml \
src/external/mit/expat/dist/amiga/expat_68k.c \
src/external/mit/expat/dist/amiga/expat_68k.h \
src/external/mit/expat/dist/amiga/expat_68k_handler_stubs.c \
src/external/mit/expat/dist/amiga/expat_base.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/inline4/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/interfaces/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/libraries/expat.h
cvs rdiff -u -r1.1.1.1 -r0 \
src/external/mit/expat/dist/amiga/include/proto/expat.h
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/bcb5/README.txt \
src/external/mit/expat/dist/bcb5/all_projects.bpg \
src/external/mit/expat/dist/bcb5/elements.bpf \
src/external/mit/expat/dist/bcb5/elements.mak \
src/external/mit/expat/dist/bcb5/expat.bpf \
src/external/mit/expat/dist/bcb5/expat_static.bpf \
src/external/mit/expat/dist/bcb5/expatw.bpf \
src/external/mit/expat/dist/bcb5/expatw_static.bpf \
src/external/mit/expat/dist/bcb5/libexpat_mtd.def \
src/external/mit/expat/dist/bcb5/libexpatw_mtd.def \
src/external/mit/expat/dist/bcb5/makefile.mak \
src/external/mit/expat/dist/bcb5/outline.bpf \
src/external/mit/expat/dist/bcb5/outline.mak \
src/external/mit/expat/dist/bcb5/setup.bat \
src/external/mit/expat/dist/bcb5/xmlwf.bpf
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/bcb5/elements.bpr \
src/external/mit/expat/dist/bcb5/expat.mak \
src/external/mit/expat/dist/bcb5/expat_static.mak \
src/external/mit/expat/dist/bcb5/expatw.mak \
src/external/mit/expat/dist/bcb5/expatw_static.mak \
src/external/mit/expat/dist/bcb5/outline.bpr \
src/external/mit/expat/dist/bcb5/xmlwf.mak
cvs rdiff -u -r1.1.1.3 -r0 src/external/mit/expat/dist/bcb5/expat.bpr \
src/external/mit/expat/dist/bcb5/expat_static.bpr \
src/external/mit/expat/dist/bcb5/expatw.bpr \
src/external/mit/expat/dist/bcb5/expatw_static.bpr \
src/external/mit/expat/dist/bcb5/xmlwf.bpr
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/examples/elements.dsp \
src/external/mit/expat/dist/examples/outline.dsp
cvs rdiff -u -r1.1.1.1 -r0 src/external/mit/expat/dist/lib/Makefile.MPW \
src/external/mit/expat/dist/lib/macconfig.h
cvs rdiff -u -r1.1.1.2 -r0 src/external/mit/expat/dist/lib/amigaconfig.h \
src/external/mit/expat/dist/lib/expatw_static.dsp
cvs rdiff -u -r1.1.1.3 -r0 src/external/mit/expat/dist/lib/expat.dsp \
src/external/mit/expat/dist/lib/expat_static.dsp \
src/external/mit/expat/dist/lib/expatw.dsp
cvs rdiff -u -r1.6 -r1.7 src/external/mit/expat/dist/lib/xmlparse.c
cvs rdiff -u -r1.3 -r1.4 src/external/mit/expat/dist/lib/xmltok.c
cvs rdiff -u 

CVS import: src/external/mit/expat/dist

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 21:59:12 UTC 2017

Update of /cvsroot/src/external/mit/expat/dist
In directory ivanova.netbsd.org:/tmp/cvs-serv19443

Log Message:
Release 2.2.1 Sat June 17 2017
Security fixes:
  CVE-2017-9233 -- External entity infinite loop DoS
Details: https://libexpat.github.io/doc/cve-2017-9233/
Commit c4bf96bb51dd2a1b0e185374362ee136fe2c9d7f
   [MOX-002]  CVE-2016-9063 -- Detect integer overflow; commit
d4f735b88d9932bd5039df2335eefdd0723dbe20
(Fixed version of existing downstream patches!)
   (SF.net) #539  Fix regression from fix to CVE-2016-0718 cutting off
longer tag names; commits
* 896b6c1fd3b842f377d1b62135dccf0a579cf65d
* af507cef2c93cb8d40062a0abe43a4f4e9158fb2
 #16* 0dbbf43fdb20f593ddf4fa1ff67288000dd4a7fd
 #25  More integer overflow detection (function poolGrow); commits
* 810b74e4703dcfdd8f404e3cb177d44684775143
* 44178553f3539ce69d34abee77a05e879a7982ac
   [MOX-002]  Detect overflow from len=INT_MAX call to XML_Parse; commits
* 4be2cb5afcc018d996f34bbbce6374b7befad47f
* 7e5b71b748491b6e459e5c9a1d090820f94544d8
   [MOX-005] #30  Use high quality entropy for hash initialization:
* arc4random_buf on BSD, systems with libbsd
  (when configured with --with-libbsd), CloudABI
* RtlGenRandom on Windows XP / Server 2003 and later
* getrandom on Linux 3.17+
In a way, that's still part of CVE-2016-5300.
https://github.com/libexpat/libexpat/pull/30/commits
   [MOX-005]  For the low quality entropy extraction fallback code,
the parser instance address can no longer leak, commit
04ad658bd3079dd15cb60fc67087900f0ff4b083
   [MOX-003]  Prevent use of uninitialised variable; commit
   [MOX-004]a4dc944f37b664a3ca7199c624a98ee37babdb4b
  Add missing parameter validation to public API functions
and dedicated error code XML_ERROR_INVALID_ARGUMENT:
   [MOX-006]* NULL checks; commits
  * d37f74b2b7149a3a95a680c4c4cd2a451a51d60a (merge/many)
  * 9ed727064b675b7180c98cb3d4f75efba6966681
  * 6a747c837c50114dfa413994e07c0ba477be4534
* Negative length (XML_Parse); commit
   [MOX-002]  70db8d2538a10f4c022655d6895e4c3e78692e7f
   [MOX-001] #35  Change hash algorithm to William Ahern's version of SipHash
to go further with fixing CVE-2012-0876.
https://github.com/libexpat/libexpat/pull/39/commits

Bug fixes:
 #32  Fix sharing of hash salt across parsers;
relevant where XML_ExternalEntityParserCreate is called
prior to XML_Parse, in particular (e.g. FBReader)
 #28  xmlwf: Auto-disable use of memory-mapping (and parsing
as a single chunk) for files larger than ~1 GB (2^30 bytes)
rather than failing with error "out of memory"
  #3  Fix double free after malloc failure in DTD code; commit
7ae9c3d3af433cd4defe95234eae7dc8ed15637f
 #17  Fix memory leak on parser error for unbound XML attribute
prefix with new namespaces defined in the same tag;
found by Google's OSS-Fuzz; commits
* 16f87daae5a16132e479e4f71862128c7a915c73
* b47dbc9745932c160893d433220e462bd605f8cd
  xmlwf on Windows: Add missing calls to CloseHandle

New features:
 #30  Introduced environment switch EXPAT_ENTROPY_DEBUG=1
for runtime debugging of entropy extraction

Other changes:
  Increase code coverage
 #33  Reject use of XML_UNICODE_WCHAR_T with sizeof(wchar_t) != 2;
XML_UNICODE_WCHAR_T was never meant to be used outside
of Windows; 4-byte wchar_t is common on Linux
   (SF.net) #538  Start using -fno-strict-aliasing
   (SF.net) #540  Support compilation against cloudlibc of CloudABI
  Allow MinGW cross-compilation
   (SF.net) #534  CMake: Introduce option "BUILD_doc" (enabled by default)
to bypass compilation of the xmlwf.1 man page
   (SF.net)  pr2  CMake: Introduce option "INSTALL" (enabled by default)
to bypass installation of expat files
  CMake: Fix ninja support
  Autotools: Add parameters --enable-xml-context [COUNT]
and --disable-xml-context; default of context of 1024
bytes enabled 

CVS import: src/external/mit/expat/dist

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 21:59:12 UTC 2017

Update of /cvsroot/src/external/mit/expat/dist
In directory ivanova.netbsd.org:/tmp/cvs-serv19443

Log Message:
Release 2.2.1 Sat June 17 2017
Security fixes:
  CVE-2017-9233 -- External entity infinite loop DoS
Details: https://libexpat.github.io/doc/cve-2017-9233/
Commit c4bf96bb51dd2a1b0e185374362ee136fe2c9d7f
   [MOX-002]  CVE-2016-9063 -- Detect integer overflow; commit
d4f735b88d9932bd5039df2335eefdd0723dbe20
(Fixed version of existing downstream patches!)
   (SF.net) #539  Fix regression from fix to CVE-2016-0718 cutting off
longer tag names; commits
* 896b6c1fd3b842f377d1b62135dccf0a579cf65d
* af507cef2c93cb8d40062a0abe43a4f4e9158fb2
 #16* 0dbbf43fdb20f593ddf4fa1ff67288000dd4a7fd
 #25  More integer overflow detection (function poolGrow); commits
* 810b74e4703dcfdd8f404e3cb177d44684775143
* 44178553f3539ce69d34abee77a05e879a7982ac
   [MOX-002]  Detect overflow from len=INT_MAX call to XML_Parse; commits
* 4be2cb5afcc018d996f34bbbce6374b7befad47f
* 7e5b71b748491b6e459e5c9a1d090820f94544d8
   [MOX-005] #30  Use high quality entropy for hash initialization:
* arc4random_buf on BSD, systems with libbsd
  (when configured with --with-libbsd), CloudABI
* RtlGenRandom on Windows XP / Server 2003 and later
* getrandom on Linux 3.17+
In a way, that's still part of CVE-2016-5300.
https://github.com/libexpat/libexpat/pull/30/commits
   [MOX-005]  For the low quality entropy extraction fallback code,
the parser instance address can no longer leak, commit
04ad658bd3079dd15cb60fc67087900f0ff4b083
   [MOX-003]  Prevent use of uninitialised variable; commit
   [MOX-004]a4dc944f37b664a3ca7199c624a98ee37babdb4b
  Add missing parameter validation to public API functions
and dedicated error code XML_ERROR_INVALID_ARGUMENT:
   [MOX-006]* NULL checks; commits
  * d37f74b2b7149a3a95a680c4c4cd2a451a51d60a (merge/many)
  * 9ed727064b675b7180c98cb3d4f75efba6966681
  * 6a747c837c50114dfa413994e07c0ba477be4534
* Negative length (XML_Parse); commit
   [MOX-002]  70db8d2538a10f4c022655d6895e4c3e78692e7f
   [MOX-001] #35  Change hash algorithm to William Ahern's version of SipHash
to go further with fixing CVE-2012-0876.
https://github.com/libexpat/libexpat/pull/39/commits

Bug fixes:
 #32  Fix sharing of hash salt across parsers;
relevant where XML_ExternalEntityParserCreate is called
prior to XML_Parse, in particular (e.g. FBReader)
 #28  xmlwf: Auto-disable use of memory-mapping (and parsing
as a single chunk) for files larger than ~1 GB (2^30 bytes)
rather than failing with error "out of memory"
  #3  Fix double free after malloc failure in DTD code; commit
7ae9c3d3af433cd4defe95234eae7dc8ed15637f
 #17  Fix memory leak on parser error for unbound XML attribute
prefix with new namespaces defined in the same tag;
found by Google's OSS-Fuzz; commits
* 16f87daae5a16132e479e4f71862128c7a915c73
* b47dbc9745932c160893d433220e462bd605f8cd
  xmlwf on Windows: Add missing calls to CloseHandle

New features:
 #30  Introduced environment switch EXPAT_ENTROPY_DEBUG=1
for runtime debugging of entropy extraction

Other changes:
  Increase code coverage
 #33  Reject use of XML_UNICODE_WCHAR_T with sizeof(wchar_t) != 2;
XML_UNICODE_WCHAR_T was never meant to be used outside
of Windows; 4-byte wchar_t is common on Linux
   (SF.net) #538  Start using -fno-strict-aliasing
   (SF.net) #540  Support compilation against cloudlibc of CloudABI
  Allow MinGW cross-compilation
   (SF.net) #534  CMake: Introduce option "BUILD_doc" (enabled by default)
to bypass compilation of the xmlwf.1 man page
   (SF.net)  pr2  CMake: Introduce option "INSTALL" (enabled by default)
to bypass installation of expat files
  CMake: Fix ninja support
  Autotools: Add parameters --enable-xml-context [COUNT]
and --disable-xml-context; default of context of 1024
bytes enabled 

Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Joerg Sonnenberger
On Sat, Jun 17, 2017 at 05:28:07PM -0400, Christos Zoulas wrote:
> On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
> -- Subject: Re: CVS commit: src/usr.bin/make
> 
> | Agreed, please revert. This was discussed at the time and FreeBSD
> | behavior you have now implemented is much less useful.
> 
> You can get the original with -V '\VAR'

That's no better than the behavior before.

Joerg


Re: CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
On Jun 17,  9:38pm, jo...@bec.de (Joerg Sonnenberger) wrote:
-- Subject: Re: CVS commit: src/usr.bin/make

| Agreed, please revert. This was discussed at the time and FreeBSD
| behavior you have now implemented is much less useful.

You can get the original with -V '\VAR'

christos


CVS commit: src/share/man/man4

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:40:59 UTC 2017

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

Log Message:
add Adaptec 1220SA


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

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



CVS commit: src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:36:46 UTC 2017

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

Log Message:
match Adaptec 1220SA; that card actually uses Silicon Image 3132, and works
well with the siisata(4) driver


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/pci/siisata_pci.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/siisata_pci.c
diff -u src/sys/dev/pci/siisata_pci.c:1.14 src/sys/dev/pci/siisata_pci.c:1.15
--- src/sys/dev/pci/siisata_pci.c:1.14	Thu Jul 14 04:19:27 2016
+++ src/sys/dev/pci/siisata_pci.c	Sat Jun 17 20:36:46 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: siisata_pci.c,v 1.14 2016/07/14 04:19:27 msaitoh Exp $ */
+/* $NetBSD: siisata_pci.c,v 1.15 2017/06/17 20:36:46 jdolecek Exp $ */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -51,7 +51,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.14 2016/07/14 04:19:27 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.15 2017/06/17 20:36:46 jdolecek Exp $");
 
 #include 
 #include 
@@ -97,6 +97,12 @@ static const struct siisata_pci_board si
 	},
 	{
 		.spb_vend = PCI_VENDOR_CMDTECH,
+		.spb_prod = PCI_PRODUCT_CMDTECH_AAR_1220SA,
+		.spb_port = 2,
+		.spb_chip = 3132,
+	},
+	{
+		.spb_vend = PCI_VENDOR_CMDTECH,
 		.spb_prod = PCI_PRODUCT_CMDTECH_3531,
 		.spb_port = 1,
 		.spb_chip = 3531,



CVS commit: src/share/man/man4

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:40:59 UTC 2017

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

Log Message:
add Adaptec 1220SA


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

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

Modified files:

Index: src/share/man/man4/siisata.4
diff -u src/share/man/man4/siisata.4:1.5 src/share/man/man4/siisata.4:1.6
--- src/share/man/man4/siisata.4:1.5	Tue Mar 18 18:20:39 2014
+++ src/share/man/man4/siisata.4	Sat Jun 17 20:40:59 2017
@@ -1,4 +1,4 @@
-.\" $NetBSD: siisata.4,v 1.5 2014/03/18 18:20:39 riastradh Exp $
+.\" $NetBSD: siisata.4,v 1.6 2017/06/17 20:40:59 jdolecek Exp $
 .\"
 .\" Copyright (c) 2007, 2008 Jonathan A. Kollasch. All rights reserved.
 .\"
@@ -22,7 +22,7 @@
 .\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd July 19, 2009
+.Dd June 17, 2017
 .Dt SIISATA 4
 .Os
 .Sh NAME
@@ -48,6 +48,7 @@ driver:
 .Bl -tag -width Ds -offset indent -compact
 .It Silicon Image SiI3124 4-port PCI/PCI-X
 .It Silicon Image SiI3132 2-port PCI-Express x1
+.It Adaptec 1220SA (SiI3132 chip)
 .It Silicon Image SiI3531 1-port PCI-Express x1
 .El
 .Sh SEE ALSO



CVS commit: [jdolecek-ncq] src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:35:33 UTC 2017

Modified Files:
src/sys/dev/pci [jdolecek-ncq]: siisata_pci.c

Log Message:
revert, bad tree


To generate a diff of this commit:
cvs rdiff -u -r1.14.6.1 -r1.14.6.2 src/sys/dev/pci/siisata_pci.c

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



CVS commit: [jdolecek-ncq] src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:34:52 UTC 2017

Modified Files:
src/sys/dev/pci [jdolecek-ncq]: siisata_pci.c

Log Message:
match Adaptec 1220SA; that card actually uses Silicon Image 3132, and works
well with the siisata(4) driver


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.14.6.1 src/sys/dev/pci/siisata_pci.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/siisata_pci.c
diff -u src/sys/dev/pci/siisata_pci.c:1.14 src/sys/dev/pci/siisata_pci.c:1.14.6.1
--- src/sys/dev/pci/siisata_pci.c:1.14	Thu Jul 14 04:19:27 2016
+++ src/sys/dev/pci/siisata_pci.c	Sat Jun 17 20:34:52 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: siisata_pci.c,v 1.14 2016/07/14 04:19:27 msaitoh Exp $ */
+/* $NetBSD: siisata_pci.c,v 1.14.6.1 2017/06/17 20:34:52 jdolecek Exp $ */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -51,7 +51,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.14 2016/07/14 04:19:27 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.14.6.1 2017/06/17 20:34:52 jdolecek Exp $");
 
 #include 
 #include 
@@ -97,6 +97,12 @@ static const struct siisata_pci_board si
 	},
 	{
 		.spb_vend = PCI_VENDOR_CMDTECH,
+		.spb_prod = PCI_PRODUCT_CMDTECH_AAR_1220SA,
+		.spb_port = 2,
+		.spb_chip = 3132,
+	},
+	{
+		.spb_vend = PCI_VENDOR_CMDTECH,
 		.spb_prod = PCI_PRODUCT_CMDTECH_3531,
 		.spb_port = 1,
 		.spb_chip = 3531,



CVS commit: [jdolecek-ncq] src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:35:33 UTC 2017

Modified Files:
src/sys/dev/pci [jdolecek-ncq]: siisata_pci.c

Log Message:
revert, bad tree


To generate a diff of this commit:
cvs rdiff -u -r1.14.6.1 -r1.14.6.2 src/sys/dev/pci/siisata_pci.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/siisata_pci.c
diff -u src/sys/dev/pci/siisata_pci.c:1.14.6.1 src/sys/dev/pci/siisata_pci.c:1.14.6.2
--- src/sys/dev/pci/siisata_pci.c:1.14.6.1	Sat Jun 17 20:34:52 2017
+++ src/sys/dev/pci/siisata_pci.c	Sat Jun 17 20:35:33 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: siisata_pci.c,v 1.14.6.1 2017/06/17 20:34:52 jdolecek Exp $ */
+/* $NetBSD: siisata_pci.c,v 1.14.6.2 2017/06/17 20:35:33 jdolecek Exp $ */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -51,7 +51,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.14.6.1 2017/06/17 20:34:52 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: siisata_pci.c,v 1.14.6.2 2017/06/17 20:35:33 jdolecek Exp $");
 
 #include 
 #include 
@@ -97,12 +97,6 @@ static const struct siisata_pci_board si
 	},
 	{
 		.spb_vend = PCI_VENDOR_CMDTECH,
-		.spb_prod = PCI_PRODUCT_CMDTECH_AAR_1220SA,
-		.spb_port = 2,
-		.spb_chip = 3132,
-	},
-	{
-		.spb_vend = PCI_VENDOR_CMDTECH,
 		.spb_prod = PCI_PRODUCT_CMDTECH_3531,
 		.spb_port = 1,
 		.spb_chip = 3531,



CVS commit: [jdolecek-ncq] src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:34:52 UTC 2017

Modified Files:
src/sys/dev/pci [jdolecek-ncq]: siisata_pci.c

Log Message:
match Adaptec 1220SA; that card actually uses Silicon Image 3132, and works
well with the siisata(4) driver


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.14.6.1 src/sys/dev/pci/siisata_pci.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/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:36:46 UTC 2017

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

Log Message:
match Adaptec 1220SA; that card actually uses Silicon Image 3132, and works
well with the siisata(4) driver


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/pci/siisata_pci.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/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:25:27 UTC 2017

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.1282 -r1.1283 src/sys/dev/pci/pcidevs.h
cvs rdiff -u -r1.1281 -r1.1282 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.



CVS commit: src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:25:06 UTC 2017

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

Log Message:
add entry for Adaptec 1220SA


To generate a diff of this commit:
cvs rdiff -u -r1.1290 -r1.1291 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.1290 src/sys/dev/pci/pcidevs:1.1291
--- src/sys/dev/pci/pcidevs:1.1290	Tue Jun  6 05:39:06 2017
+++ src/sys/dev/pci/pcidevs	Sat Jun 17 20:25:06 2017
@@ -1,4 +1,4 @@
-$NetBSD: pcidevs,v 1.1290 2017/06/06 05:39:06 msaitoh Exp $
+$NetBSD: pcidevs,v 1.1291 2017/06/17 20:25:06 jdolecek Exp $
 
 /*
  * Copyright (c) 1995, 1996 Christopher G. Demetriou
@@ -1955,6 +1955,7 @@ product CIRRUS CS4281		0x6005	CS4281 Cry
 
 /* Adaptec's AAR-1210SA serial ATA RAID controller uses the CMDTECH chip */
 product CMDTECH AAR_1210SA	0x0240	AAR-1210SA SATA RAID Controller
+product CMDTECH AAR_1220SA	0x0242	AAR-1220SA SATA RAID Controller
 /* CMD Technology products -- info gleaned from their web site */
 product CMDTECH 640		0x0640	PCI0640
 /* No data on the CMD Tech. web site for the following as of Mar. 3 '98 */



CVS commit: src/sys/dev/pci

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 20:25:06 UTC 2017

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

Log Message:
add entry for Adaptec 1220SA


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

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



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 19:59:28 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
a variable that starts with \\ is not expanded.


To generate a diff of this commit:
cvs rdiff -u -r1.268 -r1.269 src/usr.bin/make/main.c

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

Modified files:

Index: src/usr.bin/make/main.c
diff -u src/usr.bin/make/main.c:1.268 src/usr.bin/make/main.c:1.269
--- src/usr.bin/make/main.c:1.268	Sat Jun 17 12:34:07 2017
+++ src/usr.bin/make/main.c	Sat Jun 17 15:59:28 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $	*/
+/*	$NetBSD: main.c,v 1.269 2017/06/17 19:59:28 christos Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.269 2017/06/17 19:59:28 christos Exp $";
 #else
 #include 
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.269 2017/06/17 19:59:28 christos Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -862,6 +862,10 @@ doPrintVars(void)
 		char *var = (char *)Lst_Datum(ln);
 		char *value;
 		char *p1;
+		Boolean noExpand;
+
+		if ((noExpand = (*var == '\\'))) 
+			var++;
 		
 		if (strchr(var, '$')) {
 			value = p1 = Var_Subst(NULL, var, VAR_GLOBAL,
@@ -877,7 +881,7 @@ doPrintVars(void)
 			VARF_WANTRES);
 		} else {
 			value = Var_Value(var, VAR_GLOBAL, );
-			if (*value == '$') {
+			if (!noExpand && value && *value == '$') {
 value = Var_Subst(NULL, value,
 VAR_GLOBAL, VARF_WANTRES);
 free(p1);



CVS commit: [jdolecek-ncq] src/sys/dev/ata

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 19:24:26 UTC 2017

Modified Files:
src/sys/dev/ata [jdolecek-ncq]: TODO.ncq

Log Message:
more notes, esp. PMP on siisata doesn't work + more problems with downsize


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.16 -r1.1.2.17 src/sys/dev/ata/TODO.ncq

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/ata/TODO.ncq
diff -u src/sys/dev/ata/TODO.ncq:1.1.2.16 src/sys/dev/ata/TODO.ncq:1.1.2.17
--- src/sys/dev/ata/TODO.ncq:1.1.2.16	Sat Jun 17 14:01:36 2017
+++ src/sys/dev/ata/TODO.ncq	Sat Jun 17 19:24:26 2017
@@ -1,13 +1,15 @@
 Bugs
 
 
-test crashdump with ahci, pciide, mvsata
-- jdolecek: broken for various reasons, working on fix
+fix crashdump for mvsata - request times out (maybe same as HEAD?)
 
-siisata - fix all new XXX and unmergable bits
+siisata - fix all new XXX and unmergable bits, fix PMP
 
 test crashdump with siisata
 
+reset channel and PMP doesn't work with siisata - siisata_reset_drive()
+uses ata_get_xfer() and this can clash on slot 0 with on-stack xfers
+
 test wd* at umass?, confirm the ata_channel kludge works
 
 is ata_exec_xfer() + POLL safe wrt. more outstanding I/Os? why is it waiting
@@ -24,6 +26,9 @@ atabus(4) queue depth can only shrink, c
 drive rescaned after detach of non-NCQ drive
 - careful with PMP, must be minimum of openings supported by drives
   attached to the same channel
+- the downsize can leak transfers with PMP if other device happens
+  to have active or pending transfers (e.g. when non-NCQ device is attached
+  while there is already NCQ device present)
 
 Other random notes (do outside the NCQ branch):
 -



CVS commit: [jdolecek-ncq] src/sys/dev/ata

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 19:24:26 UTC 2017

Modified Files:
src/sys/dev/ata [jdolecek-ncq]: TODO.ncq

Log Message:
more notes, esp. PMP on siisata doesn't work + more problems with downsize


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.16 -r1.1.2.17 src/sys/dev/ata/TODO.ncq

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



re: CVS commit: src/usr.bin/make

2017-06-17 Thread matthew green
"Christos Zoulas" writes:
> Module Name:  src
> Committed By: christos
> Date: Sat Jun 17 15:49:56 UTC 2017
> 
> Modified Files:
>   src/usr.bin/make: main.c
> 
> Log Message:
> -V: try to expand the variable again if the value contains a variable.

how do i get the original behaviour?  i like having both
that and the -V "${FOO}" version to expand.  they're both
useful in different ways.


.mrg.


Re: CVS commit: [jdolecek-ncq] src/sys/dev

2017-06-17 Thread Jonathan A. Kollasch
On Fri, Jun 16, 2017 at 08:40:49PM +, Jaromir Dolecek wrote:
> Module Name:  src
> Committed By: jdolecek
> Date: Fri Jun 16 20:40:49 UTC 2017
> 
> Modified Files:
>   src/sys/dev/ata [jdolecek-ncq]: ata.c ata_wdc.c atavar.h wd.c
>   src/sys/dev/ic [jdolecek-ncq]: ahcisata_core.c mvsata.c siisata.c wdc.c
>   src/sys/dev/scsipi [jdolecek-ncq]: atapi_wdc.c
> 
> Log Message:
> adjust reset channel and dump paths
> - channel reset now always kills active transfer, even on dump path, but
>   now doesn't touch the queued waiting transfers; also kill_xfer hook is
>   always called, so that HBA can free any private xfer resources and thus
>   the dump request has chance to work

Sounds like a recipe for more lost/corrupt data.  Remember, channel reset
is requestable from userland.

> - kill_xfer routines now always call ata_deactivate_xfer(); added KASSERT()s
>   to ata_free_xfer() to expect deactivated xfer
> - when called during channel reset before dump, ata_kill_active() drops
>   any queued waiting transfers without processing

Again, as above.

> - do not (re)queue any transfers in wddone() when dumping
> - kill AT_RST_NOCMD flag
> 
> This should also hopefully fix the 'polled command has been queued' panic
> as reported in:
> PR kern/11811 by John Hawkinson
> PR kern/47041 by Taylor R Campbell
> PR kern/51979 by Martin Husemann
> 
> dump tested working with piixide(4) and ahci(4). mvsata(4) dump times out,
> but otherwise tested working, will be fixed separately. siisata(4) 
> mechanically
> changed and not tested.
> 
> 
> To generate a diff of this commit:
> cvs rdiff -u -r1.132.8.8 -r1.132.8.9 src/sys/dev/ata/ata.c
> cvs rdiff -u -r1.105.6.3 -r1.105.6.4 src/sys/dev/ata/ata_wdc.c
> cvs rdiff -u -r1.92.8.8 -r1.92.8.9 src/sys/dev/ata/atavar.h
> cvs rdiff -u -r1.428.2.15 -r1.428.2.16 src/sys/dev/ata/wd.c
> cvs rdiff -u -r1.57.6.12 -r1.57.6.13 src/sys/dev/ic/ahcisata_core.c
> cvs rdiff -u -r1.35.6.10 -r1.35.6.11 src/sys/dev/ic/mvsata.c
> cvs rdiff -u -r1.30.4.15 -r1.30.4.16 src/sys/dev/ic/siisata.c
> cvs rdiff -u -r1.283.2.4 -r1.283.2.5 src/sys/dev/ic/wdc.c
> cvs rdiff -u -r1.123.4.4 -r1.123.4.5 src/sys/dev/scsipi/atapi_wdc.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/gcc

2017-06-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Jun 17 17:12:06 UTC 2017

Modified Files:
src/external/gpl3/gcc/lib/libstdc++-v3/arch/m68000: c++config.h
src/external/gpl3/gcc/usr.bin/gcc/arch/alpha: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/arm: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/armeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earm: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/hppa: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/i386: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/m68000: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/m68k: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mips64eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mipseb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mipsel: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc64: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sh3eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sh3el: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sparc: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sparc64: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/vax: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/x86_64: configargs.h

Log Message:
native-gcc for all platforms (only m68000 has a real change.)


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
src/external/gpl3/gcc/lib/libstdc++-v3/arch/m68000/c++config.h
cvs rdiff -u -r1.20 -r1.21 \
src/external/gpl3/gcc/usr.bin/gcc/arch/alpha/configargs.h
cvs rdiff -u -r1.23 -r1.24 \
src/external/gpl3/gcc/usr.bin/gcc/arch/arm/configargs.h
cvs rdiff -u -r1.24 -r1.25 \
src/external/gpl3/gcc/usr.bin/gcc/arch/armeb/configargs.h
cvs rdiff -u -r1.21 -r1.22 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earm/configargs.h
cvs rdiff -u -r1.17 -r1.18 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmeb/configargs.h
cvs rdiff -u -r1.18 -r1.19 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhf/configargs.h
cvs rdiff -u -r1.16 -r1.17 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhfeb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hf/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hfeb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hf/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hfeb/configargs.h
cvs rdiff -u -r1.21 -r1.22 \
src/external/gpl3/gcc/usr.bin/gcc/arch/hppa/configargs.h
cvs rdiff -u -r1.28 -r1.29 \
src/external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/m68000/configargs.h
cvs rdiff -u -r1.18 -r1.19 \
src/external/gpl3/gcc/usr.bin/gcc/arch/m68k/configargs.h
cvs rdiff -u -r1.19 -r1.20 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mips64eb/configargs.h
cvs rdiff -u -r1.19 -r1.20 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mipseb/configargs.h
cvs rdiff -u -r1.20 -r1.21 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mipsel/configargs.h
cvs rdiff -u -r1.25 -r1.26 \
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc/configargs.h
cvs rdiff -u -r1.8 -r1.9 \
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc64/configargs.h
cvs rdiff -u -r1.21 -r1.22 \

CVS commit: src/external/gpl3/gcc

2017-06-17 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Sat Jun 17 17:12:06 UTC 2017

Modified Files:
src/external/gpl3/gcc/lib/libstdc++-v3/arch/m68000: c++config.h
src/external/gpl3/gcc/usr.bin/gcc/arch/alpha: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/arm: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/armeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earm: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hf: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hfeb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/hppa: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/i386: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/m68000: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/m68k: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mips64eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mipseb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/mipsel: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc64: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sh3eb: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sh3el: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sparc: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/sparc64: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/vax: configargs.h
src/external/gpl3/gcc/usr.bin/gcc/arch/x86_64: configargs.h

Log Message:
native-gcc for all platforms (only m68000 has a real change.)


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 \
src/external/gpl3/gcc/lib/libstdc++-v3/arch/m68000/c++config.h
cvs rdiff -u -r1.20 -r1.21 \
src/external/gpl3/gcc/usr.bin/gcc/arch/alpha/configargs.h
cvs rdiff -u -r1.23 -r1.24 \
src/external/gpl3/gcc/usr.bin/gcc/arch/arm/configargs.h
cvs rdiff -u -r1.24 -r1.25 \
src/external/gpl3/gcc/usr.bin/gcc/arch/armeb/configargs.h
cvs rdiff -u -r1.21 -r1.22 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earm/configargs.h
cvs rdiff -u -r1.17 -r1.18 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmeb/configargs.h
cvs rdiff -u -r1.18 -r1.19 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhf/configargs.h
cvs rdiff -u -r1.16 -r1.17 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmhfeb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv4eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hf/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv6hfeb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7eb/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hf/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/earmv7hfeb/configargs.h
cvs rdiff -u -r1.21 -r1.22 \
src/external/gpl3/gcc/usr.bin/gcc/arch/hppa/configargs.h
cvs rdiff -u -r1.28 -r1.29 \
src/external/gpl3/gcc/usr.bin/gcc/arch/i386/configargs.h
cvs rdiff -u -r1.15 -r1.16 \
src/external/gpl3/gcc/usr.bin/gcc/arch/m68000/configargs.h
cvs rdiff -u -r1.18 -r1.19 \
src/external/gpl3/gcc/usr.bin/gcc/arch/m68k/configargs.h
cvs rdiff -u -r1.19 -r1.20 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mips64eb/configargs.h
cvs rdiff -u -r1.19 -r1.20 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mipseb/configargs.h
cvs rdiff -u -r1.20 -r1.21 \
src/external/gpl3/gcc/usr.bin/gcc/arch/mipsel/configargs.h
cvs rdiff -u -r1.25 -r1.26 \
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc/configargs.h
cvs rdiff -u -r1.8 -r1.9 \
src/external/gpl3/gcc/usr.bin/gcc/arch/powerpc64/configargs.h
cvs rdiff -u -r1.21 -r1.22 \

CVS commit: src/sys/conf

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 17:08:49 UTC 2017

Modified Files:
src/sys/conf: Makefile.kern.inc

Log Message:
Assign DTB files to a variable so we can make -V DTB


To generate a diff of this commit:
cvs rdiff -u -r1.257 -r1.258 src/sys/conf/Makefile.kern.inc

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

Modified files:

Index: src/sys/conf/Makefile.kern.inc
diff -u src/sys/conf/Makefile.kern.inc:1.257 src/sys/conf/Makefile.kern.inc:1.258
--- src/sys/conf/Makefile.kern.inc:1.257	Thu Jun 15 17:41:01 2017
+++ src/sys/conf/Makefile.kern.inc	Sat Jun 17 13:08:49 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.kern.inc,v 1.257 2017/06/15 21:41:01 jmcneill Exp $
+#	$NetBSD: Makefile.kern.inc,v 1.258 2017/06/17 17:08:49 christos Exp $
 #
 # This file contains common `MI' targets and definitions and it is included
 # at the bottom of each `MD' ${MACHINE}/conf/Makefile.${MACHINE}.
@@ -549,7 +549,8 @@ DTSPADDING?=1024
 
 .PATH.dts: ${DTSPATH}
 
-all: ${DTS:.dts=.dtb}
+DTB= ${DTS:.dts=.dtb}
+all: ${DTB}
 
 # End DTS handling
 



CVS commit: src/sys/conf

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 17:08:49 UTC 2017

Modified Files:
src/sys/conf: Makefile.kern.inc

Log Message:
Assign DTB files to a variable so we can make -V DTB


To generate a diff of this commit:
cvs rdiff -u -r1.257 -r1.258 src/sys/conf/Makefile.kern.inc

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



CVS commit: src/sys/arch

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 17:03:40 UTC 2017

Modified Files:
src/sys/arch/arm/broadcom: bcm2835_bsc.c
src/sys/arch/evbarm/rpi: rpi_machdep.c vcprop.h

Log Message:
Disable BSC0 on Raspberry Pi 3 and Zero W boards.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/broadcom/bcm2835_bsc.c
cvs rdiff -u -r1.70 -r1.71 src/sys/arch/evbarm/rpi/rpi_machdep.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/evbarm/rpi/vcprop.h

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

Modified files:

Index: src/sys/arch/arm/broadcom/bcm2835_bsc.c
diff -u src/sys/arch/arm/broadcom/bcm2835_bsc.c:1.5 src/sys/arch/arm/broadcom/bcm2835_bsc.c:1.6
--- src/sys/arch/arm/broadcom/bcm2835_bsc.c:1.5	Sat Jan 24 00:27:31 2015
+++ src/sys/arch/arm/broadcom/bcm2835_bsc.c	Sat Jun 17 17:03:40 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: bcm2835_bsc.c,v 1.5 2015/01/24 00:27:31 jakllsch Exp $	*/
+/*	$NetBSD: bcm2835_bsc.c,v 1.6 2017/06/17 17:03:40 jmcneill Exp $	*/
 
 /*
  * Copyright (c) 2012 Jonathan A. Kollasch
@@ -27,7 +27,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: bcm2835_bsc.c,v 1.5 2015/01/24 00:27:31 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bcm2835_bsc.c,v 1.6 2017/06/17 17:03:40 jmcneill Exp $");
 
 #include 
 #include 
@@ -99,8 +99,10 @@ bsciic_attach(device_t parent, device_t 
 {
 	struct bsciic_softc * const sc = device_private(self);
 	struct amba_attach_args * const aaa = aux;
+	prop_dictionary_t prop = device_properties(self);
 	struct i2cbus_attach_args iba;
 	u_int bscunit = ~0;
+	bool disable = false;
 	static ONCE_DECL(control);
 
 	switch (aaa->aaa_addr) {
@@ -112,6 +114,13 @@ bsciic_attach(device_t parent, device_t 
 		break;
 	}
 
+	prop_dictionary_get_bool(prop, "disable", );
+	if (disable) {
+		aprint_naive(": disabled\n");
+		aprint_normal(": disabled\n");
+		return;
+	}
+
 	aprint_naive("\n");
 	aprint_normal(": BSC%u\n", bscunit);
 

Index: src/sys/arch/evbarm/rpi/rpi_machdep.c
diff -u src/sys/arch/evbarm/rpi/rpi_machdep.c:1.70 src/sys/arch/evbarm/rpi/rpi_machdep.c:1.71
--- src/sys/arch/evbarm/rpi/rpi_machdep.c:1.70	Fri Jan  6 14:55:37 2017
+++ src/sys/arch/evbarm/rpi/rpi_machdep.c	Sat Jun 17 17:03:40 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: rpi_machdep.c,v 1.70 2017/01/06 14:55:37 skrll Exp $	*/
+/*	$NetBSD: rpi_machdep.c,v 1.71 2017/06/17 17:03:40 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.70 2017/01/06 14:55:37 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rpi_machdep.c,v 1.71 2017/06/17 17:03:40 jmcneill Exp $");
 
 #include "opt_arm_debug.h"
 #include "opt_bcm283x.h"
@@ -1201,6 +1201,21 @@ rpi_device_register(device_t dev, void *
 		}
 	}
 #endif
+
+	/* BSC0 is used internally on some boards */
+	if (device_is_a(dev, "bsciic") &&
+	((struct amba_attach_args *)aux)->aaa_addr == BCM2835_BSC0_BASE) {
+		const uint32_t rev = vb.vbt_boardrev.rev;
+
+		if ((rev & VCPROP_REV_ENCFLAG) != 0) {
+			switch (__SHIFTOUT(rev, VCPROP_REV_MODEL)) {
+			case RPI_MODEL_B_PI3:
+			case RPI_MODEL_ZERO_W:
+prop_dictionary_set_bool(dict, "disable", true);
+break;
+			}
+		}
+	}
 }
 
 SYSCTL_SETUP(sysctl_machdep_rpi, "sysctl machdep subtree setup (rpi)")

Index: src/sys/arch/evbarm/rpi/vcprop.h
diff -u src/sys/arch/evbarm/rpi/vcprop.h:1.15 src/sys/arch/evbarm/rpi/vcprop.h:1.16
--- src/sys/arch/evbarm/rpi/vcprop.h:1.15	Sun Apr  3 11:02:17 2016
+++ src/sys/arch/evbarm/rpi/vcprop.h	Sat Jun 17 17:03:40 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: vcprop.h,v 1.15 2016/04/03 11:02:17 mlelstv Exp $	*/
+/*	$NetBSD: vcprop.h,v 1.16 2017/06/17 17:03:40 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -137,6 +137,28 @@ struct vcprop_tag_boardrev {
 	uint32_t rev;
 } ;
 
+#define	VCPROP_REV_PCBREV	__BITS(3,0)
+#define	VCPROP_REV_MODEL	__BITS(11,4)
+#define	 RPI_MODEL_A		0
+#define	 RPI_MODEL_B		1
+#define	 RPI_MODEL_A_PLUS	2
+#define	 RPI_MODEL_B_PLUS	3
+#define	 RPI_MODEL_B_PI2	4
+#define	 RPI_MODEL_ALPHA	5
+#define	 RPI_MODEL_COMPUTE	6
+#define	 RPI_MODEL_ZERO		7
+#define	 RPI_MODEL_B_PI3	8
+#define	 RPI_MODEL_COMPUTE_PI3	9
+#define	 RPI_MODEL_ZERO_W	10
+#define	VCPROP_REV_PROCESSOR	__BITS(15,12)
+#define	 RPI_PROCESSOR_BCM2835	0
+#define	 RPI_PROCESSOR_BCM2836	1
+#define	 RPI_PROCESSOR_BCM2837	2
+#define	VCPROP_REV_MANUF	__BITS(19,16)
+#define	VCPROP_REV_MEMSIZE	__BITS(22,20)
+#define	VCPROP_REV_ENCFLAG	__BIT(23)
+#define	VCPROP_REV_WARRANTY	__BITS(25,24)
+
 struct vcprop_tag_macaddr {
 	struct vcprop_tag tag;
 	uint64_t addr;



CVS commit: src/sys/arch

2017-06-17 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jun 17 17:03:40 UTC 2017

Modified Files:
src/sys/arch/arm/broadcom: bcm2835_bsc.c
src/sys/arch/evbarm/rpi: rpi_machdep.c vcprop.h

Log Message:
Disable BSC0 on Raspberry Pi 3 and Zero W boards.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/broadcom/bcm2835_bsc.c
cvs rdiff -u -r1.70 -r1.71 src/sys/arch/evbarm/rpi/rpi_machdep.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/evbarm/rpi/vcprop.h

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



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 16:34:08 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
simplify


To generate a diff of this commit:
cvs rdiff -u -r1.267 -r1.268 src/usr.bin/make/main.c

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

Modified files:

Index: src/usr.bin/make/main.c
diff -u src/usr.bin/make/main.c:1.267 src/usr.bin/make/main.c:1.268
--- src/usr.bin/make/main.c:1.267	Sat Jun 17 11:49:56 2017
+++ src/usr.bin/make/main.c	Sat Jun 17 12:34:07 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $	*/
+/*	$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $";
 #else
 #include 
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.268 2017/06/17 16:34:07 christos Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -876,13 +876,12 @@ doPrintVars(void)
 			value = p1 = Var_Subst(NULL, tmp, VAR_GLOBAL,
 			VARF_WANTRES);
 		} else {
-			char *next = var;
-			value = Var_Value(next, VAR_GLOBAL, );
+			value = Var_Value(var, VAR_GLOBAL, );
 			if (*value == '$') {
-var = value;
-value = p1 = Var_Subst(NULL, var,
+value = Var_Subst(NULL, value,
 VAR_GLOBAL, VARF_WANTRES);
-free(var);
+free(p1);
+p1 = value;
 			}
 		}
 		printf("%s\n", value ? value : "");



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 16:34:08 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
simplify


To generate a diff of this commit:
cvs rdiff -u -r1.267 -r1.268 src/usr.bin/make/main.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/pci

2017-06-17 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Sat Jun 17 16:11:14 UTC 2017

Modified Files:
src/sys/dev/pci: pm3reg.h

Log Message:
moar registers


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/pci/pm3reg.h

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



CVS commit: src/sys/dev/pci

2017-06-17 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Sat Jun 17 16:11:14 UTC 2017

Modified Files:
src/sys/dev/pci: pm3reg.h

Log Message:
moar registers


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/pci/pm3reg.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/pm3reg.h
diff -u src/sys/dev/pci/pm3reg.h:1.1 src/sys/dev/pci/pm3reg.h:1.2
--- src/sys/dev/pci/pm3reg.h:1.1	Sun Nov 20 16:55:18 2016
+++ src/sys/dev/pci/pm3reg.h	Sat Jun 17 16:11:14 2017
@@ -211,10 +211,15 @@
 #define PM3_TEXTURECOLOR_MODE  0x8680
 #define PM3_FOG_MODE   0x8690
 #define PM3_COLORDDA_MODE  0x87e0
+#define PM3_COLOR	   0x87f0
 #define PM3_ALPHATEST_MODE 0x8800
 #define PM3_ANTIALIAS_MODE 0x8808
 #define PM3_DITHER_MODE0x8818
 #define  PM3_CF_TO_DIM_CF(_cf) _cf) & 0x0f) << 2) | ( 1 << 10))
+#define			PM3_DITHER_ENABLE	0x0001
+#define			PM3_DITHER		0x0002
+#define			PM3_DITHER_COLOR_SHIFT	2
+#define			PM3_DITHER_RGB		0x0400
 #define PM3_FBSOFTWAREWRITEMASK0x8820
 #define PM3_LOGICALOP_MODE 0x8828
 #define PM3_ROUTER_MODE0x8840
@@ -256,8 +261,45 @@
 #define PM3_FBSOURCEREAD_BUFFEROFFSET  0xaf10
 #define PM3_FBSOURCEREAD_BUFFERWIDTH   0xaf18
 #define  PM3_FBSOURCEREAD_BUFFERWIDTH_WIDTH(_w)((_w) & 0x0fff)
+#define PM3_ALPHA_SOURCE_COLOR		   0xaf80	/* in ABGR */
+#define PM3_ALPHA_DEST_COLOR		   0xaf88	/* in ABGR */
 #define PM3_ALPHABLENDCOLOR_MODE   0xafa0
+	/* lower 12 bits are identical to PM3_ALPHABLENDALPHA_MODE */
+#define			PM3_COLORFORMAT_MASK	0xf000
+#define			PM3_COLORFORMAT_	0x
+#define			PM3_COLORFORMAT_	0x1000
+#define			PM3_COLORFORMAT_5551	0x2000
+#define			PM3_COLORFORMAT_565	0x3000
+#define			PM3_COLORFORMAT_332	0x4000
+#define			PM3_COLOR_ORDER_RGB	0x0001
+#define			PM3_COLOR_CONV_SHIFT	0x0002	/* scale otherwise */.
+#define			PM3_SOURCE_COLOR_CONST	0x0004
+#define			PM3_DEST_COLOR_CONST	0x0008
+#define			PM3_COLOR_OP_MASK	0x00f0	/* see PM3_ALPHA_OP_MASK */
+#define			PM3_SWAP_SOURCE_DEST	0x0100
 #define PM3_ALPHABLENDALPHA_MODE   0xafa8
+#define			PM3_ENABLE_ALPHA	0x0001
+#define			PM3_SOURCEBLEND_MASK	0x001e
+#define			PM3_SOURCEBLEND_SHIFT	1
+#define			PM3_DESTBLEND_MASK	0x00e0
+#define			PM3_DESTBLEND_SHIFT	5
+#define			PM3_SOURCE_X2		0x0100
+#define			PM3_DEST_X2		0x0200
+#define			PM3_SOURCE_INVERT	0x0400
+#define			PM3_DEST_INVERT		0x0800
+#define			PM3_NO_ALPHA_BUFFER	0x1000
+#define			PM3_ALPHA_APPLE		0x2000
+#define			PM3_ALPHA_OPENGL	0x
+#define			PM3_ALPHA_SHIFT		0x4000
+#define			PM3_ALPHA_SCALE		0x
+#define			PM3_SOURCE_ALPHA_CONST	0x8000
+#define			PM3_DEST_ALPHA_CONST	0x0001
+#define			PM3_ALPHA_OP_MASK	0x000e
+#define			PM3_ALPHA_OP_ADD	0x
+#define			PM3_ALPHA_OP_SUB	0x0002
+#define			PM3_ALPHA_OP_SUBREV	0x0004
+#define			PM3_ALPHA_OP_MIN	0x0006
+#define			PM3_ALPHA_OP_MAX	0x0008
 #define PM3_FBWRITEBUFFERADDRESS0  0xb000
 #define PM3_FBWRITEBUFFEROFFSET0   0xb020
 #define PM3_FBWRITEBUFFERWIDTH00xb040
@@ -306,4 +348,16 @@
 #define  PM3_RENDER2D_AREASTIPPLEENABLE0x4000
 #define  PM3_RENDER2D_TEXTUREENABLE0x8000
 
+#define PM3_BLEND_ZERO0x
+#define PM3_BLEND_ONE0x0001
+#define PM3_BLEND_COLOR0x0002
+#define PM3_BLEND_ONE_MINUS_COLOR		0x0003
+#define PM3_BLEND_SOURCE_ALPHA			0x0004
+#define PM3_BLEND_ONE_MINUS_SOURCE_ALPHA	0x0005
+#define PM3_BLEND_DEST_ALPHA			0x0006
+#define PM3_BLEND_ONE_MINUS_DEST_ALPHA		0x0007
+#define PM3_BLEND_SAT_SOURCE_ALPHA		0x0008
+
+
+
 #endif /* PM3_REG_H */



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 15:49:56 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
-V: try to expand the variable again if the value contains a variable.


To generate a diff of this commit:
cvs rdiff -u -r1.266 -r1.267 src/usr.bin/make/main.c

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

Modified files:

Index: src/usr.bin/make/main.c
diff -u src/usr.bin/make/main.c:1.266 src/usr.bin/make/main.c:1.267
--- src/usr.bin/make/main.c:1.266	Sat Jun 17 11:26:50 2017
+++ src/usr.bin/make/main.c	Sat Jun 17 11:49:56 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $	*/
+/*	$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $";
 #else
 #include 
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.267 2017/06/17 15:49:56 christos Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -864,18 +864,26 @@ doPrintVars(void)
 		char *p1;
 		
 		if (strchr(var, '$')) {
-		value = p1 = Var_Subst(NULL, var, VAR_GLOBAL, VARF_WANTRES);
+			value = p1 = Var_Subst(NULL, var, VAR_GLOBAL,
+			VARF_WANTRES);
 		} else if (expandVars) {
 			char tmp[128];
 			int len = snprintf(tmp, sizeof(tmp), "${%s}", var);
 			
 			if (len >= (int)sizeof(tmp))
 Fatal("%s: variable name too big: %s",
-  progname, var);
+progname, var);
 			value = p1 = Var_Subst(NULL, tmp, VAR_GLOBAL,
 			VARF_WANTRES);
 		} else {
-			value = Var_Value(var, VAR_GLOBAL, );
+			char *next = var;
+			value = Var_Value(next, VAR_GLOBAL, );
+			if (*value == '$') {
+var = value;
+value = p1 = Var_Subst(NULL, var,
+VAR_GLOBAL, VARF_WANTRES);
+free(var);
+			}
 		}
 		printf("%s\n", value ? value : "");
 		free(p1);



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 15:49:56 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
-V: try to expand the variable again if the value contains a variable.


To generate a diff of this commit:
cvs rdiff -u -r1.266 -r1.267 src/usr.bin/make/main.c

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



CVS commit: src/lib/libc/misc

2017-06-17 Thread Joerg Sonnenberger
Module Name:src
Committed By:   joerg
Date:   Sat Jun 17 15:26:44 UTC 2017

Modified Files:
src/lib/libc/misc: initfini.c

Log Message:
PR 51654: Don't initialize _dlauxinfo for static binaries.

Emacs likes save all memory of the main binary and the first run of
_libc_init via .init will get the wrong (old) value of __ps_strings.
By avoiding the initialization of _dlauxinfo for shared applications,
it will be touched only by the _libc_init call from crt0.o itself,
at which point __ps_strings is correct.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/lib/libc/misc/initfini.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/misc/initfini.c
diff -u src/lib/libc/misc/initfini.c:1.13 src/lib/libc/misc/initfini.c:1.14
--- src/lib/libc/misc/initfini.c:1.13	Sat Nov 26 21:17:06 2016
+++ src/lib/libc/misc/initfini.c	Sat Jun 17 15:26:44 2017
@@ -1,4 +1,4 @@
-/* 	$NetBSD: initfini.c,v 1.13 2016/11/26 21:17:06 dholland Exp $	 */
+/* 	$NetBSD: initfini.c,v 1.14 2017/06/17 15:26:44 joerg Exp $	 */
 
 /*-
  * Copyright (c) 2007 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__RCSID("$NetBSD: initfini.c,v 1.13 2016/11/26 21:17:06 dholland Exp $");
+__RCSID("$NetBSD: initfini.c,v 1.14 2017/06/17 15:26:44 joerg Exp $");
 
 #ifdef _LIBC
 #include "namespace.h"
@@ -58,6 +58,7 @@ __weak_alias(_dlauxinfo,___dlauxinfo)
 static void *__libc_dlauxinfo;
 
 void *___dlauxinfo(void) __pure;
+__weakref_visible void * real_dlauxinfo(void) __weak_reference(_dlauxinfo);
 
 void *
 ___dlauxinfo(void)
@@ -107,7 +108,8 @@ _libc_init(void)
 
 	libc_initialised = 1;
 
-	if (__ps_strings != NULL)
+	/* Only initialize _dlauxinfo for static binaries. */
+	if (__ps_strings != NULL && real_dlauxinfo == ___dlauxinfo)
 		__libc_dlauxinfo = __ps_strings->ps_argvstr +
 		__ps_strings->ps_nargvstr + __ps_strings->ps_nenvstr + 2;
 



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 15:26:50 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
move some code out of the gigantic main function; no functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.265 -r1.266 src/usr.bin/make/main.c

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



CVS commit: src/lib/libc/misc

2017-06-17 Thread Joerg Sonnenberger
Module Name:src
Committed By:   joerg
Date:   Sat Jun 17 15:26:44 UTC 2017

Modified Files:
src/lib/libc/misc: initfini.c

Log Message:
PR 51654: Don't initialize _dlauxinfo for static binaries.

Emacs likes save all memory of the main binary and the first run of
_libc_init via .init will get the wrong (old) value of __ps_strings.
By avoiding the initialization of _dlauxinfo for shared applications,
it will be touched only by the _libc_init call from crt0.o itself,
at which point __ps_strings is correct.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/lib/libc/misc/initfini.c

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



CVS commit: src/usr.bin/make

2017-06-17 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Sat Jun 17 15:26:50 UTC 2017

Modified Files:
src/usr.bin/make: main.c

Log Message:
move some code out of the gigantic main function; no functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.265 -r1.266 src/usr.bin/make/main.c

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

Modified files:

Index: src/usr.bin/make/main.c
diff -u src/usr.bin/make/main.c:1.265 src/usr.bin/make/main.c:1.266
--- src/usr.bin/make/main.c:1.265	Wed May 10 18:26:14 2017
+++ src/usr.bin/make/main.c	Sat Jun 17 11:26:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $	*/
+/*	$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $";
 #else
 #include 
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $");
+__RCSID("$NetBSD: main.c,v 1.266 2017/06/17 15:26:50 christos Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -846,6 +846,86 @@ MakeMode(const char *mode)
 free(mp);
 }
 
+static void
+doPrintVars(void)
+{
+	LstNode ln;
+	Boolean expandVars;
+
+	if (debugVflag)
+		expandVars = FALSE;
+	else
+		expandVars = getBoolean(".MAKE.EXPAND_VARIABLES", FALSE);
+
+	for (ln = Lst_First(variables); ln != NULL;
+	ln = Lst_Succ(ln)) {
+		char *var = (char *)Lst_Datum(ln);
+		char *value;
+		char *p1;
+		
+		if (strchr(var, '$')) {
+		value = p1 = Var_Subst(NULL, var, VAR_GLOBAL, VARF_WANTRES);
+		} else if (expandVars) {
+			char tmp[128];
+			int len = snprintf(tmp, sizeof(tmp), "${%s}", var);
+			
+			if (len >= (int)sizeof(tmp))
+Fatal("%s: variable name too big: %s",
+  progname, var);
+			value = p1 = Var_Subst(NULL, tmp, VAR_GLOBAL,
+			VARF_WANTRES);
+		} else {
+			value = Var_Value(var, VAR_GLOBAL, );
+		}
+		printf("%s\n", value ? value : "");
+		free(p1);
+	}
+}
+
+static Boolean
+runTargets(void)
+{
+	Lst targs;	/* target nodes to create -- passed to Make_Init */
+	Boolean outOfDate; 	/* FALSE if all targets up to date */
+
+	/*
+	 * Have now read the entire graph and need to make a list of
+	 * targets to create. If none was given on the command line,
+	 * we consult the parsing module to find the main target(s)
+	 * to create.
+	 */
+	if (Lst_IsEmpty(create))
+		targs = Parse_MainName();
+	else
+		targs = Targ_FindList(create, TARG_CREATE);
+
+	if (!compatMake) {
+		/*
+		 * Initialize job module before traversing the graph
+		 * now that any .BEGIN and .END targets have been read.
+		 * This is done only if the -q flag wasn't given
+		 * (to prevent the .BEGIN from being executed should
+		 * it exist).
+		 */
+		if (!queryFlag) {
+			Job_Init();
+			jobsRunning = TRUE;
+		}
+
+		/* Traverse the graph, checking on all the targets */
+		outOfDate = Make_Run(targs);
+	} else {
+		/*
+		 * Compat_Init will take care of creating all the
+		 * targets as well as initializing the module.
+		 */
+		Compat_Run(targs);
+		outOfDate = FALSE;
+	}
+	Lst_Destroy(targs, NULL);
+	return outOfDate;
+}
+
 /*-
  * main --
  *	The main function, for obvious reasons. Initializes variables
@@ -866,8 +946,7 @@ MakeMode(const char *mode)
 int
 main(int argc, char **argv)
 {
-	Lst targs;	/* target nodes to create -- passed to Make_Init */
-	Boolean outOfDate = FALSE; 	/* FALSE if all targets up to date */
+	Boolean outOfDate; 	/* FALSE if all targets up to date */
 	struct stat sb, sa;
 	char *p1, *path;
 	char mdpath[MAXPATHLEN];
@@ -1372,73 +1451,13 @@ main(int argc, char **argv)
 
 	/* print the values of any variables requested by the user */
 	if (printVars) {
-		LstNode ln;
-		Boolean expandVars;
-
-		if (debugVflag)
-			expandVars = FALSE;
-		else
-			expandVars = getBoolean(".MAKE.EXPAND_VARIABLES", FALSE);
-		for (ln = Lst_First(variables); ln != NULL;
-		ln = Lst_Succ(ln)) {
-			char *var = (char *)Lst_Datum(ln);
-			char *value;
-			
-			if (strchr(var, '$')) {
-			value = p1 = Var_Subst(NULL, var, VAR_GLOBAL,
-		   VARF_WANTRES);
-			} else if (expandVars) {
-char tmp[128];
-
-if (snprintf(tmp, sizeof(tmp), "${%s}", var) >= (int)(sizeof(tmp)))
-	Fatal("%s: variable name too big: %s",
-	  progname, var);
-value = p1 = Var_Subst(NULL, tmp, VAR_GLOBAL,
-		   VARF_WANTRES);
-			} else {
-value = Var_Value(var, VAR_GLOBAL, );
-			}
-			printf("%s\n", value ? value : "");
-			free(p1);
-		}
+		doPrintVars();
+		outOfDate = FALSE;
 	} else {
-		/*
-		 * Have now read the entire graph and need to make a list of
-		 * targets to create. If none was given on the command 

CVS commit: [jdolecek-ncq] src/sys/dev/ata

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 14:01:36 UTC 2017

Modified Files:
src/sys/dev/ata [jdolecek-ncq]: TODO.ncq ata.c satapmp_subr.c

Log Message:
make PMP working great again

tested with mvsata(4), my ahcisata(4) controller unfortunately doesn't
support PMP


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.15 -r1.1.2.16 src/sys/dev/ata/TODO.ncq
cvs rdiff -u -r1.132.8.9 -r1.132.8.10 src/sys/dev/ata/ata.c
cvs rdiff -u -r1.12.24.1 -r1.12.24.2 src/sys/dev/ata/satapmp_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/ata/TODO.ncq
diff -u src/sys/dev/ata/TODO.ncq:1.1.2.15 src/sys/dev/ata/TODO.ncq:1.1.2.16
--- src/sys/dev/ata/TODO.ncq:1.1.2.15	Fri Jun 16 18:01:10 2017
+++ src/sys/dev/ata/TODO.ncq	Sat Jun 17 14:01:36 2017
@@ -13,8 +13,6 @@ test wd* at umass?, confirm the ata_chan
 is ata_exec_xfer() + POLL safe wrt. more outstanding I/Os? why is it waiting
 until xfer is head of queue? also layer violation with the ata_xfer_free() call
 
-further test port multipliers (currently appears to not work)
-
 test device error handling (currently appears to not work well, at least in NCQ case)
 
 do proper NCQ error recovery (currently not even really attempted)
@@ -24,6 +22,8 @@ done on a mpata branch?)
 
 atabus(4) queue depth can only shrink, causing NCQ to not be available if NCQ
 drive rescaned after detach of non-NCQ drive
+- careful with PMP, must be minimum of openings supported by drives
+  attached to the same channel
 
 Other random notes (do outside the NCQ branch):
 -

Index: src/sys/dev/ata/ata.c
diff -u src/sys/dev/ata/ata.c:1.132.8.9 src/sys/dev/ata/ata.c:1.132.8.10
--- src/sys/dev/ata/ata.c:1.132.8.9	Fri Jun 16 20:40:49 2017
+++ src/sys/dev/ata/ata.c	Sat Jun 17 14:01:36 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: ata.c,v 1.132.8.9 2017/06/16 20:40:49 jdolecek Exp $	*/
+/*	$NetBSD: ata.c,v 1.132.8.10 2017/06/17 14:01:36 jdolecek Exp $	*/
 
 /*
  * Copyright (c) 1998, 2001 Manuel Bouyer.  All rights reserved.
@@ -25,7 +25,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.132.8.9 2017/06/16 20:40:49 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.132.8.10 2017/06/17 14:01:36 jdolecek Exp $");
 
 #include "opt_ata.h"
 
@@ -1083,8 +1083,6 @@ atastart(struct ata_channel *chp)
 	if ((xfer = TAILQ_FIRST(>ch_queue->queue_xfer)) == NULL)
 		return;
 
-	KASSERT(chp->ch_ndrives == 1 || chq->queue_openings == 1);
-
 	/*
 	 * Can only take NCQ command if there are no current active
 	 * commands, or if the active commands are NCQ. Need only check

Index: src/sys/dev/ata/satapmp_subr.c
diff -u src/sys/dev/ata/satapmp_subr.c:1.12.24.1 src/sys/dev/ata/satapmp_subr.c:1.12.24.2
--- src/sys/dev/ata/satapmp_subr.c:1.12.24.1	Sat Apr 15 17:14:11 2017
+++ src/sys/dev/ata/satapmp_subr.c	Sat Jun 17 14:01:36 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: satapmp_subr.c,v 1.12.24.1 2017/04/15 17:14:11 jdolecek Exp $	*/
+/*	$NetBSD: satapmp_subr.c,v 1.12.24.2 2017/06/17 14:01:36 jdolecek Exp $	*/
 
 /*
  * Copyright (c) 2012 Manuel Bouyer.  All rights reserved.
@@ -25,7 +25,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: satapmp_subr.c,v 1.12.24.1 2017/04/15 17:14:11 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: satapmp_subr.c,v 1.12.24.2 2017/06/17 14:01:36 jdolecek Exp $");
 
 #include 
 #include 
@@ -53,6 +53,7 @@ satapmp_read_8(struct ata_channel *chp, 
 	struct ata_xfer xfer;
 	struct atac_softc *atac = chp->ch_atac;
 	struct ata_drive_datas *drvp;
+	int error = 0;
 
 	KASSERT(port < PMP_MAX_DRIVES);
 	KASSERT(reg < PMP_GSCR_NREGS);
@@ -60,7 +61,7 @@ satapmp_read_8(struct ata_channel *chp, 
 	drvp = >ch_drive[PMP_PORT_CTL];
 	KASSERT(drvp->drive == PMP_PORT_CTL);
 
-	memset(, 0, sizeof(xfer));
+	ata_xfer_init(, true);
 
 	xfer.c_ata_c.r_command = PMPC_READ_PORT;
 	xfer.c_ata_c.r_features = reg;
@@ -74,19 +75,22 @@ satapmp_read_8(struct ata_channel *chp, 
 	) != ATACMD_COMPLETE) {
 		aprint_error_dev(chp->atabus,
 		"PMP port %d register %d read failed\n", port, reg);
-		return EIO;
+		error = EIO;
+		goto out;
 	}
 	if (xfer.c_ata_c.flags & (AT_TIMEOU | AT_DF)) {
 		aprint_error_dev(chp->atabus,
 		"PMP port %d register %d read failed, flags 0x%x\n",
 		port, reg, xfer.c_ata_c.flags);
-		return EIO;
+		error = EIO;
+		goto out;
 	}
 	if (xfer.c_ata_c.flags & AT_ERROR) {
 		aprint_verbose_dev(chp->atabus,
 		"PMP port %d register %d read failed, error 0x%x\n",
 		port, reg, xfer.c_ata_c.r_error);
-		return EIO;
+		error = EIO;
+		goto out;
 	}
 
 	*value = ((uint64_t)((xfer.c_ata_c.r_lba >> 24) & 0xff) << 40) |
@@ -94,7 +98,9 @@ satapmp_read_8(struct ata_channel *chp, 
 		((uint64_t)((xfer.c_ata_c.r_lba >> 0) & 0xff) << 8) |
 		((uint64_t)((xfer.c_ata_c.r_count >> 0) & 0xff) << 0);
 
-	return 0;
+out:
+	ata_xfer_destroy();
+	return error;
 }
 
 static inline int
@@ -117,6 +123,7 @@ 

CVS commit: [jdolecek-ncq] src/sys/dev/ata

2017-06-17 Thread Jaromir Dolecek
Module Name:src
Committed By:   jdolecek
Date:   Sat Jun 17 14:01:36 UTC 2017

Modified Files:
src/sys/dev/ata [jdolecek-ncq]: TODO.ncq ata.c satapmp_subr.c

Log Message:
make PMP working great again

tested with mvsata(4), my ahcisata(4) controller unfortunately doesn't
support PMP


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.15 -r1.1.2.16 src/sys/dev/ata/TODO.ncq
cvs rdiff -u -r1.132.8.9 -r1.132.8.10 src/sys/dev/ata/ata.c
cvs rdiff -u -r1.12.24.1 -r1.12.24.2 src/sys/dev/ata/satapmp_subr.c

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:41:20 UTC 2017

Modified Files:
src/bin/sh: shell.h

Log Message:
NFC: DEBUG related comment change - catch up with reality.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/bin/sh/shell.h

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:41:20 UTC 2017

Modified Files:
src/bin/sh: shell.h

Log Message:
NFC: DEBUG related comment change - catch up with reality.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/bin/sh/shell.h

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

Modified files:

Index: src/bin/sh/shell.h
diff -u src/bin/sh/shell.h:1.23 src/bin/sh/shell.h:1.24
--- src/bin/sh/shell.h:1.23	Mon May 29 14:03:23 2017
+++ src/bin/sh/shell.h	Sat Jun 17 12:41:20 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: shell.h,v 1.23 2017/05/29 14:03:23 kre Exp $	*/
+/*	$NetBSD: shell.h,v 1.24 2017/06/17 12:41:20 kre Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -181,7 +181,7 @@ extern	int		ShNest;
 
 /*
  * reserved extras: b=builtins l=alias
- * still free:  d g k n q s u y
+ * still free:  d g k n q u y
  */
 
 	/* use VTRACE(DBG_ALWAYS, (...)) to test this one */



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:16:16 UTC 2017

Modified Files:
src/bin/sh: show.c

Log Message:
NFC - DEBUG mode only change - complete a change made earlier (marking
the line number when included in the trace line tag to show whether it
comes from the parser, or the elsewhere as they tend to be quite different).
Initially only one case was changed, while I pondered whether I liked it
or not.  Now it is all done...   Also when there is a line tag at all,
always include the root/sub-shell indicator character, not only when the
pid is included.


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/bin/sh/show.c

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

Modified files:

Index: src/bin/sh/show.c
diff -u src/bin/sh/show.c:1.45 src/bin/sh/show.c:1.46
--- src/bin/sh/show.c:1.45	Sat Jun 17 04:16:33 2017
+++ src/bin/sh/show.c	Sat Jun 17 12:16:16 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: show.c,v 1.45 2017/06/17 04:16:33 kre Exp $	*/
+/*	$NetBSD: show.c,v 1.46 2017/06/17 12:16:16 kre Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -39,7 +39,7 @@
 #if 0
 static char sccsid[] = "@(#)show.c	8.3 (Berkeley) 5/4/95";
 #else
-__RCSID("$NetBSD: show.c,v 1.45 2017/06/17 04:16:33 kre Exp $");
+__RCSID("$NetBSD: show.c,v 1.46 2017/06/17 12:16:16 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -933,6 +933,7 @@ trace_id(TFILE *tf)
 	char indent[16];
 	char *p;
 	int lno;
+	char c;
 
 	if (DFlags & DBG_NEST) {
 		if ((unsigned)ShNest >= sizeof indent - 1) {
@@ -961,23 +962,24 @@ trace_id(TFILE *tf)
 	else
 		lno = line_number;
 
+	c = ((i = getpid()) == tf->pid) ? ':' : '=';
+
 	if (DFlags & DBG_PID) {
-		i = getpid();
 		if (DFlags & DBG_LINE)
-			(void) asprintf(, "%5d%c%s\t%4d%c@\t", i,
-			i == tf->pid ? ':' : '=', indent, lno, parsing?'-':'+');
+			(void) asprintf(, "%5d%c%s\t%4d%c@\t", i, c,
+			indent, lno, parsing?'-':'+');
 		else
-			(void) asprintf(, "%5d%c%s\t", i,
-			i == tf->pid ? ':' : '=', indent);
+			(void) asprintf(, "%5d%c%s\t", i, c, indent);
 		return p;
 	} else if (DFlags & DBG_NEST) {
 		if (DFlags & DBG_LINE)
-			(void) asprintf(, "%s\t%4d @\t", indent, lno);
+			(void) asprintf(, "%c%s\t%4d%c@\t", c, indent, lno,
+			parsing?'-':'+');
 		else
-			(void) asprintf(, "%s\t", indent);
+			(void) asprintf(, "%c%s\t", c, indent);
 		return p;
 	} else if (DFlags & DBG_LINE) {
-		(void) asprintf(, "%4d @\t", lno);
+		(void) asprintf(, "%c%4d%c@\t", c, lno, parsing?'-':'+');
 		return p;
 	}
 	return NULL;



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:16:16 UTC 2017

Modified Files:
src/bin/sh: show.c

Log Message:
NFC - DEBUG mode only change - complete a change made earlier (marking
the line number when included in the trace line tag to show whether it
comes from the parser, or the elsewhere as they tend to be quite different).
Initially only one case was changed, while I pondered whether I liked it
or not.  Now it is all done...   Also when there is a line tag at all,
always include the root/sub-shell indicator character, not only when the
pid is included.


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/bin/sh/show.c

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:12:50 UTC 2017

Modified Files:
src/bin/sh: jobs.c

Log Message:
NFC - DEBUG mode only change - convert this to the new TRACE() format.


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/bin/sh/jobs.c

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

Modified files:

Index: src/bin/sh/jobs.c
diff -u src/bin/sh/jobs.c:1.86 src/bin/sh/jobs.c:1.87
--- src/bin/sh/jobs.c:1.86	Wed Jun  7 05:08:32 2017
+++ src/bin/sh/jobs.c	Sat Jun 17 12:12:50 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: jobs.c,v 1.86 2017/06/07 05:08:32 kre Exp $	*/
+/*	$NetBSD: jobs.c,v 1.87 2017/06/17 12:12:50 kre Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -37,7 +37,7 @@
 #if 0
 static char sccsid[] = "@(#)jobs.c	8.5 (Berkeley) 5/4/95";
 #else
-__RCSID("$NetBSD: jobs.c,v 1.86 2017/06/07 05:08:32 kre Exp $");
+__RCSID("$NetBSD: jobs.c,v 1.87 2017/06/17 12:12:50 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -433,7 +433,8 @@ showjob(struct output *out, struct job *
 
 	if (mode & SHOW_SIGNALLED && !(mode & SHOW_ISSIG)) {
 		if (jp->state == JOBDONE && !(mode & SHOW_NO_FREE)) {
-			TRACE(("showjob: freeing job %d\n", jp - jobtab + 1));
+			VTRACE(DBG_JOBS, ("showjob: freeing job %d\n",
+			jp - jobtab + 1));
 			freejob(jp);
 		}
 		return;
@@ -546,7 +547,7 @@ showjobs(struct output *out, int mode)
 	struct job *jp;
 	int silent = 0, gotpid;
 
-	TRACE(("showjobs(%x) called\n", mode));
+	CTRACE(DBG_JOBS, ("showjobs(%x) called\n", mode));
 
 	/* If not even one one job changed, there is nothing to do */
 	gotpid = dowait(0, NULL);
@@ -561,7 +562,7 @@ showjobs(struct output *out, int mode)
 		if (tcsetpgrp(ttyfd, getpid()) == -1)
 			error("Cannot set tty process group (%s) at %d",
 			strerror(errno), __LINE__);
-		TRACE(("repaired tty process group\n"));
+		VTRACE(DBG_JOBS|DBG_INPUT, ("repaired tty process group\n"));
 		silent = 1;
 	}
 #endif
@@ -833,8 +834,8 @@ makejob(union node *node, int nprocs)
 		jp->ps = >ps0;
 	}
 	INTON;
-	TRACE(("makejob(0x%lx, %d) returns %%%d\n", (long)node, nprocs,
-	jp - jobtab + 1));
+	VTRACE(DBG_JOBS, ("makejob(0x%lx, %d) returns %%%d\n",
+	(long)node, nprocs, jp - jobtab + 1));
 	return jp;
 }
 
@@ -860,11 +861,13 @@ forkshell(struct job *jp, union node *n,
 	pid_t pid;
 	int serrno;
 
-	TRACE(("forkshell(%%%d, %p, %d) called\n", jp - jobtab, n, mode));
+	CTRACE(DBG_JOBS, ("forkshell(%%%d, %p, %d) called\n",
+	jp - jobtab, n, mode));
+
 	switch ((pid = fork())) {
 	case -1:
 		serrno = errno;
-		TRACE(("Fork failed, errno=%d\n", serrno));
+		VTRACE(DBG_JOBS, ("Fork failed, errno=%d\n", serrno));
 		INTON;
 		error("Cannot fork (%s)", strerror(serrno));
 		break;
@@ -900,7 +903,7 @@ forkparent(struct job *jp, union node *n
 		if (/* iflag && rootshell && */ n)
 			commandtext(ps, n);
 	}
-	TRACE(("In parent shell:  child = %d\n", pid));
+	CTRACE(DBG_JOBS, ("In parent shell:  child = %d\n", pid));
 	return pid;
 }
 
@@ -913,7 +916,7 @@ forkchild(struct job *jp, union node *n,
 	const char *nullerr = "Can't open %s";
 
 	wasroot = rootshell;
-	TRACE(("Child shell %d\n", getpid()));
+	CTRACE(DBG_JOBS, ("Child shell %d\n", getpid()));
 	if (!vforked)
 		rootshell = 0;
 
@@ -997,7 +1000,7 @@ waitforjob(struct job *jp)
 	int st;
 
 	INTOFF;
-	TRACE(("waitforjob(%%%d) called\n", jp - jobtab + 1));
+	VTRACE(DBG_JOBS, ("waitforjob(%%%d) called\n", jp - jobtab + 1));
 	while (jp->state == JOBRUNNING) {
 		dowait(WBLOCK, jp);
 	}
@@ -1020,8 +1023,9 @@ waitforjob(struct job *jp)
 #endif
 	else
 		st = WTERMSIG(status) + 128;
-	TRACE(("waitforjob: job %d, nproc %d, status %x, st %x\n",
-		jp - jobtab + 1, jp->nprocs, status, st ));
+
+	VTRACE(DBG_JOBS, ("waitforjob: job %d, nproc %d, status %d, st %x\n",
+		jp - jobtab + 1, jp->nprocs, status, st));
 #if JOBS
 	if (jp->jobctl) {
 		/*
@@ -1059,10 +1063,11 @@ dowait(int flags, struct job *job)
 	int done;
 	int stopped;
 
-	TRACE(("dowait(%x) called\n", flags));
+	VTRACE(DBG_JOBS|DBG_PROCS, ("dowait(%x) called\n", flags));
 	do {
 		pid = waitproc(flags & WBLOCK, job, );
-		TRACE(("wait returns pid %d, status %d\n", pid, status));
+		VTRACE(DBG_JOBS|DBG_PROCS, ("wait returns pid %d, status %#x\n",
+		pid, status));
 	} while (pid == -1 && errno == EINTR && pendingsigs == 0);
 	if (pid <= 0)
 		return pid;
@@ -1076,7 +1081,10 @@ dowait(int flags, struct job *job)
 if (sp->pid == -1)
 	continue;
 if (sp->pid == pid) {
-	TRACE(("Job %d: changing status of proc %d from 0x%x to 0x%x\n", jp - jobtab + 1, pid, sp->status, status));
+	VTRACE(DBG_JOBS | DBG_PROCS,
+			("Job %d: changing status of proc %d from %#x to %#x\n",
+		jp - jobtab + 1, pid,
+		sp->status, status));
 	sp->status = status;
 	thisjob = jp;
 }
@@ -1088,7 +1096,9 @@ dowait(int flags, struct job *job)
 			if (stopped) {		/* stopped or done */
 int state = done ? JOBDONE : JOBSTOPPED;
 if 

CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 12:12:50 UTC 2017

Modified Files:
src/bin/sh: jobs.c

Log Message:
NFC - DEBUG mode only change - convert this to the new TRACE() format.


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/bin/sh/jobs.c

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 11:53:24 UTC 2017

Modified Files:
src/bin/sh: eval.c

Log Message:
NFC - DEBUG changes, update this to new TRACE method.
KNF - white space and comment formatting.


To generate a diff of this commit:
cvs rdiff -u -r1.147 -r1.148 src/bin/sh/eval.c

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

Modified files:

Index: src/bin/sh/eval.c
diff -u src/bin/sh/eval.c:1.147 src/bin/sh/eval.c:1.148
--- src/bin/sh/eval.c:1.147	Sat Jun 17 10:46:34 2017
+++ src/bin/sh/eval.c	Sat Jun 17 11:53:24 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: eval.c,v 1.147 2017/06/17 10:46:34 kre Exp $	*/
+/*	$NetBSD: eval.c,v 1.148 2017/06/17 11:53:24 kre Exp $	*/
 
 /*-
  * Copyright (c) 1993
@@ -37,7 +37,7 @@
 #if 0
 static char sccsid[] = "@(#)eval.c	8.9 (Berkeley) 6/8/95";
 #else
-__RCSID("$NetBSD: eval.c,v 1.147 2017/06/17 10:46:34 kre Exp $");
+__RCSID("$NetBSD: eval.c,v 1.148 2017/06/17 11:53:24 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -179,29 +179,29 @@ sh_pipe(int fds[2])
 int
 evalcmd(int argc, char **argv)
 {
-char *p;
-char *concat;
-char **ap;
-
-if (argc > 1) {
-p = argv[1];
-if (argc > 2) {
-STARTSTACKSTR(concat);
-ap = argv + 2;
-for (;;) {
-while (*p)
-STPUTC(*p++, concat);
-if ((p = *ap++) == NULL)
-break;
-STPUTC(' ', concat);
-}
-STPUTC('\0', concat);
-p = grabstackstr(concat);
-}
-evalstring(p, builtin_flags & EV_TESTED);
-} else
+	char *p;
+	char *concat;
+	char **ap;
+
+	if (argc > 1) {
+		p = argv[1];
+		if (argc > 2) {
+			STARTSTACKSTR(concat);
+			ap = argv + 2;
+			for (;;) {
+while (*p)
+	STPUTC(*p++, concat);
+if ((p = *ap++) == NULL)
+	break;
+STPUTC(' ', concat);
+			}
+			STPUTC('\0', concat);
+			p = grabstackstr(concat);
+		}
+		evalstring(p, builtin_flags & EV_TESTED);
+	} else
 		exitstatus = 0;
-return exitstatus;
+	return exitstatus;
 }
 
 
@@ -219,7 +219,7 @@ evalstring(char *s, int flag)
 	setinputstring(s, 1, line_number);
 
 	while ((n = parsecmd(0)) != NEOF) {
-		TRACE(("evalstring: "); showtree(n));
+		XTRACE(DBG_EVAL, ("evalstring: "), showtree(n));
 		if (nflag == 0)
 			evaltree(n, flag | EV_MORE);
 		popstackmark();
@@ -243,7 +243,8 @@ evaltree(union node *n, int flags)
 
 	do_etest = false;
 	if (n == NULL || nflag) {
-		TRACE(("evaltree(%s) called\n", n == NULL ? "NULL" : "-n"));
+		VTRACE(DBG_EVAL, ("evaltree(%s) called\n",
+		n == NULL ? "NULL" : "-n"));
 		if (nflag == 0)
 			exitstatus = 0;
 		goto out;
@@ -251,13 +252,8 @@ evaltree(union node *n, int flags)
 #ifndef SMALL
 	displayhist = 1;	/* show history substitutions done with fc */
 #endif
-#ifdef NODETYPENAME
-	TRACE(("pid %d, evaltree(%p: %s(%d), %#x) called\n",
+	CTRACE(DBG_EVAL, ("pid %d, evaltree(%p: %s(%d), %#x) called\n",
 	getpid(), n, NODETYPENAME(n->type), n->type, flags));
-#else
-	TRACE(("pid %d, evaltree(%p: %d, %#x) called\n",
-	getpid(), n, n->type, flags));
-#endif
 	switch (n->type) {
 	case NSEMI:
 		evaltree(n->nbinary.ch1, (sflags & EV_TESTED) |
@@ -345,7 +341,7 @@ evaltree(union node *n, int flags)
 		flushout();
 		break;
 	}
-out:
+ out:
 	if (pendingsigs)
 		dotrap();
 	if ((flags & EV_EXIT) != 0 || (eflag && exitstatus != 0 && do_etest))
@@ -361,14 +357,11 @@ evalloop(union node *n, int flags)
 	loopnest++;
 	status = 0;
 
-#ifdef NODETYPENAME
-	TRACE(("evalloop %s: ", NODETYPENAME(n->type)));
-#else
-	TRACE(("evalloop %s: ", n->type == NWHILE ? "while" : "until"));
-#endif
-	TRACE((""); showtree(n->nbinary.ch1));
-	TRACE(("evalloopdo: "); showtree(n->nbinary.ch2));
-	TRACE(("evalloop  done\n"));
+	CTRACE(DBG_EVAL,  ("evalloop %s:", NODETYPENAME(n->type)));
+	VXTRACE(DBG_EVAL, (" "), showtree(n->nbinary.ch1));
+	VXTRACE(DBG_EVAL, ("evalloopdo: "), showtree(n->nbinary.ch2));
+	VTRACE(DBG_EVAL,  ("evalloop  done\n"));
+	CTRACE(DBG_EVAL,  ("\n"));
 
 	for (;;) {
 		evaltree(n->nbinary.ch1, EV_TESTED | EV_MORE);
@@ -455,7 +448,7 @@ evalfor(union node *n, int flags)
 	}
 	loopnest--;
 	exitstatus = status;
-out:
+ out:
 	popstackmark();
 }
 
@@ -579,7 +572,7 @@ evalpipe(union node *n)
 	int prevfd;
 	int pip[2];
 
-	TRACE(("evalpipe(0x%lx) called\n", (long)n));
+	CTRACE(DBG_EVAL, ("evalpipe(%p) called\n", n));
 	pipelen = 0;
 	for (lp = n->npipe.cmdlist ; lp ; lp = lp->next)
 		pipelen++;
@@ -613,7 +606,8 @@ evalpipe(union node *n)
 	}
 	if (n->npipe.backgnd == 0) {
 		exitstatus = waitforjob(jp);
-		TRACE(("evalpipe:  job done exit status %d\n", exitstatus));
+		CTRACE(DBG_EVAL, ("evalpipe:  job done exit 

CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 11:53:24 UTC 2017

Modified Files:
src/bin/sh: eval.c

Log Message:
NFC - DEBUG changes, update this to new TRACE method.
KNF - white space and comment formatting.


To generate a diff of this commit:
cvs rdiff -u -r1.147 -r1.148 src/bin/sh/eval.c

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



CVS commit: src/lib/libc/string

2017-06-17 Thread Abhinav Upadhyay
Module Name:src
Committed By:   abhinav
Date:   Sat Jun 17 10:48:09 UTC 2017

Modified Files:
src/lib/libc/string: strings.3

Log Message:
Remove names from the NAME section which have their own man pages.
This is similar to the changes made in string(3) and memory(3) man pages 
previously.

The reasin being that, when you do `whatis ffs', an extra entry will be there in
the output for this page, which is confusing and unncessary.

Bump date for changes in the NAME section.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/lib/libc/string/strings.3

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

Modified files:

Index: src/lib/libc/string/strings.3
diff -u src/lib/libc/string/strings.3:1.2 src/lib/libc/string/strings.3:1.3
--- src/lib/libc/string/strings.3:1.2	Thu Jul 14 17:43:48 2016
+++ src/lib/libc/string/strings.3	Sat Jun 17 10:48:09 2017
@@ -1,4 +1,4 @@
-.\" $NetBSD: strings.3,v 1.2 2016/07/14 17:43:48 abhinav Exp $
+.\" $NetBSD: strings.3,v 1.3 2017/06/17 10:48:09 abhinav Exp $
 .\"
 .\" Copyright (c) 2007 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -27,18 +27,11 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd February 17, 2007
+.Dd June 17, 2017
 .Dt STRINGS 3
 .Os
 .Sh NAME
-.Nm bcmp ,
-.Nm bcopy ,
-.Nm bzero ,
-.Nm ffs ,
-.Nm index ,
-.Nm rindex ,
-.Nm strcasecmp ,
-.Nm strncasecmp
+.Nm strings
 .Nd string operations
 .Sh LIBRARY
 .Lb libc



CVS commit: src/lib/libc/string

2017-06-17 Thread Abhinav Upadhyay
Module Name:src
Committed By:   abhinav
Date:   Sat Jun 17 10:48:09 UTC 2017

Modified Files:
src/lib/libc/string: strings.3

Log Message:
Remove names from the NAME section which have their own man pages.
This is similar to the changes made in string(3) and memory(3) man pages 
previously.

The reasin being that, when you do `whatis ffs', an extra entry will be there in
the output for this page, which is confusing and unncessary.

Bump date for changes in the NAME section.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/lib/libc/string/strings.3

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 10:46:34 UTC 2017

Modified Files:
src/bin/sh: eval.c var.c var.h

Log Message:
Cosmetic changes to variable flags - make their values more suited
to my delicate sensibilities...  (NFC).

Arrange not to barf (ever) if some turkey makes _ readonly.  Do this
by adding a VNOERROR flag that causes errors in var setting to be
ignored (intended use is only for internal shell var setting, like of "_").
(nb: invalid var name errors ignore this flag, but those should never
occur on a var set by the shell itself.)

>From FreeBSD: don't simply discard memory if a variable is not set for
any reason (including because it is readonly) if the var's value had
been malloc'd.  Free it instead...


To generate a diff of this commit:
cvs rdiff -u -r1.146 -r1.147 src/bin/sh/eval.c
cvs rdiff -u -r1.59 -r1.60 src/bin/sh/var.c
cvs rdiff -u -r1.30 -r1.31 src/bin/sh/var.h

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

Modified files:

Index: src/bin/sh/eval.c
diff -u src/bin/sh/eval.c:1.146 src/bin/sh/eval.c:1.147
--- src/bin/sh/eval.c:1.146	Thu Jun  8 13:12:17 2017
+++ src/bin/sh/eval.c	Sat Jun 17 10:46:34 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: eval.c,v 1.146 2017/06/08 13:12:17 kre Exp $	*/
+/*	$NetBSD: eval.c,v 1.147 2017/06/17 10:46:34 kre Exp $	*/
 
 /*-
  * Copyright (c) 1993
@@ -37,7 +37,7 @@
 #if 0
 static char sccsid[] = "@(#)eval.c	8.9 (Berkeley) 6/8/95";
 #else
-__RCSID("$NetBSD: eval.c,v 1.146 2017/06/08 13:12:17 kre Exp $");
+__RCSID("$NetBSD: eval.c,v 1.147 2017/06/17 10:46:34 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -1195,7 +1195,7 @@ parent:	/* parent process gets here (if 
 out:
 	if (lastarg)
 		/* implement $_ for whatever use that really is */
-		setvar("_", lastarg, 0);
+		(void) setvarsafe("_", lastarg, VNOERROR);
 	popstackmark();
 }
 

Index: src/bin/sh/var.c
diff -u src/bin/sh/var.c:1.59 src/bin/sh/var.c:1.60
--- src/bin/sh/var.c:1.59	Sat Jun 17 04:12:06 2017
+++ src/bin/sh/var.c	Sat Jun 17 10:46:34 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.c,v 1.59 2017/06/17 04:12:06 kre Exp $	*/
+/*	$NetBSD: var.c,v 1.60 2017/06/17 10:46:34 kre Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -37,7 +37,7 @@
 #if 0
 static char sccsid[] = "@(#)var.c	8.3 (Berkeley) 5/4/95";
 #else
-__RCSID("$NetBSD: var.c,v 1.59 2017/06/17 04:12:06 kre Exp $");
+__RCSID("$NetBSD: var.c,v 1.60 2017/06/17 10:46:34 kre Exp $");
 #endif
 #endif /* not lint */
 
@@ -353,10 +353,18 @@ setvareq(char *s, int flags)
 		flags |= VEXPORT;
 	vp = find_var(s, , );
 	if (vp != NULL) {
-		if (vp->flags & VREADONLY)
+		if (vp->flags & VREADONLY) {
+			if ((flags & (VTEXTFIXED|VSTACK)) == 0)
+ckfree(s);
+			if (flags & VNOERROR)
+return;
 			error("%.*s: is read only", vp->name_len, s);
-		if (flags & VNOSET)
+		}
+		if (flags & VNOSET) {
+			if ((flags & (VTEXTFIXED|VSTACK)) == 0)
+ckfree(s);
 			return;
+		}
 
 		INTOFF;
 
@@ -385,8 +393,11 @@ setvareq(char *s, int flags)
 		return;
 	}
 	/* not found */
-	if (flags & VNOSET)
+	if (flags & VNOSET) {
+		if ((flags & (VTEXTFIXED|VSTACK)) == 0)
+			ckfree(s);
 		return;
+	}
 	vp = ckmalloc(sizeof (*vp));
 	vp->flags = flags & ~(VNOFUNC|VFUNCREF);
 	vp->text = s;

Index: src/bin/sh/var.h
diff -u src/bin/sh/var.h:1.30 src/bin/sh/var.h:1.31
--- src/bin/sh/var.h:1.30	Wed Jun  7 05:08:32 2017
+++ src/bin/sh/var.h	Sat Jun 17 10:46:34 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.h,v 1.30 2017/06/07 05:08:32 kre Exp $	*/
+/*	$NetBSD: var.h,v 1.31 2017/06/17 10:46:34 kre Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -39,17 +39,20 @@
  */
 
 /* flags */
-#define VEXPORT		0x0001	/* variable is exported */
-#define VREADONLY	0x0002	/* variable cannot be modified */
-#define VSTRFIXED	0x0004	/* variable struct is statically allocated */
-#define VTEXTFIXED	0x0008	/* text is statically allocated */
-#define VSTACK		0x0010	/* text is allocated on the stack */
-#define VUNSET		0x0020	/* the variable is not set */
-#define VNOFUNC		0x0040	/* don't call the callback function */
-#define VNOSET		0x0080	/* do not set variable - just readonly test */
-#define VNOEXPORT	0x0100	/* variable may not be exported */
+#define VUNSET		0x0001	/* the variable is not set */
+#define VEXPORT		0x0002	/* variable is exported */
+#define VREADONLY	0x0004	/* variable cannot be modified */
+#define VNOEXPORT	0x0008	/* variable may not be exported */
+
+#define VSTRFIXED	0x0010	/* variable struct is statically allocated */
+#define VTEXTFIXED	0x0020	/* text is statically allocated */
+#define VSTACK		0x0040	/* text is allocated on the stack */
+#define VNOFUNC		0x0100	/* don't call the callback function */
 #define VFUNCREF	0x0200	/* the function is called on ref, not set */
 
+#define VNOSET		0x4000	/* do not set variable - just readonly test */
+#define VNOERROR	0x8000	/* be quiet if set fails (no error msg) */
+
 struct var;
 
 union var_func_union {		/* function to be called when:  */



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 10:46:34 UTC 2017

Modified Files:
src/bin/sh: eval.c var.c var.h

Log Message:
Cosmetic changes to variable flags - make their values more suited
to my delicate sensibilities...  (NFC).

Arrange not to barf (ever) if some turkey makes _ readonly.  Do this
by adding a VNOERROR flag that causes errors in var setting to be
ignored (intended use is only for internal shell var setting, like of "_").
(nb: invalid var name errors ignore this flag, but those should never
occur on a var set by the shell itself.)

>From FreeBSD: don't simply discard memory if a variable is not set for
any reason (including because it is readonly) if the var's value had
been malloc'd.  Free it instead...


To generate a diff of this commit:
cvs rdiff -u -r1.146 -r1.147 src/bin/sh/eval.c
cvs rdiff -u -r1.59 -r1.60 src/bin/sh/var.c
cvs rdiff -u -r1.30 -r1.31 src/bin/sh/var.h

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



CVS commit: src/sys/arch/i386/i386

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 09:32:53 UTC 2017

Modified Files:
src/sys/arch/i386/i386: gdt.c

Log Message:
Remove dead and broken code. It is not a bad idea to implement USER_LDT on
Xen, but it certainly shouldn't be done this way.


To generate a diff of this commit:
cvs rdiff -u -r1.60 -r1.61 src/sys/arch/i386/i386/gdt.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/i386/i386/gdt.c
diff -u src/sys/arch/i386/i386/gdt.c:1.60 src/sys/arch/i386/i386/gdt.c:1.61
--- src/sys/arch/i386/i386/gdt.c:1.60	Wed Feb  8 18:53:01 2017
+++ src/sys/arch/i386/i386/gdt.c	Sat Jun 17 09:32:53 2017
@@ -1,6 +1,6 @@
-/*	$NetBSD: gdt.c,v 1.60 2017/02/08 18:53:01 kre Exp $	*/
+/*	$NetBSD: gdt.c,v 1.61 2017/06/17 09:32:53 maxv Exp $	*/
 
-/*-
+/*
  * Copyright (c) 1996, 1997, 2009 The NetBSD Foundation, Inc.
  * All rights reserved.
  *
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: gdt.c,v 1.60 2017/02/08 18:53:01 kre Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gdt.c,v 1.61 2017/06/17 09:32:53 maxv Exp $");
 
 #include "opt_multiprocessor.h"
 #include "opt_xen.h"
@@ -45,28 +45,20 @@ __KERNEL_RCSID(0, "$NetBSD: gdt.c,v 1.60
 
 #include 
 
-#ifndef XEN
-int gdt_size[1];	/* total number of GDT entries */
-int gdt_count[1];	/* number of GDT entries in use */
-int gdt_next[1];	/* next available slot for sweeping */
-int gdt_free[1];	/* next free slot; terminated with GNULL_SEL */
-#else
-int gdt_size[2];	/* total number of GDT entries */
-int gdt_count[2];	/* number of GDT entries in use */
-int gdt_next[2];	/* next available slot for sweeping */
-int gdt_free[2];	/* next free slot; terminated with GNULL_SEL */
-#endif
+int gdt_size;	/* total number of GDT entries */
+int gdt_count;	/* number of GDT entries in use */
+int gdt_next;	/* next available slot for sweeping */
+int gdt_free;	/* next free slot; terminated with GNULL_SEL */
 
+#ifndef XEN
 static int ldt_count;	/* number of LDTs */
 static int ldt_max = 1000;/* max number of LDTs */
-
-#ifndef XEN
 static void setgdt(int, const void *, size_t, int, int, int, int);
+static int gdt_get_slot(void);
+static void gdt_put_slot(int);
+static void gdt_grow(void);
 #endif
 void gdt_init(void);
-static void gdt_grow(int);
-static int gdt_get_slot1(int);
-static void gdt_put_slot1(int, int);
 
 void
 update_descriptor(union descriptor *table, union descriptor *entry)
@@ -96,12 +88,6 @@ setgdt(int sel, const void *base, size_t
 	CPU_INFO_ITERATOR cii;
 	struct cpu_info *ci;
 
-#ifdef XEN
-	if (type == SDT_SYS386TSS) {
-		/* printk("XXX TSS descriptor not supported in GDT\n"); */
-		return;
-	}
-#endif
 	setsegment(sd, base, limit, type, dpl, def32, gran);
 	for (CPU_INFO_FOREACH(cii, ci)) {
 		if (ci->ci_gdt != NULL)
@@ -127,17 +113,10 @@ gdt_init(void)
 	max_len = MAXGDTSIZ * sizeof(gdtstore[0]);
 	min_len = MINGDTSIZ * sizeof(gdtstore[0]);
 
-	gdt_size[0] = MINGDTSIZ;
-	gdt_count[0] = NGDT;
-	gdt_next[0] = NGDT;
-	gdt_free[0] = GNULL_SEL;
-#ifdef XEN
-	max_len = max_len * 2;
-	gdt_size[1] = 0;
-	gdt_count[1] = MAXGDTSIZ;
-	gdt_next[1] = MAXGDTSIZ;
-	gdt_free[1] = GNULL_SEL;
-#endif
+	gdt_size = MINGDTSIZ;
+	gdt_count = NGDT;
+	gdt_next = NGDT;
+	gdt_free = GNULL_SEL;
 
 	old_gdt = gdtstore;
 	gdtstore = (union descriptor *)uvm_km_alloc(kernel_map, max_len,
@@ -185,7 +164,7 @@ gdt_alloc_cpu(struct cpu_info *ci)
 	}
 	pmap_update(pmap_kernel());
 	memset(ci->ci_gdt, 0, min_len);
-	memcpy(ci->ci_gdt, gdtstore, gdt_count[0] * sizeof(gdtstore[0]));
+	memcpy(ci->ci_gdt, gdtstore, gdt_count * sizeof(gdtstore[0]));
 	setsegment(>ci_gdt[GCPU_SEL].sd, ci,
 	sizeof(struct cpu_info) - 1, SDT_MEMRWA, SEL_KPL, 1, 0);
 }
@@ -205,7 +184,7 @@ gdt_init_cpu(struct cpu_info *ci)
 	setregion(, ci->ci_gdt, max_len - 1);
 	lgdt();
 #else
-	size_t len = gdt_size[0] * sizeof(gdtstore[0]);
+	size_t len = gdt_size * sizeof(gdtstore[0]);
 	unsigned long frames[len >> PAGE_SHIFT];
 	vaddr_t va;
 	pt_entry_t *ptp;
@@ -229,19 +208,20 @@ gdt_init_cpu(struct cpu_info *ci)
 		}
 	}
 
-	if (HYPERVISOR_set_gdt(frames, gdt_size[0]))
+	if (HYPERVISOR_set_gdt(frames, gdt_size))
 		panic("HYPERVISOR_set_gdt failed!\n");
 	lgdt_finish();
 #endif
 }
 
+#ifndef XEN
 /*
  * Grow the GDT. The GDT is present on each CPU, so we need to iterate over all
  * of them. We already have the virtual memory, we only need to grow the
  * physical memory.
  */
 void
-gdt_grow(int which)
+gdt_grow(void)
 {
 	size_t old_len, new_len;
 	CPU_INFO_ITERATOR cii;
@@ -249,33 +229,10 @@ gdt_grow(int which)
 	struct vm_page *pg;
 	vaddr_t va;
 
-	old_len = gdt_size[which] * sizeof(gdtstore[0]);
-	gdt_size[which] <<= 1;
+	old_len = gdt_size * sizeof(gdtstore[0]);
+	gdt_size <<= 1;
 	new_len = old_len << 1;
 
-#ifdef XEN
-	if (which != 0) {
-		size_t max_len = MAXGDTSIZ * sizeof(gdtstore[0]);
-		if (old_len == 0) {
-			gdt_size[which] = MINGDTSIZ;
-			new_len = gdt_size[which] * 

CVS commit: src/sys/arch/i386/i386

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 09:32:53 UTC 2017

Modified Files:
src/sys/arch/i386/i386: gdt.c

Log Message:
Remove dead and broken code. It is not a bad idea to implement USER_LDT on
Xen, but it certainly shouldn't be done this way.


To generate a diff of this commit:
cvs rdiff -u -r1.60 -r1.61 src/sys/arch/i386/i386/gdt.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/amd64/include

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 08:40:46 UTC 2017

Modified Files:
src/sys/arch/amd64/include: pmap.h vmparam.h

Log Message:
Increase the kernel heap size from 512GB to 32TB, in such a way that it
is able to map the maximum amount of ram supported twice (16TB x 2).


To generate a diff of this commit:
cvs rdiff -u -r1.39 -r1.40 src/sys/arch/amd64/include/pmap.h
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/amd64/include/vmparam.h

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

Modified files:

Index: src/sys/arch/amd64/include/pmap.h
diff -u src/sys/arch/amd64/include/pmap.h:1.39 src/sys/arch/amd64/include/pmap.h:1.40
--- src/sys/arch/amd64/include/pmap.h:1.39	Fri Nov 11 12:06:31 2016
+++ src/sys/arch/amd64/include/pmap.h	Sat Jun 17 08:40:46 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.39 2016/11/11 12:06:31 maxv Exp $	*/
+/*	$NetBSD: pmap.h,v 1.40 2017/06/17 08:40:46 maxv Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -169,7 +169,7 @@
 
 #define PDP_BASE	L4_BASE
 
-#define NKL4_MAX_ENTRIES	(unsigned long)1
+#define NKL4_MAX_ENTRIES	(unsigned long)64
 #define NKL3_MAX_ENTRIES	(unsigned long)(NKL4_MAX_ENTRIES * 512)
 #define NKL2_MAX_ENTRIES	(unsigned long)(NKL3_MAX_ENTRIES * 512)
 #define NKL1_MAX_ENTRIES	(unsigned long)(NKL2_MAX_ENTRIES * 512)

Index: src/sys/arch/amd64/include/vmparam.h
diff -u src/sys/arch/amd64/include/vmparam.h:1.40 src/sys/arch/amd64/include/vmparam.h:1.41
--- src/sys/arch/amd64/include/vmparam.h:1.40	Thu Jun 15 11:25:52 2017
+++ src/sys/arch/amd64/include/vmparam.h	Sat Jun 17 08:40:46 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: vmparam.h,v 1.40 2017/06/15 11:25:52 maxv Exp $	*/
+/*	$NetBSD: vmparam.h,v 1.41 2017/06/17 08:40:46 maxv Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -121,10 +121,10 @@
  */
 #ifndef XEN
 #define VM_MIN_KERNEL_ADDRESS	0x8000
-#define VM_MAX_KERNEL_ADDRESS	0x8080
+#define VM_MAX_KERNEL_ADDRESS	0xa000
 #else
 #define VM_MIN_KERNEL_ADDRESS	0xa000
-#define VM_MAX_KERNEL_ADDRESS	0xa080
+#define VM_MAX_KERNEL_ADDRESS	0xc000
 #endif
 
 /*



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

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 08:40:46 UTC 2017

Modified Files:
src/sys/arch/amd64/include: pmap.h vmparam.h

Log Message:
Increase the kernel heap size from 512GB to 32TB, in such a way that it
is able to map the maximum amount of ram supported twice (16TB x 2).


To generate a diff of this commit:
cvs rdiff -u -r1.39 -r1.40 src/sys/arch/amd64/include/pmap.h
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/amd64/include/vmparam.h

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



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

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 08:07:03 UTC 2017

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

Log Message:
Actually, use slot 456 instead, so that it fits a cache line.


To generate a diff of this commit:
cvs rdiff -u -r1.66 -r1.67 src/sys/arch/x86/include/pmap.h

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

Modified files:

Index: src/sys/arch/x86/include/pmap.h
diff -u src/sys/arch/x86/include/pmap.h:1.66 src/sys/arch/x86/include/pmap.h:1.67
--- src/sys/arch/x86/include/pmap.h:1.66	Wed Jun 14 14:17:15 2017
+++ src/sys/arch/x86/include/pmap.h	Sat Jun 17 08:07:03 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.66 2017/06/14 14:17:15 maxv Exp $	*/
+/*	$NetBSD: pmap.h,v 1.67 2017/06/17 08:07:03 maxv Exp $	*/
 
 /*
  * Copyright (c) 1997 Charles D. Cranor and Washington University.
@@ -485,7 +485,7 @@ void	pmap_free_ptps(struct vm_page *);
 
 #ifdef __HAVE_DIRECT_MAP
 
-#define L4_SLOT_DIRECT		460
+#define L4_SLOT_DIRECT		456
 #define PDIR_SLOT_DIRECT	L4_SLOT_DIRECT
 
 #define NL4_SLOT_DIRECT		32



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

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 08:07:03 UTC 2017

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

Log Message:
Actually, use slot 456 instead, so that it fits a cache line.


To generate a diff of this commit:
cvs rdiff -u -r1.66 -r1.67 src/sys/arch/x86/include/pmap.h

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 07:50:35 UTC 2017

Modified Files:
src/bin/sh: option.list sh.1

Log Message:
Changed the long name for the -L option from lineno_fn_relative
to local_lineno as the latter seemed to be marginally more popular,
and perhaps more importantly, is the same length as the peviously
existing quietprofile option, which means the man page indentation
for the list of options can return to (about) what it was before...
(That is, less indented, which means more data/line, which means less
lines of man page - a good thing!)


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/bin/sh/option.list
cvs rdiff -u -r1.151 -r1.152 src/bin/sh/sh.1

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



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 07:50:35 UTC 2017

Modified Files:
src/bin/sh: option.list sh.1

Log Message:
Changed the long name for the -L option from lineno_fn_relative
to local_lineno as the latter seemed to be marginally more popular,
and perhaps more importantly, is the same length as the peviously
existing quietprofile option, which means the man page indentation
for the list of options can return to (about) what it was before...
(That is, less indented, which means more data/line, which means less
lines of man page - a good thing!)


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/bin/sh/option.list
cvs rdiff -u -r1.151 -r1.152 src/bin/sh/sh.1

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

Modified files:

Index: src/bin/sh/option.list
diff -u src/bin/sh/option.list:1.3 src/bin/sh/option.list:1.4
--- src/bin/sh/option.list:1.3	Wed Jun  7 05:08:32 2017
+++ src/bin/sh/option.list	Sat Jun 17 07:50:35 2017
@@ -1,4 +1,4 @@
-/* $NetBSD: option.list,v 1.3 2017/06/07 05:08:32 kre Exp $ */
+/* $NetBSD: option.list,v 1.4 2017/06/17 07:50:35 kre Exp $ */
 
 /*
  * define the shell's settable options
@@ -63,7 +63,7 @@ usefork	fork		F		# use fork(2) instead o
 pflag	nopriv		p		# preserve privs if set[ug]id
 posix	posix# be closer to POSIX compat
 qflag	quietprofile	q		# disable -v/-x in startup files
-fnline1	lineno_fn_relative	L on	# number lines in funcs starting at 1
+fnline1	local_lineno	L on		# number lines in funcs starting at 1
 
 // editline/history related options ("vi" is standard, 'V' and others are not)
 // only one of vi/emacs can be set, hence the "set" definition, value

Index: src/bin/sh/sh.1
diff -u src/bin/sh/sh.1:1.151 src/bin/sh/sh.1:1.152
--- src/bin/sh/sh.1:1.151	Thu Jun  8 02:23:51 2017
+++ src/bin/sh/sh.1	Sat Jun 17 07:50:35 2017
@@ -1,4 +1,4 @@
-.\"	$NetBSD: sh.1,v 1.151 2017/06/08 02:23:51 kre Exp $
+.\"	$NetBSD: sh.1,v 1.152 2017/06/17 07:50:35 kre Exp $
 .\" Copyright (c) 1991, 1993
 .\"	The Regents of the University of California.  All rights reserved.
 .\"
@@ -31,7 +31,7 @@
 .\"
 .\"	@(#)sh.1	8.6 (Berkeley) 5/4/95
 .\"
-.Dd June 4, 2017
+.Dd June 17, 2017
 .Dt SH 1
 .ds flags abCEeFfhnuvxIimpqV
 .Os
@@ -216,7 +216,15 @@ The following options can be set from th
 unless otherwise stated, with the
 .Ic set
 built-in (described later).
-.Bl -tag -width \-WXXlineno_fn_relativeXX -offset indent
+.\"
+.\" strlen("quietprofile") == strlen("local_lineno"): pick the latter
+.\" to give the indent as the _ in that case, and the fi ligature in
+.\" the former combine to make local_lineno slightly wider when printed
+.\" (in italics) in a variable width font.   Probably should test the actual
+.\" widths and use the wider, but I am not sure if mandoc is up to that...
+.\" (and I don't know how to get at the font that will be used easily anyway!)
+.Bl -tag -width \-WXXlocal_linenoXX -offset indent
+.\"
 .It Fl a Em allexport
 Export all variables assigned to.
 .It Fl b Em notify
@@ -294,7 +302,7 @@ the file system is searched for commands
 Force the shell to behave interactively.
 .It Fl I Em ignoreeof
 Ignore EOFs from input when interactive.
-.It Fl L Em lineno_fn_relative
+.It Fl L Em local_lineno
 When set, before a function is defined,
 causes the variable
 .Ev LINENO
@@ -2921,7 +2929,7 @@ This shell gives the user the option to 
 If the
 .Fl L
 flag (the
-.Ic lineno_fn_relative
+.Ic local_lineno
 option, see
 .Sx Argument List Processing )
 is set, when the function is defined, then the function
@@ -2947,7 +2955,8 @@ is made local and inherited, and not giv
 then from that point in the function,
 .Ev LINENO
 will give the line number as if lines are counted in sequence
-with the lines that surround the function definition.
+with the lines that surround the function definition (and
+any other function definitions in which this is nested.)
 If
 .Ev LINENO
 is made local, and in that same command, given a value, as



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

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 07:45:13 UTC 2017

Modified Files:
src/sys/arch/x86/x86: vm_machdep.c

Log Message:
Check (inside), not (!outside). It explains the two install failures
reported between pmap.h::r1.65 and vmparam.h::r1.40.


To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/x86/x86/vm_machdep.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/x86/x86

2017-06-17 Thread Maxime Villard
Module Name:src
Committed By:   maxv
Date:   Sat Jun 17 07:45:13 UTC 2017

Modified Files:
src/sys/arch/x86/x86: vm_machdep.c

Log Message:
Check (inside), not (!outside). It explains the two install failures
reported between pmap.h::r1.65 and vmparam.h::r1.40.


To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/x86/x86/vm_machdep.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/x86/x86/vm_machdep.c
diff -u src/sys/arch/x86/x86/vm_machdep.c:1.28 src/sys/arch/x86/x86/vm_machdep.c:1.29
--- src/sys/arch/x86/x86/vm_machdep.c:1.28	Thu Feb 23 03:34:22 2017
+++ src/sys/arch/x86/x86/vm_machdep.c	Sat Jun 17 07:45:13 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: vm_machdep.c,v 1.28 2017/02/23 03:34:22 kamil Exp $	*/
+/*	$NetBSD: vm_machdep.c,v 1.29 2017/06/17 07:45:13 maxv Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1986 The Regents of the University of California.
@@ -80,7 +80,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: vm_machdep.c,v 1.28 2017/02/23 03:34:22 kamil Exp $");
+__KERNEL_RCSID(0, "$NetBSD: vm_machdep.c,v 1.29 2017/06/17 07:45:13 maxv Exp $");
 
 #include "opt_mtrr.h"
 
@@ -399,7 +399,7 @@ cpu_uarea_free(void *vva)
 {
 	vaddr_t va = (vaddr_t) vva;
 
-	if (va >= VM_MIN_KERNEL_ADDRESS && va < VM_MAX_KERNEL_ADDRESS) {
+	if (va < PMAP_DIRECT_BASE || va >= PMAP_DIRECT_END) {
 		return false;
 	}
 



CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 07:22:12 UTC 2017

Modified Files:
src/bin/sh: exec.c expand.c memalloc.c memalloc.h parser.c

Log Message:
Many internal memory management type fixes.

PR bin/52302   (core dump with interactive shell, here doc and error
on same line) is fixed.   (An old bug.)

echo "$( echo x; for a in $( seq 1000 ); do printf '%s\n'; done; echo y )"
consistently prints 1002 lines (x, 1000 empty ones, then y) as it should
(And you don't want to know what it did before, or why.) (Another old one.)

(Recently added) Problems with ~ expansion fixed (mem management related).

Proper fix for the cwrappers configure problem (which includes the quick
fix that was done earlier, but extends upon that to be correct). (This was
another newly added problem.)

And the really devious (and rare) old bug - if STACKSTRNUL() needs to
allocate a new buffer in which to store the \0, calculate the size of
the string space remaining correctly, unlike when SPUTC() grows the
buffer, there is no actual data being stored in the STACKSTRNUL()
case - the string space remaining was calculated as one byte too few.
That would be harmless, unless the next buffer also filled, in which
case it was assumed that it was really full, not one byte less, meaning
one junk char (a nul, or anything) was being copied into the next (even
bigger buffer) corrupting the data.

Consistent use of stalloc() to allocate a new block of (stack) memory,
and grabstackstr() to claim a block of (stack) memory that had already
been occupied but not claimed as in use.  Since grabstackstr is implemented
as just a call to stalloc() this is a no-op change in practice, but makes
it much easier to comprehend what is really happening.  Previous code
sometimes used stalloc() when the use case was really for grabstackstr().
Change grabstackstr() to actually use the arg passed to it, instead of
(not much better than) guessing how much space to claim,

More care when using unstalloc()/ungrabstackstr() to return space, and in
particular when the stack must be returned to its previous state, rather than
just returning no-longer needed space, neither of those work.  They also don't
work properly if there have been (really, even might have been) any stack mem
allocations since the last stalloc()/grabstackstr().   (If we know there
cannot have been then the alloc/release sequence is kind of pointless.)
To work correctly in general we must use setstackmark()/popstackmark() so
do that when needed.  Have those also save/restore the top of stack string
space remaining.

[Aside: for those reading this, the "stack" mentioned is not
in any way related to the thing used for maintaining the C
function call state, ie: the "stack segment" of the program,
but the shell's internal memory management strategy.]

More comments to better explain what is happening in some cases.
Also cleaned up some hopelessly broken DEBUG mode data that were
recently added (no effect on anyone but the poor semi-human attempting
to make sense of it...).

User visible changes:

Proper counting of line numbers when a here document is delimited
by a multi-line end-delimiter, as in

cat << 'REALLY
END'
here doc line 1
here doc line 2
REALLY
END

(which is an obscure case, but nothing says should not work.)  The \n
in the end-delimiter of the here doc (the last one) was not incrementing
the line number, which from that point on in the script would be 1 too
low (or more, for end-delimiters with more than one \n in them.)

With tilde expansion:
unset HOME; echo ~
changed to return getpwuid(getuid())->pw_home instead of failing (returning ~)

POSIX says this is unspecified, which makes it difficult for a script to
compensate for being run without HOME set (as in env -i sh script), so
while not able to be used portably, this seems like a useful extension
(and is implemented the same way by some other shells).

Further, with
HOME=; printf %s ~
we now write nothing (which is required by POSIX - which requires ~ to
expand to the value of $HOME if it is set) previously if $HOME (in this
case) or a user's directory in the passwd file (for ~user) were a null
STRING, We failed the ~ expansion and left behind '~' or '~user'.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/bin/sh/exec.c
cvs rdiff -u -r1.115 -r1.116 src/bin/sh/expand.c
cvs rdiff -u -r1.29 -r1.30 src/bin/sh/memalloc.c
cvs rdiff -u -r1.16 -r1.17 src/bin/sh/memalloc.h
cvs rdiff -u -r1.137 -r1.138 src/bin/sh/parser.c

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

Modified files:

Index: src/bin/sh/exec.c
diff -u src/bin/sh/exec.c:1.49 src/bin/sh/exec.c:1.50
--- src/bin/sh/exec.c:1.49	Wed Jun  7 05:08:32 2017
+++ src/bin/sh/exec.c	Sat Jun 17 07:22:12 2017
@@ -1,4 +1,4 @@
-/*	$NetBSD: exec.c,v 1.49 2017/06/07 05:08:32 kre Exp $	*/

CVS commit: src/bin/sh

2017-06-17 Thread Robert Elz
Module Name:src
Committed By:   kre
Date:   Sat Jun 17 07:22:12 UTC 2017

Modified Files:
src/bin/sh: exec.c expand.c memalloc.c memalloc.h parser.c

Log Message:
Many internal memory management type fixes.

PR bin/52302   (core dump with interactive shell, here doc and error
on same line) is fixed.   (An old bug.)

echo "$( echo x; for a in $( seq 1000 ); do printf '%s\n'; done; echo y )"
consistently prints 1002 lines (x, 1000 empty ones, then y) as it should
(And you don't want to know what it did before, or why.) (Another old one.)

(Recently added) Problems with ~ expansion fixed (mem management related).

Proper fix for the cwrappers configure problem (which includes the quick
fix that was done earlier, but extends upon that to be correct). (This was
another newly added problem.)

And the really devious (and rare) old bug - if STACKSTRNUL() needs to
allocate a new buffer in which to store the \0, calculate the size of
the string space remaining correctly, unlike when SPUTC() grows the
buffer, there is no actual data being stored in the STACKSTRNUL()
case - the string space remaining was calculated as one byte too few.
That would be harmless, unless the next buffer also filled, in which
case it was assumed that it was really full, not one byte less, meaning
one junk char (a nul, or anything) was being copied into the next (even
bigger buffer) corrupting the data.

Consistent use of stalloc() to allocate a new block of (stack) memory,
and grabstackstr() to claim a block of (stack) memory that had already
been occupied but not claimed as in use.  Since grabstackstr is implemented
as just a call to stalloc() this is a no-op change in practice, but makes
it much easier to comprehend what is really happening.  Previous code
sometimes used stalloc() when the use case was really for grabstackstr().
Change grabstackstr() to actually use the arg passed to it, instead of
(not much better than) guessing how much space to claim,

More care when using unstalloc()/ungrabstackstr() to return space, and in
particular when the stack must be returned to its previous state, rather than
just returning no-longer needed space, neither of those work.  They also don't
work properly if there have been (really, even might have been) any stack mem
allocations since the last stalloc()/grabstackstr().   (If we know there
cannot have been then the alloc/release sequence is kind of pointless.)
To work correctly in general we must use setstackmark()/popstackmark() so
do that when needed.  Have those also save/restore the top of stack string
space remaining.

[Aside: for those reading this, the "stack" mentioned is not
in any way related to the thing used for maintaining the C
function call state, ie: the "stack segment" of the program,
but the shell's internal memory management strategy.]

More comments to better explain what is happening in some cases.
Also cleaned up some hopelessly broken DEBUG mode data that were
recently added (no effect on anyone but the poor semi-human attempting
to make sense of it...).

User visible changes:

Proper counting of line numbers when a here document is delimited
by a multi-line end-delimiter, as in

cat << 'REALLY
END'
here doc line 1
here doc line 2
REALLY
END

(which is an obscure case, but nothing says should not work.)  The \n
in the end-delimiter of the here doc (the last one) was not incrementing
the line number, which from that point on in the script would be 1 too
low (or more, for end-delimiters with more than one \n in them.)

With tilde expansion:
unset HOME; echo ~
changed to return getpwuid(getuid())->pw_home instead of failing (returning ~)

POSIX says this is unspecified, which makes it difficult for a script to
compensate for being run without HOME set (as in env -i sh script), so
while not able to be used portably, this seems like a useful extension
(and is implemented the same way by some other shells).

Further, with
HOME=; printf %s ~
we now write nothing (which is required by POSIX - which requires ~ to
expand to the value of $HOME if it is set) previously if $HOME (in this
case) or a user's directory in the passwd file (for ~user) were a null
STRING, We failed the ~ expansion and left behind '~' or '~user'.


To generate a diff of this commit:
cvs rdiff -u -r1.49 -r1.50 src/bin/sh/exec.c
cvs rdiff -u -r1.115 -r1.116 src/bin/sh/expand.c
cvs rdiff -u -r1.29 -r1.30 src/bin/sh/memalloc.c
cvs rdiff -u -r1.16 -r1.17 src/bin/sh/memalloc.h
cvs rdiff -u -r1.137 -r1.138 src/bin/sh/parser.c

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