CVS commit: [netbsd-8] src/usr.bin/tr

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:02:59 UTC 2018

Modified Files:
src/usr.bin/tr [netbsd-8]: str.c

Log Message:
Pull up following revision(s) (requested by leot in ticket #850):

usr.bin/tr/str.c: revision 1.30

Do not accept invalid octal character values (>= 0400).

This also avoid possible stack corruption (e.g. previously `tr -s '\400'' or
similars lead to them).

Reviewed and thanks to !


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.29.18.1 src/usr.bin/tr/str.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/tr/str.c
diff -u src/usr.bin/tr/str.c:1.29 src/usr.bin/tr/str.c:1.29.18.1
--- src/usr.bin/tr/str.c:1.29	Sun Aug 11 01:54:35 2013
+++ src/usr.bin/tr/str.c	Fri Jun  8 10:02:59 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: str.c,v 1.29 2013/08/11 01:54:35 dholland Exp $	*/
+/*	$NetBSD: str.c,v 1.29.18.1 2018/06/08 10:02:59 martin Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = "@(#)str.c	8.2 (Berkeley) 4/28/95";
 #endif
-__RCSID("$NetBSD: str.c,v 1.29 2013/08/11 01:54:35 dholland Exp $");
+__RCSID("$NetBSD: str.c,v 1.29.18.1 2018/06/08 10:02:59 martin Exp $");
 #endif /* not lint */
 
 #include 
@@ -417,6 +417,8 @@ backslash(STR *s)
 	}
 	if (cnt) {
 		/* We saw digits, so return their value */
+		if (val >= OOBCH)
+			errx(1, "Invalid octal character value");
 		return val;
 	}
 	if (ch == '\0') {



CVS commit: [netbsd-8] src/sys/external/bsd/drm2/nouveau

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:08:06 UTC 2018

Modified Files:
src/sys/external/bsd/drm2/nouveau [netbsd-8]: nouveau_pci.c

Log Message:
Pull up following revision(s) (requested by mrg in ticket #851):

sys/external/bsd/drm2/nouveau/nouveau_pci.c: revision 1.9-1.11

disable drm2 on modern nouveau cards (Pascal-based).

our older drm doesn't have any support for modern Pascal or
the second version of Maxwell (but not disabled here yet)
but the driver tries to attach on any nvidia gpu.
this should workaround PR#53258, and other issues reported
with modern nvidia chipsets.

XXX: pullup-7, pullup-8.

-

disable matching nouveau on pascal and the second generation of maxwell
cards that are not supported by this version of drm.
this should fix various modern systems vs nvidia issues, eg PR 53188.

XXX: pullup-7, pullup-8.

 -

the previous change doubled the check for pascal.  fix it so
that we only check for later maxwell and pascal once each,
as intended.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.8.10.1 src/sys/external/bsd/drm2/nouveau/nouveau_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/external/bsd/drm2/nouveau/nouveau_pci.c
diff -u src/sys/external/bsd/drm2/nouveau/nouveau_pci.c:1.8 src/sys/external/bsd/drm2/nouveau/nouveau_pci.c:1.8.10.1
--- src/sys/external/bsd/drm2/nouveau/nouveau_pci.c:1.8	Tue Apr 19 06:57:37 2016
+++ src/sys/external/bsd/drm2/nouveau/nouveau_pci.c	Fri Jun  8 10:08:06 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nouveau_pci.c,v 1.8 2016/04/19 06:57:37 mrg Exp $	*/
+/*	$NetBSD: nouveau_pci.c,v 1.8.10.1 2018/06/08 10:08:06 martin Exp $	*/
 
 /*-
  * Copyright (c) 2015 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: nouveau_pci.c,v 1.8 2016/04/19 06:57:37 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nouveau_pci.c,v 1.8.10.1 2018/06/08 10:08:06 martin Exp $");
 
 #include 
 #include 
@@ -91,6 +91,36 @@ nouveau_pci_match(device_t parent, cfdat
 	if (PCI_CLASS(pa->pa_class) != PCI_CLASS_DISPLAY)
 		return 0;
 
+#define IS_BETWEEN(x,y) \
+	(PCI_PRODUCT(pa->pa_id) >= (x) && PCI_PRODUCT(pa->pa_id) <= (y))
+	/*
+	 * NetBSD drm2 needs missing-so-far firmware for Maxwell-based cards:
+	 *   0x1380-0x13bf 	GM107
+	 */
+	if (IS_BETWEEN(0x1380, 0x13bf))
+		return 0;
+
+	/*
+	 * NetBSD drm2 doesn't support Pascal-based cards:
+	 *   0x1580-0x15ff 	GP100
+	 *   0x1b00-0x1b7f 	GP102
+	 *   0x1b80-0x1bff 	GP104
+	 *   0x1c00-0x1c7f 	GP106
+	 *   0x1c80-0x1cff 	GP107
+	 *   0x1d00-0x1d7f 	GP108
+	 *   0x1d80-0x1dff 	GV100
+	 */
+	
+	if (IS_BETWEEN(0x1580, 0x15ff) ||
+	IS_BETWEEN(0x1b00, 0x1b7f) ||
+	IS_BETWEEN(0x1b80, 0x1bff) ||
+	IS_BETWEEN(0x1c00, 0x1c7f) ||
+	IS_BETWEEN(0x1c80, 0x1cff) ||
+	IS_BETWEEN(0x1d00, 0x1d7f) ||
+	IS_BETWEEN(0x1d80, 0x1dff))
+		return 0;
+#undef IS_BETWEEN
+
 	return 6;		/* XXX Beat genfb_pci...  */
 }
 



CVS commit: [netbsd-8] src/sys

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:14:33 UTC 2018

Modified Files:
src/sys/net [netbsd-8]: route.c
src/sys/netinet [netbsd-8]: ip_icmp.c
src/sys/netinet6 [netbsd-8]: icmp6.c

Log Message:
Pull up following revision(s) (requested by ozaki-r in ticket #852):

sys/netinet6/icmp6.c: revision 1.238
sys/netinet/ip_icmp.c: revision 1.171
sys/net/route.c: revision 1.210

Fix _rt_free via rtrequest(RTM_DELETE) hangs in rt_timer handlers

A rt_timer handler is passed a rtentry with an extra reference that avoids the
rtentry is accidentally released.  So rt_timer handers must release
the reference of a passed rtentry by themselves (but they didn't).


To generate a diff of this commit:
cvs rdiff -u -r1.194.6.9 -r1.194.6.10 src/sys/net/route.c
cvs rdiff -u -r1.161.6.1 -r1.161.6.2 src/sys/netinet/ip_icmp.c
cvs rdiff -u -r1.211.6.5 -r1.211.6.6 src/sys/netinet6/icmp6.c

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

Modified files:

Index: src/sys/net/route.c
diff -u src/sys/net/route.c:1.194.6.9 src/sys/net/route.c:1.194.6.10
--- src/sys/net/route.c:1.194.6.9	Sat Apr 14 10:16:19 2018
+++ src/sys/net/route.c	Fri Jun  8 10:14:33 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: route.c,v 1.194.6.9 2018/04/14 10:16:19 martin Exp $	*/
+/*	$NetBSD: route.c,v 1.194.6.10 2018/06/08 10:14:33 martin Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2008 The NetBSD Foundation, Inc.
@@ -97,7 +97,7 @@
 #endif
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: route.c,v 1.194.6.9 2018/04/14 10:16:19 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: route.c,v 1.194.6.10 2018/06/08 10:14:33 martin Exp $");
 
 #include 
 #ifdef RTFLUSH_DEBUG
@@ -1959,7 +1959,12 @@ rt_timer_work(struct work *wk, void *arg
 		(r->rtt_time + rtq->rtq_timeout) < time_uptime) {
 			LIST_REMOVE(r, rtt_link);
 			TAILQ_REMOVE(&rtq->rtq_head, r, rtt_next);
-			rt_ref(r->rtt_rt); /* XXX */
+			/*
+			 * Take a reference to avoid the rtentry is freed
+			 * accidentally after RT_UNLOCK.  The callback
+			 * (rtt_func) must rt_unref it by itself.
+			 */
+			rt_ref(r->rtt_rt);
 			RT_REFCNT_TRACE(r->rtt_rt);
 			RT_UNLOCK();
 			(*r->rtt_func)(r->rtt_rt, r);

Index: src/sys/netinet/ip_icmp.c
diff -u src/sys/netinet/ip_icmp.c:1.161.6.1 src/sys/netinet/ip_icmp.c:1.161.6.2
--- src/sys/netinet/ip_icmp.c:1.161.6.1	Sat Mar 31 10:38:53 2018
+++ src/sys/netinet/ip_icmp.c	Fri Jun  8 10:14:33 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: ip_icmp.c,v 1.161.6.1 2018/03/31 10:38:53 martin Exp $	*/
+/*	$NetBSD: ip_icmp.c,v 1.161.6.2 2018/06/08 10:14:33 martin Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -94,7 +94,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: ip_icmp.c,v 1.161.6.1 2018/03/31 10:38:53 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ip_icmp.c,v 1.161.6.2 2018/06/08 10:14:33 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ipsec.h"
@@ -1310,6 +1310,7 @@ ip_next_mtu(u_int mtu, int dir)	/* XXX *
 static void
 icmp_mtudisc_timeout(struct rtentry *rt, struct rttimer *r)
 {
+	struct rtentry *retrt;
 
 	KASSERT(rt != NULL);
 	rt_assert_referenced(rt);
@@ -1317,7 +1318,9 @@ icmp_mtudisc_timeout(struct rtentry *rt,
 	if ((rt->rt_flags & (RTF_DYNAMIC | RTF_HOST)) ==
 	(RTF_DYNAMIC | RTF_HOST)) {
 		rtrequest(RTM_DELETE, rt_getkey(rt),
-		rt->rt_gateway, rt_mask(rt), rt->rt_flags, NULL);
+		rt->rt_gateway, rt_mask(rt), rt->rt_flags, &retrt);
+		rt_unref(rt);
+		rt_free(retrt);
 	} else {
 		if ((rt->rt_rmx.rmx_locks & RTV_MTU) == 0) {
 			rt->rt_rmx.rmx_mtu = 0;
@@ -1328,6 +1331,7 @@ icmp_mtudisc_timeout(struct rtentry *rt,
 static void
 icmp_redirect_timeout(struct rtentry *rt, struct rttimer *r)
 {
+	struct rtentry *retrt;
 
 	KASSERT(rt != NULL);
 	rt_assert_referenced(rt);
@@ -1335,7 +1339,9 @@ icmp_redirect_timeout(struct rtentry *rt
 	if ((rt->rt_flags & (RTF_DYNAMIC | RTF_HOST)) ==
 	(RTF_DYNAMIC | RTF_HOST)) {
 		rtrequest(RTM_DELETE, rt_getkey(rt),
-		rt->rt_gateway, rt_mask(rt), rt->rt_flags, NULL);
+		rt->rt_gateway, rt_mask(rt), rt->rt_flags, &retrt);
+		rt_unref(rt);
+		rt_free(retrt);
 	}
 }
 

Index: src/sys/netinet6/icmp6.c
diff -u src/sys/netinet6/icmp6.c:1.211.6.5 src/sys/netinet6/icmp6.c:1.211.6.6
--- src/sys/netinet6/icmp6.c:1.211.6.5	Mon Apr  9 13:34:10 2018
+++ src/sys/netinet6/icmp6.c	Fri Jun  8 10:14:33 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: icmp6.c,v 1.211.6.5 2018/04/09 13:34:10 bouyer Exp $	*/
+/*	$NetBSD: icmp6.c,v 1.211.6.6 2018/06/08 10:14:33 martin Exp $	*/
 /*	$KAME: icmp6.c,v 1.217 2001/06/20 15:03:29 jinmei Exp $	*/
 
 /*
@@ -62,7 +62,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: icmp6.c,v 1.211.6.5 2018/04/09 13:34:10 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: icmp6.c,v 1.211.6.6 2018/06/08 10:14:33 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -2872,6 +2872,7 @@ icmp6_mtudisc_clone(struct sockaddr *dst
 static void
 icmp6_mtudisc_timeout(struct rtentry *r

CVS commit: [netbsd-8] src/external/bsd/dhcp/dist/common

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:18:36 UTC 2018

Modified Files:
src/external/bsd/dhcp/dist/common [netbsd-8]: bpf.c

Log Message:
Pull up following revision(s) (requested by maya in ticket #854):

external/mpl/dhcp/dist/common/bpf.c: revision 1.3

PR/50893: Bruce Lilly: Handle carp interfaces.
XXX: pullup-8 (in src/external/bsd/dhcp/dist/common/bpf.c)


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.4.8.1 src/external/bsd/dhcp/dist/common/bpf.c

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

Modified files:

Index: src/external/bsd/dhcp/dist/common/bpf.c
diff -u src/external/bsd/dhcp/dist/common/bpf.c:1.4 src/external/bsd/dhcp/dist/common/bpf.c:1.4.8.1
--- src/external/bsd/dhcp/dist/common/bpf.c:1.4	Sun Jan 10 20:10:44 2016
+++ src/external/bsd/dhcp/dist/common/bpf.c	Fri Jun  8 10:18:36 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: bpf.c,v 1.4 2016/01/10 20:10:44 christos Exp $	*/
+/*	$NetBSD: bpf.c,v 1.4.8.1 2018/06/08 10:18:36 martin Exp $	*/
 /* bpf.c
 
BPF socket interface code, originally contributed by Archie Cobbs. */
@@ -35,7 +35,7 @@
  */
 
 #include 
-__RCSID("$NetBSD: bpf.c,v 1.4 2016/01/10 20:10:44 christos Exp $");
+__RCSID("$NetBSD: bpf.c,v 1.4.8.1 2018/06/08 10:18:36 martin Exp $");
 
 #include "dhcpd.h"
 #if defined (USE_BPF_SEND) || defined (USE_BPF_RECEIVE)	\
@@ -623,6 +623,9 @@ get_hw_addr(const char *name, struct har
 	 */
 switch (sa->sdl_type) {
 case IFT_ETHER:
+#ifdef IFT_CARP
+		case IFT_CARP:
+#endif
 #if defined (IFT_L2VLAN)
 		case IFT_L2VLAN:
 #endif



CVS commit: [netbsd-8] src/sbin/fsck_lfs

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:21:12 UTC 2018

Modified Files:
src/sbin/fsck_lfs [netbsd-8]: bufcache.c bufcache.h

Log Message:
Pull up following revision(s) (requested by maya in ticket #855):

sbin/fsck_lfs/bufcache.h: revision 1.14
sbin/fsck_lfs/bufcache.c: revision 1.20

PR/51418: Jose Luis Rodriguez Garcia: Fix incore src/sbin/fsck_lfs/bufcache.c
XXX: pullup-8, pullup-7


To generate a diff of this commit:
cvs rdiff -u -r1.19 -r1.19.6.1 src/sbin/fsck_lfs/bufcache.c
cvs rdiff -u -r1.13 -r1.13.6.1 src/sbin/fsck_lfs/bufcache.h

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

Modified files:

Index: src/sbin/fsck_lfs/bufcache.c
diff -u src/sbin/fsck_lfs/bufcache.c:1.19 src/sbin/fsck_lfs/bufcache.c:1.19.6.1
--- src/sbin/fsck_lfs/bufcache.c:1.19	Thu Aug 25 07:43:18 2016
+++ src/sbin/fsck_lfs/bufcache.c	Fri Jun  8 10:21:12 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: bufcache.c,v 1.19 2016/08/25 07:43:18 christos Exp $ */
+/* $NetBSD: bufcache.c,v 1.19.6.1 2018/06/08 10:21:12 martin Exp $ */
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -191,7 +191,7 @@ bremfree(struct ubuf * bp)
 
 /* Return a buffer if it is in the cache, otherwise return NULL. */
 struct ubuf *
-incore(struct uvnode * vp, int lbn)
+incore(struct uvnode * vp, daddr_t lbn)
 {
 	struct ubuf *bp;
 	int hash, depth;

Index: src/sbin/fsck_lfs/bufcache.h
diff -u src/sbin/fsck_lfs/bufcache.h:1.13 src/sbin/fsck_lfs/bufcache.h:1.13.6.1
--- src/sbin/fsck_lfs/bufcache.h:1.13	Thu Aug 18 08:08:02 2016
+++ src/sbin/fsck_lfs/bufcache.h	Fri Jun  8 10:21:12 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: bufcache.h,v 1.13 2016/08/18 08:08:02 christos Exp $	*/
+/*	$NetBSD: bufcache.h,v 1.13.6.1 2018/06/08 10:21:12 martin Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000 The NetBSD Foundation, Inc.
@@ -115,7 +115,7 @@ void bufrehash(int);
 void bufstats(void);
 void buf_destroy(struct ubuf *);
 void bremfree(struct ubuf *);
-struct ubuf *incore(struct uvnode *, int);
+struct ubuf *incore(struct uvnode *, daddr_t);
 struct ubuf *getblk(struct uvnode *, daddr_t, int);
 void bwrite(struct ubuf *);
 void brelse(struct ubuf *, int);



CVS commit: [netbsd-8] src/sys/nfs

2018-06-08 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Jun  8 10:25:23 UTC 2018

Modified Files:
src/sys/nfs [netbsd-8]: nfs.h nfs_clntsocket.c nfs_socket.c nfs_subs.c

Log Message:
Pull up following revision(s) (requested by maya in ticket #856):

sys/nfs/nfs.h: revision 1.76
sys/nfs/nfs_subs.c: revision 1.230
sys/nfs/nfs_socket.c: revision 1.199
sys/nfs/nfs_clntsocket.c: revision 1.6

PR/40491: From Tobias Ulmer in tech-kern@:
1. Protect the nfs request queue with its own mutex
2. make the nfs_receive queue check for signals so that intr mounts
   can be interrupted.

XXX: pullup-8


To generate a diff of this commit:
cvs rdiff -u -r1.75 -r1.75.10.1 src/sys/nfs/nfs.h
cvs rdiff -u -r1.5 -r1.5.10.1 src/sys/nfs/nfs_clntsocket.c
cvs rdiff -u -r1.198 -r1.198.10.1 src/sys/nfs/nfs_socket.c
cvs rdiff -u -r1.229 -r1.229.6.1 src/sys/nfs/nfs_subs.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/nfs/nfs.h
diff -u src/sys/nfs/nfs.h:1.75 src/sys/nfs/nfs.h:1.75.10.1
--- src/sys/nfs/nfs.h:1.75	Mon Apr 20 13:12:24 2015
+++ src/sys/nfs/nfs.h	Fri Jun  8 10:25:23 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs.h,v 1.75 2015/04/20 13:12:24 riastradh Exp $	*/
+/*	$NetBSD: nfs.h,v 1.75.10.1 2018/06/08 10:25:23 martin Exp $	*/
 /*
  * Copyright (c) 1989, 1993, 1995
  *	The Regents of the University of California.  All rights reserved.
@@ -341,6 +341,7 @@ struct nfsreq {
  * Queue head for nfsreq's
  */
 extern TAILQ_HEAD(nfsreqhead, nfsreq) nfs_reqq;
+extern kmutex_t nfs_reqq_lock;
 
 /* Flag values for r_flags */
 #define R_TIMING	0x01		/* timing request (in mntp) */

Index: src/sys/nfs/nfs_clntsocket.c
diff -u src/sys/nfs/nfs_clntsocket.c:1.5 src/sys/nfs/nfs_clntsocket.c:1.5.10.1
--- src/sys/nfs/nfs_clntsocket.c:1.5	Fri Jun 17 14:28:29 2016
+++ src/sys/nfs/nfs_clntsocket.c	Fri Jun  8 10:25:23 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_clntsocket.c,v 1.5 2016/06/17 14:28:29 christos Exp $	*/
+/*	$NetBSD: nfs_clntsocket.c,v 1.5.10.1 2018/06/08 10:25:23 martin Exp $	*/
 
 /*
  * Copyright (c) 1989, 1991, 1993, 1995
@@ -39,7 +39,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: nfs_clntsocket.c,v 1.5 2016/06/17 14:28:29 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nfs_clntsocket.c,v 1.5.10.1 2018/06/08 10:25:23 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_nfs.h"
@@ -294,9 +294,11 @@ errout:
 			rcvflg = 0;
 			error =  (*so->so_receive)(so, getnam, &auio, mp,
 NULL, &rcvflg);
-			if (error == EWOULDBLOCK &&
-			(rep->r_flags & R_SOFTTERM))
-return (EINTR);
+			if (error == EWOULDBLOCK) {
+int intr = nfs_sigintr(rep->r_nmp, rep, l);
+if (intr)
+	error = intr;
+			}
 		} while (error == EWOULDBLOCK);
 		len -= auio.uio_resid;
 		if (!error && *mp == NULL)
@@ -403,6 +405,7 @@ nfsmout:
 		 * Iff no match, just drop the datagram
 		 */
 		s = splsoftnet();
+		mutex_enter(&nfs_reqq_lock);
 		TAILQ_FOREACH(rep, &nfs_reqq, r_chain) {
 			if (rep->r_mrep != NULL || rxid != rep->r_xid)
 continue;
@@ -468,6 +471,7 @@ nfsmout:
 			nmp->nm_timeouts = 0;
 			break;
 		}
+		mutex_exit(&nfs_reqq_lock);
 		splx(s);
 		nfs_rcvunlock(nmp);
 		/*
@@ -653,7 +657,9 @@ tryagain:
 	 * to put it LAST so timer finds oldest requests first.
 	 */
 	s = splsoftnet();
+	mutex_enter(&nfs_reqq_lock);
 	TAILQ_INSERT_TAIL(&nfs_reqq, rep, r_chain);
+	mutex_exit(&nfs_reqq_lock);
 	nfs_timer_start();
 
 	/*
@@ -695,7 +701,9 @@ tryagain:
 	 * RPC done, unlink the request.
 	 */
 	s = splsoftnet();
+	mutex_enter(&nfs_reqq_lock);
 	TAILQ_REMOVE(&nfs_reqq, rep, r_chain);
+	mutex_exit(&nfs_reqq_lock);
 
 	/*
 	 * Decrement the outstanding request count.

Index: src/sys/nfs/nfs_socket.c
diff -u src/sys/nfs/nfs_socket.c:1.198 src/sys/nfs/nfs_socket.c:1.198.10.1
--- src/sys/nfs/nfs_socket.c:1.198	Fri Jun 17 14:28:29 2016
+++ src/sys/nfs/nfs_socket.c	Fri Jun  8 10:25:23 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_socket.c,v 1.198 2016/06/17 14:28:29 christos Exp $	*/
+/*	$NetBSD: nfs_socket.c,v 1.198.10.1 2018/06/08 10:25:23 martin Exp $	*/
 
 /*
  * Copyright (c) 1989, 1991, 1993, 1995
@@ -39,7 +39,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: nfs_socket.c,v 1.198 2016/06/17 14:28:29 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nfs_socket.c,v 1.198.10.1 2018/06/08 10:25:23 martin Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_nfs.h"
@@ -166,6 +166,7 @@ int nfsrtton = 0;  
 struct nfsrtt nfsrtt;
 static const int nfs_backoff[8] = { 2, 4, 8, 16, 32, 64, 128, 256, };
 struct nfsreqhead nfs_reqq;
+kmutex_t nfs_reqq_lock;
 static callout_t nfs_timer_ch;
 static struct evcnt nfs_timer_ev;
 static struct evcnt nfs_timer_start_ev;
@@ -385,6 +386,7 @@ nfs_reconnect(struct nfsreq *rep)
 	 * on old socket.
 	 */
 	s = splsoftnet();
+	mutex_enter(&nfs_reqq_lock);
 	TAILQ_FOREACH(rp, &nfs_reqq, r_chain) {
 		if (rp->r_nmp == nmp) {
 			if ((rp->r_flags & R_MUSTRESEND) == 0)
@@ -392,6 +394,7 @@ nfs_reconnect(struct nfs

CVS commit: src/sys/dev/pci

2018-06-08 Thread Kengo NAKAHARA
Module Name:src
Committed By:   knakahara
Date:   Fri Jun  8 11:09:24 UTC 2018

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

Log Message:
Fix "ifconfig iwm0" failures reported by ryoon@n.o. Advised nonaka@n.o and 
ozaki-r@n.o, thanks.


To generate a diff of this commit:
cvs rdiff -u -r1.80 -r1.81 src/sys/dev/pci/if_iwm.c

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

Modified files:

Index: src/sys/dev/pci/if_iwm.c
diff -u src/sys/dev/pci/if_iwm.c:1.80 src/sys/dev/pci/if_iwm.c:1.81
--- src/sys/dev/pci/if_iwm.c:1.80	Wed Jun  6 01:49:08 2018
+++ src/sys/dev/pci/if_iwm.c	Fri Jun  8 11:09:24 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_iwm.c,v 1.80 2018/06/06 01:49:08 maya Exp $	*/
+/*	$NetBSD: if_iwm.c,v 1.81 2018/06/08 11:09:24 knakahara Exp $	*/
 /*	OpenBSD: if_iwm.c,v 1.148 2016/11/19 21:07:08 stsp Exp	*/
 #define IEEE80211_NO_HT
 /*
@@ -106,7 +106,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.80 2018/06/06 01:49:08 maya Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.81 2018/06/08 11:09:24 knakahara Exp $");
 
 #include 
 #include 
@@ -7762,6 +7762,11 @@ iwm_preinit(struct iwm_softc *sc)
 		ic->ic_sup_rates[IEEE80211_MODE_11A] = ieee80211_std_rateset_11a;
 
 	ether_ifdetach(ifp);
+	/*
+	 * XXX
+	 * ether_ifdetach() overwrites ifp->if_ioctl, so restore it here.
+	 */
+	ifp->if_ioctl = iwm_ioctl;
 	ieee80211_ifattach(ic);
 
 	ic->ic_node_alloc = iwm_node_alloc;



CVS commit: src/sys/dev/pci

2018-06-08 Thread Kengo NAKAHARA
Module Name:src
Committed By:   knakahara
Date:   Fri Jun  8 11:18:23 UTC 2018

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

Log Message:
iwm(4) workaround as ifp->if_hwdl can be set only once. Advised nonaka@n.o and 
ozaki-r@n.o, thanks.

To avoid for iwm(4) to set if_hwdl before loading firmware, use local address
as dummy. See sys/net/if.c::if_set_sadl().


To generate a diff of this commit:
cvs rdiff -u -r1.81 -r1.82 src/sys/dev/pci/if_iwm.c

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

Modified files:

Index: src/sys/dev/pci/if_iwm.c
diff -u src/sys/dev/pci/if_iwm.c:1.81 src/sys/dev/pci/if_iwm.c:1.82
--- src/sys/dev/pci/if_iwm.c:1.81	Fri Jun  8 11:09:24 2018
+++ src/sys/dev/pci/if_iwm.c	Fri Jun  8 11:18:23 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_iwm.c,v 1.81 2018/06/08 11:09:24 knakahara Exp $	*/
+/*	$NetBSD: if_iwm.c,v 1.82 2018/06/08 11:18:23 knakahara Exp $	*/
 /*	OpenBSD: if_iwm.c,v 1.148 2016/11/19 21:07:08 stsp Exp	*/
 #define IEEE80211_NO_HT
 /*
@@ -106,7 +106,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.81 2018/06/08 11:09:24 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.82 2018/06/08 11:18:23 knakahara Exp $");
 
 #include 
 #include 
@@ -8140,7 +8140,13 @@ iwm_attach(device_t parent, device_t sel
 #if 0
 	ieee80211_ifattach(ic);
 #else
-	ether_ifattach(ifp, NULL);	/* XXX */
+	/*
+	 * XXX
+	 * To avoid setting ifp->if_hwdl in if_set_sadl(), we fake
+	 *  ic->ic_myaddr as local address.
+	 */
+	ic->ic_myaddr[0] = 0x02;
+	ether_ifattach(ifp,  ic->ic_myaddr);	/* XXX */
 #endif
 	/* Use common softint-based if_input */
 	ifp->if_percpuq = if_percpuq_create(ifp);



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

2018-06-08 Thread NONAKA Kimihiro
Module Name:src
Committed By:   nonaka
Date:   Fri Jun  8 11:52:30 UTC 2018

Modified Files:
src/sys/arch/i386/stand/efiboot: efiboot.c

Log Message:
Remove unused include.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/i386/stand/efiboot/efiboot.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/stand/efiboot/efiboot.c
diff -u src/sys/arch/i386/stand/efiboot/efiboot.c:1.7 src/sys/arch/i386/stand/efiboot/efiboot.c:1.8
--- src/sys/arch/i386/stand/efiboot/efiboot.c:1.7	Wed Apr 11 10:32:09 2018
+++ src/sys/arch/i386/stand/efiboot/efiboot.c	Fri Jun  8 11:52:30 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: efiboot.c,v 1.7 2018/04/11 10:32:09 nonaka Exp $	*/
+/*	$NetBSD: efiboot.c,v 1.8 2018/06/08 11:52:30 nonaka Exp $	*/
 
 /*-
  * Copyright (c) 2016 Kimihiro Nonaka 
@@ -28,7 +28,6 @@
 
 #include "efiboot.h"
 
-#include "biosdisk_ll.h"
 #include "bootinfo.h"
 #include "devopen.h"
 



CVS commit: src/share/i18n/esdb/ISO-8859

2018-06-08 Thread Maya Rashish
Module Name:src
Committed By:   maya
Date:   Fri Jun  8 12:07:41 UTC 2018

Modified Files:
src/share/i18n/esdb/ISO-8859: ISO-8859.alias

Log Message:
Add more aliases for Hebrew and Arabic ISO-8859-... encodings.

ISO-8859-8 is supposed to be visual order (i.e. legible if displayed ltr)
ISO-8859-8-i is supposed to be implicit logic order
ISO-8859-8-e is supposed to be explicit about order

In practice, ISO-8859-8 implying visual order is rare, and logic
order is used. ISO-8859-8-e is rarely used.

Same for Arabic, which uses ISO-8859-6-...

Mentioned in RFC 1555, RFC 1556.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/share/i18n/esdb/ISO-8859/ISO-8859.alias

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

Modified files:

Index: src/share/i18n/esdb/ISO-8859/ISO-8859.alias
diff -u src/share/i18n/esdb/ISO-8859/ISO-8859.alias:1.3 src/share/i18n/esdb/ISO-8859/ISO-8859.alias:1.4
--- src/share/i18n/esdb/ISO-8859/ISO-8859.alias:1.3	Wed Dec 13 15:46:34 2006
+++ src/share/i18n/esdb/ISO-8859/ISO-8859.alias	Fri Jun  8 12:07:41 2018
@@ -1,13 +1,13 @@
-# $NetBSD: ISO-8859.alias,v 1.3 2006/12/13 15:46:34 tnozaki Exp $
+# $NetBSD: ISO-8859.alias,v 1.4 2018/06/08 12:07:41 maya Exp $
 
 1	iso-8859-1 iso8859-1 iso_8859-1:1987 iso-ir-100 iso_8859-1 latin1 l1 ibm819 cp819
 2	iso-8859-2 iso8859-2 iso_8859-2:1987 iso-ir-101 iso_8859-2 latin2 l2 ibm912 cp912
 3	iso-8859-3 iso8859-3 iso_8859-3:1988 iso-ir-109 iso_8859-3 latin3 l3 ibm913 cp913
 4	iso-8859-4 iso8859-4 iso_8859-4:1988 iso-ir-110 iso_8859-4 latin4 l4 ibm914 cp914
 5	iso-8859-5 iso8859-5 iso_8859-5:1988 iso-ir-144 iso_8859-5 cyrillic ibm915 cp915
-6	iso-8859-6 iso8859-6 iso_8859-6:1987 iso-ir-127 iso_8859-6 ecma-114 asmo-708 arabic ibm1089 cp1089
+6	iso-8859-6 iso-8859-6-i iso-8859-6-e iso8859-6 iso_8859-6:1987 iso-ir-127 iso_8859-6 ecma-114 asmo-708 arabic ibm1089 cp1089
 7	iso-8859-7 iso8859-7 iso_8859-7:1987 iso-ir-126 iso_8859-7 elot_928 ecma-118 greek greek8 ibm813 cp813
-8	iso-8859-8 iso8859-8 iso_8859-8:1988 iso-ir-138 iso_8859-8 hebrew ibm916 cp916
+8	iso-8859-8 iso-8859-8-i iso-8859-8-e iso8859-8 iso_8859-8:1988 iso-ir-138 iso_8859-8 hebrew ibm916 cp916
 9	iso-8859-9 iso8859-9 iso_8859-9:1989 iso-ir-148 iso_8859-9 latin5 l5 ibm920 cp920
 10	iso-8859-10 iso8859-10 iso_8859-10:1992 iso-ir-157 iso_8859-10 latin6 l6
 11	iso-8859-11 iso8859-11 iso_8859-11 iso-ir-166 tis620 tis620-0



CVS commit: src/etc/rc.d

2018-06-08 Thread Sevan Janiyan
Module Name:src
Committed By:   sevan
Date:   Fri Jun  8 14:44:21 UTC 2018

Modified Files:
src/etc/rc.d: mountall

Log Message:
Prior to ZFSv15, volinit was an undocumented command which could be used to
populate /dev with zvol device nodes.
Following on with the recent ZFS/DTrace update, this is no longer a valid option
and causes the mountall script to barf zfs usage() following from
unrecognized command 'volinit' error.


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/etc/rc.d/mountall

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

Modified files:

Index: src/etc/rc.d/mountall
diff -u src/etc/rc.d/mountall:1.9 src/etc/rc.d/mountall:1.10
--- src/etc/rc.d/mountall:1.9	Tue Jul 22 17:11:09 2014
+++ src/etc/rc.d/mountall	Fri Jun  8 14:44:21 2018
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $NetBSD: mountall,v 1.9 2014/07/22 17:11:09 wiz Exp $
+# $NetBSD: mountall,v 1.10 2018/06/08 14:44:21 sevan Exp $
 #
 
 # REQUIRE: mountcritremote named ypbind
@@ -18,8 +18,6 @@ mountall_start()
 	if [ -f /etc/zfs/zpool.cache ]; then
 		# Get ZFS module loaded (and thereby, zvols created).
 		zfs list > /dev/null 2>&1
-		# Initialize zvols so they can be mounted 
-		zfs volinit
 		# Mount file systems noted in fstab.
 		mount -a
 		# Mount ZFS file systems.



CVS commit: src/sys/arch

2018-06-08 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Fri Jun  8 18:09:43 UTC 2018

Modified Files:
src/sys/arch/aarch64/aarch64: bus_space.c
src/sys/arch/aarch64/include: pmap.h
src/sys/arch/arm/broadcom: bcm283x_platform.c

Log Message:
Provide bs_mmap implementations for bcm283x based boards.

PR: port-arm/53283
Submitted by:   Nick Hudson


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/aarch64/aarch64/bus_space.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/aarch64/include/pmap.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/arm/broadcom/bcm283x_platform.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/aarch64/aarch64/bus_space.c
diff -u src/sys/arch/aarch64/aarch64/bus_space.c:1.3 src/sys/arch/aarch64/aarch64/bus_space.c:1.4
--- src/sys/arch/aarch64/aarch64/bus_space.c:1.3	Mon Apr  9 22:26:15 2018
+++ src/sys/arch/aarch64/aarch64/bus_space.c	Fri Jun  8 18:09:43 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: bus_space.c,v 1.3 2018/04/09 22:26:15 jmcneill Exp $ */
+/* $NetBSD: bus_space.c,v 1.4 2018/06/08 18:09:43 jmcneill Exp $ */
 
 /*
  * Copyright (c) 2017 Ryo Shimizu 
@@ -27,7 +27,7 @@
  */
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: bus_space.c,v 1.3 2018/04/09 22:26:15 jmcneill Exp $");
+__KERNEL_RCSID(1, "$NetBSD: bus_space.c,v 1.4 2018/06/08 18:09:43 jmcneill Exp $");
 
 #include 
 #include 
@@ -616,11 +616,11 @@ generic_bs_mmap(void *t, bus_addr_t bpa,
 	paddr_t bus_flags = 0;
 
 	if ((flags & BUS_SPACE_MAP_CACHEABLE) != 0)
-		bus_flags |= (AARCH64_MMAP_WRITEBACK << AARCH64_MMAP_FLAG_SHIFT);
+		bus_flags |= ARM_MMAP_WRITEBACK;
 	else if ((flags & BUS_SPACE_MAP_PREFETCHABLE) != 0)
-		bus_flags |= (AARCH64_MMAP_WRITECOMBINE << AARCH64_MMAP_FLAG_SHIFT);
+		bus_flags |= ARM_MMAP_WRITECOMBINE;
 	else
-		bus_flags |= (AARCH64_MMAP_DEVICE << AARCH64_MMAP_FLAG_SHIFT);
+		bus_flags |= ARM_MMAP_DEVICE;
 
 	return (atop(bpa + (offset << ((struct bus_space *)t)->bs_stride)) |
 	bus_flags);

Index: src/sys/arch/aarch64/include/pmap.h
diff -u src/sys/arch/aarch64/include/pmap.h:1.4 src/sys/arch/aarch64/include/pmap.h:1.5
--- src/sys/arch/aarch64/include/pmap.h:1.4	Fri Apr 27 08:07:08 2018
+++ src/sys/arch/aarch64/include/pmap.h	Fri Jun  8 18:09:43 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.h,v 1.4 2018/04/27 08:07:08 ryo Exp $ */
+/* $NetBSD: pmap.h,v 1.5 2018/06/08 18:09:43 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -150,10 +150,11 @@ paddr_t pmap_devmap_vtophys(paddr_t);
 #define AARCH64_MMAP_WRITECOMBINE	2UL
 #define AARCH64_MMAP_DEVICE		3UL
 
-#define ARM_MMAP_WRITECOMBINE		AARCH64_MMAP_WRITECOMBINE
-#define ARM_MMAP_WRITEBACK		AARCH64_MMAP_WRITEBACK
-#define ARM_MMAP_NOCACHE		AARCH64_MMAP_NOCACHE
-#define ARM_MMAP_DEVICE			AARCH64_MMAP_DEVICE
+#define ARM_MMAP_MASK			__BITS(63, AARCH64_MMAP_FLAG_SHIFT)
+#define ARM_MMAP_WRITECOMBINE		__SHIFTIN(AARCH64_MMAP_WRITECOMBINE, ARM_MMAP_MASK)
+#define ARM_MMAP_WRITEBACK		__SHIFTIN(AARCH64_MMAP_WRITEBACK, ARM_MMAP_MASK)
+#define ARM_MMAP_NOCACHE		__SHIFTIN(AARCH64_MMAP_NOCACHE, ARM_MMAP_MASK)
+#define ARM_MMAP_DEVICE			__SHIFTIN(AARCH64_MMAP_DEVICE, ARM_MMAP_MASK)
 
 #define	PMAP_PTE			0x1000 /* kenter_pa */
 #define	PMAP_DEV			0x2000 /* kenter_pa */

Index: src/sys/arch/arm/broadcom/bcm283x_platform.c
diff -u src/sys/arch/arm/broadcom/bcm283x_platform.c:1.4 src/sys/arch/arm/broadcom/bcm283x_platform.c:1.5
--- src/sys/arch/arm/broadcom/bcm283x_platform.c:1.4	Sun Apr  1 04:35:03 2018
+++ src/sys/arch/arm/broadcom/bcm283x_platform.c	Fri Jun  8 18:09:43 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: bcm283x_platform.c,v 1.4 2018/04/01 04:35:03 ryo Exp $	*/
+/*	$NetBSD: bcm283x_platform.c,v 1.5 2018/06/08 18:09:43 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2017 Jared D. McNeill 
@@ -27,7 +27,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: bcm283x_platform.c,v 1.4 2018/04/01 04:35:03 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: bcm283x_platform.c,v 1.5 2018/06/08 18:09:43 jmcneill Exp $");
 
 #include "opt_arm_debug.h"
 #include "opt_bcm283x.h"
@@ -136,6 +136,8 @@ struct bus_space bcm2836_bs_tag;
 struct bus_space bcm2836_a4x_bs_tag;
 
 int bcm283x_bs_map(void *, bus_addr_t, bus_size_t, int, bus_space_handle_t *);
+paddr_t bcm283x_bs_mmap(void *, bus_addr_t, off_t, int, int);
+paddr_t bcm283x_a4x_bs_mmap(void *, bus_addr_t, off_t, int, int);
 
 int
 bcm283x_bs_map(void *t, bus_addr_t ba, bus_size_t size, int flag,
@@ -159,10 +161,13 @@ bcm283x_bs_map(void *t, bus_addr_t ba, b
 
 	*bshp = (bus_space_handle_t)(va + (pa - startpa));
 
-	const int pmapflags =
-	(flag & (BUS_SPACE_MAP_CACHEABLE|BUS_SPACE_MAP_PREFETCHABLE))
-		? 0
-		: PMAP_NOCACHE;
+	int pmapflags;
+	if (flag & BUS_SPACE_MAP_PREFETCHABLE)
+		pmapflags = PMAP_WRITE_COMBINE;
+	else if (flag & BUS_SPACE_MAP_CACHEABLE)
+		pmapflags = 0;
+	else
+		pmapflags = PMAP_NOCACHE;
 	for (pa = startpa; pa < endpa; pa += PAGE_SIZE, va += PAGE_

CVS commit: src/sys/arch/macppc/dev

2018-06-08 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Fri Jun  8 23:39:31 UTC 2018

Modified Files:
src/sys/arch/macppc/dev: obio.c

Log Message:
fix low CPU speed reporting when using DFS


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/macppc/dev/obio.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/macppc/dev/obio.c
diff -u src/sys/arch/macppc/dev/obio.c:1.45 src/sys/arch/macppc/dev/obio.c:1.46
--- src/sys/arch/macppc/dev/obio.c:1.45	Fri May  4 17:17:48 2018
+++ src/sys/arch/macppc/dev/obio.c	Fri Jun  8 23:39:31 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: obio.c,v 1.45 2018/05/04 17:17:48 macallan Exp $	*/
+/*	$NetBSD: obio.c,v 1.46 2018/06/08 23:39:31 macallan Exp $	*/
 
 /*-
  * Copyright (C) 1998	Internet Research Institute, Inc.
@@ -32,7 +32,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: obio.c,v 1.45 2018/05/04 17:17:48 macallan Exp $");
+__KERNEL_RCSID(0, "$NetBSD: obio.c,v 1.46 2018/06/08 23:39:31 macallan Exp $");
 
 #include 
 #include 
@@ -425,7 +425,8 @@ obio_setup_gpios(struct obio_softc *sc, 
 	if (hiclock != 0)
 		sc->sc_spd_hi = (hiclock + 50) / 100;
 	printf("hiclock: %d\n", sc->sc_spd_hi);
-	
+	if (use_dfs) sc->sc_spd_lo = sc->sc_spd_hi / 2;
+
 	sysctl_node = NULL;
 
 	if (sysctl_createv(NULL, 0, NULL, 



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

2018-06-08 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Fri Jun  8 23:40:44 UTC 2018

Modified Files:
src/sys/arch/powerpc/oea: cpu_subr.c

Log Message:
when switching CPU speed using DFS, only use xcalls on MULTIPROCESSOR kernels


To generate a diff of this commit:
cvs rdiff -u -r1.95 -r1.96 src/sys/arch/powerpc/oea/cpu_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/arch/powerpc/oea/cpu_subr.c
diff -u src/sys/arch/powerpc/oea/cpu_subr.c:1.95 src/sys/arch/powerpc/oea/cpu_subr.c:1.96
--- src/sys/arch/powerpc/oea/cpu_subr.c:1.95	Fri Jun  1 18:06:58 2018
+++ src/sys/arch/powerpc/oea/cpu_subr.c	Fri Jun  8 23:40:44 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu_subr.c,v 1.95 2018/06/01 18:06:58 macallan Exp $	*/
+/*	$NetBSD: cpu_subr.c,v 1.96 2018/06/08 23:40:44 macallan Exp $	*/
 
 /*-
  * Copyright (c) 2001 Matt Thomas.
@@ -34,7 +34,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.95 2018/06/01 18:06:58 macallan Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.96 2018/06/08 23:40:44 macallan Exp $");
 
 #include "opt_ppcparam.h"
 #include "opt_ppccache.h"
@@ -1144,7 +1144,6 @@ cpu_get_dfs(void)
 void
 cpu_set_dfs(int div)
 {
-	uint64_t where;
 	u_int dfs_mask, pvr, vers;
 
 	pvr = mfpvr();
@@ -1162,9 +1161,13 @@ cpu_set_dfs(int div)
 		return;
 
 	}
-
+#ifdef MULTIPROCESSOR
+	uint64_t where;
 	where = xc_broadcast(0, (xcfunc_t)cpu_set_dfs_xcall, &div, &dfs_mask);
 	xc_wait(where);
+#else
+	cpu_set_dfs_xcall(&div, &dfs_mask);
+#endif
 }
 
 static void



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

2018-06-08 Thread Jonathan A. Kollasch
Module Name:src
Committed By:   jakllsch
Date:   Sat Jun  9 01:17:35 UTC 2018

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

Log Message:
Avoid unnecessarily touching CNTP_CTL.

We may not have the privilege of accessing CNTP_CTL if running as a
virtualized guest, and we're not using the Physical Timer for interupt
generation anyway.


To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 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.28 src/sys/arch/arm/cortex/gtmr.c:1.29
--- src/sys/arch/arm/cortex/gtmr.c:1.28	Mon May 21 10:28:13 2018
+++ src/sys/arch/arm/cortex/gtmr.c	Sat Jun  9 01:17:35 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: gtmr.c,v 1.28 2018/05/21 10:28:13 jmcneill Exp $	*/
+/*	$NetBSD: gtmr.c,v 1.29 2018/06/09 01:17:35 jakllsch Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.28 2018/05/21 10:28:13 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.29 2018/06/09 01:17:35 jakllsch Exp $");
 
 #include 
 #include 
@@ -206,7 +206,6 @@ gtmr_attach(device_t parent, device_t se
 
 	/* Disable the timer until we are ready */
 	gtmr_cntv_ctl_write(0);
-	gtmr_cntp_ctl_write(0);
 }
 
 void
@@ -222,7 +221,6 @@ gtmr_init_cpu_clock(struct cpu_info *ci)
 	 * enable timer and stop masking the timer.
 	 */
 	gtmr_cntv_ctl_write(CNTCTL_ENABLE);
-	gtmr_cntp_ctl_write(CNTCTL_ENABLE);
 
 	/*
 	 * Get now and update the compare timer.



CVS commit: src/sys/arch/macppc/conf

2018-06-08 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Sat Jun  9 02:25:52 UTC 2018

Modified Files:
src/sys/arch/macppc/conf: std.macppc

Log Message:
set options ADBKBD_EMUL_USB by default
With this ADB and USB keyboards can coexist on the same mux, as needed by
built-in Bluetooth modules on some *Books
should fix PR53351


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/arch/macppc/conf/std.macppc

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/macppc/conf/std.macppc
diff -u src/sys/arch/macppc/conf/std.macppc:1.23 src/sys/arch/macppc/conf/std.macppc:1.24
--- src/sys/arch/macppc/conf/std.macppc:1.23	Thu Dec 11 05:42:18 2008
+++ src/sys/arch/macppc/conf/std.macppc	Sat Jun  9 02:25:52 2018
@@ -1,4 +1,4 @@
-#	$NetBSD: std.macppc,v 1.23 2008/12/11 05:42:18 alc Exp $
+#	$NetBSD: std.macppc,v 1.24 2018/06/09 02:25:52 macallan Exp $
 #
 # Standard/required options for NetBSD/macppc.
 
@@ -17,5 +17,10 @@ options 	EXEC_SCRIPT	# shell script supp
 
 options 	INTSTK=0x2000
 
+# some *Books have both ADB keyboards and Bluetooth modules which pose as USB
+# HID devices - for them to coexist on the same mux we tell the adbkbd driver
+# pose as a USB keyboard
+options 	ADBKBD_EMUL_USB
+
 # Atheros HAL options
 include "external/isc/atheros_hal/conf/std.ath_hal"