CVS commit: src/sys/arch

2014-12-18 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Dec 19 07:04:52 UTC 2014

Modified Files:
src/sys/arch/amd64/conf: ALL
src/sys/arch/i386/conf: ALL

Log Message:
Add SOFTINT_INTR to ALL


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/arch/amd64/conf/ALL
cvs rdiff -u -r1.389 -r1.390 src/sys/arch/i386/conf/ALL

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/conf/ALL
diff -u src/sys/arch/amd64/conf/ALL:1.23 src/sys/arch/amd64/conf/ALL:1.24
--- src/sys/arch/amd64/conf/ALL:1.23	Sun Nov 16 16:01:40 2014
+++ src/sys/arch/amd64/conf/ALL	Fri Dec 19 07:04:52 2014
@@ -1,4 +1,4 @@
-# $NetBSD: ALL,v 1.23 2014/11/16 16:01:40 manu Exp $
+# $NetBSD: ALL,v 1.24 2014/12/19 07:04:52 ozaki-r Exp $
 # From NetBSD: GENERIC,v 1.787 2006/10/01 18:37:54 bouyer Exp
 #
 # ALL machine description file
@@ -17,7 +17,7 @@ include 	"arch/amd64/conf/std.amd64"
 
 options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
 
-#ident 		"ALL-$Revision: 1.23 $"
+#ident 		"ALL-$Revision: 1.24 $"
 
 maxusers	64		# estimated number of users
 
@@ -2157,6 +2157,7 @@ options SMB_VNODE_DEBUG
 options SNAPPER_DEBUG
 options SNDEBUG
 options SOCKBUF_DEBUG
+options SOFTINT_INTR
 options SONIC_DEBUG
 options SPARC_PCI_DEBUG
 options SPC_DEBUG

Index: src/sys/arch/i386/conf/ALL
diff -u src/sys/arch/i386/conf/ALL:1.389 src/sys/arch/i386/conf/ALL:1.390
--- src/sys/arch/i386/conf/ALL:1.389	Sun Nov 16 16:01:41 2014
+++ src/sys/arch/i386/conf/ALL	Fri Dec 19 07:04:52 2014
@@ -1,4 +1,4 @@
-# $NetBSD: ALL,v 1.389 2014/11/16 16:01:41 manu Exp $
+# $NetBSD: ALL,v 1.390 2014/12/19 07:04:52 ozaki-r Exp $
 # From NetBSD: GENERIC,v 1.787 2006/10/01 18:37:54 bouyer Exp
 #
 # ALL machine description file
@@ -17,7 +17,7 @@ include 	"arch/i386/conf/std.i386"
 
 options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
 
-#ident 		"ALL-$Revision: 1.389 $"
+#ident 		"ALL-$Revision: 1.390 $"
 
 maxusers	64		# estimated number of users
 
@@ -2356,6 +2356,7 @@ options SMB_VNODE_DEBUG
 options SNAPPER_DEBUG
 options SNDEBUG
 options SOCKBUF_DEBUG
+options SOFTINT_INTR
 options SONIC_DEBUG
 options SPARC_PCI_DEBUG
 options SPC_DEBUG



CVS commit: src/sys/dev/pci

2014-12-18 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Dec 19 06:54:40 UTC 2014

Modified Files:
src/sys/dev/pci: if_vioif.c virtio.c virtiovar.h

Log Message:
Implement softint-based interrupt handling in if_vioif

