CVS commit: src/share/man/man4

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 08:11:22 UTC 2010

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

Log Message:
Remark acpicpu(4).


To generate a diff of this commit:
cvs rdiff -u -r1.398 -r1.399 src/share/man/man4/options.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/options.4
diff -u src/share/man/man4/options.4:1.398 src/share/man/man4/options.4:1.399
--- src/share/man/man4/options.4:1.398	Mon Dec 20 18:18:32 2010
+++ src/share/man/man4/options.4	Tue Dec 21 08:11:21 2010
@@ -1,4 +1,4 @@
-.\	$NetBSD: options.4,v 1.398 2010/12/20 18:18:32 jruoho Exp $
+.\	$NetBSD: options.4,v 1.399 2010/12/21 08:11:21 jruoho Exp $
 .\
 .\ Copyright (c) 1996
 .\ 	Perry E. Metzger.  All rights reserved.
@@ -30,7 +30,7 @@
 .\ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\
 .\
-.Dd September 21, 2010
+.Dd December 21, 2010
 .Dt OPTIONS 4
 .Os
 .Sh NAME
@@ -2408,12 +2408,15 @@
 .Bl -ohang
 .It Cd options ENHANCED_SPEEDSTEP
 Include support for the
-.Tn Enhanced SpeedStep Technology
-present in newer
-.Tn CPU Ns s .
+.Dq Enhanced SpeedStep Technology .
+Note that new systems supporting
+.Xr acpi 4
+should prefer
+.Xr acpicpu 4
+instead.
 .It Cd options EST_FREQ_USERWRITE
 Allow any user to change the frequency of an
-.Tn Enhanced SpeedStep Technology
+.Dq Enhanced SpeedStep Technology .
 capable
 .Tn CPU .
 .It Cd options INTEL_ONDEMAND_CLOCKMOD
