CVS commit: src/share/man/man4

2009-07-16 Thread Thomas Klausner
Module Name:src
Committed By:   wiz
Date:   Thu Jul 16 07:31:48 UTC 2009

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

Log Message:
New sentence, new line.


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/share/man/man4/ip.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/ip.4
diff -u src/share/man/man4/ip.4:1.24 src/share/man/man4/ip.4:1.25
--- src/share/man/man4/ip.4:1.24	Thu Jul 16 04:09:51 2009
+++ src/share/man/man4/ip.4	Thu Jul 16 07:31:48 2009
@@ -1,4 +1,4 @@
-.\	$NetBSD: ip.4,v 1.24 2009/07/16 04:09:51 minskim Exp $
+.\	$NetBSD: ip.4,v 1.25 2009/07/16 07:31:48 wiz Exp $
 .\
 .\ Copyright (c) 1983, 1991, 1993
 .\	The Regents of the University of California.  All rights reserved.
@@ -115,7 +115,8 @@
 .Dv SOCK_STREAM
 and
 .Dv SOCK_DGRAM
-sockets. For example,
+sockets.
+For example,
 .Bd -literal
 int range = IP_PORTRANGE_LOW;   /* see \*[Lt]netinet/in.h\*[Gt] */
 setsockopt(s, IPPROTO_IP, IP_PORTRANGE, \*[Am]range, sizeof(range));



CVS commit: src

2009-07-16 Thread Izumi Tsutsui
Module Name:src
Committed By:   tsutsui
Date:   Thu Jul 16 10:43:23 UTC 2009

Modified Files:
src/distrib/notes/common: contents
src/etc/etc.i386: Makefile.inc

Log Message:
Revert previous per comment from ad@ in PR 41668, which is no longer orphaned.


To generate a diff of this commit:
cvs rdiff -u -r1.156 -r1.157 src/distrib/notes/common/contents
cvs rdiff -u -r1.62 -r1.63 src/etc/etc.i386/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/distrib/notes/common/contents
diff -u src/distrib/notes/common/contents:1.156 src/distrib/notes/common/contents:1.157
--- src/distrib/notes/common/contents:1.156	Wed Jul 15 14:11:02 2009
+++ src/distrib/notes/common/contents	Thu Jul 16 10:43:22 2009
@@ -1,4 +1,4 @@
-.\	$NetBSD: contents,v 1.156 2009/07/15 14:11:02 tsutsui Exp $
+.\	$NetBSD: contents,v 1.157 2009/07/16 10:43:22 tsutsui Exp $
 .\
 .\ Copyright (c) 1999-2005 The NetBSD Foundation, Inc.
 .\ All rights reserved.