Softint-based interrupt handling is considered as a future direction
of the (network) device driver architecture in NetBSD. pq3etsec of
ppc is already implemented based on the architecture (unlike pq3etsec,
this change doesn't include softint-based if_start). In this
architecture, a hardware interrupt handler just schedules a softint
and the softint performs actual interrupt processing. It reduces
processing in hardware interrupt context and allows Layer 2 network
stack (e.g., bridge, vlan and even bpf) run in softint context,
which makes it easy to implement fine-grain locking in the layer.

This is an experimental implementation of the architecture in if_viof.

virtio introduces a new flag VIRTIO_F_PCI_INTR_SOFTINT. If a driver
of virtio sets it to sc_flags of virtio_softc, virtio calls
softint_schedule in virtio_intr instead of directly calling the
interrupt handler of the driver.

When VIOIF_SOFTINT_INTR is on, vioif doesn't use the existing softint
(vioif_rx_softint) that is called from vioif_rx_vq_done. Because
vioif_rx_softint already runs in softint context and another softint
isn't needed. This change actually improves performance in some cases.

The feature is disabled by default and enabled when SOFTINT_INTR is
set somewhere (normally in a kernel configuration).


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/pci/if_vioif.c
cvs rdiff -u -r1.7 -r1.8 src/sys/dev/pci/virtio.c
cvs rdiff -u -r1.3 -r1.4 src/sys/dev/pci/virtiovar.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/if_vioif.c
diff -u src/sys/dev/pci/if_vioif.c:1.11 src/sys/dev/pci/if_vioif.c:1.12
--- src/sys/dev/pci/if_vioif.c:1.11	Thu Oct  9 04:58:42 2014
+++ src/sys/dev/pci/if_vioif.c	Fri Dec 19 06:54:40 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_vioif.c,v 1.11 2014/10/09 04:58:42 ozaki-r Exp $	*/
+/*	$NetBSD: if_vioif.c,v 1.12 2014/12/19 06:54:40 ozaki-r Exp $	*/
 
 /*
  * Copyright (c) 2010 Minoura Makoto.
@@ -26,7 +26,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_vioif.c,v 1.11 2014/10/09 04:58:42 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_vioif.c,v 1.12 2014/12/19 06:54:40 ozaki-r Exp $");
 
 #include 
 #include 
@@ -39,6 +39,7 @@ __KERNEL_RCSID(0, "$NetBSD: if_vioif.c,v
 #include 
 #include 
 #include 
+#include 
 
 #include 
 #include 
@@ -57,6 +58,10 @@ __KERNEL_RCSID(0, "$NetBSD: if_vioif.c,v
 #define VIOIF_MPSAFE	1
 #endif
 
+#ifdef SOFTINT_INTR
+#define VIOIF_SOFTINT_INTR	1
+#endif
+
 /*
  * if_vioifreg.h:
  */
@@ -220,6 +225,7 @@ static void	vioif_watchdog(struct ifnet 
 static int	vioif_add_rx_mbuf(struct vioif_softc *, int);
 static void	vioif_free_rx_mbuf(struct vioif_softc *, int);
 static void	vioif_populate_rx_mbufs(struct vioif_softc *);
+static void	vioif_populate_rx_mbufs_locked(struct vioif_softc *);
 static int	vioif_rx_deq(struct vioif_softc *);
 static int	vioif_rx_deq_locked(struct vioif_softc *);
 static int	vioif_rx_vq_done(struct virtqueue *);
@@ -498,6 +504,9 @@ vioif_attach(device_t parent, device_t s
 #ifdef VIOIF_MPSAFE
 	vsc->sc_flags |= VIRTIO_F_PCI_INTR_MPSAFE;
 #endif
+#ifdef VIOIF_SOFTINT_INTR
+	vsc->sc_flags |= VIRTIO_F_PCI_INTR_SOFTINT;
+#endif
 
 	features = virtio_negotiate_features(vsc,
 	 (VIRTIO_NET_F_MAC |
@@ -883,14 +892,22 @@ vioif_free_rx_mbuf(struct vioif_softc *s
 static void
 vioif_populate_rx_mbufs(struct vioif_softc *sc)
 {
+	VIOIF_RX_LOCK(sc);
+	vioif_populate_rx_mbufs_locked(sc);
+	VIOIF_RX_UNLOCK(sc);
+}
+
+static void
+vioif_populate_rx_mbufs_locked(struct vioif_softc *sc)
+{
 	struct virtio_softc *vsc = sc->sc_virtio;
 	int i, r, ndone = 0;
 	struct virtqueue *vq = &sc->sc_vq[0]; /* rx vq */
 
-	VIOIF_RX_LOCK(sc);
+	KASSERT(VIOIF_RX_LOCKED(sc));
 
 	if (sc->sc_stopping)
-		goto out;
+		return;
 
 	for (i = 0; i < vq->vq_num; i++) {
 		int slot;
@@ -925,9 +942,6 @@ vioif_populate_rx_mbufs(struct vioif_sof
 	}
 	if (ndone > 0)
 		virtio_enqueue_commit(vsc, vq, -1, true);
-
-out:
-	VIOIF_RX_UNLOCK(sc);
 }
 
 /* dequeue recieved packets */
@@ -996,6 +1010,10 @@ vioif_rx_vq_done(struct virtqueue *vq)
 	struct vioif_softc *sc = device_private(vsc->sc_child);
 	int r = 0;
 
+#ifdef VIOIF_SOFTINT_INTR
+	KASSERT(!cpu_intr_p());
+#endif
+
 	VIOIF_RX_LOCK(sc);
 
 	if (sc->sc_stopping)
@@ -1003,7 +1021,11 @@ vioif_rx_vq_done(struct virtqueue *vq)
 
 	r = vioif_rx_deq_locked(sc);
 	if (r)
+#ifdef VIOIF_SOFTINT_INTR
+		vioif_populate_rx_mbufs_locked(sc);
+#else
 		softint_schedule(sc->sc_rx_softint);
+#endif
 
 out:
 	VIOIF_RX_UNLOCK(sc);

Index: src/sys/dev/pci/virtio.c
diff -u src/sys/dev/pci/virtio.c:1.7 src/sys/dev/pci/virtio.c:1.8
--- src/sys/dev/pci/virtio.c:1.7	Mon Oct  6 13:31:54 2014
+++ src/sys/dev/pci/virti

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

2014-12-18 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Fri Dec 19 05:21:51 UTC 2014

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

Log Message:
we need to handle make includes


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/external/mit/xorg/lib/dri/Makefile

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

Modified files:

Index: src/external/mit/xorg/lib/dri/Makefile
diff -u src/external/mit/xorg/lib/dri/Makefile:1.21 src/external/mit/xorg/lib/dri/Makefile:1.22
--- src/external/mit/xorg/lib/dri/Makefile:1.21	Fri Dec 19 00:03:30 2014
+++ src/external/mit/xorg/lib/dri/Makefile	Fri Dec 19 00:21:51 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.21 2014/12/19 05:03:30 christos Exp $
+# $NetBSD: Makefile,v 1.22 2014/12/19 05:21:51 christos Exp $
 
 # Link the mesa_dri_drivers mega driver.
 
@@ -395,4 +395,6 @@ FILES=		drirc
 LIBDIR=		${X11USRLIBDIR}/modules/dri
 
 .include 
+.else
+.include 
 .endif



CVS commit: src/distrib/sets/lists/xdebug

2014-12-18 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Fri Dec 19 05:06:41 UTC 2014

Modified Files:
src/distrib/sets/lists/xdebug: mi

Log Message:
fix sets.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/distrib/sets/lists/xdebug/mi

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

Modified files:

Index: src/distrib/sets/lists/xdebug/mi
diff -u src/distrib/sets/lists/xdebug/mi:1.10 src/distrib/sets/lists/xdebug/mi:1.11
--- src/distrib/sets/lists/xdebug/mi:1.10	Thu Dec 18 05:02:17 2014
+++ src/distrib/sets/lists/xdebug/mi	Fri Dec 19 00:06:41 2014
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.10 2014/12/18 10:02:17 martin Exp $
+# $NetBSD: mi,v 1.11 2014/12/19 05:06:41 christos Exp $
 ./etc/mtree/set.xdebug	comp-sys-root
 ./usr/X11R6/lib/libFS_g.a-unknown-	debuglib,x11
 ./usr/X11R6/lib/libGLU_g.a-unknown-	debuglib,x11
@@ -53,7 +53,7 @@
 ./usr/X11R7/lib/libGLw_g.a-unknown-	debuglib,xorg
 ./usr/X11R7/lib/libICE_g.a-unknown-	debuglib,xorg
 ./usr/X11R7/lib/libOSMesa_g.a-unknown-	obsolete
-./usr/X11R7/lib/libglapi.a-unknown-	debuglib,xorg
+./usr/X11R7/lib/libglapi_g.a-unknown-	debuglib,xorg
 ./usr/X11R7/lib/libSM_g.a-unknown-	debuglib,xorg
 ./usr/X11R7/lib/libX11-xcb_g.a-unknown-	debuglib,xorg
 ./usr/X11R7/lib/libX11_g.a-unknown-	debuglib,xorg



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

2014-12-18 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Fri Dec 19 05:03:30 UTC 2014

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

Log Message:
- Explain what's going on a bit better
- Fix a conditional
- Don't include bsd.lib.mk if we are not building libraries
  (otherwise we end up with an empty library name that installed
   bogus library files lib.a etc.)


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/external/mit/xorg/lib/dri/Makefile

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

Modified files:

Index: src/external/mit/xorg/lib/dri/Makefile
diff -u src/external/mit/xorg/lib/dri/Makefile:1.20 src/external/mit/xorg/lib/dri/Makefile:1.21
--- src/external/mit/xorg/lib/dri/Makefile:1.20	Thu Dec 18 05:08:52 2014
+++ src/external/mit/xorg/lib/dri/Makefile	Fri Dec 19 00:03:30 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.20 2014/12/18 10:08:52 mrg Exp $
+# $NetBSD: Makefile,v 1.21 2014/12/19 05:03:30 christos Exp $
 
 # Link the mesa_dri_drivers mega driver.
 
@@ -25,6 +25,8 @@ CPPFLAGS+= \
 #CPPFLAGS+=	-D_NETBSD_SOURCE -DPTHREADS
 
 # We don't actually build this on non-x86 at all, currently.
+# The following if statements are not effective since we only
+# get here for x86
 .if ${MACHINE_ARCH} == "alpha"
 DRIVERS=	r200 radeon
 .elif ${MACHINE} == "macppc" || ${MACHINE} == "ofppc"
@@ -359,7 +361,7 @@ MESA_SRC_MODULES=  main math math_xform 
 .include "../libmesa.mk"
 .include "../libglsl.mk"
 
-.if ${MACHINE} == "amd64" || ${MACHINE} == "i386"
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
 SRCS+=	streaming-load-memcpy.c
 CPPFLAGS.streaming-load-memcpy.c+= -msse4.1
 .endif
@@ -389,6 +391,8 @@ FILES=		drirc
 .PATH:  ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/common
 
 .include 
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
 LIBDIR=		${X11USRLIBDIR}/modules/dri
 
 .include 
+.endif



CVS commit: src/sys/arch/vax

2014-12-18 Thread John Klos
Module Name:src
Committed By:   jklos
Date:   Fri Dec 19 04:44:13 UTC 2014

Modified Files:
src/sys/arch/vax/conf: GENERIC files.vax majors.vax
Added Files:
src/sys/arch/vax/vsa: vsaudio.c

Log Message:
Add audio support for VAXstation VLC, 60 and 90 machines. Originally rom
Blaz Antonic and ported from OpenBSD by Björn Johannesso. Tested on VLC
and 4000/60.


To generate a diff of this commit:
cvs rdiff -u -r1.193 -r1.194 src/sys/arch/vax/conf/GENERIC
cvs rdiff -u -r1.118 -r1.119 src/sys/arch/vax/conf/files.vax
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/vax/conf/majors.vax
cvs rdiff -u -r0 -r1.1 src/sys/arch/vax/vsa/vsaudio.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/vax/conf/GENERIC
diff -u src/sys/arch/vax/conf/GENERIC:1.193 src/sys/arch/vax/conf/GENERIC:1.194
--- src/sys/arch/vax/conf/GENERIC:1.193	Sun Nov 16 16:01:43 2014
+++ src/sys/arch/vax/conf/GENERIC	Fri Dec 19 04:44:13 2014
@@ -1,4 +1,4 @@
-# $NetBSD: GENERIC,v 1.193 2014/11/16 16:01:43 manu Exp $
+# $NetBSD: GENERIC,v 1.194 2014/12/19 04:44:13 jklos Exp $
 #
 # GENERIC machine description file
 # 
@@ -22,7 +22,7 @@ include		"arch/vax/conf/std.vax"
 
 options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
 
-#ident 		"GENERIC-$Revision: 1.193 $"
+#ident 		"GENERIC-$Revision: 1.194 $"
 
 # Here are all different supported CPU types listed.
 #options 	VAX8800		# VAX 8500, 8530, 8550, 8700, 8800
@@ -206,6 +206,9 @@ smg0		at vsbus0 csr 0x200f # Small m
 #clr0		at vsbus0 csr 0x3000 # 4- or 8-bitplans color graphics
 spx0		at vsbus0 csr 0x3800 # Low Cost SPX on VS4000/90.
 #lcg0		at vsbus0 csr 0x21801000 # VS4000/60 (or VLC) graphics
+vsaudio0	at vsbus0 csr 0x200d # VS4000/60 (or VLC) audio
+vsaudio0	at vsbus0 csr 0x2680 # VS4000/90 audio
+audio*		at audiobus?
 tc0		at vsbus0 csr 0x3600 # VS4000/60 or 90 TC adapter
 tcds*		at tc0 slot ? offset ?	 # TC dual SCSI controller
 asc*		at tcds? chip ?		 # PMAZB/C

Index: src/sys/arch/vax/conf/files.vax
diff -u src/sys/arch/vax/conf/files.vax:1.118 src/sys/arch/vax/conf/files.vax:1.119
--- src/sys/arch/vax/conf/files.vax:1.118	Sun Jun 12 03:35:49 2011
+++ src/sys/arch/vax/conf/files.vax	Fri Dec 19 04:44:13 2014
@@ -1,4 +1,4 @@
-#	$NetBSD: files.vax,v 1.118 2011/06/12 03:35:49 rmind Exp $
+#	$NetBSD: files.vax,v 1.119 2014/12/19 04:44:13 jklos Exp $
 #
 # new style config file for vax architecture
 #
@@ -315,6 +315,11 @@ device	dh # XXX?
 attach	dh at uba
 file	arch/vax/uba/dh.c		dh needs-flag
 
+# Vaxstation 4000 audio
+device	vsaudio: audiobus, am7930
+attach	vsaudio at vsbus
+file	arch/vax/vsa/vsaudio.c		vsaudio needs-flag
+
 # These are general files needed for compilation.
 file	dev/cons.c
 file	dev/cninit.c

Index: src/sys/arch/vax/conf/majors.vax
diff -u src/sys/arch/vax/conf/majors.vax:1.24 src/sys/arch/vax/conf/majors.vax:1.25
--- src/sys/arch/vax/conf/majors.vax:1.24	Fri Jun 22 20:42:23 2012
+++ src/sys/arch/vax/conf/majors.vax	Fri Dec 19 04:44:13 2014
@@ -1,4 +1,4 @@
-#	$NetBSD: majors.vax,v 1.24 2012/06/22 20:42:23 abs Exp $
+#	$NetBSD: majors.vax,v 1.25 2014/12/19 04:44:13 jklos Exp $
 #
 # Device majors for vax
 #
@@ -84,6 +84,7 @@ device-major	wsfont		char 80			wsfont
 device-major	ses		char 81			ses
 
 device-major	nsmb		char 98			nsmb
+device-major	audio		char 99			audio
 
 #
 # block-device-only devices

Added files:

Index: src/sys/arch/vax/vsa/vsaudio.c
diff -u /dev/null src/sys/arch/vax/vsa/vsaudio.c:1.1
--- /dev/null	Fri Dec 19 04:44:13 2014
+++ src/sys/arch/vax/vsa/vsaudio.c	Fri Dec 19 04:44:13 2014
@@ -0,0 +1,587 @@
+/*	$OpenBSD: vsaudio.c,v 1.4 2013/05/15 21:21:11 ratchov Exp $	*/
+
+/*
+ * Copyright (c) 2011 Miodrag Vallat.
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+/*
+ * Copyright (c) 1995 Rolf Grossmann
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *notice, this list of conditi

CVS commit: src/sys/arch/evbppc/mpc85xx

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 04:31:41 UTC 2014

Modified Files:
src/sys/arch/evbppc/mpc85xx: machdep.c

Log Message:
do page recolor.


To generate a diff of this commit:
cvs rdiff -u -r1.35 -r1.36 src/sys/arch/evbppc/mpc85xx/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/evbppc/mpc85xx/machdep.c
diff -u src/sys/arch/evbppc/mpc85xx/machdep.c:1.35 src/sys/arch/evbppc/mpc85xx/machdep.c:1.36
--- src/sys/arch/evbppc/mpc85xx/machdep.c:1.35	Fri Dec 19 04:15:36 2014
+++ src/sys/arch/evbppc/mpc85xx/machdep.c	Fri Dec 19 04:31:41 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.35 2014/12/19 04:15:36 nonaka Exp $	*/
+/*	$NetBSD: machdep.c,v 1.36 2014/12/19 04:31:41 nonaka Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -639,6 +639,7 @@ cpu_probe_cache(void)
 {
 	struct cpu_info * const ci = curcpu();
 	const uint32_t l1cfg0 = mfspr(SPR_L1CFG0);
+	const int dcache_assoc = L1CFG_CNWAY_GET(l1cfg0);
 
 	ci->ci_ci.dcache_size = L1CFG_CSIZE_GET(l1cfg0);
 	ci->ci_ci.dcache_line_size = 32 << L1CFG_CBSIZE_GET(l1cfg0);
@@ -653,6 +654,11 @@ cpu_probe_cache(void)
 		ci->ci_ci.icache_line_size = ci->ci_ci.dcache_line_size;
 	}
 
+	/*
+	 * Possibly recolor.
+	 */
+	uvm_page_recolor(atop(curcpu()->ci_ci.dcache_size / dcache_assoc));
+
 #ifdef DEBUG
 	uint32_t l1csr0 = mfspr(SPR_L1CSR0);
 	if ((L1CSR_CE & l1csr0) == 0)



CVS commit: src/sys/uvm/pmap

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 04:25:52 UTC 2014

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

Log Message:
Initialize pmap->pm_active and pmap->pm_onproc.
Avoid "panic: kernel diagnostic assertion "!pmap_tlb_intersecting_onproc_p(pm, 
ti)" failed: file "/usr/src/sys/uvm/pmap/pmap_tlb.c", line 762".


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/uvm/pmap/pmap.c

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

Modified files:

Index: src/sys/uvm/pmap/pmap.c
diff -u src/sys/uvm/pmap/pmap.c:1.4 src/sys/uvm/pmap/pmap.c:1.5
--- src/sys/uvm/pmap/pmap.c:1.4	Tue Feb 25 15:20:29 2014
+++ src/sys/uvm/pmap/pmap.c	Fri Dec 19 04:25:52 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.c,v 1.4 2014/02/25 15:20:29 martin Exp $	*/
+/*	$NetBSD: pmap.c,v 1.5 2014/12/19 04:25:52 nonaka Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2001 The NetBSD Foundation, Inc.
@@ -67,7 +67,7 @@
 
 #include 
 
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.4 2014/02/25 15:20:29 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.5 2014/12/19 04:25:52 nonaka Exp $");
 
 /*
  *	Manages physical address maps.
@@ -511,6 +511,11 @@ pmap_create(void)
 
 	pmap_segtab_init(pmap);
 
+#ifdef MULTIPROCESSOR
+	kcpuset_create(&pmap->pm_active, true);
+	kcpuset_create(&pmap->pm_onproc, true);
+#endif
+
 	UVMHIST_LOG(pmaphist, "<- pmap %p", pmap,0,0,0);
 	return pmap;
 }



CVS commit: src/sys/arch/evbppc/mpc85xx

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 04:15:37 UTC 2014

Modified Files:
src/sys/arch/evbppc/mpc85xx: machdep.c

Log Message:
Do probe cpu cache on !cpu0.
Avoid "panic: kernel diagnostic assertion "line_size > 0" failed: file 
"/usr/src/sys/arch/powerpc/booke/booke_cache.c", line 90".


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/sys/arch/evbppc/mpc85xx/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/evbppc/mpc85xx/machdep.c
diff -u src/sys/arch/evbppc/mpc85xx/machdep.c:1.34 src/sys/arch/evbppc/mpc85xx/machdep.c:1.35
--- src/sys/arch/evbppc/mpc85xx/machdep.c:1.34	Fri Dec 19 04:07:13 2014
+++ src/sys/arch/evbppc/mpc85xx/machdep.c	Fri Dec 19 04:15:36 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.34 2014/12/19 04:07:13 nonaka Exp $	*/
+/*	$NetBSD: machdep.c,v 1.35 2014/12/19 04:15:36 nonaka Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -983,6 +983,7 @@ e500_cpu_hatch(struct cpu_info *ci)
 
 	intr_cpu_hatch(ci);
 
+	cpu_probe_cache();
 	cpu_print_info(ci);
 
 /*



CVS commit: src/sys/arch/powerpc/booke

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 04:00:35 UTC 2014

Modified Files:
src/sys/arch/powerpc/booke: e500_intr.c

Log Message:
Pass ci->ci_cpuid as irq of IST_IPI.
Avoid "panic: e500_intr_cpu_hatch: failed to establish ipi interrupt!" on cpu1.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/booke/e500_intr.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/powerpc/booke/e500_intr.c
diff -u src/sys/arch/powerpc/booke/e500_intr.c:1.25 src/sys/arch/powerpc/booke/e500_intr.c:1.26
--- src/sys/arch/powerpc/booke/e500_intr.c:1.25	Fri Dec 19 03:51:38 2014
+++ src/sys/arch/powerpc/booke/e500_intr.c	Fri Dec 19 04:00:35 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: e500_intr.c,v 1.25 2014/12/19 03:51:38 nonaka Exp $	*/
+/*	$NetBSD: e500_intr.c,v 1.26 2014/12/19 04:00:35 nonaka Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -39,7 +39,7 @@
 #define __INTR_PRIVATE
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: e500_intr.c,v 1.25 2014/12/19 03:51:38 nonaka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: e500_intr.c,v 1.26 2014/12/19 04:00:35 nonaka Exp $");
 
 #include 
 #include 
@@ -1205,7 +1205,7 @@ e500_intr_cpu_send_ipi(cpuid_t target, u
 			atomic_or_32(&dst_ci->ci_pending_ipis, ipimsg);
 	}
 
-	openpic_write(cpu, OPENPIC_IPIDR(0), dstmask);
+	openpic_write(cpu, OPENPIC_IPIDR(target), dstmask);
 }
 
 typedef void (*ipifunc_t)(void);
@@ -1260,8 +1260,8 @@ e500_intr_cpu_hatch(struct cpu_info *ci)
 	/*
 	 * Establish the IPI interrupts for this CPU.
 	 */
-	if (e500_intr_cpu_establish(ci, 0, IPL_VM, IST_IPI, e500_ipi_intr,
-	NULL) == NULL)
+	if (e500_intr_cpu_establish(ci, ci->ci_cpuid, IPL_VM, IST_IPI,
+	e500_ipi_intr, NULL) == NULL)
 		panic("%s: failed to establish ipi interrupt!", __func__);
 
 	/*



CVS commit: src/sys/arch/evbppc/mpc85xx

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 04:07:13 UTC 2014

Modified Files:
src/sys/arch/evbppc/mpc85xx: machdep.c

Log Message:
Increase timeout for the hatching to complete.

> cpu1: hatch successful (24321 spins, timebase adjusted by -940718014)


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 src/sys/arch/evbppc/mpc85xx/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/evbppc/mpc85xx/machdep.c
diff -u src/sys/arch/evbppc/mpc85xx/machdep.c:1.33 src/sys/arch/evbppc/mpc85xx/machdep.c:1.34
--- src/sys/arch/evbppc/mpc85xx/machdep.c:1.33	Mon Aug  4 23:31:36 2014
+++ src/sys/arch/evbppc/mpc85xx/machdep.c	Fri Dec 19 04:07:13 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: machdep.c,v 1.33 2014/08/04 23:31:36 joerg Exp $	*/
+/*	$NetBSD: machdep.c,v 1.34 2014/12/19 04:07:13 nonaka Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -939,15 +939,15 @@ e500_cpu_spinup(device_t self, struct cp
 + (uint64_t)h->hatch_tbl),
 			h->hatch_running);
 			/*
-			 * Now we wait for the hatching to complete.  10ms
+			 * Now we wait for the hatching to complete.  30ms
 			 * should be long enough.
 			 */
-			for (u_int timo = 1; timo-- > 0; ) {
+			for (u_int timo = 3; timo-- > 0; ) {
 if (kcpuset_isset(hatchlings, id)) {
 	aprint_normal_dev(self,
 	"hatch successful (%u spins, "
 	"timebase adjusted by %"PRId64")\n",
-	1 - timo,
+	3 - timo,
 	(int64_t)
 		(((uint64_t)h->hatch_tbu << 32)
 		+ (uint64_t)h->hatch_tbl));



CVS commit: src/sys/arch/powerpc/booke

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 03:51:38 UTC 2014

Modified Files:
src/sys/arch/powerpc/booke: e500_intr.c

Log Message:
Added missing mutex_exit() at error path.


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/booke/e500_intr.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/powerpc/booke/e500_intr.c
diff -u src/sys/arch/powerpc/booke/e500_intr.c:1.24 src/sys/arch/powerpc/booke/e500_intr.c:1.25
--- src/sys/arch/powerpc/booke/e500_intr.c:1.24	Mon May 19 22:47:53 2014
+++ src/sys/arch/powerpc/booke/e500_intr.c	Fri Dec 19 03:51:38 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: e500_intr.c,v 1.24 2014/05/19 22:47:53 rmind Exp $	*/
+/*	$NetBSD: e500_intr.c,v 1.25 2014/12/19 03:51:38 nonaka Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -39,7 +39,7 @@
 #define __INTR_PRIVATE
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: e500_intr.c,v 1.24 2014/05/19 22:47:53 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: e500_intr.c,v 1.25 2014/12/19 03:51:38 nonaka Exp $");
 
 #include 
 #include 
@@ -713,8 +713,10 @@ e500_intr_cpu_establish(struct cpu_info 
 
 	struct intr_source * const is = &e500_intr_sources[ii.irq_vector];
 	mutex_enter(&e500_intr_lock);
-	if (is->is_ipl != IPL_NONE)
+	if (is->is_ipl != IPL_NONE) {
+		mutex_exit(&e500_intr_lock);
 		return NULL;
+	}
 
 	is->is_func = handler;
 	is->is_arg = arg;



CVS commit: src/sys/arch/powerpc/booke

2014-12-18 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Dec 19 03:46:23 UTC 2014

Modified Files:
src/sys/arch/powerpc/booke: e500_mpsubr.S

Log Message:
Set correct stack pointer.
Please handle %r0 with care.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/powerpc/booke/e500_mpsubr.S

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

Modified files:

Index: src/sys/arch/powerpc/booke/e500_mpsubr.S
diff -u src/sys/arch/powerpc/booke/e500_mpsubr.S:1.3 src/sys/arch/powerpc/booke/e500_mpsubr.S:1.4
--- src/sys/arch/powerpc/booke/e500_mpsubr.S:1.3	Tue Nov 27 19:24:46 2012
+++ src/sys/arch/powerpc/booke/e500_mpsubr.S	Fri Dec 19 03:46:23 2014
@@ -278,8 +278,8 @@ ENTRY_NOPROFILE(e500_spinup_trampoline)
 	/*
 	 * Now we can use our stack...
 	 */
-	lwz	%r0, CI_CURPCB(%r21)
-	lwz	%r1, PCB_SP(%r0)
+	lwz	%r3, CI_CURPCB(%r21)
+	lwz	%r1, PCB_SP(%r3)
 
 	li	%r0, 12
 	stw	%r0, HATCH_RUNNING(%r20)	/* progress */



CVS commit: src/sys/arch/vax/vsa

2014-12-18 Thread John Klos
Module Name:src
Committed By:   jklos
Date:   Thu Dec 18 22:46:53 UTC 2014

Modified Files:
src/sys/arch/vax/vsa: lcg.c

Log Message:
Add small fix from Björn Johannessonwhich makes framebuffer woth with X11.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/vax/vsa/lcg.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/vax/vsa/lcg.c
diff -u src/sys/arch/vax/vsa/lcg.c:1.1 src/sys/arch/vax/vsa/lcg.c:1.2
--- src/sys/arch/vax/vsa/lcg.c:1.1	Tue Dec 16 11:34:17 2014
+++ src/sys/arch/vax/vsa/lcg.c	Thu Dec 18 22:46:53 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: lcg.c,v 1.1 2014/12/16 11:34:17 jklos Exp $ */
+/*	$NetBSD: lcg.c,v 1.2 2014/12/18 22:46:53 jklos Exp $ */
 /*
  * LCG accelerated framebuffer driver
  * Copyright (c) 2003, 2004 Blaz Antonic
@@ -34,7 +34,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: lcg.c,v 1.1 2014/12/16 11:34:17 jklos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lcg.c,v 1.2 2014/12/18 22:46:53 jklos Exp $");
 
 #define LCG_NO_ACCEL
 
@@ -710,6 +710,10 @@ lcg_ioctl(void *v, void *vs, u_long cmd,
 		fb->cmsize = 1 << lcg_depth;
 		break;
 
+	case WSDISPLAYIO_LINEBYTES:
+		*(u_int *)data = lcg_xsize;
+		break;
+
 	case WSDISPLAYIO_GETCMAP:
 		return lcg_get_cmap((struct wsdisplay_cmap *)data);
 



CVS commit: src/share/man/man5

2014-12-18 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Thu Dec 18 17:10:42 UTC 2014

Modified Files:
src/share/man/man5: ifconfig.if.5

Log Message:
Remove redundant configuration snippet for dhclient and rtsol as dhcpcd will 
happily supply both needs.


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 src/share/man/man5/ifconfig.if.5

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/man5/ifconfig.if.5
diff -u src/share/man/man5/ifconfig.if.5:1.16 src/share/man/man5/ifconfig.if.5:1.17
--- src/share/man/man5/ifconfig.if.5:1.16	Tue Oct  2 09:18:59 2012
+++ src/share/man/man5/ifconfig.if.5	Thu Dec 18 17:10:42 2014
@@ -1,4 +1,4 @@
-.\"	$NetBSD: ifconfig.if.5,v 1.16 2012/10/02 09:18:59 roy Exp $
+.\"	$NetBSD: ifconfig.if.5,v 1.17 2014/12/18 17:10:42 roy Exp $
 .\"
 .\" Copyright (c) 1996 Matthew R. Green
 .\" All rights reserved.
@@ -24,7 +24,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd October 2, 2012
+.Dd December 18 2014
 .Dt IFCONFIG.IF 5
 .Os
 .Sh NAME
@@ -119,18 +119,6 @@ inet6 2001:db8::1 prefixlen 64 alias
 inet6 2001:db8:: prefixlen 64 alias anycast
 .Ed
 .Pp
-The following illustrates dynamic configuration setup with
-.Xr dhclient 8
-and
-.Xr rtsol 8 :
-.Bd -literal -offset indent
-up
-# autoconfigure IPv4 address
-!dhclient $int
-# autoconfigure IPv6 address.  Be sure to set $ip6mode to autohost.
-!rtsol $int
-.Ed
-.Pp
 The following example sets a network name for a wireless interface
 (using quotes to protect special characters in the name),
 and starts



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

2014-12-18 Thread matthew green
Module Name:src
Committed By:   mrg
Date:   Thu Dec 18 10:08:52 UTC 2014

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

Log Message:
fix build problem with radeon_*.c files.


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.20 src/external/mit/xorg/lib/dri/Makefile

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

Modified files:

Index: src/external/mit/xorg/lib/dri/Makefile
diff -u src/external/mit/xorg/lib/dri/Makefile:1.19 src/external/mit/xorg/lib/dri/Makefile:1.20
--- src/external/mit/xorg/lib/dri/Makefile:1.19	Thu Dec 18 06:24:28 2014
+++ src/external/mit/xorg/lib/dri/Makefile	Thu Dec 18 10:08:52 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.19 2014/12/18 06:24:28 mrg Exp $
+# $NetBSD: Makefile,v 1.20 2014/12/18 10:08:52 mrg Exp $
 
 # Link the mesa_dri_drivers mega driver.
 
@@ -295,13 +295,15 @@ R200_RADEON_FILES= \
 	radeon_screen.c
 
 .for _f in ${R200_RADEON_FILES}
-BUILDSYMLINKS+=		${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r200/${_f} r200_${_f}
+BUILDSYMLINKS+=		${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon/${_f} r200_${_f}
 DRI_SOURCES.r200+=	r200_${_f}
 .endfor
 
 .for _f in ${DRI_SOURCES.r200}
 CPPFLAGS.${_f} +=	-I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r200/server \
 			-I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r200 \
+			-I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon/server \
+			-I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon \
 			-DRADEON_R200
 .endfor
 



CVS commit: src/distrib/sets/lists/xdebug

2014-12-18 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Thu Dec 18 10:02:17 UTC 2014

Modified Files:
src/distrib/sets/lists/xdebug: mi

Log Message:
kms_swrast is a symlink to the gallium.so now and doesn't get a debug file
installed - maybe that is a bug in the gallium reach over makefile, but
for now remove it from sets, so the build can work.


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/distrib/sets/lists/xdebug/mi

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

Modified files:

Index: src/distrib/sets/lists/xdebug/mi
diff -u src/distrib/sets/lists/xdebug/mi:1.9 src/distrib/sets/lists/xdebug/mi:1.10
--- src/distrib/sets/lists/xdebug/mi:1.9	Thu Dec 18 06:24:28 2014
+++ src/distrib/sets/lists/xdebug/mi	Thu Dec 18 10:02:17 2014
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.9 2014/12/18 06:24:28 mrg Exp $
+# $NetBSD: mi,v 1.10 2014/12/18 10:02:17 martin Exp $
 ./etc/mtree/set.xdebug	comp-sys-root
 ./usr/X11R6/lib/libFS_g.a-unknown-	debuglib,x11
 ./usr/X11R6/lib/libGLU_g.a-unknown-	debuglib,x11
@@ -408,4 +408,3 @@
 ./usr/libdata/debug/usr/X11R7/bin/xwud.debug		-unknown-	debug,xorg
 ./usr/libdata/debug/usr/X11R7/libexec/chooser.debug	-unknown-	debug,xorg
 ./usr/libdata/debug/usr/X11R7/lib/modules/dri/gallium_dri.so.0.debug	-unknown-		debug,xorg
-./usr/libdata/debug/usr/X11R7/lib/modules/dri/kms_swrast_dri.so.0.debug	-unknown-		debug,xorg