@@ -2430,6 +2433,11 @@
 Include support for AMD Athlon 64 PowerNow! and Cool`n'Quiet
 Technology, used to change the CPU voltage and frequency
 on the fly.
+Note that new systems supporting
+.Xr acpi 4
+should prefer
+.Xr acpicpu 4
+instead.
 .El
 .Ss atari-specific Options
 .Bl -ohang
@@ -2462,12 +2470,15 @@
 .Bl -ohang
 .It Cd options ENHANCED_SPEEDSTEP
 Include support for the
-.Tn Enhanced SpeedStep Technology
-present in newer
-.Tn CPU Ns s .
+.Dq Enhanced SpeedStep Technology .
+Note that new systems supporting
+.Xr acpi 4
+should prefer
+.Xr acpicpu 4
+instead.
 .It Cd options EST_FREQ_USERWRITE
 Allow any user to change the frequency of an
-.Tn Enhanced SpeedStep Technology
+.Dq Enhanced SpeedStep Technology
 capable
 .Tn CPU .
 .It Cd options INTEL_ONDEMAND_CLOCKMOD



CVS commit: src/share/man/man8

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 08:50:18 UTC 2010

Modified Files:
src/share/man/man8: security.8

Log Message:
Note the 'vm.user_va0_disable', labelled as protections against NULL
pointer dereferences.


To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.28 src/share/man/man8/security.8

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/man8/security.8
diff -u src/share/man/man8/security.8:1.27 src/share/man/man8/security.8:1.28
--- src/share/man/man8/security.8:1.27	Sun Dec 19 08:31:38 2010
+++ src/share/man/man8/security.8	Tue Dec 21 08:50:18 2010
@@ -1,4 +1,4 @@
-.\ $NetBSD: security.8,v 1.27 2010/12/19 08:31:38 jruoho Exp $
+.\ $NetBSD: security.8,v 1.28 2010/12/21 08:50:18 jruoho Exp $
 .\
 .\ Copyright (c) 2006 Elad Efrat e...@netbsd.org
 .\ All rights reserved.
@@ -25,7 +25,7 @@
 .\ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\
-.Dd December 19, 2010
+.Dd December 21, 2010
 .Dt SECURITY 8
 .Os
 .Sh NAME
@@ -95,6 +95,10 @@
 .It
 bounds checked libc functions
 .Pq Tn FORTIFY_SOURCE
+.It
+Protections against
+.Dv NULL
+pointer dereferences
 .El
 .Ss PaX ASLR
 .Em PaX ASLR
@@ -332,6 +336,39 @@
 .Bd -literal -offset indent
 USE_FORT=yes
 .Ed
+.Ss Protections against NULL pointer dereferences
+A certain class of attacks rely on kernel bugs that dereference
+.Dv NULL
+pointers.
+If user processes are allowed to map the virtual address 0 with
+.Xr mmap 2
+or by other means, there is a risk that code or data
+can be injected into the kernel address space.
+.Pp
+In
+.Nx
+it is possible to restrict whether user processes are
+allowed to make mappings at the zero address.
+By default, address 0 mappings are restricted
+on the i386 and amd64 architectures.
+It is however known that some third-party programs
+may not function properly with the restriction.
+Such mappings can be allowed either by using the
+.Dv USER_VA0_DISABLE_DEFAULT
+kernel configuration
+.Xr option 4
+or by changing the following variable at runtime:
+.Bd -literal -offset indent
+# sysctl -w vm.user_va0_disable=0
+.Ed
+.Pp
+Note that if
+.Em securelevel
+(see
+.Xr secmodel_securelevel 9 )
+is greater than zero, it is not possible to change the
+.Xr sysctl 8
+variable.
 .Sh PER-USER TEMPORARY STORAGE
 It is possible to configure per-user temporary storage to avoid potential
 security issues (race conditions, etc.) in programs that do not make secure



CVS commit: src/share/man/man9

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 08:53:25 UTC 2010

Modified Files:
src/share/man/man9: secmodel_securelevel.9

Log Message:
Note vm.user_va0_disable.


To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/share/man/man9/secmodel_securelevel.9

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/man9/secmodel_securelevel.9
diff -u src/share/man/man9/secmodel_securelevel.9:1.8 src/share/man/man9/secmodel_securelevel.9:1.9
--- src/share/man/man9/secmodel_securelevel.9:1.8	Tue Dec 14 09:09:52 2010
+++ src/share/man/man9/secmodel_securelevel.9	Tue Dec 21 08:53:25 2010
@@ -1,4 +1,4 @@
-.\ $NetBSD: secmodel_securelevel.9,v 1.8 2010/12/14 09:09:52 jruoho Exp $
+.\ $NetBSD: secmodel_securelevel.9,v 1.9 2010/12/21 08:53:25 jruoho Exp $
 .\
 .\ Copyright (c) 2006 Elad Efrat e...@netbsd.org
 .\ Copyright (c) 2000 Hugh Graham
@@ -26,7 +26,7 @@
 .\ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 .\ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .\
-.Dd December 14, 2009
+.Dd December 21, 2010
 .Dt SECMODEL_SECURELEVEL 9
 .Os
 .Sh NAME
@@ -92,10 +92,12 @@
 .It
 Kernel modules may not be loaded or unloaded.
 .It
-The
+Neither
 .Va net.inet.ip.sourceroute
+nor
+.Va vm.user_va0_disable
 .Xr sysctl 8
-variable may not be changed.
+variable may be changed.
 .It
 Adding or removing
 .Xr sysctl 9



CVS commit: src/tests/lib/libc/stdio

2010-12-21 Thread Paul Goyette
Module Name:src
Committed By:   pgoyette
Date:   Tue Dec 21 14:23:43 UTC 2010

Modified Files:
src/tests/lib/libc/stdio: t_format.c

Log Message:
Migrate a few more tests from old regress style to atf


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/tests/lib/libc/stdio/t_format.c

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

Modified files:

Index: src/tests/lib/libc/stdio/t_format.c
diff -u src/tests/lib/libc/stdio/t_format.c:1.3 src/tests/lib/libc/stdio/t_format.c:1.4
--- src/tests/lib/libc/stdio/t_format.c:1.3	Wed Dec  1 07:12:03 2010
+++ src/tests/lib/libc/stdio/t_format.c	Tue Dec 21 14:23:42 2010
@@ -56,10 +56,73 @@
 #endif
 }
 
+ATF_TC(dot_zero_f);
+
+ATF_TC_HEAD(dot_zero_f, tc)
+{
+
+	atf_tc_set_md_var(tc, descr, \
+	PR lib/32951: %.0f formats (0.0,0.5] to \0.\);
+}
+
+ATF_TC_BODY(dot_zero_f, tc)
+{
+	char s[4];
+
+	ATF_CHECK(snprintf(s, sizeof(s), %.0f, 0.1) == 1);
+	ATF_REQUIRE_STREQ(s, 0);
+}
+
+ATF_TC(sscanf_neg_hex);
+
+ATF_TC_HEAD(sscanf_neg_hex, tc)
+{
+
+	atf_tc_set_md_var(tc, descr, \
+	PR lib/21691: %i and %x fail with negative hex numbers);
+}
+
+ATF_TC_BODY(sscanf_neg_hex, tc)
+{
+#define NUM -0x1234
+#define STRNUM  ___STRING(NUM)
+
+int i;
+
+sscanf(STRNUM, %i, i);
+	ATF_REQUIRE(i == NUM);
+
+sscanf(STRNUM, %x, i);
+	ATF_REQUIRE(i == NUM);
+}
+
+ATF_TC(sscanf_whitespace);
+
+ATF_TC_HEAD(sscanf_whitespace, tc)
+{
+
+	atf_tc_set_md_var(tc, descr, verify sscanf skips all whitespace);
+}
+
+ATF_TC_BODY(sscanf_whitespace, tc)
+{
+	const char str[] = \f\n\r\t\v%z;
+	char c;
+
+/* set of white space symbols from isspace(3) */
+c = 0;
+(void)sscanf(str, %%%c, c);
+	ATF_REQUIRE(c == 'z');
+}
+
+
 ATF_TP_ADD_TCS(tp)
 {
 
 	ATF_TP_ADD_TC(tp, zero_padding);
+	ATF_TP_ADD_TC(tp, dot_zero_f);
+	ATF_TP_ADD_TC(tp, sscanf_neg_hex);
+	ATF_TP_ADD_TC(tp, sscanf_whitespace);
 
 	return atf_no_error();
 }



CVS commit: src

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 15:05:03 UTC 2010

Modified Files:
src/distrib/sets/lists/comp: mi
src/share/man/man3: Makefile
Added Files:
src/share/man/man3: __builtin_types_compatible_p.3

Log Message:
Document the __builtin_types_compatible_p() GNU/GCC extension.


To generate a diff of this commit:
cvs rdiff -u -r1.1558 -r1.1559 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.67 -r1.68 src/share/man/man3/Makefile
cvs rdiff -u -r0 -r1.1 src/share/man/man3/__builtin_types_compatible_p.3

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/comp/mi
diff -u src/distrib/sets/lists/comp/mi:1.1558 src/distrib/sets/lists/comp/mi:1.1559
--- src/distrib/sets/lists/comp/mi:1.1558	Sun Dec 19 22:53:19 2010
+++ src/distrib/sets/lists/comp/mi	Tue Dec 21 15:05:02 2010
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.1558 2010/12/19 22:53:19 pgoyette Exp $
+#	$NetBSD: mi,v 1.1559 2010/12/21 15:05:02 jruoho Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -4909,10 +4909,11 @@
 ./usr/share/man/cat3/__aligned.0		comp-c-catman		.cat
 ./usr/share/man/cat3/__alignof__.0		comp-c-catman		.cat
 ./usr/share/man/cat3/__arraycount.0		comp-c-catman		.cat
-./usr/share/man/cat3/__builtin_constant_p.0	comp-c-catman		.cat
-./usr/share/man/cat3/__builtin_frame_address.0	comp-c-catman		.cat
-./usr/share/man/cat3/__builtin_object_size.0	comp-c-catman		.cat
-./usr/share/man/cat3/__builtin_return_address.0	comp-c-catman		.cat
+./usr/share/man/cat3/__builtin_constant_p.0		comp-c-catman		.cat
+./usr/share/man/cat3/__builtin_frame_address.0		comp-c-catman		.cat
+./usr/share/man/cat3/__builtin_object_size.0		comp-c-catman		.cat
+./usr/share/man/cat3/__builtin_return_address.0		comp-c-catman		.cat
+./usr/share/man/cat3/__builtin_types_compatible_p.0	comp-c-catman		.cat
 ./usr/share/man/cat3/__cacheline_aligned.0	comp-c-catman		.cat
 ./usr/share/man/cat3/__constfunc.0		comp-c-catman		.cat
 ./usr/share/man/cat3/__dead.0			comp-c-catman		.cat
@@ -11005,6 +11006,7 @@
 ./usr/share/man/html3/__builtin_frame_address.html	comp-c-htmlman		html
 ./usr/share/man/html3/__builtin_object_size.html	comp-c-htmlman		html
 ./usr/share/man/html3/__builtin_return_address.html	comp-c-htmlman		html
+./usr/share/man/html3/__builtin_types_compatible_p.html	comp-c-htmlman		html
 ./usr/share/man/html3/__cacheline_aligned.html	comp-c-htmlman		html
 ./usr/share/man/html3/__constfunc.html		comp-c-htmlman		html
 ./usr/share/man/html3/__dead.html		comp-c-htmlman		html
@@ -16893,10 +16895,11 @@
 ./usr/share/man/man3/__aligned.3		comp-c-man		.man
 ./usr/share/man/man3/__alignof__.3		comp-c-man		.man
 ./usr/share/man/man3/__arraycount.3		comp-c-man		.man
-./usr/share/man/man3/__builtin_constant_p.3	comp-c-man		.man
-./usr/share/man/man3/__builtin_frame_address.3	comp-c-man		.man
-./usr/share/man/man3/__builtin_object_size.3	comp-c-man		.man
-./usr/share/man/man3/__builtin_return_address.3	comp-c-man		.man
+./usr/share/man/man3/__builtin_constant_p.3		comp-c-man		.man
+./usr/share/man/man3/__builtin_frame_address.3		comp-c-man		.man
+./usr/share/man/man3/__builtin_object_size.3		comp-c-man		.man
+./usr/share/man/man3/__builtin_return_address.3		comp-c-man		.man
+./usr/share/man/man3/__builtin_types_compatible_p.3	comp-c-man		.man
 ./usr/share/man/man3/__cacheline_aligned.3	comp-c-man		.man
 ./usr/share/man/man3/__constfunc.3		comp-c-man		.man
 ./usr/share/man/man3/__dead.3			comp-c-man		.man

Index: src/share/man/man3/Makefile
diff -u src/share/man/man3/Makefile:1.67 src/share/man/man3/Makefile:1.68
--- src/share/man/man3/Makefile:1.67	Sun Dec 19 10:07:24 2010
+++ src/share/man/man3/Makefile	Tue Dec 21 15:05:02 2010
@@ -1,9 +1,10 @@
-#	$NetBSD: Makefile,v 1.67 2010/12/19 10:07:24 jruoho Exp $
+#	$NetBSD: Makefile,v 1.68 2010/12/21 15:05:02 jruoho Exp $
 #	@(#)Makefile	8.2 (Berkeley) 12/13/93
 
 MAN=	_DIAGASSERT.3 __CONCAT.3 __UNCONST.3 CMSG_DATA.3 \
 	__alignof__.3 __arraycount.3 \
-	__builtin_constant_p.3 __builtin_return_address.3 __insn_barrier.3 \
+	__builtin_constant_p.3 __builtin_return_address.3 \
+	__builtin_types_compatible_p.3 __insn_barrier.3 \
 	assert.3 attribute.3 bits.3 bitstring.3 \
 	cdefs.3 dirent.3 dlfcn.3 dl_iterate_phdr.3 end.3 \
 	fast_divide32.3 ffs32.3 gcq.3 \

Added files:

Index: src/share/man/man3/__builtin_types_compatible_p.3
diff -u /dev/null src/share/man/man3/__builtin_types_compatible_p.3:1.1
--- /dev/null	Tue Dec 21 15:05:03 2010
+++ src/share/man/man3/__builtin_types_compatible_p.3	Tue Dec 21 15:05:02 2010
@@ -0,0 +1,105 @@
+.\ $NetBSD: __builtin_types_compatible_p.3,v 1.1 2010/12/21 15:05:02 jruoho Exp $
+.\
+.\ Copyright (c) 2010 Jukka Ruohonen jruoho...@iki.fi
+.\ 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. 

CVS commit: src/share/man/man3

2010-12-21 Thread Nicolas Joly
Module Name:src
Committed By:   njoly
Date:   Tue Dec 21 18:05:05 UTC 2010

Modified Files:
src/share/man/man3: tree.3

Log Message:
Fix xref: rb(3) - rbtree(3).


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/share/man/man3/tree.3

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/man3/tree.3
diff -u src/share/man/man3/tree.3:1.6 src/share/man/man3/tree.3:1.7
--- src/share/man/man3/tree.3:1.6	Wed May  5 06:24:43 2010
+++ src/share/man/man3/tree.3	Tue Dec 21 18:05:05 2010
@@ -1,4 +1,4 @@
-.\	$NetBSD: tree.3,v 1.6 2010/05/05 06:24:43 jruoho Exp $
+.\	$NetBSD: tree.3,v 1.7 2010/12/21 18:05:05 njoly Exp $
 .\	$OpenBSD: tree.3,v 1.9 2003/05/20 09:13:38 jmc Exp $
 .\/*
 .\ * Copyright 2002 Niels Provos pro...@citi.umich.edu
@@ -133,7 +133,7 @@
 .Sh DESCRIPTION
 .Bf -symbolic
 This is a legacy interface; for new code,
-.Xr rb 3
+.Xr rbtree 3
 is preferred.
 .Ef
 .Pp



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

2010-12-21 Thread Nicolas Joly
Module Name:src
Committed By:   njoly
Date:   Tue Dec 21 18:05:43 UTC 2010

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

Log Message:
+t_libm.debug.


To generate a diff of this commit:
cvs rdiff -u -r1.184 -r1.185 src/distrib/sets/lists/tests/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/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.184 src/distrib/sets/lists/tests/mi:1.185
--- src/distrib/sets/lists/tests/mi:1.184	Mon Dec 20 23:47:23 2010
+++ src/distrib/sets/lists/tests/mi	Tue Dec 21 18:05:43 2010
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.184 2010/12/20 23:47:23 pgoyette Exp $
+# $NetBSD: mi,v 1.185 2010/12/21 18:05:43 njoly Exp $
 #
 # Note: don't delete entries from here - mark them as obsolete instead.
 #
@@ -340,6 +340,7 @@
 ./usr/libdata/debug/usr/tests/lib/libeventtests-lib-debug
 ./usr/libdata/debug/usr/tests/lib/libevent/h_event.debug		tests-lib-debug		debug,atf
 ./usr/libdata/debug/usr/tests/lib/libm	tests-lib-debug
+./usr/libdata/debug/usr/tests/lib/libm/t_libm.debug			tests-lib-debug		debug,atf
 ./usr/libdata/debug/usr/tests/lib/libobjctests-lib-debug
 ./usr/libdata/debug/usr/tests/lib/libobjc/t_threads.debug		tests-lib-debug		debug,atf
 ./usr/libdata/debug/usr/tests/lib/libposixtests-lib-debug



CVS commit: src/lib/libutil

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Dec 21 18:13:03 UTC 2010

Modified Files:
src/lib/libutil: parsedate.y

Log Message:
fix incorrect overflow check from Nicholas Joly


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/lib/libutil/parsedate.y

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

Modified files:

Index: src/lib/libutil/parsedate.y
diff -u src/lib/libutil/parsedate.y:1.7 src/lib/libutil/parsedate.y:1.8
--- src/lib/libutil/parsedate.y:1.7	Mon Dec 20 19:14:10 2010
+++ src/lib/libutil/parsedate.y	Tue Dec 21 13:13:02 2010
@@ -673,7 +673,7 @@
 oJulian = Julian;
 
 Julian += yyTimezone * 60L;
-if (oJulian  Julian)
+if (oJulian  Julian  yyTimezone  0)
 	return -1;
 oJulian = Julian;
 



CVS commit: src/doc

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 18:27:19 UTC 2010

Modified Files:
src/doc: CHANGES

Log Message:
Clean-up some of my entries.


To generate a diff of this commit:
cvs rdiff -u -r1.1477 -r1.1478 src/doc/CHANGES

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

Modified files:

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.1477 src/doc/CHANGES:1.1478
--- src/doc/CHANGES:1.1477	Sun Dec 19 15:58:14 2010
+++ src/doc/CHANGES	Tue Dec 21 18:27:18 2010
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			$Revision: 1.1477 $
+# LIST OF CHANGES FROM LAST RELEASE:			$Revision: 1.1478 $
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -612,13 +612,9 @@
 		a snapshot of a live file system. [hannken 20100411]
 	rump(3): Support file system snapshots.  [pooka 20100412]
 	hpcarm: Add support for Sharp W-ZERO3 series. [nonaka 20100417]
-	acpi(4): Statistical event counters were added to hw.acpi.stat
-		sysctl(8) tree. Dynamic debug output messages provided by the
-		interpreter were added for ACPI_DEBUG kernels. These are
-		controllable from the hw.acpi.debug sysctl(8) namespace.
-		Furthermore, the ACPI device wake-up sysctl(8) tree was moved
-		from hw.wake to hw.acpi.wake. [jruoho 20100419]
-	acpiwmi(4): Added two mappings (child devices) for the ACPI WMI.
+	acpi(4): The sysctl(8) tree was reorganized into hw.acpi.
+		[jruoho 20100419]
+	acpiwmi(4): Add three mappings, wmidell(4), wmihp(4), and wmimsi(4).
 		[jruoho 20100419]
 	kernel: Enforce RLIMIT_FSIZE above the file system.  This fixes
 		the feature for some file systems.  [pooka 20100423]
@@ -718,7 +714,7 @@
 		write through mapping for framebuffer memory.
 		[tsutsui 20100808]
 	bind: Update to 9.7.2b1. [christos 20100806]
-	acpicpu(4): add a driver for ACPI-based processor functionality.
+	acpicpu(4): Add a driver for ACPI-based processor functionality.
 		[jruoho 20100815]
 	network: Added NPF - a new packet filter. [rmind 20100822]
 	tests(7): Convert the libdes tests to ATF.  [jmmv 20100825]



CVS commit: src/doc

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 18:28:59 UTC 2010

Modified Files:
src/doc: 3RDPARTY

Log Message:
ACPICA 20101209 is out.

Major rework of the GPE handling. A lot of API breakages. Perhaps not worth
updating before 6.0, given that the current version works relatively well.


To generate a diff of this commit:
cvs rdiff -u -r1.795 -r1.796 src/doc/3RDPARTY

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

Modified files:

Index: src/doc/3RDPARTY
diff -u src/doc/3RDPARTY:1.795 src/doc/3RDPARTY:1.796
--- src/doc/3RDPARTY:1.795	Wed Dec 15 02:59:05 2010
+++ src/doc/3RDPARTY	Tue Dec 21 18:28:59 2010
@@ -1,4 +1,4 @@
-#	$NetBSD: 3RDPARTY,v 1.795 2010/12/15 02:59:05 christos Exp $
+#	$NetBSD: 3RDPARTY,v 1.796 2010/12/21 18:28:59 jruoho Exp $
 #
 # This file contains a list of the software that has been integrated into
 # NetBSD where we are not the primary maintainer.
@@ -26,7 +26,7 @@
 
 Package:	acpica
 Version:	20100528
-Current Vers:	20100806
+Current Vers:	20101209
 Maintainer:	INTEL
 Archive Site:	http://www.acpica.org/downloads/unix_source_code.php
 Home Page:	http://www.acpica.org/



CVS commit: src/doc

2010-12-21 Thread Jukka Ruohonen
Module Name:src
Committed By:   jruoho
Date:   Tue Dec 21 18:35:49 UTC 2010

Modified Files:
src/doc: CHANGES

Log Message:
Correct entry [jmcneill 20090804] (the hw.wake was moved to hw.acpi.wake).


To generate a diff of this commit:
cvs rdiff -u -r1.1478 -r1.1479 src/doc/CHANGES

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

Modified files:

Index: src/doc/CHANGES
diff -u src/doc/CHANGES:1.1478 src/doc/CHANGES:1.1479
--- src/doc/CHANGES:1.1478	Tue Dec 21 18:27:18 2010
+++ src/doc/CHANGES	Tue Dec 21 18:35:49 2010
@@ -1,4 +1,4 @@
-# LIST OF CHANGES FROM LAST RELEASE:			$Revision: 1.1478 $
+# LIST OF CHANGES FROM LAST RELEASE:			$Revision: 1.1479 $
 #
 #
 # [Note: This file does not mention every change made to the NetBSD source tree.
@@ -366,7 +366,7 @@
 		switch and sleep/power buttons as a method of waking the
 		machine from sleep. Any ACPI device node with a _PRW method
 		is now a candidate, and the device nodes are listed in the
-		hw.wake namespace. By default, the following device node
+		hw.acpi.wake namespace. By default, the following device node
 		types are enabled as wakeup devices if the firmware supports
 		it: lid switch, sleep/power button, PC keyboard controller.
 		[jmcneill 20090804]



CVS commit: src/etc/etc.ofppc

2010-12-21 Thread Frank Wille
Module Name:src
Committed By:   phx
Date:   Tue Dec 21 19:18:47 UTC 2010

Modified Files:
src/etc/etc.ofppc: ttys

Log Message:
Add ttyE1-ttyE3 for wscons.
Use serial devices tty00, tty01, tty10 and tty11, which are configured
by MAKEDEV.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/etc/etc.ofppc/ttys

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

Modified files:

Index: src/etc/etc.ofppc/ttys
diff -u src/etc/etc.ofppc/ttys:1.6 src/etc/etc.ofppc/ttys:1.7
--- src/etc/etc.ofppc/ttys:1.6	Tue Oct  7 10:00:02 2008
+++ src/etc/etc.ofppc/ttys	Tue Dec 21 19:18:46 2010
@@ -1,17 +1,16 @@
 #
 #	from: @(#)ttys	5.1 (Berkeley) 4/17/89
-#	$NetBSD: ttys,v 1.6 2008/10/07 10:00:02 abs Exp $
+#	$NetBSD: ttys,v 1.7 2010/12/21 19:18:46 phx Exp $
 #
 # name	gettytype	status		comments
 #
-console	/usr/libexec/getty std.9600	vt100	on secure
+console	/usr/libexec/getty std.9600	vt100	off secure
 constty	/usr/libexec/getty std.9600	vt100	off secure
-ttyE0	/usr/libexec/getty std.9600	vt100	off secure
-tty00	/usr/libexec/getty std.9600	vt100	off secure
-tty01	/usr/libexec/getty std.9600	unknown	off secure
-tty02	/usr/libexec/getty std.9600	unknown	off secure
-tty03	/usr/libexec/getty std.9600	unknown	off secure
-tty04	/usr/libexec/getty std.9600	unknown	off secure
-tty05	/usr/libexec/getty std.9600	unknown	off secure
-tty06	/usr/libexec/getty std.9600	unknown	off secure
-tty07	/usr/libexec/getty std.9600	unknown	off secure
+ttyE0	/usr/libexec/getty std.9600	vt220	on secure
+ttyE1	/usr/libexec/getty std.9600	vt220	on secure
+ttyE2	/usr/libexec/getty std.9600	vt220	on secure
+ttyE3	/usr/libexec/getty std.9600	vt220	on secure
+tty00	/usr/libexec/getty std.38400	vt100	off secure
+tty01	/usr/libexec/getty std.38400	vt100	off secure
+tty10	/usr/libexec/getty std.38400	vt100	off secure
+tty11	/usr/libexec/getty std.38400	vt100	off secure



CVS commit: src/usr.bin/xargs

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Dec 21 20:30:13 UTC 2010

Modified Files:
src/usr.bin/xargs: xargs.1

Log Message:
PR/44259: Aleksey Cheusov: xargs: -r option is supported but not documented
Synced with the FreeBSD doc.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/usr.bin/xargs/xargs.1

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/xargs/xargs.1
diff -u src/usr.bin/xargs/xargs.1:1.20 src/usr.bin/xargs/xargs.1:1.21
--- src/usr.bin/xargs/xargs.1:1.20	Sun Dec  2 14:47:56 2007
+++ src/usr.bin/xargs/xargs.1	Tue Dec 21 15:30:13 2010
@@ -1,4 +1,4 @@
-.\ $NetBSD: xargs.1,v 1.20 2007/12/02 19:47:56 wiz Exp $
+.\ $NetBSD: xargs.1,v 1.21 2010/12/21 20:30:13 christos Exp $
 .\
 .\ Copyright (c) 1990, 1991, 1993
 .\	The Regents of the University of California.  All rights reserved.
@@ -32,10 +32,10 @@
 .\ SUCH DAMAGE.
 .\
 .\	@(#)xargs.1	8.1 (Berkeley) 6/6/93
-.\ $FreeBSD: src/usr.bin/xargs/xargs.1,v 1.37 2006/09/29 15:20:48 ru Exp $
+.\ $FreeBSD: src/usr.bin/xargs/xargs.1,v 1.40 2010/12/11 08:32:16 joel Exp $
 .\ $xMach: xargs.1,v 1.2 2002/02/23 05:23:37 tim Exp $
 .\
-.Dd April 18, 2007
+.Dd December 21, 2010
 .Dt XARGS 1
 .Os
 .Sh NAME
@@ -43,7 +43,7 @@
 .Nd construct argument list(s) and execute utility
 .Sh SYNOPSIS
 .Nm
-.Op Fl 0opt
+.Op Fl 0oprt
 .Op Fl E Ar eofstr
 .Oo
 .Fl I Ar replstr
@@ -219,6 +219,34 @@
 causes the command to be executed, any other response causes it to be
 skipped.
 No commands are executed if the process is not attached to a terminal.
+.It Fl r
+Compatibility with GNU
+.Nm .
+The GNU version of
+.Nm
+runs the
+.Ar utility
+argument at least once, even if
+.Nm
+input is empty, and it supports a
+.Fl r
+option to inhibit this behavior.
+The
+.Fx
+version of
+.Nm
+does not run the
+.Ar utility
+argument on empty input, but it supports the
+.Fl r
+option for command-line compatibility with GNU
+.Nm ,
+but the
+.Fl r
+option does nothing in the
+.Fx
+version of
+.Nm .
 .It Fl R Ar replacements
 Specify the maximum number of arguments that
 .Fl I



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

2010-12-21 Thread Frank Wille
Module Name:src
Committed By:   phx
Date:   Tue Dec 21 20:39:53 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
All ports have to expose 'struct cpu_info' when _KMEMUSER is defined.
We will just expose cpu_info.ci_data for the moment, which is needed for
vmstat(1) to compile. Doing so with the whole cpu_info structure is
problematic, because of imask_t.


To generate a diff of this commit:
cvs rdiff -u -r1.72 -r1.73 src/sys/arch/powerpc/include/cpu.h

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

Modified files:

Index: src/sys/arch/powerpc/include/cpu.h
diff -u src/sys/arch/powerpc/include/cpu.h:1.72 src/sys/arch/powerpc/include/cpu.h:1.73
--- src/sys/arch/powerpc/include/cpu.h:1.72	Sat Nov 13 13:13:34 2010
+++ src/sys/arch/powerpc/include/cpu.h	Tue Dec 21 20:39:53 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.72 2010/11/13 13:13:34 uebayasi Exp $	*/
+/*	$NetBSD: cpu.h,v 1.73 2010/12/21 20:39:53 phx Exp $	*/
 
 /*
  * Copyright (C) 1999 Wolfgang Solfrank.
@@ -42,23 +42,26 @@
 	int icache_line_size;
 };
 
-#ifdef _KERNEL
+#if defined(_KERNEL) || defined(_KMEMUSER)
 #if defined(_KERNEL_OPT)
 #include opt_lockdebug.h
 #include opt_multiprocessor.h
 #include opt_ppcarch.h
 #endif
 
+#ifdef _KERNEL
 #include machine/frame.h
 #include machine/psl.h
 #include machine/intr.h
 #include sys/device_if.h
 #include sys/evcnt.h
+#endif
 
 #include sys/cpu_data.h
 
 struct cpu_info {
 	struct cpu_data ci_data;	/* MI per-cpu data */
+#ifdef _KERNEL
 	struct device *ci_dev;		/* device of corresponding cpu */
 	struct lwp *ci_curlwp;		/* current owner of the processor */
 
@@ -135,7 +138,11 @@
 	struct evcnt ci_ev_vecsw;	/* Altivec context switches */
 	struct evcnt ci_ev_umchk;	/* user MCHK events */
 	struct evcnt ci_ev_ipi;		/* IPIs received */
+#endif /* _KERNEL */
 };
+#endif /* _KERNEL || _KMEMUSER */
+
+#ifdef _KERNEL
 
 #ifdef MULTIPROCESSOR
 



CVS commit: [netbsd-5] src/sys/arch/acorn32/stand/lib

2010-12-21 Thread Jeff Rizzo
Module Name:src
Committed By:   riz
Date:   Tue Dec 21 22:20:12 UTC 2010

Modified Files:
src/sys/arch/acorn32/stand/lib [netbsd-5]: riscospart.c

Log Message:
Pull up following revision(s) (requested by skrll in ticket #1495):
sys/arch/acorn32/stand/lib/riscospart.c: revision 1.3
Use partition_cyl_high and partition_cyl_low to find the RiscBSD
partition.
Makes nbfs somewhat work on my RiscPC.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.2.76.1 src/sys/arch/acorn32/stand/lib/riscospart.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/acorn32/stand/lib/riscospart.c
diff -u src/sys/arch/acorn32/stand/lib/riscospart.c:1.2 src/sys/arch/acorn32/stand/lib/riscospart.c:1.2.76.1
--- src/sys/arch/acorn32/stand/lib/riscospart.c:1.2	Sun Jun 25 21:32:41 2006
+++ src/sys/arch/acorn32/stand/lib/riscospart.c	Tue Dec 21 22:20:11 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: riscospart.c,v 1.2 2006/06/25 21:32:41 christos Exp $	*/
+/*	$NetBSD: riscospart.c,v 1.2.76.1 2010/12/21 22:20:11 riz Exp $	*/
 
 /*-
  * Copyright (c) 2006 Ben Harris
@@ -160,7 +160,7 @@
 	bb = (struct filecore_bootblock *) buf;
 	if (bb-checksum == filecore_checksum((u_char *)bb)) {
 		if (bb-partition_type == PARTITION_FORMAT_RISCBSD)
-			labelsect = (daddr_t)bb-partition_cyl_low *
+			labelsect = ((bb-partition_cyl_high  8) + bb-partition_cyl_low) *
 			bb-heads * bb-secspertrack + LABELSECTOR;
 		else {
 			err = EUNLAB;



CVS commit: [netbsd-5] src/sys/dev

2010-12-21 Thread Jeff Rizzo
Module Name:src
Committed By:   riz
Date:   Tue Dec 21 22:25:57 UTC 2010

Modified Files:
src/sys/dev [netbsd-5]: audio.c

Log Message:
Pull up following revision(s) (requested by tsutsui in ticket #1498):
sys/dev/audio.c: revision 1.252
Fix botches in rev 1.185 (kent-audio1 merge) which cause buffer overrun
and tlb_exception: no copyin/out fault hander panic in
audio_fill_silence() after audio playback on dreamcast.
The problem is tracked and fix is provieded by Ryo SHIMIZU,
who is the auther of aica(4) audio driver for dreamcast.


To generate a diff of this commit:
cvs rdiff -u -r1.243.6.3 -r1.243.6.4 src/sys/dev/audio.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/audio.c
diff -u src/sys/dev/audio.c:1.243.6.3 src/sys/dev/audio.c:1.243.6.4
--- src/sys/dev/audio.c:1.243.6.3	Fri Oct 16 05:43:37 2009
+++ src/sys/dev/audio.c	Tue Dec 21 22:25:56 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: audio.c,v 1.243.6.3 2009/10/16 05:43:37 snj Exp $	*/
+/*	$NetBSD: audio.c,v 1.243.6.4 2010/12/21 22:25:56 riz Exp $	*/
 
 /*
  * Copyright (c) 1991-1993 Regents of the University of California.
@@ -61,7 +61,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: audio.c,v 1.243.6.3 2009/10/16 05:43:37 snj Exp $);
+__KERNEL_RCSID(0, $NetBSD: audio.c,v 1.243.6.4 2010/12/21 22:25:56 riz Exp $);
 
 #include audio.h
 #if NAUDIO  0
@@ -2780,8 +2780,8 @@
 
 			/* Clear next block so we keep ahead of the DMA. */
 			used = audio_stream_get_used(cb-s);
-			if (used + cc  cb-s.end - cb-s.start)
-audio_pint_silence(sc, cb, inp, blksize);
+			if (used + blksize  cb-s.end - cb-s.start)
+audio_pint_silence(sc, cb, cb-s.inp, blksize);
 		}
 	}
 



CVS commit: [netbsd-5] src/doc

2010-12-21 Thread Jeff Rizzo
Module Name:src
Committed By:   riz
Date:   Tue Dec 21 22:26:44 UTC 2010

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

Log Message:
Tickets 1495-1498.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.37 -r1.1.2.38 src/doc/CHANGES-5.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-5.2
diff -u src/doc/CHANGES-5.2:1.1.2.37 src/doc/CHANGES-5.2:1.1.2.38
--- src/doc/CHANGES-5.2:1.1.2.37	Fri Dec 10 21:45:33 2010
+++ src/doc/CHANGES-5.2	Tue Dec 21 22:26:44 2010
@@ -1,4 +1,4 @@
-# $NetBSD: CHANGES-5.2,v 1.1.2.37 2010/12/10 21:45:33 bouyer Exp $
+# $NetBSD: CHANGES-5.2,v 1.1.2.38 2010/12/21 22:26:44 riz Exp $
 
 A complete list of changes from the NetBSD 5.0 release to the NetBSD 5.1
 release:
@@ -943,3 +943,24 @@
 	not NULL: it can be legitimately set elsewhere.
 	[drochner, ticket #1510]
 
+sys/arch/acorn32/stand/lib/riscospart.c		1.3
+
+	Use partition_cyl_high and partition_cyl_low to find the RiscBSD
+	partition.
+	[skrll, ticket #1495]
+
+sys/kern/init_main.c1.418
+
+	Fix LOCKDEBUG panic 'uninitialized lock'.
+	[skrll, ticket #1496]
+
+sys/arch/dreamcast/dev/g2/aica.c		1.19
+
+	Workaround to make dreamcast audio work.
+	[tsutsui, ticket #1497]
+
+sys/dev/audio.c	1.252
+
+	Fix buffer overrun.
+	[tsutsui, ticket #1498]
+



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

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Dec 22 00:05:33 UTC 2010

Modified Files:
src/sys/arch/sparc/include: types.h

Log Message:
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.52 -r1.53 src/sys/arch/sparc/include/types.h

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

Modified files:

Index: src/sys/arch/sparc/include/types.h
diff -u src/sys/arch/sparc/include/types.h:1.52 src/sys/arch/sparc/include/types.h:1.53
--- src/sys/arch/sparc/include/types.h:1.52	Sun Jan 10 08:52:06 2010
+++ src/sys/arch/sparc/include/types.h	Tue Dec 21 19:05:33 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.52 2010/01/10 13:52:06 martin Exp $ */
+/*	$NetBSD: types.h,v 1.53 2010/12/22 00:05:33 christos Exp $ */
 
 /*
  * Copyright (c) 1992, 1993
@@ -116,6 +116,7 @@
 #define	__HAVE_DEVICE_REGISTER
 #define	__HAVE_SYSCALL_INTERN
 #define	__GENERIC_SOFT_INTERRUPTS_ALL_LEVELS
+#define __HAVE_CPU_DATA_FIRST
 
 #ifdef SUN4U
 #define __HAVE_DEVICE_REGISTER_POSTCONFIG



CVS commit: src/sys/arch

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 01:03:03 UTC 2010

Modified Files:
src/sys/arch/mips/include: types.h
src/sys/arch/powerpc/include: types.h

Log Message:
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/mips/include/types.h
cvs rdiff -u -r1.35 -r1.36 src/sys/arch/powerpc/include/types.h

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

Modified files:

Index: src/sys/arch/mips/include/types.h
diff -u src/sys/arch/mips/include/types.h:1.45 src/sys/arch/mips/include/types.h:1.46
--- src/sys/arch/mips/include/types.h:1.45	Mon Dec 14 00:46:05 2009
+++ src/sys/arch/mips/include/types.h	Wed Dec 22 01:03:02 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.45 2009/12/14 00:46:05 matt Exp $	*/
+/*	$NetBSD: types.h,v 1.46 2010/12/22 01:03:02 matt Exp $	*/
 
 /*-
  * Copyright (c) 1992, 1993
@@ -131,6 +131,7 @@
 #define	__HAVE_AST_PERPROC
 #define	__HAVE_SYSCALL_INTERN
 #define	__HAVE_PROCESS_XFPREGS
+#define	__HAVE_CPU_DATA_FIRST
 #ifdef MIPS3_PLUS	/* XXX bogus! */
 #define	__HAVE_CPU_COUNTER
 #endif

Index: src/sys/arch/powerpc/include/types.h
diff -u src/sys/arch/powerpc/include/types.h:1.35 src/sys/arch/powerpc/include/types.h:1.36
--- src/sys/arch/powerpc/include/types.h:1.35	Wed Jul  7 01:20:50 2010
+++ src/sys/arch/powerpc/include/types.h	Wed Dec 22 01:03:03 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.35 2010/07/07 01:20:50 chs Exp $	*/
+/*	$NetBSD: types.h,v 1.36 2010/12/22 01:03:03 matt Exp $	*/
 
 /*-
  * Copyright (C) 1995 Wolfgang Solfrank.
@@ -71,10 +71,10 @@
 #define __SIMPLELOCK_LOCKED	1
 #define __SIMPLELOCK_UNLOCKED	0
 
-#define	__HAVE_CPU_COUNTER
-#define	__HAVE_SYSCALL_INTERN
-#define	__HAVE_CPU_LWP_SETPRIVATE
-
+#define __HAVE_CPU_COUNTER
+#define __HAVE_SYSCALL_INTERN
+#define __HAVE_CPU_LWP_SETPRIVATE
+#define	__HAVE_CPU_DATA_FIRST
 #ifdef _LP64
 #define	__HAVE_ATOMIC64_OPS
 #endif



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

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 01:03:18 UTC 2010

Modified Files:
src/sys/arch/vax/include: types.h

Log Message:
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/vax/include/types.h

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

Modified files:

Index: src/sys/arch/vax/include/types.h
diff -u src/sys/arch/vax/include/types.h:1.40 src/sys/arch/vax/include/types.h:1.41
--- src/sys/arch/vax/include/types.h:1.40	Fri Dec 11 05:52:04 2009
+++ src/sys/arch/vax/include/types.h	Wed Dec 22 01:03:18 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.40 2009/12/11 05:52:04 matt Exp $	*/
+/*	$NetBSD: types.h,v 1.41 2010/12/22 01:03:18 matt Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -75,5 +75,6 @@
 #define	__HAVE_DEVICE_REGISTER
 #define	__HAVE_SYSCALL_INTERN
 #define	__HAVE_FAST_SOFTINTS
+#define	__HAVE_CPU_DATA_FIRST
 
 #endif	/* _MACHTYPES_H_ */



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

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 01:04:23 UTC 2010

Modified Files:
src/sys/arch/arm/include: types.h

Log Message:
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/include/types.h

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

Modified files:

Index: src/sys/arch/arm/include/types.h
diff -u src/sys/arch/arm/include/types.h:1.17 src/sys/arch/arm/include/types.h:1.18
--- src/sys/arch/arm/include/types.h:1.17	Fri Dec 11 05:52:03 2009
+++ src/sys/arch/arm/include/types.h	Wed Dec 22 01:04:23 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.17 2009/12/11 05:52:03 matt Exp $	*/
+/*	$NetBSD: types.h,v 1.18 2010/12/22 01:04:23 matt Exp $	*/
 
 /*
  * Copyright (c) 1990 The Regents of the University of California.
@@ -83,6 +83,7 @@
 
 #define	__HAVE_SYSCALL_INTERN
 #define	__HAVE_MINIMAL_EMUL
+#define __HAVE_CPU_DATA_FIRST
 
 #if defined(_KERNEL)
 #define	__HAVE_RAS



CVS commit: src/sys/arch/mips/mips

2010-12-21 Thread Tohru Nishimura
Module Name:src
Committed By:   nisimura
Date:   Wed Dec 22 01:34:18 UTC 2010

Modified Files:
src/sys/arch/mips/mips: locore.S locore_mips1.S mipsX_subr.S
vm_machdep.c

Log Message:
- make sure cpu_switchto() not to touch MIPS_CURLWP register at newlwp
  switchframe restoration stage.
- discard MIPS_CURLWP assignments exposed in cpu_lwp_fork() and
  cpu_setfunc().
- use plain 'jal' instruction to call lwp_startup().


To generate a diff of this commit:
cvs rdiff -u -r1.172 -r1.173 src/sys/arch/mips/mips/locore.S
cvs rdiff -u -r1.70 -r1.71 src/sys/arch/mips/mips/locore_mips1.S
cvs rdiff -u -r1.36 -r1.37 src/sys/arch/mips/mips/mipsX_subr.S
cvs rdiff -u -r1.130 -r1.131 src/sys/arch/mips/mips/vm_machdep.c

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

Modified files:

Index: src/sys/arch/mips/mips/locore.S
diff -u src/sys/arch/mips/mips/locore.S:1.172 src/sys/arch/mips/mips/locore.S:1.173
--- src/sys/arch/mips/mips/locore.S:1.172	Sun Dec 20 03:40:27 2009
+++ src/sys/arch/mips/mips/locore.S	Wed Dec 22 01:34:17 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.S,v 1.172 2009/12/20 03:40:27 rmind Exp $	*/
+/*	$NetBSD: locore.S,v 1.173 2010/12/22 01:34:17 nisimura Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -247,7 +247,7 @@
 	REG_L	s4, PCB_CONTEXT+SF_REG_S4(a0)
 	REG_L	s5, PCB_CONTEXT+SF_REG_S5(a0)
 	REG_L	s6, PCB_CONTEXT+SF_REG_S6(a0)
-	REG_L	s7, PCB_CONTEXT+SF_REG_S7(a0)
+ /* REG_L	s7, PCB_CONTEXT+SF_REG_S7(a0)	don't touch MIPS_CURLWP */
 #if defined(__mips_n32) || defined(__mips_n64)
 	REG_L	gp, PCB_CONTEXT+SF_REG_GP(a0)
 #endif

Index: src/sys/arch/mips/mips/locore_mips1.S
diff -u src/sys/arch/mips/mips/locore_mips1.S:1.70 src/sys/arch/mips/mips/locore_mips1.S:1.71
--- src/sys/arch/mips/mips/locore_mips1.S:1.70	Thu Nov 25 17:53:24 2010
+++ src/sys/arch/mips/mips/locore_mips1.S	Wed Dec 22 01:34:17 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore_mips1.S,v 1.70 2010/11/25 17:53:24 matt Exp $	*/
+/*	$NetBSD: locore_mips1.S,v 1.71 2010/12/22 01:34:17 nisimura Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -1033,10 +1033,9 @@
 	addu	sp, sp, -CALLFRAME_SIZ
 
 	# Call lwp_startup(), with args from cpu_switchto()/cpu_setfunc()
-	la	t0, _C_LABEL(lwp_startup)
 	move	a0, v0
-	jal	ra, t0
-	move	a1, s7
+	jal	_C_LABEL(lwp_startup)
+	move	a1, MIPS_CURLWP
 
 	# Call the routine specified by cpu_setfunc()
 	jal	ra, s0			

Index: src/sys/arch/mips/mips/mipsX_subr.S
diff -u src/sys/arch/mips/mips/mipsX_subr.S:1.36 src/sys/arch/mips/mips/mipsX_subr.S:1.37
--- src/sys/arch/mips/mips/mipsX_subr.S:1.36	Tue Jun 22 12:42:21 2010
+++ src/sys/arch/mips/mips/mipsX_subr.S	Wed Dec 22 01:34:17 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: mipsX_subr.S,v 1.36 2010/06/22 12:42:21 simonb Exp $	*/
+/*	$NetBSD: mipsX_subr.S,v 1.37 2010/12/22 01:34:17 nisimura Exp $	*/
 
 /*
  * Copyright 2002 Wasabi Systems, Inc.
@@ -2018,10 +2018,9 @@
 	PTR_ADDU sp, sp, -CALLFRAME_SIZ
 
 	# Call lwp_startup(), with args from cpu_switchto()/cpu_setfunc()
-	PTR_LA	t0, _C_LABEL(lwp_startup)
 	move	a0, v0
-	jal	ra, t0
-	move	a1, s7
+	jal	_C_LABEL(lwp_startup)
+	move	a1, MIPS_CURLWP
 
 	# Call the routine specified by cpu_setfunc()
 	jal	ra, s0			

Index: src/sys/arch/mips/mips/vm_machdep.c
diff -u src/sys/arch/mips/mips/vm_machdep.c:1.130 src/sys/arch/mips/mips/vm_machdep.c:1.131
--- src/sys/arch/mips/mips/vm_machdep.c:1.130	Mon Dec 14 04:37:02 2009
+++ src/sys/arch/mips/mips/vm_machdep.c	Wed Dec 22 01:34:17 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: vm_machdep.c,v 1.130 2009/12/14 04:37:02 matt Exp $	*/
+/*	$NetBSD: vm_machdep.c,v 1.131 2010/12/22 01:34:17 nisimura Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -77,7 +77,7 @@
  */
 
 #include sys/cdefs.h			/* RCS ID  Copyright macro defns */
-__KERNEL_RCSID(0, $NetBSD: vm_machdep.c,v 1.130 2009/12/14 04:37:02 matt Exp $);
+__KERNEL_RCSID(0, $NetBSD: vm_machdep.c,v 1.131 2010/12/22 01:34:17 nisimura Exp $);
 
 #include opt_ddb.h
 
@@ -177,7 +177,6 @@
 	 */
 	pcb2-pcb_context.val[_L_S0] = (intptr_t)func;			/* S0 */
 	pcb2-pcb_context.val[_L_S1] = (intptr_t)arg;			/* S1 */
-	pcb2-pcb_context.val[MIPS_CURLWP_CARD - 16] = (intptr_t)l2;	/* S? */
 	pcb2-pcb_context.val[_L_SP] = (intptr_t)f;			/* SP */
 	pcb2-pcb_context.val[_L_RA] = (intptr_t)lwp_trampoline;	/* RA */
 #ifdef _LP64
@@ -199,7 +198,6 @@
 
 	pcb-pcb_context.val[_L_S0] = (intptr_t)func;			/* S0 */
 	pcb-pcb_context.val[_L_S1] = (intptr_t)arg;			/* S1 */
-	pcb-pcb_context.val[MIPS_CURLWP_CARD - 16] = (intptr_t)l;	/* S? */
 	pcb-pcb_context.val[_L_SP] = (intptr_t)f;			/* SP */
 	pcb-pcb_context.val[_L_RA] = (intptr_t)setfunc_trampoline;	/* RA */
 #ifdef _LP64



CVS commit: src/sys/dev/usb

2010-12-21 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Dec 22 01:34:19 UTC 2010

Modified Files:
src/sys/dev/usb: ohci.c

Log Message:
don't disable interrpts in ohci_intr1 - now USB works again on my Blade 2500
( hi gimpy )


To generate a diff of this commit:
cvs rdiff -u -r1.211 -r1.212 src/sys/dev/usb/ohci.c

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

Modified files:

Index: src/sys/dev/usb/ohci.c
diff -u src/sys/dev/usb/ohci.c:1.211 src/sys/dev/usb/ohci.c:1.212
--- src/sys/dev/usb/ohci.c:1.211	Wed Dec 15 23:48:15 2010
+++ src/sys/dev/usb/ohci.c	Wed Dec 22 01:34:19 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: ohci.c,v 1.211 2010/12/15 23:48:15 matt Exp $	*/
+/*	$NetBSD: ohci.c,v 1.212 2010/12/22 01:34:19 macallan Exp $	*/
 /*	$FreeBSD: src/sys/dev/usb/ohci.c,v 1.22 1999/11/17 22:33:40 n_hibma Exp $	*/
 
 /*
@@ -41,7 +41,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: ohci.c,v 1.211 2010/12/15 23:48:15 matt Exp $);
+__KERNEL_RCSID(0, $NetBSD: ohci.c,v 1.212 2010/12/22 01:34:19 macallan Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -1150,7 +1150,6 @@
 		 (u_int)eintrs, sc-sc_eintrs));
 
 	if (!eintrs) {
-		OWRITE4(sc, OHCI_INTERRUPT_DISABLE, OHCI_MIE); /* Disable */
 		return (0);
 	}
 



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

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 02:41:13 UTC 2010

Modified Files:
src/sys/arch/sh3/include: types.h

Log Message:
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 src/sys/arch/sh3/include/types.h

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

Modified files:

Index: src/sys/arch/sh3/include/types.h
diff -u src/sys/arch/sh3/include/types.h:1.29 src/sys/arch/sh3/include/types.h:1.30
--- src/sys/arch/sh3/include/types.h:1.29	Fri Dec 11 05:52:04 2009
+++ src/sys/arch/sh3/include/types.h	Wed Dec 22 02:41:12 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.29 2009/12/11 05:52:04 matt Exp $	*/
+/*	$NetBSD: types.h,v 1.30 2010/12/22 02:41:12 matt Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -71,6 +71,7 @@
 
 #define	__HAVE_AST_PERPROC
 #define	__HAVE_SYSCALL_INTERN
+#define	__HAVE_CPU_DATA_FIRST
 
 #if defined(_KERNEL)
 #define	__HAVE_RAS



CVS commit: src/sys/arch

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 02:42:29 UTC 2010

Modified Files:
src/sys/arch/amiga/include: cpu.h
src/sys/arch/atari/include: cpu.h
src/sys/arch/cesfic/include: cpu.h
src/sys/arch/hp300/include: cpu.h
src/sys/arch/luna68k/include: cpu.h
src/sys/arch/m68k/include: cpu.h types.h
src/sys/arch/mac68k/include: cpu.h
src/sys/arch/mvme68k/include: cpu.h
src/sys/arch/news68k/include: cpu.h
src/sys/arch/next68k/include: cpu.h
src/sys/arch/sun68k/include: cpu.h
src/sys/arch/x68k/include: cpu.h

Log Message:
Collect cpu_info and friends and move to m68k/include/cpu.h
Add a define __HAVE_CPU_DATA_FIRST which means that cpu_data is the first
member in struct cpu_info.


To generate a diff of this commit:
cvs rdiff -u -r1.75 -r1.76 src/sys/arch/amiga/include/cpu.h
cvs rdiff -u -r1.64 -r1.65 src/sys/arch/atari/include/cpu.h
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/cesfic/include/cpu.h
cvs rdiff -u -r1.62 -r1.63 src/sys/arch/hp300/include/cpu.h
cvs rdiff -u -r1.27 -r1.28 src/sys/arch/luna68k/include/cpu.h
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/m68k/include/cpu.h
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/m68k/include/types.h
cvs rdiff -u -r1.93 -r1.94 src/sys/arch/mac68k/include/cpu.h
cvs rdiff -u -r1.44 -r1.45 src/sys/arch/mvme68k/include/cpu.h
cvs rdiff -u -r1.36 -r1.37 src/sys/arch/news68k/include/cpu.h
cvs rdiff -u -r1.42 -r1.43 src/sys/arch/next68k/include/cpu.h
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/sun68k/include/cpu.h
cvs rdiff -u -r1.50 -r1.51 src/sys/arch/x68k/include/cpu.h

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

Modified files:

Index: src/sys/arch/amiga/include/cpu.h
diff -u src/sys/arch/amiga/include/cpu.h:1.75 src/sys/arch/amiga/include/cpu.h:1.76
--- src/sys/arch/amiga/include/cpu.h:1.75	Tue Feb  9 18:13:10 2010
+++ src/sys/arch/amiga/include/cpu.h	Wed Dec 22 02:42:27 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.75 2010/02/09 18:13:10 phx Exp $	*/
+/*	$NetBSD: cpu.h,v 1.76 2010/12/22 02:42:27 matt Exp $	*/
 
 /*
  * Copyright (c) 1982, 1990 The Regents of the University of California.
@@ -94,28 +94,6 @@
 #include m68k/cpu.h
 #define	M68K_MMU_MOTOROLA
 
-#include sys/cpu_data.h
-struct cpu_info {
-	struct cpu_data ci_data;	/* MI per-cpu data */
-	cpuid_t	ci_cpuid;
-	int	ci_mtx_count;
-int	ci_mtx_oldspl;
-int	ci_want_resched;
-};
-
-extern struct cpu_info cpu_info_store;
-
-#define	curcpu()	(cpu_info_store)
-
-/*
- * definitions of cpu-dependent requirements
- * referenced in generic code
- */
-#define	cpu_number()			0
-
-void	cpu_proc_fork(struct proc *, struct proc *);
-
-
 extern volatile unsigned int interrupt_depth;
 /*
  * Arguments to hardclock and gatherstats encapsulate the previous

Index: src/sys/arch/atari/include/cpu.h
diff -u src/sys/arch/atari/include/cpu.h:1.64 src/sys/arch/atari/include/cpu.h:1.65
--- src/sys/arch/atari/include/cpu.h:1.64	Mon Nov 23 00:11:43 2009
+++ src/sys/arch/atari/include/cpu.h	Wed Dec 22 02:42:27 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.64 2009/11/23 00:11:43 rmind Exp $	*/
+/*	$NetBSD: cpu.h,v 1.65 2010/12/22 02:42:27 matt Exp $	*/
 
 /*
  * Copyright (c) 1982, 1990 The Regents of the University of California.
@@ -95,25 +95,6 @@
 #include m68k/cpu.h
 #define	M68K_MMU_MOTOROLA
 
-#include sys/cpu_data.h
-struct cpu_info {
-	struct cpu_data ci_data;	/* MI per-cpu data */
-	cpuid_t	ci_cpuid;
-	int	ci_want_resched;
-	int	ci_mtx_count;
-	int	ci_mtx_oldspl;
-};
-
-extern struct cpu_info cpu_info_store;
-
-#define	curcpu()	(cpu_info_store)
-
-/*
- * definitions of cpu-dependent requirements
- * referenced in generic code
- */
-#define	cpu_number()			0
-
 void	cpu_proc_fork(struct proc *, struct proc *);
 
 /*

Index: src/sys/arch/cesfic/include/cpu.h
diff -u src/sys/arch/cesfic/include/cpu.h:1.24 src/sys/arch/cesfic/include/cpu.h:1.25
--- src/sys/arch/cesfic/include/cpu.h:1.24	Sun Jun  6 04:50:06 2010
+++ src/sys/arch/cesfic/include/cpu.h	Wed Dec 22 02:42:27 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.24 2010/06/06 04:50:06 mrg Exp $	*/
+/*	$NetBSD: cpu.h,v 1.25 2010/12/22 02:42:27 matt Exp $	*/
 
 /*
  * Copyright (c) 1982, 1990, 1993
@@ -91,27 +91,6 @@
  */
 #include m68k/cpu.h
 
-#include sys/cpu_data.h
-struct cpu_info {
-	struct cpu_data ci_data;	/* MI per-cpu data */
-	cpuid_t	ci_cpuid;
-	int	ci_mtx_count;
-	int	ci_mtx_oldspl;
-	int	ci_want_resched;
-};
-
-extern struct cpu_info cpu_info_store;
-
-#define	curcpu()	(cpu_info_store)
-
-/*
- * definitions of cpu-dependent requirements
- * referenced in generic code
- */
-#define cpu_number()			0
-
-void	cpu_proc_fork(struct proc *, struct proc *);
-
 /*
  * Arguments to hardclock and gatherstats encapsulate the previous
  * machine state in an opaque clockframe.  One the hp300, we use

Index: src/sys/arch/hp300/include/cpu.h
diff -u src/sys/arch/hp300/include/cpu.h:1.62 

CVS commit: src/sys/kern

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 02:43:23 UTC 2010

Modified Files:
src/sys/kern: kern_cpu.c

Log Message:
Add CTASSERT to verify __HAVE_CPU_DATA_FIRST is correct defined or undefined.


To generate a diff of this commit:
cvs rdiff -u -r1.44 -r1.45 src/sys/kern/kern_cpu.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/kern/kern_cpu.c
diff -u src/sys/kern/kern_cpu.c:1.44 src/sys/kern/kern_cpu.c:1.45
--- src/sys/kern/kern_cpu.c:1.44	Sun Apr 25 15:57:59 2010
+++ src/sys/kern/kern_cpu.c	Wed Dec 22 02:43:23 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_cpu.c,v 1.44 2010/04/25 15:57:59 ad Exp $	*/
+/*	$NetBSD: kern_cpu.c,v 1.45 2010/12/22 02:43:23 matt Exp $	*/
 
 /*-
  * Copyright (c) 2007, 2008, 2009, 2010 The NetBSD Foundation, Inc.
@@ -56,7 +56,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: kern_cpu.c,v 1.44 2010/04/25 15:57:59 ad Exp $);
+__KERNEL_RCSID(0, $NetBSD: kern_cpu.c,v 1.45 2010/12/22 02:43:23 matt Exp $);
 
 #include sys/param.h
 #include sys/systm.h
@@ -79,6 +79,17 @@
 
 #include uvm/uvm_extern.h
 
+/*
+ * If the port has state that cpu_data is the first thing in cpu_info,
+ * verify the claim is true.  This will prevent the from getting out
+ * of sync.
+ */
+#ifdef __HAVE_CPU_DATA_FIRST
+CTASSERT(offsetof(struct cpu_info, ci_data) == 0);
+#else
+CTASSERT(offsetof(struct cpu_info, ci_data) != 0);
+#endif
+
 void	cpuctlattach(int);
 
 static void	cpu_xc_online(struct cpu_info *);



CVS commit: src/gnu/dist/gcc4/gcc/config/vax

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 02:58:35 UTC 2010

Modified Files:
src/gnu/dist/gcc4/gcc/config/vax: elf.h

Log Message:
Emit DWARF relocation in its expected form


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/gnu/dist/gcc4/gcc/config/vax/elf.h

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

Modified files:

Index: src/gnu/dist/gcc4/gcc/config/vax/elf.h
diff -u src/gnu/dist/gcc4/gcc/config/vax/elf.h:1.3 src/gnu/dist/gcc4/gcc/config/vax/elf.h:1.4
--- src/gnu/dist/gcc4/gcc/config/vax/elf.h:1.3	Sat Mar 31 05:55:11 2007
+++ src/gnu/dist/gcc4/gcc/config/vax/elf.h	Wed Dec 22 02:58:35 2010
@@ -107,5 +107,5 @@
 fputs (integer_asm_op (SIZE, FALSE), FILE);		\
 fprintf (FILE, %%pcrel%d(, SIZE * 8);		\
 assemble_name (FILE, LABEL);			\
-fputc (')', FILE);	\
+fprintf (FILE, %+d), SIZE);			\
   } while (0)



CVS commit: src/sys/arch

2010-12-21 Thread Tohru Nishimura
Module Name:src
Committed By:   nisimura
Date:   Wed Dec 22 03:22:44 UTC 2010

Modified Files:
src/sys/arch/mips/include: cpu.h
src/sys/arch/sh3/include: cpu.h

Log Message:
PROC_PC() should have been changed to LWP_PC().


To generate a diff of this commit:
cvs rdiff -u -r1.95 -r1.96 src/sys/arch/mips/include/cpu.h
cvs rdiff -u -r1.54 -r1.55 src/sys/arch/sh3/include/cpu.h

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

Modified files:

Index: src/sys/arch/mips/include/cpu.h
diff -u src/sys/arch/mips/include/cpu.h:1.95 src/sys/arch/mips/include/cpu.h:1.96
--- src/sys/arch/mips/include/cpu.h:1.95	Sat Jan 23 15:55:54 2010
+++ src/sys/arch/mips/include/cpu.h	Wed Dec 22 03:22:44 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.95 2010/01/23 15:55:54 mrg Exp $	*/
+/*	$NetBSD: cpu.h,v 1.96 2010/12/22 03:22:44 nisimura Exp $	*/
 
 /*-
  * Copyright (c) 1992, 1993
@@ -358,8 +358,8 @@
  * This is used during profiling to integrate system time.  It can safely
  * assume that the process is resident.
  */
-#define	PROC_PC(p)			\
-	(((struct frame *)(p)-p_md.md_regs)-f_regs[37])	/* XXX PC */
+#define	LWP_PC(l)			\
+	(((struct frame *)(l)-l_md.md_regs)-f_regs[37])	/* XXX PC */
 
 /*
  * Preempt the current process if in interrupt from user mode,

Index: src/sys/arch/sh3/include/cpu.h
diff -u src/sys/arch/sh3/include/cpu.h:1.54 src/sys/arch/sh3/include/cpu.h:1.55
--- src/sys/arch/sh3/include/cpu.h:1.54	Wed Oct 21 21:12:02 2009
+++ src/sys/arch/sh3/include/cpu.h	Wed Dec 22 03:22:43 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.54 2009/10/21 21:12:02 rmind Exp $	*/
+/*	$NetBSD: cpu.h,v 1.55 2010/12/22 03:22:43 nisimura Exp $	*/
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc. All rights reserved.
@@ -92,8 +92,8 @@
  * This is used during profiling to integrate system time.  It can safely
  * assume that the process is resident.
  */
-#define	PROC_PC(p)			\
-	(((struct trapframe *)(p)-p_md.md_regs)-tf_spc)
+#define	LWP_PC(l)			\
+	(((struct trapframe *)(l)-l_md.md_regs)-tf_spc)
 
 /*
  * Preempt the current process if in interrupt from user mode,



CVS commit: src/sys/arch

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Dec 22 04:15:02 UTC 2010

Modified Files:
src/sys/arch/amd64/include: types.h
src/sys/arch/i386/include: types.h
src/sys/arch/x86/include: cpu.h

Log Message:
Make __HAVE_CPU_DATA_FIRST true


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 src/sys/arch/amd64/include/types.h
cvs rdiff -u -r1.69 -r1.70 src/sys/arch/i386/include/types.h
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/x86/include/cpu.h

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

Modified files:

Index: src/sys/arch/amd64/include/types.h
diff -u src/sys/arch/amd64/include/types.h:1.33 src/sys/arch/amd64/include/types.h:1.34
--- src/sys/arch/amd64/include/types.h:1.33	Fri Dec 11 00:52:03 2009
+++ src/sys/arch/amd64/include/types.h	Tue Dec 21 23:15:02 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.33 2009/12/11 05:52:03 matt Exp $	*/
+/*	$NetBSD: types.h,v 1.34 2010/12/22 04:15:02 christos Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -78,6 +78,7 @@
 
 #define	__HAVE_DEVICE_REGISTER
 #define	__HAVE_CPU_COUNTER
+#define	__HAVE_CPU_INFO_FIRST
 #define	__HAVE_MD_CPU_OFFLINE
 #define	__HAVE_SYSCALL_INTERN
 #define	__HAVE_MINIMAL_EMUL

Index: src/sys/arch/i386/include/types.h
diff -u src/sys/arch/i386/include/types.h:1.69 src/sys/arch/i386/include/types.h:1.70
--- src/sys/arch/i386/include/types.h:1.69	Tue Dec 14 10:50:07 2010
+++ src/sys/arch/i386/include/types.h	Tue Dec 21 23:15:02 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: types.h,v 1.69 2010/12/14 15:50:07 haad Exp $	*/
+/*	$NetBSD: types.h,v 1.70 2010/12/22 04:15:02 christos Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -102,6 +102,7 @@
 #define	__NO_STRICT_ALIGNMENT
 
 #define	__HAVE_DEVICE_REGISTER
+#define	__HAVE_CPU_DATA_FIRST
 #define	__HAVE_CPU_COUNTER
 #define	__HAVE_MD_CPU_OFFLINE
 #define	__HAVE_SYSCALL_INTERN

Index: src/sys/arch/x86/include/cpu.h
diff -u src/sys/arch/x86/include/cpu.h:1.25 src/sys/arch/x86/include/cpu.h:1.26
--- src/sys/arch/x86/include/cpu.h:1.25	Mon Aug 16 15:39:06 2010
+++ src/sys/arch/x86/include/cpu.h	Tue Dec 21 23:15:01 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.25 2010/08/16 19:39:06 jym Exp $	*/
+/*	$NetBSD: cpu.h,v 1.26 2010/12/22 04:15:01 christos Exp $	*/
 
 /*-
  * Copyright (c) 1990 The Regents of the University of California.
@@ -78,6 +78,7 @@
  */
 
 struct cpu_info {
+	struct cpu_data ci_data;	/* MI per-cpu data */
 	device_t ci_dev;		/* pointer to our device */
 	struct cpu_info *ci_self;	/* self-pointer */
 	volatile struct vcpu_info *ci_vcpu; /* for XEN */
@@ -97,7 +98,6 @@
 	int	ci_cpumask;		/* (1  CPU ID) */
 	uint32_t ci_acpiid;		/* our ACPI/MADT ID */
 	uint32_t ci_initapicid;		/* our intitial APIC ID */
-	struct cpu_data ci_data;	/* MI per-cpu data */
 
 	/*
 	 * Private members.



CVS commit: src/bin/cp

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Dec 22 05:46:26 UTC 2010

Modified Files:
src/bin/cp: cp.1

Log Message:
Say that -a is non-standard and -P is the default.


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/bin/cp/cp.1

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

Modified files:

Index: src/bin/cp/cp.1
diff -u src/bin/cp/cp.1:1.31 src/bin/cp/cp.1:1.32
--- src/bin/cp/cp.1:1.31	Tue Dec 21 15:56:01 2010
+++ src/bin/cp/cp.1	Wed Dec 22 00:46:25 2010
@@ -1,4 +1,4 @@
-.\	$NetBSD: cp.1,v 1.31 2010/12/21 20:56:01 christos Exp $
+.\	$NetBSD: cp.1,v 1.32 2010/12/22 05:46:25 christos Exp $
 .\
 .\ Copyright (c) 1989, 1990, 1993, 1994
 .\	The Regents of the University of California.  All rights reserved.
@@ -110,6 +110,7 @@
 don't copy file flags.
 .It Fl P
 No symbolic links are followed.
+This is the default.
 .It Fl p
 Causes
 .Nm
@@ -219,6 +220,9 @@
 utility is expected to be
 .St -p1003.2
 compatible.
+The
+.Fl a
+is a non-standard extension.
 .Pp
 The
 .Fl v



CVS commit: src/sys/dev/raidframe

2010-12-21 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Dec 22 05:51:19 UTC 2010

Modified Files:
src/sys/dev/raidframe: rf_netbsdkintf.c

Log Message:
print the error code for writing parity.


To generate a diff of this commit:
cvs rdiff -u -r1.278 -r1.279 src/sys/dev/raidframe/rf_netbsdkintf.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/raidframe/rf_netbsdkintf.c
diff -u src/sys/dev/raidframe/rf_netbsdkintf.c:1.278 src/sys/dev/raidframe/rf_netbsdkintf.c:1.279
--- src/sys/dev/raidframe/rf_netbsdkintf.c:1.278	Fri Dec 10 22:12:10 2010
+++ src/sys/dev/raidframe/rf_netbsdkintf.c	Wed Dec 22 00:51:19 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: rf_netbsdkintf.c,v 1.278 2010/12/11 03:12:10 mrg Exp $	*/
+/*	$NetBSD: rf_netbsdkintf.c,v 1.279 2010/12/22 05:51:19 christos Exp $	*/
 /*-
  * Copyright (c) 1996, 1997, 1998, 2008 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -139,7 +139,7 @@
  ***/
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: rf_netbsdkintf.c,v 1.278 2010/12/11 03:12:10 mrg Exp $);
+__KERNEL_RCSID(0, $NetBSD: rf_netbsdkintf.c,v 1.279 2010/12/22 05:51:19 christos Exp $);
 
 #ifdef _KERNEL_OPT
 #include opt_compat_netbsd.h
@@ -2906,7 +2906,8 @@
 	retcode = rf_RewriteParity(raidPtr);
 	splx(s);
 	if (retcode) {
-		printf(raid%d: Error re-writing parity!\n,raidPtr-raidid);
+		printf(raid%d: Error re-writing parity (%d)!\n,
+		raidPtr-raidid, retcode);
 	} else {
 		/* set the clean bit!  If we shutdown correctly,
 		   the clean bit on each component label will get



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 05:53:38 UTC 2010

Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: cpu_subr.c

Log Message:
Allocate page from anywhere in KSEG0, not just the first 256MB.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.12 -r1.1.2.13 src/sys/arch/mips/mips/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/mips/mips/cpu_subr.c
diff -u src/sys/arch/mips/mips/cpu_subr.c:1.1.2.12 src/sys/arch/mips/mips/cpu_subr.c:1.1.2.13
--- src/sys/arch/mips/mips/cpu_subr.c:1.1.2.12	Wed Sep  1 00:59:42 2010
+++ src/sys/arch/mips/mips/cpu_subr.c	Wed Dec 22 05:53:38 2010
@@ -32,7 +32,7 @@
 #include opt_multiprocessor.h
 #include opt_sa.h
 
-__KERNEL_RCSID(0, $NetBSD: cpu_subr.c,v 1.1.2.12 2010/09/01 00:59:42 matt Exp $);
+__KERNEL_RCSID(0, $NetBSD: cpu_subr.c,v 1.1.2.13 2010/12/22 05:53:38 matt Exp $);
 
 #include sys/param.h
 #include sys/cpu.h
@@ -97,11 +97,11 @@
 	int error;
 
 	/*
-	* Grab a page from the first 256MB to use to store
+	* Grab a page from the first 512MB (mappable by KSEG0) to use to store
 	* exception vectors and cpu_info for this cpu.
 	*/
 	error = uvm_pglistalloc(PAGE_SIZE,
-	0, 0x1000,
+	0, MIPS_KSEG1_START - MIPS_KSEG0_START,
 	PAGE_SIZE, PAGE_SIZE, pglist, 1, false);
 	if (error)
 		return NULL;
@@ -507,7 +507,9 @@
 cpu_signotify(struct lwp *l)
 {
 	KASSERT(kpreempt_disabled());
+#ifdef __HAVE_FAST_SOFTINTS
 	KASSERT(lwp_locked(l, NULL));
+#endif
 	KASSERT(l-l_stat == LSONPROC || l-l_stat == LSRUN || l-l_stat == LSSTOP);
 
 	l-l_md.md_astpending = 1; 		/* force call to ast() */



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 05:57:48 UTC 2010

Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: ipifuncs.c

Log Message:
Don't signal a preemption if we aren't enabling it.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/mips/mips/ipifuncs.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/mips/mips/ipifuncs.c
diff -u src/sys/arch/mips/mips/ipifuncs.c:1.1.2.3 src/sys/arch/mips/mips/ipifuncs.c:1.1.2.4
--- src/sys/arch/mips/mips/ipifuncs.c:1.1.2.3	Wed Mar 24 19:23:46 2010
+++ src/sys/arch/mips/mips/ipifuncs.c	Wed Dec 22 05:57:48 2010
@@ -29,7 +29,7 @@
 
 #include sys/cdefs.h
 
-__KERNEL_RCSID(0, $NetBSD: ipifuncs.c,v 1.1.2.3 2010/03/24 19:23:46 cliff Exp $);
+__KERNEL_RCSID(0, $NetBSD: ipifuncs.c,v 1.1.2.4 2010/12/22 05:57:48 matt Exp $);
 
 #include sys/param.h
 #include sys/cpu.h
@@ -81,11 +81,13 @@
 	pmap_tlb_syncicache_wanted(ci);
 }
 
+#ifdef __HAVE_PREEEMPTION
 static inline void
 ipi_kpreempt(struct cpu_info *ci)
 {
 	softint_trigger(SOFTINT_KPREEMPT);
 }
+#endif
 
 void
 ipi_process(struct cpu_info *ci, uint64_t ipi_mask)



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 05:59:14 UTC 2010

Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: mipsX_subr.S

Log Message:
Just call splcheck directly.  The stub fixer will make it right.


To generate a diff of this commit:
cvs rdiff -u -r1.26.36.1.2.35 -r1.26.36.1.2.36 \
src/sys/arch/mips/mips/mipsX_subr.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/mips/mips/mipsX_subr.S
diff -u src/sys/arch/mips/mips/mipsX_subr.S:1.26.36.1.2.35 src/sys/arch/mips/mips/mipsX_subr.S:1.26.36.1.2.36
--- src/sys/arch/mips/mips/mipsX_subr.S:1.26.36.1.2.35	Fri Aug 20 03:21:41 2010
+++ src/sys/arch/mips/mips/mipsX_subr.S	Wed Dec 22 05:59:13 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: mipsX_subr.S,v 1.26.36.1.2.35 2010/08/20 03:21:41 matt Exp $	*/
+/*	$NetBSD: mipsX_subr.S,v 1.26.36.1.2.36 2010/12/22 05:59:13 matt Exp $	*/
 
 /*
  * Copyright 2002 Wasabi Systems, Inc.
@@ -665,8 +665,7 @@
 	/*
 	 * Verify our existing interrupt level.
 	 */
-	PTR_L	t9, _C_LABEL(mips_splsw) + SPLSW_SPLCHECK
-	jalr	t9
+	jal	_C_LABEL(splcheck)
 	 nop
 #endif /* PARANOIA */
 
@@ -733,8 +732,7 @@
 	/*
 	 * Verify our existing interrupt level.
 	 */
-	PTR_L	t9, _C_LABEL(mips_splsw) + SPLSW_SPLCHECK
-	jalr	t9
+	jal	_C_LABEL(splcheck)
 	 nop
 #endif /* PARANOIA */
 
@@ -1106,8 +1104,7 @@
 	/*
 	 * Verify the current interrupt level
 	 */
-	PTR_L	t9, _C_LABEL(mips_splsw) + SPLSW_SPLCHECK
-	jalr	t9
+	jal	_C_LABEL(splcheck)
 	 nop
 #endif /* PARANOIA */
 
@@ -1277,8 +1274,7 @@
 11:	bne	t2, t1, 11b			# loop forever is unequal
 	 nop
 
-	PTR_L	t9, _C_LABEL(mips_splsw) + SPLSW_SPLCHECK
-	jalr	t9
+	jal	_C_LABEL(splcheck)
 	 nop
 #endif /* PARANOIA */
 



CVS commit: [matt-nb5-mips64] src/sys/arch/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 06:05:42 UTC 2010

Modified Files:
src/sys/arch/mips/include [matt-nb5-mips64]: pmap.h
src/sys/arch/mips/mips [matt-nb5-mips64]: pmap_tlb.c

Log Message:
Add a pmap_asid_check which verifies the current ASID is in COP0 ENTRY_HI


To generate a diff of this commit:
cvs rdiff -u -r1.54.26.14 -r1.54.26.15 src/sys/arch/mips/include/pmap.h
cvs rdiff -u -r1.1.2.12 -r1.1.2.13 src/sys/arch/mips/mips/pmap_tlb.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/mips/include/pmap.h
diff -u src/sys/arch/mips/include/pmap.h:1.54.26.14 src/sys/arch/mips/include/pmap.h:1.54.26.15
--- src/sys/arch/mips/include/pmap.h:1.54.26.14	Mon Aug 16 18:01:13 2010
+++ src/sys/arch/mips/include/pmap.h	Wed Dec 22 06:05:41 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.54.26.14 2010/08/16 18:01:13 matt Exp $	*/
+/*	$NetBSD: pmap.h,v 1.54.26.15 2010/12/22 06:05:41 matt Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -263,6 +263,7 @@
 void	pmap_tlb_info_init(struct pmap_tlb_info *);
 void	pmap_tlb_asid_acquire(pmap_t pmap, struct lwp *l);
 void	pmap_tlb_asid_deactivate(pmap_t pmap);
+void	pmap_tlb_asid_check(void);
 void	pmap_tlb_asid_release_all(pmap_t pmap);
 int	pmap_tlb_update_addr(pmap_t pmap, vaddr_t, uint32_t, bool);
 void	pmap_tlb_invalidate_addr(pmap_t pmap, vaddr_t);

Index: src/sys/arch/mips/mips/pmap_tlb.c
diff -u src/sys/arch/mips/mips/pmap_tlb.c:1.1.2.12 src/sys/arch/mips/mips/pmap_tlb.c:1.1.2.13
--- src/sys/arch/mips/mips/pmap_tlb.c:1.1.2.12	Thu Jun 10 00:38:11 2010
+++ src/sys/arch/mips/mips/pmap_tlb.c	Wed Dec 22 06:05:42 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap_tlb.c,v 1.1.2.12 2010/06/10 00:38:11 cliff Exp $	*/
+/*	$NetBSD: pmap_tlb.c,v 1.1.2.13 2010/12/22 06:05:42 matt Exp $	*/
 
 /*-
  * Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
 
 #include sys/cdefs.h
 
-__KERNEL_RCSID(0, $NetBSD: pmap_tlb.c,v 1.1.2.12 2010/06/10 00:38:11 cliff Exp $);
+__KERNEL_RCSID(0, $NetBSD: pmap_tlb.c,v 1.1.2.13 2010/12/22 06:05:42 matt Exp $);
 
 /*
  * Manages address spaces in a TLB.
@@ -371,8 +371,10 @@
 		 * and clear the ASID bitmap.  That will force everyone to
 		 * allocate a new ASID.
 		 */
+		pmap_tlb_asid_check();
 		const u_int asids_found = tlb_record_asids(ti-ti_asid_bitmap,
 		ti-ti_asid_mask);
+		pmap_tlb_asid_check();
 		KASSERT(asids_found == pmap_tlb_asid_count(ti));
 		if (__predict_false(asids_found = ti-ti_asid_max / 2)) {
 			tlb_invalidate_asids(1, ti-ti_asid_mask);
@@ -446,7 +448,9 @@
 			 * invalidate its TLB entries.
 			 */
 			KASSERT(pai-pai_asid != 0);
+			pmap_tlb_asid_check();
 			tlb_invalidate_asids(pai-pai_asid, pai-pai_asid + 1);
+			pmap_tlb_asid_check();
 		} else if (pai-pai_asid) {
 			/*
 			 * The victim is no longer an active pmap for this TLB.
@@ -469,7 +473,9 @@
 		/*
 		 * We need to invalidate all global TLB entries.
 		 */
+		pmap_tlb_asid_check();
 		tlb_invalidate_globals();
+		pmap_tlb_asid_check();
 		break;
 	case TLBINV_ALL:
 		/*
@@ -609,7 +615,9 @@
 	TLBINFO_LOCK(ti);
 	if (pm == pmap_kernel() || PMAP_PAI_ASIDVALID_P(pai, ti)) {
 		va |= pai-pai_asid  MIPS_TLB_PID_SHIFT;
+		pmap_tlb_asid_check();
 		rv = tlb_update(va, pt_entry);
+		pmap_tlb_asid_check();
 	}
 #ifdef MULTIPROCESSOR
 	pm-pm_shootdown_pending = need_ipi;
@@ -630,7 +638,9 @@
 	TLBINFO_LOCK(ti);
 	if (pm == pmap_kernel() || PMAP_PAI_ASIDVALID_P(pai, ti)) {
 		va |= pai-pai_asid  MIPS_TLB_PID_SHIFT;
+		pmap_tlb_asid_check();
 		tlb_invalidate_addr(va);
+		pmap_tlb_asid_check();
 	}
 #ifdef MULTIPROCESSOR
 	pm-pm_shootdown_pending = 1;
@@ -762,13 +772,17 @@
 		}
 		atomic_or_ulong(ci-ci_flags, CPUF_USERPMAP);
 #endif /* MULTIPROCESSOR */
+		ci-ci_pmap_asid_cur = pai-pai_asid;
 		tlb_set_asid(pai-pai_asid);
+		pmap_tlb_asid_check();
+	} else {
+		printf(%s: l (%p) != curlwp %p\n, __func__, l, curlwp);
 	}
 	TLBINFO_UNLOCK(ti);
 
 #ifdef DEBUGXX
 	if (pmapdebug  (PDB_FOLLOW|PDB_TLBPID)) {
-		printf(pmap_tlb_asid_alloc: curlwp %d.%d '%s' ,
+		printf(%s: curlwp %d.%d '%s' , __func__,
 		curlwp-l_proc-p_pid, curlwp-l_lid,
 		curlwp-l_proc-p_comm);
 		printf(segtab %p asid %d\n, pm-pm_segtab, pai-pai_asid);
@@ -798,7 +812,9 @@
 		atomic_and_ulong(ci-ci_flags, ~CPUF_USERPMAP);
 	}
 #elif defined(DEBUG)
+	curcpu()-ci_pmap_asid_cur = 0;
 	tlb_set_asid(0);
+	pmap_tlb_asid_check();
 #endif
 }
 
@@ -987,3 +1003,15 @@
 
 }
 #endif /* MULTIPROCESSOR */
+
+void
+pmap_tlb_asid_check(void)
+{
+#ifdef DEBUG
+	register_t tlb_hi;
+	__asm(mfc0 %0,$%1 : =r(tlb_hi) : n(MIPS_COP_0_TLB_HI));
+	KASSERTMSG((tlb_hi  0xff) != curcpu()-ci_pmap_asid_cur,
+	   (tlb_hi (%#x) asid != current asid (%#x),
+	(uint8_t)tlb_hi, curcpu()-ci_pmap_asid_cur));
+#endif
+}



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 06:06:19 UTC 2010

Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: trap.c

Log Message:
Add a check to more the ASID is valid on a user fault.


To generate a diff of this commit:
cvs rdiff -u -r1.217.12.30 -r1.217.12.31 src/sys/arch/mips/mips/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/mips/mips/trap.c
diff -u src/sys/arch/mips/mips/trap.c:1.217.12.30 src/sys/arch/mips/mips/trap.c:1.217.12.31
--- src/sys/arch/mips/mips/trap.c:1.217.12.30	Mon Aug 16 23:38:01 2010
+++ src/sys/arch/mips/mips/trap.c	Wed Dec 22 06:06:19 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: trap.c,v 1.217.12.30 2010/08/16 23:38:01 matt Exp $	*/
+/*	$NetBSD: trap.c,v 1.217.12.31 2010/12/22 06:06:19 matt Exp $	*/
 
 /*
  * Copyright (c) 1992, 1993
@@ -78,7 +78,7 @@
 
 #include sys/cdefs.h			/* RCS ID  Copyright macro defns */
 
-__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.217.12.30 2010/08/16 23:38:01 matt Exp $);
+__KERNEL_RCSID(0, $NetBSD: trap.c,v 1.217.12.31 2010/12/22 06:06:19 matt Exp $);
 
 #include opt_cputype.h	/* which mips CPU levels do we support? */
 #include opt_ddb.h
@@ -401,6 +401,8 @@
 			return; /* GEN */
 		}
 #endif
+		KASSERT(va  0 || ci-ci_pmap_asid_cur != 0);
+		pmap_tlb_asid_check();
 
 #ifdef PMAP_FAULTINFO
 		if (p-p_pid == pfi-pfi_lastpid  va == pfi-pfi_faultaddr) {



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 06:08:10 UTC 2010

Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: spl.S

Log Message:
If we are MULTIPROCESSOR (which means preemption is enabled), we need to
reload curcpu() after disabling interrupts since we have been preempted
to a different CPU before interrupt got disabled.


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.7 -r1.1.2.8 src/sys/arch/mips/mips/spl.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/mips/mips/spl.S
diff -u src/sys/arch/mips/mips/spl.S:1.1.2.7 src/sys/arch/mips/mips/spl.S:1.1.2.8
--- src/sys/arch/mips/mips/spl.S:1.1.2.7	Wed Jun  9 14:25:30 2010
+++ src/sys/arch/mips/mips/spl.S	Wed Dec 22 06:08:10 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: spl.S,v 1.1.2.7 2010/06/09 14:25:30 matt Exp $	*/
+/*	$NetBSD: spl.S,v 1.1.2.8 2010/12/22 06:08:10 matt Exp $	*/
 
 /*-
  * Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
@@ -29,6 +29,7 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 
+#include opt_multiprocessor.h	/* MP kernel? */
 #include opt_cputype.h	/* which mips CPU levels do we support? */
 
 #include sys/cdefs.h
@@ -37,7 +38,7 @@
 #include mips/asm.h
 #include mips/cpuregs.h
 
-RCSID($NetBSD: spl.S,v 1.1.2.7 2010/06/09 14:25:30 matt Exp $)
+RCSID($NetBSD: spl.S,v 1.1.2.8 2010/12/22 06:08:10 matt Exp $)
 
 #include assym.h
 
@@ -76,6 +77,9 @@
 	DYNAMIC_STATUS_MASK(a0,v0)		# machine dependent masking
 	mtc0	zero, MIPS_COP_0_STATUS		## disable interrupts
 	COP0_SYNC
+#ifdef MULTIPROCESSOR
+	PTR_L	a3, L_CPU(MIPS_CURLWP)		## make sure curcpu is correct
+#endif
 	INT_S	a1, CPU_INFO_CPL(a3)		## save IPL in cpu_info
 	mtc0	a0, MIPS_COP_0_STATUS		## store back
 	COP0_SYNC
@@ -220,6 +224,9 @@
 	DYNAMIC_STATUS_MASK(a0,a2)		# machine dependent masking
 	mtc0	a0, MIPS_COP_0_STATUS		## store back
 	COP0_SYNC
+#ifdef MULTIPROCESSOR
+	PTR_L	a3, L_CPU(MIPS_CURLWP)		## make sure curcpu is correct
+#endif
 	INT_S	a1, CPU_INFO_CPL(a3)		## save IPL in cpu_info
 #ifdef PARANOIA
 	j	ra## return



CVS commit: [matt-nb5-mips64] src/sys/arch/mips/include

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 06:09:02 UTC 2010

Modified Files:
src/sys/arch/mips/include [matt-nb5-mips64]: intr.h

Log Message:
Cleanup definition of __HAVE_PREEMPTION


To generate a diff of this commit:
cvs rdiff -u -r1.3.96.13 -r1.3.96.14 src/sys/arch/mips/include/intr.h

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

Modified files:

Index: src/sys/arch/mips/include/intr.h
diff -u src/sys/arch/mips/include/intr.h:1.3.96.13 src/sys/arch/mips/include/intr.h:1.3.96.14
--- src/sys/arch/mips/include/intr.h:1.3.96.13	Wed Jun  9 14:24:12 2010
+++ src/sys/arch/mips/include/intr.h	Wed Dec 22 06:09:02 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: intr.h,v 1.3.96.13 2010/06/09 14:24:12 matt Exp $ */
+/* $NetBSD: intr.h,v 1.3.96.14 2010/12/22 06:09:02 matt Exp $ */
 /*-
  * Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -98,8 +98,9 @@
 } ipl_cookie_t;
 
 #ifdef _KERNEL
-#ifdef MULTIPROCESSOR
-#define __HAVE_PREEMPTION
+
+#if defined(MULTIPROCESSOR)  defined(__HAVE_FAST_SOFTINTS)
+#define __HAVE_PREEMPTION	1
 #define SOFTINT_KPREEMPT	(SOFTINT_COUNT+0)
 #endif
 



CVS commit: [matt-nb5-mips64] src/sys/arch/mips

2010-12-21 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Wed Dec 22 06:13:36 UTC 2010

Modified Files:
src/sys/arch/mips/conf [matt-nb5-mips64]: kern.ldscript
src/sys/arch/mips/include [matt-nb5-mips64]: locore.h
src/sys/arch/mips/mips [matt-nb5-mips64]: locore.S mips_fixup.c
mips_machdep.c spl_stubs.c

Log Message:
Rework how fixups are processed.  Inside of generating a table, we just
scan kernel text for jumps to locations between (__stub_start, __stub_end]
and if found, we actually decode the instructions in the stub to find out
where the stub would eventually jump to and then patch the original jump
to jump directly to it bypassing the stub.  This is slightly slower than
the previous method but it's a simplier and new stubs get automagically
handled.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.5.78.1 src/sys/arch/mips/conf/kern.ldscript
cvs rdiff -u -r1.78.36.1.2.25 -r1.78.36.1.2.26 \
src/sys/arch/mips/include/locore.h
cvs rdiff -u -r1.167.38.20 -r1.167.38.21 src/sys/arch/mips/mips/locore.S
cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/mips/mips/mips_fixup.c
cvs rdiff -u -r1.205.4.1.2.1.2.48 -r1.205.4.1.2.1.2.49 \
src/sys/arch/mips/mips/mips_machdep.c
cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/mips/mips/spl_stubs.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/mips/conf/kern.ldscript
diff -u src/sys/arch/mips/conf/kern.ldscript:1.5 src/sys/arch/mips/conf/kern.ldscript:1.5.78.1
--- src/sys/arch/mips/conf/kern.ldscript:1.5	Sun Aug 27 04:48:44 2006
+++ src/sys/arch/mips/conf/kern.ldscript	Wed Dec 22 06:13:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: kern.ldscript,v 1.5 2006/08/27 04:48:44 tsutsui Exp $ */
+/* $NetBSD: kern.ldscript,v 1.5.78.1 2010/12/22 06:13:36 matt Exp $ */
 
 /*  ldscript for NetBSD/mips kernels and LKMs */
 OUTPUT_ARCH(mips)
@@ -15,6 +15,9 @@
   {
 _ftext = . ;
 *(.text)
+__stub_start = . ;
+*(.stub*)
+__stub_end = . ;
 *(.gnu.warning)
   } =0
   _etext = .;

Index: src/sys/arch/mips/include/locore.h
diff -u src/sys/arch/mips/include/locore.h:1.78.36.1.2.25 src/sys/arch/mips/include/locore.h:1.78.36.1.2.26
--- src/sys/arch/mips/include/locore.h:1.78.36.1.2.25	Thu Jun 10 00:32:11 2010
+++ src/sys/arch/mips/include/locore.h	Wed Dec 22 06:13:36 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.h,v 1.78.36.1.2.25 2010/06/10 00:32:11 cliff Exp $ */
+/* $NetBSD: locore.h,v 1.78.36.1.2.26 2010/12/22 06:13:36 matt Exp $ */
 
 /*
  * This file should not be included by MI code!!!
@@ -63,98 +63,55 @@
 void	fixup_splcalls(void);/* splstubs.c */
 bool	mips_fixup_exceptions(mips_fixup_callback_t);
 bool	mips_fixup_zero_relative(int32_t, uint32_t [2]);
-void	mips_fixup_stubs(uint32_t *, uint32_t *,
-	const struct mips_jump_fixup_info *, size_t);
-void	fixup_mips_cpu_switch_resume(void);
+void	mips_fixup_stubs(uint32_t *, uint32_t *);
 
+/*
+ * Define these stubs...
+ */
 void	mips_cpu_switch_resume(struct lwp *);
+void	tlb_set_asid(uint32_t);
+void	tlb_invalidate_all(void);
+void	tlb_invalidate_globals(void);
+void	tlb_invalidate_asids(uint32_t, uint32_t);
+void	tlb_invalidate_addr(vaddr_t);
+u_int	tlb_record_asids(u_long *, uint32_t);
+int	tlb_update(vaddr_t, uint32_t);
+void	tlb_enter(size_t, vaddr_t, uint32_t);
+void	tlb_read_indexed(size_t, struct tlbmask *);
+void	wbflush(void);
 
 #ifdef MIPS1
-void	mips1_tlb_set_asid(uint32_t);
 void	mips1_tlb_invalidate_all(void);
-void	mips1_tlb_invalidate_globals(void);
-void	mips1_tlb_invalidate_asids(uint32_t, uint32_t);
-void	mips1_tlb_invalidate_addr(vaddr_t);
-u_int	mips1_tlb_record_asids(u_long *, uint32_t);
-int	mips1_tlb_update(vaddr_t, uint32_t);
-void	mips1_tlb_enter(size_t, vaddr_t, uint32_t);
-void	mips1_tlb_read_indexed(size_t, struct tlbmask *);
-void	mips1_wbflush(void);
 void	mips1_lwp_trampoline(void);
 void	mips1_setfunc_trampoline(void);
-void	mips1_cpu_switch_resume(struct lwp *);
 
 uint32_t tx3900_cp0_config_read(void);
 #endif
 
 #if defined(MIPS3) || defined(MIPS4)
-void	mips3_tlb_set_asid(uint32_t);
 void	mips3_tlb_invalidate_all(void);
-void	mips3_tlb_invalidate_globals(void);
-void	mips3_tlb_invalidate_asids(uint32_t, uint32_t);
-void	mips3_tlb_invalidate_addr(vaddr_t);
-u_int	mips3_tlb_record_asids(u_long *, uint32_t);
-int	mips3_tlb_update(vaddr_t, uint32_t);
-void	mips3_tlb_enter(size_t, vaddr_t, uint32_t);
-void	mips3_tlb_read_indexed(size_t, struct tlbmask *);
-void	mips3_tlb_write_indexed_VPS(size_t, struct tlbmask *);
-void	mips3_wbflush(void);
 void	mips3_lwp_trampoline(void);
 void	mips3_setfunc_trampoline(void);
-void	mips3_cpu_switch_resume(struct lwp *);
 void	mips3_pagezero(void *dst);
 
 #ifdef MIPS3_5900
-void	mips5900_tlb_set_asid(uint32_t);
 void	mips5900_tlb_invalidate_all(void);
-void	mips5900_tlb_invalidate_globals(void);
-void	mips5900_tlb_invalidate_asids(uint32_t, uint32_t);
-void	mips5900_tlb_invalidate_addr(vaddr_t);
-u_int	

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

2010-12-21 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Wed Dec 22 07:24:11 UTC 2010

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

Log Message:
we need uvm_extern.h now


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 src/sys/arch/macppc/dev/awacs.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/awacs.c
diff -u src/sys/arch/macppc/dev/awacs.c:1.38 src/sys/arch/macppc/dev/awacs.c:1.39
--- src/sys/arch/macppc/dev/awacs.c:1.38	Mon Dec 20 00:25:37 2010
+++ src/sys/arch/macppc/dev/awacs.c	Wed Dec 22 07:24:10 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: awacs.c,v 1.38 2010/12/20 00:25:37 matt Exp $	*/
+/*	$NetBSD: awacs.c,v 1.39 2010/12/22 07:24:10 macallan Exp $	*/
 
 /*-
  * Copyright (c) 2000 Tsubai Masanari.  All rights reserved.
@@ -27,7 +27,7 @@
  */
 
 #include sys/cdefs.h
-__KERNEL_RCSID(0, $NetBSD: awacs.c,v 1.38 2010/12/20 00:25:37 matt Exp $);
+__KERNEL_RCSID(0, $NetBSD: awacs.c,v 1.39 2010/12/22 07:24:10 macallan Exp $);
 
 #include sys/param.h
 #include sys/audioio.h
@@ -41,6 +41,7 @@
 #include dev/audio_if.h
 #include dev/mulaw.h
 
+#include uvm/uvm_extern.h
 #include machine/autoconf.h
 #include machine/pio.h