@@ -87,12 +87,6 @@
 .\}
 .
 .if \n[i386] \{\
-.			It Pa netbsd-MONOLITHIC.gz
-A version of
-.Li GENERIC
-kernel which doesn't require any kernel module bineries in
-.Li /stand
-directory.
 .			It Pa netbsd-INSTALL.gz
 The installation kernel.
 .

Index: src/etc/etc.i386/Makefile.inc
diff -u src/etc/etc.i386/Makefile.inc:1.62 src/etc/etc.i386/Makefile.inc:1.63
--- src/etc/etc.i386/Makefile.inc:1.62	Wed Jul 15 14:11:02 2009
+++ src/etc/etc.i386/Makefile.inc	Thu Jul 16 10:43:23 2009
@@ -1,4 +1,4 @@
-#	$NetBSD: Makefile.inc,v 1.62 2009/07/15 14:11:02 tsutsui Exp $
+#	$NetBSD: Makefile.inc,v 1.63 2009/07/16 10:43:23 tsutsui Exp $
 #
 #	etc.i386/Makefile.inc -- i386-specific etc Makefile targets
 #
@@ -7,7 +7,6 @@
 # to update the release documentation in distrib/notes/common/contents
 
 KERNEL_SETS=	GENERIC
-KERNEL_SETS+=	MONOLITHIC
 KERNEL_SETS+=	XEN3_DOM0
 KERNEL_SETS+=	XEN3_DOMU
 KERNEL_SETS+=	XEN3PAE_DOM0



CVS commit: src/doc

2009-07-16 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Thu Jul 16 13:28:17 UTC 2009

Modified Files:
src/doc: BRANCHES

Log Message:
update


To generate a diff of this commit:
cvs rdiff -u -r1.281 -r1.282 src/doc/BRANCHES

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

Modified files:

Index: src/doc/BRANCHES
diff -u src/doc/BRANCHES:1.281 src/doc/BRANCHES:1.282
--- src/doc/BRANCHES:1.281	Sat May 30 06:58:12 2009
+++ src/doc/BRANCHES	Thu Jul 16 13:28:17 2009
@@ -1,4 +1,4 @@
-#	$NetBSD: BRANCHES,v 1.281 2009/05/30 06:58:12 snj Exp $
+#	$NetBSD: BRANCHES,v 1.282 2009/07/16 13:28:17 yamt Exp $
 #
 # This file contains a list of branches that exist in the NetBSD CVS
 # tree and their current state.
@@ -591,7 +591,7 @@
 Status:		Active
 Start Date:	Sun Apr 27 2008
 End Date:	
-Base Tag:	yamt-nfs-mp-base4
+Base Tag:	yamt-nfs-mp-base5
 Maintainer:	YAMAMOTO Takashi y...@netbsd.org
 Scope:		src/sys  (src/common is tagged but not branched)
 Notes:		



CVS commit: src/usr.sbin/syslogd

2009-07-16 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Thu Jul 16 13:33:44 UTC 2009

Modified Files:
src/usr.sbin/syslogd: syslogd.8

Log Message:
draft-ietf-syslog-protocol-23 - RFC 5424


To generate a diff of this commit:
cvs rdiff -u -r1.47 -r1.48 src/usr.sbin/syslogd/syslogd.8

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

Modified files:

Index: src/usr.sbin/syslogd/syslogd.8
diff -u src/usr.sbin/syslogd/syslogd.8:1.47 src/usr.sbin/syslogd/syslogd.8:1.48
--- src/usr.sbin/syslogd/syslogd.8:1.47	Sun Feb  1 12:59:05 2009
+++ src/usr.sbin/syslogd/syslogd.8	Thu Jul 16 13:33:44 2009
@@ -1,4 +1,4 @@
-.\	$NetBSD: syslogd.8,v 1.47 2009/02/01 12:59:05 wiz Exp $
+.\	$NetBSD: syslogd.8,v 1.48 2009/07/16 13:33:44 yamt Exp $
 .\
 .\ Copyright (c) 1983, 1986, 1991, 1993
 .\	The Regents of the University of California.  All rights reserved.
@@ -29,7 +29,7 @@
 .\
 .\ from: @(#)syslogd.8	8.1 (Berkeley) 6/6/93
 .\
-.Dd February 1, 2009
+.Dd July 16, 2009
 .Dt SYSLOGD 8
 .Os
 .Sh NAME
@@ -233,9 +233,8 @@
 .Nm
 accepts messages in traditional BSD Syslog or in newer Syslog Protocol
 format.
-See RFC 3164 (BSD Syslog) and RFC
-.Em 
-(Syslog Protocol) for detailed description of the message format.
+See RFC 3164 (BSD Syslog) and RFC 5424 (Syslog Protocol) for detailed
+description of the message format.
 .Dv LOG_KERN
 and priority
 .Dv LOG_NOTICE .
@@ -270,10 +269,10 @@
 .%T The BSD syslog Protocol
 .Re
 .Rs
-.%R Internet-Draft
-.%N draft-ietf-syslog-protocol-23
-.%D September 2007
-.%T The syslog Protocol
+.%R RFC
+.%N 5424
+.%D March 2009
+.%T The Syslog Protocol
 .Re
 .Sh HISTORY
 The



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

2009-07-16 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Thu Jul 16 14:18:09 UTC 2009

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

Log Message:
handle protection fault properly.


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 src/sys/arch/amd64/amd64/trap.c

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

Modified files:

Index: src/sys/arch/amd64/amd64/trap.c
diff -u src/sys/arch/amd64/amd64/trap.c:1.55 src/sys/arch/amd64/amd64/trap.c:1.56
--- src/sys/arch/amd64/amd64/trap.c:1.55	Sat Mar 28 18:56:19 2009
+++ src/sys/arch/amd64/amd64/trap.c	Thu Jul 16 10:18:09 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: trap.c,v 1.55 2009/03/28 22:56:19 rmind Exp $	*/
+/*	$NetBSD: trap.c,v 1.56 2009/07/16 14:18:09 christos Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.55 2009/03/28 22:56:19 rmind Exp $);
+__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.56 2009/07/16 14:18:09 christos Exp $);
 
 #include opt_ddb.h
 #include opt_kgdb.h
@@ -338,26 +338,35 @@
 	case T_STKFLT|T_USER:
 	case T_ALIGNFLT|T_USER:
 #ifdef TRAP_SIGDEBUG
-		printf(pid %d (%s): BUS (%x) at rip %lx addr %lx\n,
+		printf(pid %d (%s): BUS/SEGV (%x) at rip %lx addr %lx\n,
 		p-p_pid, p-p_comm, type, frame-tf_rip, rcr2());
 		frame_dump(frame);
 #endif
 		KSI_INIT_TRAP(ksi);
-		ksi.ksi_signo = SIGBUS;
 		ksi.ksi_trap = type  ~T_USER;
 		ksi.ksi_addr = (void *)rcr2();
 		switch (type) {
 		case T_SEGNPFLT|T_USER:
 		case T_STKFLT|T_USER:
+			ksi.ksi_signo = SIGBUS;
 			ksi.ksi_code = BUS_ADRERR;
 			break;
 		case T_TSSFLT|T_USER:
+			ksi.ksi_signo = SIGBUS;
 			ksi.ksi_code = BUS_OBJERR;
 			break;
 		case T_ALIGNFLT|T_USER:
+			ksi.ksi_signo = SIGBUS;
 			ksi.ksi_code = BUS_ADRALN;
 			break;
+		case T_PROTFLT|T_USER:
+			ksi.ksi_signo = SIGSEGV;
+			ksi.ksi_code = SEGV_ACCERR;
+			break;
 		default:
+#ifdef DIAGNOSTIC
+			panic(unhandled type %x\n, type);
+#endif
 			break;
 		}
 		goto trapsignal;



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

2009-07-16 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Thu Jul 16 14:21:12 UTC 2009

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

Log Message:
a little more diagnostic


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 src/sys/arch/amd64/amd64/trap.c

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

Modified files:

Index: src/sys/arch/amd64/amd64/trap.c
diff -u src/sys/arch/amd64/amd64/trap.c:1.56 src/sys/arch/amd64/amd64/trap.c:1.57
--- src/sys/arch/amd64/amd64/trap.c:1.56	Thu Jul 16 10:18:09 2009
+++ src/sys/arch/amd64/amd64/trap.c	Thu Jul 16 10:21:12 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: trap.c,v 1.56 2009/07/16 14:18:09 christos Exp $	*/
+/*	$NetBSD: trap.c,v 1.57 2009/07/16 14:21:12 christos Exp $	*/
 
 /*-
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.56 2009/07/16 14:18:09 christos Exp $);
+__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.57 2009/07/16 14:21:12 christos Exp $);
 
 #include opt_ddb.h
 #include opt_kgdb.h
@@ -390,6 +390,9 @@
 			ksi.ksi_code = ILL_COPROC;
 			break;
 		default:
+#ifdef DIAGNOSTIC
+			panic(unhandled type %x\n, type);
+#endif
 			break;
 		}
 		goto trapsignal;
@@ -436,6 +439,9 @@
 			ksi.ksi_code = FPE_FLTDIV;
 			break;
 		default:
+#ifdef DIAGNOSTIC
+			panic(unhandled type %x\n, type);
+#endif
 			break;
 		}
 		goto trapsignal;



CVS commit: [yamt-nfs-mp] src/sys/nfs

2009-07-16 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Thu Jul 16 16:32:03 UTC 2009

Modified Files:
src/sys/nfs [yamt-nfs-mp]: nfs_iod.c

Log Message:
fix a merge botch.


To generate a diff of this commit:
cvs rdiff -u -r1.3.2.2 -r1.3.2.3 src/sys/nfs/nfs_iod.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_iod.c
diff -u src/sys/nfs/nfs_iod.c:1.3.2.2 src/sys/nfs/nfs_iod.c:1.3.2.3
--- src/sys/nfs/nfs_iod.c:1.3.2.2	Mon May  4 08:14:22 2009
+++ src/sys/nfs/nfs_iod.c	Thu Jul 16 16:32:03 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_iod.c,v 1.3.2.2 2009/05/04 08:14:22 yamt Exp $	*/
+/*	$NetBSD: nfs_iod.c,v 1.3.2.3 2009/07/16 16:32:03 yamt Exp $	*/
 
 /*
  * Copyright (c) 1989, 1993
@@ -35,7 +35,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: nfs_iod.c,v 1.3.2.2 2009/05/04 08:14:22 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: nfs_iod.c,v 1.3.2.3 2009/07/16 16:32:03 yamt Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -154,9 +154,7 @@
 cv_broadcast(nmp-nm_aiocv);
 			}
 			mutex_exit(nmp-nm_lock);
-			KERNEL_LOCK(1, curlwp);
 			(void)nfs_doio(bp);
-			KERNEL_UNLOCK_LAST(curlwp);
 			mutex_enter(nmp-nm_lock);
 			/*
 			 * If there are more than one iod on this mount, 



CVS commit: [yamt-nfs-mp] src/sys/nfs

2009-07-16 Thread YAMAMOTO Takashi
Module Name:src
Committed By:   yamt
Date:   Thu Jul 16 16:43:15 UTC 2009

Modified Files:
src/sys/nfs [yamt-nfs-mp]: nfs_socket.c nfsmount.h

Log Message:
remove sndlock.  it's superseded by nm_solock.
suggested by Andrew Doran.


To generate a diff of this commit:
cvs rdiff -u -r1.170.2.4 -r1.170.2.5 src/sys/nfs/nfs_socket.c
cvs rdiff -u -r1.46.28.2 -r1.46.28.3 src/sys/nfs/nfsmount.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/nfs/nfs_socket.c
diff -u src/sys/nfs/nfs_socket.c:1.170.2.4 src/sys/nfs/nfs_socket.c:1.170.2.5
--- src/sys/nfs/nfs_socket.c:1.170.2.4	Mon May  4 10:48:39 2009
+++ src/sys/nfs/nfs_socket.c	Thu Jul 16 16:43:15 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: nfs_socket.c,v 1.170.2.4 2009/05/04 10:48:39 yamt Exp $	*/
+/*	$NetBSD: nfs_socket.c,v 1.170.2.5 2009/07/16 16:43:15 yamt Exp $	*/
 
 /*
  * Copyright (c) 1989, 1991, 1993, 1995
@@ -39,7 +39,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: nfs_socket.c,v 1.170.2.4 2009/05/04 10:48:39 yamt Exp $);
+__KERNEL_RCSID(0, $NetBSD: nfs_socket.c,v 1.170.2.5 2009/07/16 16:43:15 yamt Exp $);
 
 #ifdef _KERNEL_OPT
 #include fs_nfs.h
@@ -185,10 +185,6 @@
 static kmutex_t nfs_timer_lock;
 static bool (*nfs_timer_srvvec)(void);
 
-#ifdef NFS
-static int nfs_sndlock(struct nfsmount *, struct nfsreq *);
-static void nfs_sndunlock(struct nfsmount *);
-#endif
 static int nfs_rcvlock(struct nfsmount *, struct nfsreq *);
 static void nfs_rcvunlock(struct nfsmount *);
 
@@ -373,7 +369,6 @@
  * - nfs_connect() again
  * - set R_MUSTRESEND for all outstanding requests on mount point
  * If this fails the mount point is DEAD!
- * nb: Must be called with the nfs_sndlock() set on the mount point.
  */
 int
 nfs_reconnect(struct nfsreq *rep)
@@ -381,7 +376,6 @@
 	struct nfsmount *nmp = rep-r_nmp;
 	int error;
 
-	KASSERT(rep-r_nmp-nm_sndlwp == curlwp);
 	KASSERT(rep-r_nmp-nm_rcvlwp == curlwp);
 	if (!rw_tryupgrade(nmp-nm_solock)) {
 		printf(%s: nmp=%p: upgrade failed\n, __func__, nmp);
@@ -476,8 +470,7 @@
 }
 
 /*
- * This is the nfs send routine. For connection based socket types, it
- * must be called with an nfs_sndlock() on the socket.
+ * This is the nfs send routine.
  * rep == NULL indicates that it has been called from a server.
  * For the client side:
  * - return EINTR if the RPC is terminated, 0 otherwise
@@ -497,8 +490,6 @@
 
 	if (rep) {
 		KASSERT(rw_read_held(rep-r_nmp-nm_solock));
-		KASSERT((rep-r_nmp-nm_soflags  PR_CONNREQUIRED) == 0 ||
-		rep-r_nmp-nm_sndlwp == curlwp);
 		if (rep-r_flags  R_SOFTTERM) {
 			m_freem(top);
 			return (EINTR);
@@ -613,9 +604,6 @@
 	 * until we have an entire rpc request/reply.
 	 */
 	if (sotype != SOCK_DGRAM) {
-		error = nfs_sndlock(nmp, rep);
-		if (error)
-			return (error);
 tryagain:
 		/*
 		 * Check for fatal errors and resending request.
@@ -627,7 +615,6 @@
 		 * mount point.
 		 */
 		if (rep-r_mrep || (rep-r_flags  R_SOFTTERM)) {
-			nfs_sndunlock(nmp);
 			return (EINTR);
 		}
 		so = nmp-nm_so;
@@ -635,7 +622,6 @@
 reconnect:
 			error = nfs_reconnect(rep);
 			if (error) {
-nfs_sndunlock(nmp);
 return error;
 			}
 			goto tryagain;
@@ -663,13 +649,11 @@
 			}
 			if (error) {
 if (error == EINTR || error == ERESTART) {
-	nfs_sndunlock(nmp);
 	return error;
 }
 goto reconnect;
 			}
 		}
-		nfs_sndunlock(nmp);
 		if (sotype == SOCK_STREAM) {
 			aio.iov_base = (void *) len;
 			aio.iov_len = sizeof(u_int32_t);
@@ -780,11 +764,7 @@
 receive error %d from nfs server %s\n,
 error,
 nmp-nm_mountp-mnt_stat.f_mntfromname);
-			error = nfs_sndlock(nmp, rep);
-			if (error == 0) {
-goto reconnect;
-			}
-			nfs_sndunlock(nmp);
+			goto reconnect;
 		}
 	} else {
 		if ((so = nmp-nm_so) == NULL)
@@ -1202,13 +1182,9 @@
 		nmp-nm_sent += NFS_CWNDSCALE;
 		rep-r_rflags |= RR_SENT;
 		mutex_exit(nfs_reqq_lock);
-		if (nmp-nm_soflags  PR_CONNREQUIRED)
-			error = nfs_sndlock(nmp, rep);
 		if (!error) {
 			m = m_copym(rep-r_mreq, 0, M_COPYALL, M_WAIT);
 			error = nfs_send(nmp-nm_so, nmp-nm_nam, m, rep);
-			if (nmp-nm_soflags  PR_CONNREQUIRED)
-nfs_sndunlock(nmp);
 		}
 		mutex_enter(nfs_reqq_lock);
 		/*
@@ -1866,64 +1842,6 @@
 	return (0);
 }
 
-#ifdef NFS
-/*
- * Lock a socket against others.
- * Necessary for STREAM sockets to ensure you get an entire rpc request/reply
- * and also to avoid race conditions between the processes with nfs requests
- * in progress when a reconnect is necessary.
- */
-static int
-nfs_sndlock(struct nfsmount *nmp, struct nfsreq *rep)
-{
-	struct lwp *l;
-	int timeo = 0;
-	bool catch;
-	int error = 0;
-
-	KASSERT(nmp == rep-r_nmp);
-
-	l = rep-r_lwp;
-	catch = (nmp-nm_flag  NFSMNT_INT) != 0;
-	mutex_enter(nmp-nm_lock);
-	while (nmp-nm_sndlwp != NULL) {
-		KASSERT(nmp-nm_sndlwp != curlwp);
-		if (rep  nfs_sigintr(rep-r_nmp, rep, l)) {
-			error = EINTR;
-			goto quit;
-		}
-		if (catch) {
-			

CVS commit: src/sys/dev

2009-07-16 Thread David Young
Module Name:src
Committed By:   dyoung
Date:   Thu Jul 16 18:10:01 UTC 2009

Modified Files:
src/sys/dev/ic: mfi.c mfivar.h
src/sys/dev/pci: mfi_pci.c

Log Message:
device_t/softc split.  Tested and shown to work on a Dell PowerEdge
1950.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/ic/mfi.c
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/ic/mfivar.h
cvs rdiff -u -r1.9 -r1.10 src/sys/dev/pci/mfi_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/ic/mfi.c
diff -u src/sys/dev/ic/mfi.c:1.25 src/sys/dev/ic/mfi.c:1.26
--- src/sys/dev/ic/mfi.c:1.25	Thu Jul 16 01:30:10 2009
+++ src/sys/dev/ic/mfi.c	Thu Jul 16 18:10:00 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfi.c,v 1.25 2009/07/16 01:30:10 dyoung Exp $ */
+/* $NetBSD: mfi.c,v 1.26 2009/07/16 18:10:00 dyoung Exp $ */
 /* $OpenBSD: mfi.c,v 1.66 2006/11/28 23:59:45 dlg Exp $ */
 /*
  * Copyright (c) 2006 Marco Peereboom ma...@peereboom.us
@@ -17,7 +17,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: mfi.c,v 1.25 2009/07/16 01:30:10 dyoung Exp $);
+__KERNEL_RCSID(0, $NetBSD: mfi.c,v 1.26 2009/07/16 18:10:00 dyoung Exp $);
 
 #include bio.h
 
@@ -635,12 +635,12 @@
 
 	DNPRINTF(MFI_D_MISC, %s: mfi_detach\n, DEVNAME(sc));
 
-	if ((error = config_detach_children(sc-sc_dev, flags)) != 0)
+	if ((error = config_detach_children(sc-sc_dev, flags)) != 0)
 		return error;
 
 #if NBIO  0
 	mfi_destroy_sensors(sc);
-	bio_unregister(sc-sc_dev);
+	bio_unregister(sc-sc_dev);
 #endif /* NBIO  0 */
 
 	mfi_intr_disable(sc);
@@ -760,7 +760,7 @@
 		sc-sc_ld[i].ld_present = 1;
 
 	memset(adapt, 0, sizeof(*adapt));
-	adapt-adapt_dev = sc-sc_dev;
+	adapt-adapt_dev = sc-sc_dev;
 	adapt-adapt_nchannels = 1;
 	if (sc-sc_ld_cnt)
 		adapt-adapt_openings = sc-sc_max_cmds / sc-sc_ld_cnt;
@@ -779,13 +779,13 @@
 	chan-chan_ntargets = MFI_MAX_LD;
 	chan-chan_id = MFI_MAX_LD;
 
-	(void)config_found(sc-sc_dev, sc-sc_chan, scsiprint);
+	(void)config_found(sc-sc_dev, sc-sc_chan, scsiprint);
 
 	/* enable interrupts */
 	mfi_intr_enable(sc);
 
 #if NBIO  0
-	if (bio_register(sc-sc_dev, mfi_ioctl) != 0)
+	if (bio_register(sc-sc_dev, mfi_ioctl) != 0)
 		panic(%s: controller registration failed, DEVNAME(sc));
 	if (mfi_create_sensors(sc) != 0)
 		aprint_error(%s: unable to create sensors\n, DEVNAME(sc));
@@ -1062,7 +1062,7 @@
 	struct scsipi_periph	*periph;
 	struct scsipi_xfer	*xs;
 	struct scsipi_adapter	*adapt = chan-chan_adapter;
-	struct mfi_softc	*sc = (void *) adapt-adapt_dev;
+	struct mfi_softc	*sc = device_private(adapt-adapt_dev);
 	struct mfi_ccb		*ccb;
 	struct scsi_rw_6	*rw;
 	struct scsipi_rw_10	*rwb;
@@ -1146,7 +1146,7 @@
 	case SCSI_TEST_UNIT_READY:
 		/* save off sd? after autoconf */
 		if (!cold)	/* XXX bogus */
-			strlcpy(sc-sc_ld[target].ld_dev, device_xname(sc-sc_dev),
+			strlcpy(sc-sc_ld[target].ld_dev, device_xname(sc-sc_dev),
 			sizeof(sc-sc_ld[target].ld_dev));
 		/* FALLTHROUGH */
 
@@ -1377,7 +1377,7 @@
 int
 mfi_ioctl(device_t dev, u_long cmd, void *addr)
 {
-	struct mfi_softc	*sc = (struct mfi_softc *)dev;
+	struct mfi_softc *sc = device_private(dev);
 	int error = 0;
 	int s = splbio();
 

Index: src/sys/dev/ic/mfivar.h
diff -u src/sys/dev/ic/mfivar.h:1.11 src/sys/dev/ic/mfivar.h:1.12
--- src/sys/dev/ic/mfivar.h:1.11	Thu Jul 16 01:01:47 2009
+++ src/sys/dev/ic/mfivar.h	Thu Jul 16 18:10:00 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfivar.h,v 1.11 2009/07/16 01:01:47 dyoung Exp $ */
+/* $NetBSD: mfivar.h,v 1.12 2009/07/16 18:10:00 dyoung Exp $ */
 /* $OpenBSD: mfivar.h,v 1.28 2006/08/31 18:18:46 marco Exp $ */
 /*
  * Copyright (c) 2006 Marco Peereboom ma...@peereboom.us
@@ -19,7 +19,7 @@
 #include dev/sysmon/sysmonvar.h
 #include sys/envsys.h
 
-#define DEVNAME(_s) (device_xname((_s)-sc_dev))
+#define DEVNAME(_s) (device_xname((_s)-sc_dev))
 
 /* #define MFI_DEBUG */
 #ifdef MFI_DEBUG
@@ -110,7 +110,7 @@
 };
 
 struct mfi_softc {
-	struct device		sc_dev;
+	device_t		sc_dev;
 	struct scsipi_channel	sc_chan;
 	struct scsipi_adapter	sc_adapt;
 

Index: src/sys/dev/pci/mfi_pci.c
diff -u src/sys/dev/pci/mfi_pci.c:1.9 src/sys/dev/pci/mfi_pci.c:1.10
--- src/sys/dev/pci/mfi_pci.c:1.9	Thu Jul 16 01:01:46 2009
+++ src/sys/dev/pci/mfi_pci.c	Thu Jul 16 18:10:00 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfi_pci.c,v 1.9 2009/07/16 01:01:46 dyoung Exp $ */
+/* $NetBSD: mfi_pci.c,v 1.10 2009/07/16 18:10:00 dyoung Exp $ */
 /* $OpenBSD: mfi_pci.c,v 1.11 2006/08/06 04:40:08 brad Exp $ */
 /*
  * Copyright (c) 2006 Marco Peereboom ma...@peereboom.us
@@ -17,7 +17,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: mfi_pci.c,v 1.9 2009/07/16 01:01:46 dyoung Exp $);
+__KERNEL_RCSID(0, $NetBSD: mfi_pci.c,v 1.10 2009/07/16 18:10:00 dyoung Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -50,7 +50,7 @@
 void	mfi_pci_attach(device_t, device_t, void *);
 int	mfi_pci_detach(device_t, int);
 
-CFATTACH_DECL(mfi_pci, sizeof(struct 

CVS commit: src/sys/dev

2009-07-16 Thread David Young
Module Name:src
Committed By:   dyoung
Date:   Thu Jul 16 18:58:38 UTC 2009

Modified Files:
src/sys/dev/ic: mfi.c mfivar.h
src/sys/dev/pci: mfi_pci.c

Log Message:
Let us detach  re-attach children of mfi0.  Detach mfi0 at shutdown.

Detachment may fail after freeing some but not all resources, so
take care not to re-release any resource during detachment.

Tested on a Dell PowerEdge 1950.


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/ic/mfi.c
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/ic/mfivar.h
cvs rdiff -u -r1.10 -r1.11 src/sys/dev/pci/mfi_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/ic/mfi.c
diff -u src/sys/dev/ic/mfi.c:1.26 src/sys/dev/ic/mfi.c:1.27
--- src/sys/dev/ic/mfi.c:1.26	Thu Jul 16 18:10:00 2009
+++ src/sys/dev/ic/mfi.c	Thu Jul 16 18:58:38 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfi.c,v 1.26 2009/07/16 18:10:00 dyoung Exp $ */
+/* $NetBSD: mfi.c,v 1.27 2009/07/16 18:58:38 dyoung Exp $ */
 /* $OpenBSD: mfi.c,v 1.66 2006/11/28 23:59:45 dlg Exp $ */
 /*
  * Copyright (c) 2006 Marco Peereboom ma...@peereboom.us
@@ -17,7 +17,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: mfi.c,v 1.26 2009/07/16 18:10:00 dyoung Exp $);
+__KERNEL_RCSID(0, $NetBSD: mfi.c,v 1.27 2009/07/16 18:58:38 dyoung Exp $);
 
 #include bio.h
 
@@ -70,7 +70,7 @@
 static int		mfi_init_ccb(struct mfi_softc *);
 
 static struct mfi_mem	*mfi_allocmem(struct mfi_softc *, size_t);
-static void		mfi_freemem(struct mfi_softc *, struct mfi_mem *);
+static void		mfi_freemem(struct mfi_softc *, struct mfi_mem **);
 
 static int		mfi_transition_firmware(struct mfi_softc *);
 static int		mfi_initialize_firmware(struct mfi_softc *);
@@ -345,8 +345,15 @@
 }
 
 static void
-mfi_freemem(struct mfi_softc *sc, struct mfi_mem *mm)
+mfi_freemem(struct mfi_softc *sc, struct mfi_mem **mmp)
 {
+	struct mfi_mem *mm = *mmp;
+
+	if (mm == NULL)
+		return;
+
+	*mmp = NULL;
+
 	DNPRINTF(MFI_D_MEM, %s: mfi_freemem: %p\n, DEVNAME(sc), mm);
 
 	bus_dmamap_unload(sc-sc_dmat, mm-am_map);
@@ -629,6 +636,32 @@
 }
 
 int
+mfi_rescan(device_t self, const char *ifattr, const int *locators)
+{
+	struct mfi_softc *sc = device_private(self);
+
+	if (sc-sc_child != NULL)
+		return 0;
+
+	sc-sc_child = config_found_sm_loc(self, ifattr, locators, sc-sc_chan,
+	scsiprint, NULL);
+
+	return 0;
+}
+
+void
+mfi_childdetached(device_t self, device_t child)
+{
+	struct mfi_softc *sc = device_private(self);
+
+	KASSERT(self == sc-sc_dev);
+	KASSERT(child == sc-sc_child);
+
+	if (child == sc-sc_child)
+		sc-sc_child = NULL;
+}
+
+int
 mfi_detach(struct mfi_softc *sc, int flags)
 {
 	int			error;
@@ -650,11 +683,11 @@
 	if ((error = mfi_destroy_ccb(sc)) != 0)
 		return error;
 
-	mfi_freemem(sc, sc-sc_sense);
+	mfi_freemem(sc, sc-sc_sense);
 
-	mfi_freemem(sc, sc-sc_frames);
+	mfi_freemem(sc, sc-sc_frames);
 
-	mfi_freemem(sc, sc-sc_pcq);
+	mfi_freemem(sc, sc-sc_pcq);
 
 	return 0;
 }
@@ -779,7 +812,7 @@
 	chan-chan_ntargets = MFI_MAX_LD;
 	chan-chan_id = MFI_MAX_LD;
 
-	(void)config_found(sc-sc_dev, sc-sc_chan, scsiprint);
+	mfi_rescan(sc-sc_dev, scsi, NULL);
 
 	/* enable interrupts */
 	mfi_intr_enable(sc);
@@ -793,11 +826,11 @@
 
 	return 0;
 noinit:
-	mfi_freemem(sc, sc-sc_sense);
+	mfi_freemem(sc, sc-sc_sense);
 nosense:
-	mfi_freemem(sc, sc-sc_frames);
+	mfi_freemem(sc, sc-sc_frames);
 noframe:
-	mfi_freemem(sc, sc-sc_pcq);
+	mfi_freemem(sc, sc-sc_pcq);
 nopcq:
 	return 1;
 }
@@ -1940,7 +1973,10 @@
 static int
 mfi_destroy_sensors(struct mfi_softc *sc)
 {
+	if (sc-sc_sme == NULL)
+		return 0;
 	sysmon_envsys_unregister(sc-sc_sme);
+	sc-sc_sme = NULL;
 	free(sc-sc_sensor, M_DEVBUF);
 	return 0;
 }

Index: src/sys/dev/ic/mfivar.h
diff -u src/sys/dev/ic/mfivar.h:1.12 src/sys/dev/ic/mfivar.h:1.13
--- src/sys/dev/ic/mfivar.h:1.12	Thu Jul 16 18:10:00 2009
+++ src/sys/dev/ic/mfivar.h	Thu Jul 16 18:58:38 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfivar.h,v 1.12 2009/07/16 18:10:00 dyoung Exp $ */
+/* $NetBSD: mfivar.h,v 1.13 2009/07/16 18:58:38 dyoung Exp $ */
 /* $OpenBSD: mfivar.h,v 1.28 2006/08/31 18:18:46 marco Exp $ */
 /*
  * Copyright (c) 2006 Marco Peereboom ma...@peereboom.us
@@ -161,8 +161,11 @@
 	struct sysmon_envsys*sc_sme;
 	envsys_data_t		*sc_sensor;
 
+	device_t		sc_child;
 };
 
+int	mfi_rescan(device_t, const char *, const int *);
+void	mfi_childdetached(device_t, device_t);
 int	mfi_attach(struct mfi_softc *, enum mfi_iop);
 int	mfi_detach(struct mfi_softc *, int);
 int	mfi_intr(void *);

Index: src/sys/dev/pci/mfi_pci.c
diff -u src/sys/dev/pci/mfi_pci.c:1.10 src/sys/dev/pci/mfi_pci.c:1.11
--- src/sys/dev/pci/mfi_pci.c:1.10	Thu Jul 16 18:10:00 2009
+++ src/sys/dev/pci/mfi_pci.c	Thu Jul 16 18:58:38 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: mfi_pci.c,v 1.10 2009/07/16 18:10:00 dyoung Exp $ */
+/* $NetBSD: mfi_pci.c,v 1.11 2009/07/16 18:58:38 dyoung Exp $ */
 /* $OpenBSD: mfi_pci.c,v 1.11 2006/08/06 

CVS commit: src/sys/dev/pci

2009-07-16 Thread Jonathan A. Kollasch
Module Name:src
Committed By:   jakllsch
Date:   Thu Jul 16 20:14:18 UTC 2009

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

Log Message:
Correctly bus_dmamap_sync() the transmit descriptors.
Previously the sync could run off the end and not sync
the beginning of the ring.  Logic gleaned from if_nfe.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/pci/if_bce.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_bce.c
diff -u src/sys/dev/pci/if_bce.c:1.25 src/sys/dev/pci/if_bce.c:1.26
--- src/sys/dev/pci/if_bce.c:1.25	Wed May  6 09:25:15 2009
+++ src/sys/dev/pci/if_bce.c	Thu Jul 16 20:14:17 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: if_bce.c,v 1.25 2009/05/06 09:25:15 cegger Exp $	 */
+/* $NetBSD: if_bce.c,v 1.26 2009/07/16 20:14:17 jakllsch Exp $	 */
 
 /*
  * Copyright (c) 2003 Clifford Wright. All rights reserved.
@@ -35,7 +35,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: if_bce.c,v 1.25 2009/05/06 09:25:15 cegger Exp $);
+__KERNEL_RCSID(0, $NetBSD: if_bce.c,v 1.26 2009/07/16 20:14:17 jakllsch Exp $);
 
 #include bpfilter.h
 #include vlan.h
@@ -604,10 +604,25 @@
 			txsfree--;
 		}
 		/* sync descriptors being used */
-		bus_dmamap_sync(sc-bce_dmatag, sc-bce_ring_map,
-			  sizeof(struct bce_dma_slot) * txstart + PAGE_SIZE,
-			 sizeof(struct bce_dma_slot) * dmamap-dm_nsegs,
-BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+		if ( sc-bce_txsnext  txstart ) {
+			bus_dmamap_sync(sc-bce_dmatag, sc-bce_ring_map,
+			PAGE_SIZE + sizeof(struct bce_dma_slot) * txstart,
+			sizeof(struct bce_dma_slot) * dmamap-dm_nsegs,
+			BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+		} else {
+			bus_dmamap_sync(sc-bce_dmatag, sc-bce_ring_map,
+			PAGE_SIZE + sizeof(struct bce_dma_slot) * txstart,
+			sizeof(struct bce_dma_slot) *
+			(BCE_NTXDESC - txstart),
+			BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+			if ( sc-bce_txsnext != 0 ) {
+bus_dmamap_sync(sc-bce_dmatag,
+sc-bce_ring_map, PAGE_SIZE,
+sc-bce_txsnext *
+sizeof(struct bce_dma_slot),
+BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+			}
+		}
 
 		/* Give the packet to the chip. */
 		bus_space_write_4(sc-bce_btag, sc-bce_bhandle, BCE_DMA_DPTR,



CVS commit: src/sys/dev/pckbport

2009-07-16 Thread Jonathan A. Kollasch
Module Name:src
Committed By:   jakllsch
Date:   Thu Jul 16 20:44:54 UTC 2009

Modified Files:
src/sys/dev/pckbport: pckbd.c

Log Message:
Ignore scancodes E0 2A, E0 AA, E0 36, E0 B6 when decoding.
For the 10 keys on the editing keypad, these prefix/postfix
scancodes indicate the state of the Left Shift and Right Shift
keys and Num Lock indicator.

This change prevents a spurious WSCONS_EVENT_KEY_UP event upon
press as well as the corresponding WSCONS_EVENT_KEY_DOWN event
upon release.


To generate a diff of this commit:
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/pckbport/pckbd.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/pckbport/pckbd.c
diff -u src/sys/dev/pckbport/pckbd.c:1.26 src/sys/dev/pckbport/pckbd.c:1.27
--- src/sys/dev/pckbport/pckbd.c:1.26	Sun Mar  8 15:06:56 2009
+++ src/sys/dev/pckbport/pckbd.c	Thu Jul 16 20:44:54 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: pckbd.c,v 1.26 2009/03/08 15:06:56 ad Exp $ */
+/* $NetBSD: pckbd.c,v 1.27 2009/07/16 20:44:54 jakllsch Exp $ */
 
 /*-
  * Copyright (c) 1998, 2009 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: pckbd.c,v 1.26 2009/03/08 15:06:56 ad Exp $);
+__KERNEL_RCSID(0, $NetBSD: pckbd.c,v 1.27 2009/07/16 20:44:54 jakllsch Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -459,6 +459,17 @@
 		return 0;
 	}
 
+	if (id-t_extended0 == 1) {
+		switch (datain  0x7f) {
+		case 0x2a:
+		case 0x36:
+			id-t_extended0 = 0;
+			return 0;
+		default:
+			break;
+		}
+	}
+
  	/* map extended keys to (unused) codes 128-254 */
 	key = (datain  0x7f) | (id-t_extended0 ? 0x80 : 0);
 	id-t_extended0 = 0;



CVS commit: src/common/lib/libc/arch/mips/string

2009-07-16 Thread David Laight
Module Name:src
Committed By:   dsl
Date:   Thu Jul 16 21:25:36 UTC 2009

Added Files:
src/common/lib/libc/arch/mips/string: strchr.S strrchr.S

Log Message:
Add asm files for str(r)chr by copying the files for (r)index from
src/libc/arch/mips/string.
Add XLEAF() for index entry points.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/common/lib/libc/arch/mips/string/strchr.S \
src/common/lib/libc/arch/mips/string/strrchr.S

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

Added files:

Index: src/common/lib/libc/arch/mips/string/strchr.S
diff -u /dev/null src/common/lib/libc/arch/mips/string/strchr.S:1.1
--- /dev/null	Thu Jul 16 21:25:36 2009
+++ src/common/lib/libc/arch/mips/string/strchr.S	Thu Jul 16 21:25:36 2009
@@ -0,0 +1,59 @@
+/*	$NetBSD: strchr.S,v 1.1 2009/07/16 21:25:36 dsl Exp $	*/
+
+/*-
+ * Copyright (c) 1991, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Ralph Campbell.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *notice, this list of conditions and the following disclaimer in the
+ *documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *may be used to endorse or promote products derived from this software
+ *without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include mips/asm.h
+
+#if defined(LIBC_SCCS)  !defined(lint)
+	ASMSTR(from: @(#)index.s	8.1 (Berkeley) 6/4/93)
+	ASMSTR($NetBSD: strchr.S,v 1.1 2009/07/16 21:25:36 dsl Exp $)
+#endif /* LIBC_SCCS and not lint */
+
+#ifdef __ABICALLS__
+	.abicalls
+#endif
+
+LEAF(strstr)
+XLEAF(index)
+1:
+	lbu	a2, 0(a0)		# get a byte
+	addu	a0, a0, 1
+	beq	a2, a1, fnd
+	bne	a2, zero, 1b
+notfnd:
+	move	v0, zero
+	j	ra
+fnd:
+	subu	v0, a0, 1
+	j	ra
+END(strstr)
Index: src/common/lib/libc/arch/mips/string/strrchr.S
diff -u /dev/null src/common/lib/libc/arch/mips/string/strrchr.S:1.1
--- /dev/null	Thu Jul 16 21:25:36 2009
+++ src/common/lib/libc/arch/mips/string/strrchr.S	Thu Jul 16 21:25:36 2009
@@ -0,0 +1,57 @@
+/*	$NetBSD: strrchr.S,v 1.1 2009/07/16 21:25:36 dsl Exp $	*/
+
+/*-
+ * Copyright (c) 1991, 1993
+ *	The Regents of the University of California.  All rights reserved.
+ *
+ * This code is derived from software contributed to Berkeley by
+ * Ralph Campbell.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *notice, this list of conditions and the following disclaimer in the
+ *documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ *may be used to endorse or promote products derived from this software
+ *without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 

CVS commit: src/dist/dhcp/server

2009-07-16 Thread Tonnerre Lombard
Module Name:src
Committed By:   tonnerre
Date:   Thu Jul 16 22:44:27 UTC 2009

Modified Files:
src/dist/dhcp/server: dhcp.c

Log Message:
Fix behavior of dhcpd in the case where clientid and hardware ethernet
definitions are mixed. Fixes a refcount assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/dist/dhcp/server/dhcp.c

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

Modified files:

Index: src/dist/dhcp/server/dhcp.c
diff -u src/dist/dhcp/server/dhcp.c:1.10 src/dist/dhcp/server/dhcp.c:1.11
--- src/dist/dhcp/server/dhcp.c:1.10	Fri Mar 31 17:28:50 2006
+++ src/dist/dhcp/server/dhcp.c	Thu Jul 16 22:44:27 2009
@@ -34,7 +34,7 @@
 
 #ifndef lint
 static char copyright[] =
-$Id: dhcp.c,v 1.10 2006/03/31 17:28:50 christos Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
+$Id: dhcp.c,v 1.11 2009/07/16 22:44:27 tonnerre Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
 #endif /* not lint */
 
 #include dhcpd.h
@@ -1763,6 +1763,8 @@
 host_reference (host, h, MDL);
 		}
 		if (!host) {
+			if (hp)
+host_dereference (hp, MDL);
 			find_hosts_by_haddr (hp,
 	 packet - raw - htype,
 	 packet - raw - chaddr,



CVS commit: src/sbin/fsck

2009-07-16 Thread David Young
Module Name:src
Committed By:   dyoung
Date:   Thu Jul 16 23:50:32 UTC 2009

Modified Files:
src/sbin/fsck: partutil.c

Log Message:
Callers expect getdiskinfo() to return -1 on error, so do that.

Simplify getdiskinfo() a bit while I am here: don't save error
codes that we will never refer to again.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/sbin/fsck/partutil.c

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/partutil.c
diff -u src/sbin/fsck/partutil.c:1.8 src/sbin/fsck/partutil.c:1.9
--- src/sbin/fsck/partutil.c:1.8	Sun Jun 14 21:06:18 2009
+++ src/sbin/fsck/partutil.c	Thu Jul 16 23:50:32 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: partutil.c,v 1.8 2009/06/14 21:06:18 haad Exp $	*/
+/*	$NetBSD: partutil.c,v 1.9 2009/07/16 23:50:32 dyoung Exp $	*/
 
 /*-
  * Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include sys/cdefs.h
-__RCSID($NetBSD: partutil.c,v 1.8 2009/06/14 21:06:18 haad Exp $);
+__RCSID($NetBSD: partutil.c,v 1.9 2009/07/16 23:50:32 dyoung Exp $);
 
 #include sys/types.h
 #include sys/disklabel.h
@@ -155,10 +155,7 @@
 	struct disklabel lab;
 	struct disklabel *lp = lab;
 	prop_dictionary_t disk_dict, geom_dict;
-	int error;
 
-	error = 0;
-	
 	if (dt) {
 		lp = getdiskbyname(dt);
 		if (lp == NULL)
@@ -166,17 +163,16 @@
 	}
 
 	/* Get disk description dictionary */
-	if ((error = prop_dictionary_recv_ioctl(fd, DIOCGDISKINFO,
-		disk_dict)) != 0) {
+	if (prop_dictionary_recv_ioctl(fd, DIOCGDISKINFO, disk_dict)) {
 		/*
 		 * Ask for disklabel if DIOCGDISKINFO failed. This is
 		 * compatibility call and can be removed when all devices
 		 * will support DIOCGDISKINFO.
 		 * cgd, ccd pseudo disk drives doesn't support DIOCGDDISKINFO
 		 */
-		if ((error = ioctl(fd, DIOCGDINFO, lp)) == -1) {
+		if (ioctl(fd, DIOCGDINFO, lp) == -1) {
 			printf(DIOCGDINFO on %s failed\n, s);
-			return (errno);
+			return -1;
 		}
 		label2geom(geo, lp);
 	} else {



CVS commit: src/sys/kern

2009-07-16 Thread David Young
Module Name:src
Committed By:   dyoung
Date:   Thu Jul 16 23:53:10 UTC 2009

Modified Files:
src/sys/kern: Make.tags.inc

Log Message:
A definition in aic79xxvar.h somehow shadows pci_attach_args (ctags
bug?), so leave  it out of the tags computation for now.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/kern/Make.tags.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/kern/Make.tags.inc
diff -u src/sys/kern/Make.tags.inc:1.20 src/sys/kern/Make.tags.inc:1.21
--- src/sys/kern/Make.tags.inc:1.20	Mon Jun 29 18:03:37 2009
+++ src/sys/kern/Make.tags.inc	Thu Jul 16 23:53:10 2009
@@ -1,4 +1,4 @@
-#	$NetBSD: Make.tags.inc,v 1.20 2009/06/29 18:03:37 dyoung Exp $
+#	$NetBSD: Make.tags.inc,v 1.21 2009/07/16 23:53:10 dyoung Exp $
 #
 #	from: @(#)Make.tags.inc	8.1 (Berkeley) 6/11/93
 
@@ -15,7 +15,7 @@
 # This promises to be easier to maintain, considering how often the directory
 # structure of the kernel sources has been changing recently.
 SYSDIR?= ${.CURDIR:H:H}
-FINDCOMM=	find -H ${SYSDIR} \( -path '*/dist/ipf' -o -name arch -o -name rump -o -name coda \) -prune -o -type f -name *.[ch] \( \! -name 'altq.h' \! -name 'nbcompat.h' \! -name 'pf_osfp.c' \! -name 'unichromereg.h' \! -name 'usb_port.h' \! -name 'midway*' \! -name 'if_lmc.[ch]' \) -print | \
+FINDCOMM=	find -H ${SYSDIR} \( -path '*/dist/ipf' -o -name arch -o -name rump -o -name coda \) -prune -o -type f -name *.[ch] \( \! -name 'altq.h' \! -name 'nbcompat.h' \! -name 'pf_osfp.c' \! -name 'unichromereg.h' \! -name 'usb_port.h' \! -name 'midway*' \! -name 'if_lmc.[ch]' \! -name 'aic79xxvar.h' \) -print | \
 sort -t / -u
 COMM!=	${FINDCOMM}
 .endif



CVS commit: [netbsd-4-0] src/dist/dhcp/server

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:47:52 UTC 2009

Modified Files:
src/dist/dhcp/server [netbsd-4-0]: dhcp.c

Log Message:
Pull up following revision(s) (requested by tonnerre in ticket #1337):
dist/dhcp/server/dhcp.c: revision 1.11
Fix behavior of dhcpd in the case where clientid and hardware ethernet
definitions are mixed. Fixes a refcount assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.14.1 src/dist/dhcp/server/dhcp.c

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

Modified files:

Index: src/dist/dhcp/server/dhcp.c
diff -u src/dist/dhcp/server/dhcp.c:1.10 src/dist/dhcp/server/dhcp.c:1.10.14.1
--- src/dist/dhcp/server/dhcp.c:1.10	Fri Mar 31 17:28:50 2006
+++ src/dist/dhcp/server/dhcp.c	Fri Jul 17 05:47:51 2009
@@ -34,7 +34,7 @@
 
 #ifndef lint
 static char copyright[] =
-$Id: dhcp.c,v 1.10 2006/03/31 17:28:50 christos Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
+$Id: dhcp.c,v 1.10.14.1 2009/07/17 05:47:51 snj Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
 #endif /* not lint */
 
 #include dhcpd.h
@@ -1763,6 +1763,8 @@
 host_reference (host, h, MDL);
 		}
 		if (!host) {
+			if (hp)
+host_dereference (hp, MDL);
 			find_hosts_by_haddr (hp,
 	 packet - raw - htype,
 	 packet - raw - chaddr,



CVS commit: [netbsd-4-0] src/doc

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:48:20 UTC 2009

Modified Files:
src/doc [netbsd-4-0]: CHANGES-4.0.2

Log Message:
Ticket 1337.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.45 -r1.1.2.46 src/doc/CHANGES-4.0.2

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

Modified files:

Index: src/doc/CHANGES-4.0.2
diff -u src/doc/CHANGES-4.0.2:1.1.2.45 src/doc/CHANGES-4.0.2:1.1.2.46
--- src/doc/CHANGES-4.0.2:1.1.2.45	Tue Jul 14 19:58:42 2009
+++ src/doc/CHANGES-4.0.2	Fri Jul 17 05:48:19 2009
@@ -1,4 +1,4 @@
-#	$NetBSD: CHANGES-4.0.2,v 1.1.2.45 2009/07/14 19:58:42 snj Exp $
+#	$NetBSD: CHANGES-4.0.2,v 1.1.2.46 2009/07/17 05:48:19 snj Exp $
 
 A complete list of changes from the NetBSD 4.0.1 release to the NetBSD 4.0.2
 release:
@@ -723,3 +723,9 @@
 	Fixes CVE-2009-0692.
 	[tonnerre, ticket #1336]
 
+dist/dhcp/server/dhcp.c1.11
+
+	Fix behavior of dhcpd in the case where clientid and hardware
+	ethernet definitions are mixed. Fixes a refcount assertion.
+	[tonnerre, ticket #1337]
+



CVS commit: [netbsd-4] src/dist/dhcp/server

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:48:50 UTC 2009

Modified Files:
src/dist/dhcp/server [netbsd-4]: dhcp.c

Log Message:
Pull up following revision(s) (requested by tonnerre in ticket #1337):
dist/dhcp/server/dhcp.c: revision 1.11
Fix behavior of dhcpd in the case where clientid and hardware ethernet
definitions are mixed. Fixes a refcount assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.4.1 src/dist/dhcp/server/dhcp.c

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

Modified files:

Index: src/dist/dhcp/server/dhcp.c
diff -u src/dist/dhcp/server/dhcp.c:1.10 src/dist/dhcp/server/dhcp.c:1.10.4.1
--- src/dist/dhcp/server/dhcp.c:1.10	Fri Mar 31 17:28:50 2006
+++ src/dist/dhcp/server/dhcp.c	Fri Jul 17 05:48:49 2009
@@ -34,7 +34,7 @@
 
 #ifndef lint
 static char copyright[] =
-$Id: dhcp.c,v 1.10 2006/03/31 17:28:50 christos Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
+$Id: dhcp.c,v 1.10.4.1 2009/07/17 05:48:49 snj Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
 #endif /* not lint */
 
 #include dhcpd.h
@@ -1763,6 +1763,8 @@
 host_reference (host, h, MDL);
 		}
 		if (!host) {
+			if (hp)
+host_dereference (hp, MDL);
 			find_hosts_by_haddr (hp,
 	 packet - raw - htype,
 	 packet - raw - chaddr,



CVS commit: [netbsd-4] src/doc

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:49:30 UTC 2009

Modified Files:
src/doc [netbsd-4]: CHANGES-4.1

Log Message:
Ticket 1337.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.165 -r1.1.2.166 src/doc/CHANGES-4.1

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

Modified files:

Index: src/doc/CHANGES-4.1
diff -u src/doc/CHANGES-4.1:1.1.2.165 src/doc/CHANGES-4.1:1.1.2.166
--- src/doc/CHANGES-4.1:1.1.2.165	Tue Jul 14 19:56:28 2009
+++ src/doc/CHANGES-4.1	Fri Jul 17 05:49:30 2009
@@ -1,4 +1,4 @@
-#	$NetBSD: CHANGES-4.1,v 1.1.2.165 2009/07/14 19:56:28 snj Exp $
+#	$NetBSD: CHANGES-4.1,v 1.1.2.166 2009/07/17 05:49:30 snj Exp $
 
 A complete list of changes from the NetBSD 4.0 release to the NetBSD 4.1
 release:
@@ -3573,3 +3573,9 @@
 	Fixes CVE-2009-0692.
 	[tonnerre, ticket #1336]
 
+dist/dhcp/server/dhcp.c1.11
+
+	Fix behavior of dhcpd in the case where clientid and hardware
+	ethernet definitions are mixed. Fixes a refcount assertion.
+	[tonnerre, ticket #1337]
+



CVS commit: [netbsd-5-0] src/dist/dhcp/server

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:51:05 UTC 2009

Modified Files:
src/dist/dhcp/server [netbsd-5-0]: dhcp.c

Log Message:
Pull up following revision(s) (requested by tonnerre in ticket #860):
dist/dhcp/server/dhcp.c: revision 1.11
Fix behavior of dhcpd in the case where clientid and hardware ethernet
definitions are mixed. Fixes a refcount assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.30.1 src/dist/dhcp/server/dhcp.c

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

Modified files:

Index: src/dist/dhcp/server/dhcp.c
diff -u src/dist/dhcp/server/dhcp.c:1.10 src/dist/dhcp/server/dhcp.c:1.10.30.1
--- src/dist/dhcp/server/dhcp.c:1.10	Fri Mar 31 17:28:50 2006
+++ src/dist/dhcp/server/dhcp.c	Fri Jul 17 05:51:05 2009
@@ -34,7 +34,7 @@
 
 #ifndef lint
 static char copyright[] =
-$Id: dhcp.c,v 1.10 2006/03/31 17:28:50 christos Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
+$Id: dhcp.c,v 1.10.30.1 2009/07/17 05:51:05 snj Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
 #endif /* not lint */
 
 #include dhcpd.h
@@ -1763,6 +1763,8 @@
 host_reference (host, h, MDL);
 		}
 		if (!host) {
+			if (hp)
+host_dereference (hp, MDL);
 			find_hosts_by_haddr (hp,
 	 packet - raw - htype,
 	 packet - raw - chaddr,



CVS commit: [netbsd-5-0] src/doc

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:51:34 UTC 2009

Modified Files:
src/doc [netbsd-5-0]: CHANGES-5.0.1

Log Message:
Ticket 860.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.35 -r1.1.2.36 src/doc/CHANGES-5.0.1

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

Modified files:

Index: src/doc/CHANGES-5.0.1
diff -u src/doc/CHANGES-5.0.1:1.1.2.35 src/doc/CHANGES-5.0.1:1.1.2.36
--- src/doc/CHANGES-5.0.1:1.1.2.35	Tue Jul 14 19:54:09 2009
+++ src/doc/CHANGES-5.0.1	Fri Jul 17 05:51:33 2009
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-5.0.1,v 1.1.2.35 2009/07/14 19:54:09 snj Exp $
+# $NetBSD: CHANGES-5.0.1,v 1.1.2.36 2009/07/17 05:51:33 snj Exp $
 
 A complete list of changes from the NetBSD 5.0 release to the NetBSD 5.0.1
 release:
@@ -612,3 +612,9 @@
 	Fixes CVE-2009-0692.
 	[tonnerre, ticket #856]
 
+dist/dhcp/server/dhcp.c1.11
+
+	Fix behavior of dhcpd in the case where clientid and hardware
+	ethernet definitions are mixed. Fixes a refcount assertion.
+	[tonnerre, ticket #860]
+



CVS commit: [netbsd-5] src/dist/dhcp/server

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:52:14 UTC 2009

Modified Files:
src/dist/dhcp/server [netbsd-5]: dhcp.c

Log Message:
Pull up following revision(s) (requested by tonnerre in ticket #860):
dist/dhcp/server/dhcp.c: revision 1.11
Fix behavior of dhcpd in the case where clientid and hardware ethernet
definitions are mixed. Fixes a refcount assertion.


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.26.1 src/dist/dhcp/server/dhcp.c

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

Modified files:

Index: src/dist/dhcp/server/dhcp.c
diff -u src/dist/dhcp/server/dhcp.c:1.10 src/dist/dhcp/server/dhcp.c:1.10.26.1
--- src/dist/dhcp/server/dhcp.c:1.10	Fri Mar 31 17:28:50 2006
+++ src/dist/dhcp/server/dhcp.c	Fri Jul 17 05:52:14 2009
@@ -34,7 +34,7 @@
 
 #ifndef lint
 static char copyright[] =
-$Id: dhcp.c,v 1.10 2006/03/31 17:28:50 christos Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
+$Id: dhcp.c,v 1.10.26.1 2009/07/17 05:52:14 snj Exp $ Copyright (c) 2004-2005 Internet Systems Consortium.  All rights reserved.\n;
 #endif /* not lint */
 
 #include dhcpd.h
@@ -1763,6 +1763,8 @@
 host_reference (host, h, MDL);
 		}
 		if (!host) {
+			if (hp)
+host_dereference (hp, MDL);
 			find_hosts_by_haddr (hp,
 	 packet - raw - htype,
 	 packet - raw - chaddr,



CVS commit: [netbsd-5] src/doc

2009-07-16 Thread Soren Jacobsen
Module Name:src
Committed By:   snj
Date:   Fri Jul 17 05:52:49 UTC 2009

Modified Files:
src/doc [netbsd-5]: CHANGES-5.1

Log Message:
Ticket 860.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.47 -r1.1.2.48 src/doc/CHANGES-5.1

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

Modified files:

Index: src/doc/CHANGES-5.1
diff -u src/doc/CHANGES-5.1:1.1.2.47 src/doc/CHANGES-5.1:1.1.2.48
--- src/doc/CHANGES-5.1:1.1.2.47	Tue Jul 14 19:52:16 2009
+++ src/doc/CHANGES-5.1	Fri Jul 17 05:52:49 2009
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-5.1,v 1.1.2.47 2009/07/14 19:52:16 snj Exp $
+# $NetBSD: CHANGES-5.1,v 1.1.2.48 2009/07/17 05:52:49 snj Exp $
 
 A complete list of changes from the NetBSD 5.0 release to the NetBSD 5.1
 release:
@@ -1573,3 +1573,9 @@
 	Fixes CVE-2009-0692.
 	[tonnerre, ticket #856]
 
+dist/dhcp/server/dhcp.c1.11
+
+	Fix behavior of dhcpd in the case where clientid and hardware
+	ethernet definitions are mixed. Fixes a refcount assertion.
+	[tonnerre, ticket #860]
+