Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 9 Nov 2006 05:26:00 GMT
From:      John Birrell <jb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 109593 for review
Message-ID:  <200611090526.kA95Q04Z086460@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=109593

Change 109593 by jb@jb_freebsd8 on 2006/11/09 05:25:08

	IFC

Affected files ...

.. //depot/projects/binutils/src/ObsoleteFiles.inc#3 integrate
.. //depot/projects/binutils/src/bin/sh/expand.c#3 integrate
.. //depot/projects/binutils/src/sbin/quotacheck/quotacheck.8#2 integrate
.. //depot/projects/binutils/src/sbin/quotacheck/quotacheck.c#2 integrate
.. //depot/projects/binutils/src/sys/amd64/amd64/machdep.c#2 integrate
.. //depot/projects/binutils/src/sys/amd64/linux32/linux.h#2 integrate
.. //depot/projects/binutils/src/sys/arm/arm/cpufunc.c#2 integrate
.. //depot/projects/binutils/src/sys/arm/arm/identcpu.c#2 integrate
.. //depot/projects/binutils/src/sys/arm/arm/intr.c#2 integrate
.. //depot/projects/binutils/src/sys/arm/arm/pmap.c#2 integrate
.. //depot/projects/binutils/src/sys/arm/arm/vm_machdep.c#2 integrate
.. //depot/projects/binutils/src/sys/arm/include/armreg.h#2 integrate
.. //depot/projects/binutils/src/sys/arm/include/atomic.h#2 integrate
.. //depot/projects/binutils/src/sys/arm/include/cpuconf.h#2 integrate
.. //depot/projects/binutils/src/sys/arm/include/cpufunc.h#2 integrate
.. //depot/projects/binutils/src/sys/arm/include/pmap.h#2 integrate
.. //depot/projects/binutils/src/sys/cam/cam_xpt.c#2 integrate
.. //depot/projects/binutils/src/sys/conf/files.arm#2 integrate
.. //depot/projects/binutils/src/sys/conf/files.sun4v#2 integrate
.. //depot/projects/binutils/src/sys/dev/aha/ahareg.h#2 integrate
.. //depot/projects/binutils/src/sys/dev/iwi/if_iwi.c#2 integrate
.. //depot/projects/binutils/src/sys/dev/pci/pci.c#2 integrate
.. //depot/projects/binutils/src/sys/dev/pci/pci_private.h#2 integrate
.. //depot/projects/binutils/src/sys/dev/pci/pcib_if.m#2 integrate
.. //depot/projects/binutils/src/sys/i386/i386/identcpu.c#2 integrate
.. //depot/projects/binutils/src/sys/i386/i386/machdep.c#2 integrate
.. //depot/projects/binutils/src/sys/kern/sched_ule.c#2 integrate
.. //depot/projects/binutils/src/sys/kern/uipc_syscalls.c#3 integrate
.. //depot/projects/binutils/src/sys/kern/vfs_subr.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet/libalias/alias_smedia.c#2 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_asconf.c#2 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_indata.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_input.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_output.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_pcb.c#4 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_structs.h#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_uio.h#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctp_usrreq.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet/sctputil.c#3 integrate
.. //depot/projects/binutils/src/sys/netinet6/sctp6_usrreq.c#4 integrate
.. //depot/projects/binutils/src/sys/netipsec/ipsec.c#2 integrate
.. //depot/projects/binutils/src/sys/nfsclient/bootp_subr.c#2 integrate
.. //depot/projects/binutils/src/sys/pci/if_pcn.c#2 integrate
.. //depot/projects/binutils/src/sys/pci/if_pcnreg.h#2 integrate
.. //depot/projects/binutils/src/sys/sun4v/sun4v/hcall.S#2 integrate
.. //depot/projects/binutils/src/sys/sun4v/sun4v/interrupt.S#2 integrate
.. //depot/projects/binutils/src/sys/sun4v/sun4v/intr_machdep.c#2 integrate
.. //depot/projects/binutils/src/sys/sun4v/sun4v/support.S#2 integrate
.. //depot/projects/binutils/src/sys/sys/sem.h#2 integrate
.. //depot/projects/binutils/src/sys/vm/vm_contig.c#2 integrate
.. //depot/projects/binutils/src/sys/vm/vm_page.c#2 integrate
.. //depot/projects/binutils/src/tools/regression/fifo/fifo_io/fifo_io.c#2 integrate
.. //depot/projects/binutils/src/usr.bin/calendar/calendars/calendar.freebsd#2 integrate
.. //depot/projects/binutils/src/usr.bin/top/machine.c#2 integrate
.. //depot/projects/binutils/src/usr.sbin/portsnap/phttpget/phttpget.c#2 integrate
.. //depot/projects/binutils/src/usr.sbin/sysinstall/install.c#2 integrate
.. //depot/projects/binutils/src/usr.sbin/sysinstall/installUpgrade.c#2 integrate

Differences ...

==== //depot/projects/binutils/src/ObsoleteFiles.inc#3 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/ObsoleteFiles.inc,v 1.58 2006/11/05 00:39:56 trhodes Exp $
+# $FreeBSD: src/ObsoleteFiles.inc,v 1.59 2006/11/08 03:23:49 marcel Exp $
 #
 # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and
 # directories (OLD_DIRS) which should get removed at an update. Recently
@@ -14,6 +14,10 @@
 # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last.
 #
 
+.if ${TARGET_ARCH} == "ia64"
+# 20061104: skiload.help removed
+OLD_FILES+=boot/skiload.help
+.endif
 # 20061018: pccardc removed
 OLD_FILES+=usr/sbin/pccardc usr/share/man/man8/pccardc.8.gz
 # 20060930: demangle.h from contrib/libstdc++/include/ext/

==== //depot/projects/binutils/src/bin/sh/expand.c#3 (text+ko) ====

@@ -36,7 +36,7 @@
 #endif
 #endif /* not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/sh/expand.c,v 1.50 2006/11/05 18:36:05 stefanf Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/expand.c,v 1.51 2006/11/07 22:46:13 stefanf Exp $");
 
 #include <sys/types.h>
 #include <sys/time.h>
@@ -98,7 +98,7 @@
 STATIC int subevalvar(char *, char *, int, int, int, int);
 STATIC char *evalvar(char *, int);
 STATIC int varisset(char *, int);
-STATIC void varvalue(char *, int, int);
+STATIC void varvalue(char *, int, int, int);
 STATIC void recordregion(int, int, int);
 STATIC void removerecordregions(int);
 STATIC void ifsbreakup(char *, struct arglist *);
@@ -633,7 +633,7 @@
 	int easy;
 	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR);
 
-	varflags = *p++;
+	varflags = (unsigned char)*p++;
 	subtype = varflags & VSTYPE;
 	var = p;
 	special = 0;
@@ -669,7 +669,7 @@
 	if (set && subtype != VSPLUS) {
 		/* insert the value of the variable */
 		if (special) {
-			varvalue(var, varflags & VSQUOTE, flag & EXP_FULL);
+			varvalue(var, varflags & VSQUOTE, subtype, flag);
 			if (subtype == VSLENGTH) {
 				varlen = expdest - stackblock() - startloc;
 				STADJUST(-varlen, expdest);
@@ -841,7 +841,7 @@
  */
 
 STATIC void
-varvalue(char *name, int quoted, int allow_split)
+varvalue(char *name, int quoted, int subtype, int flag)
 {
 	int num;
 	char *p;
@@ -853,7 +853,7 @@
 
 #define STRTODEST(p) \
 	do {\
-	if (allow_split) { \
+	if (flag & (EXP_FULL | EXP_CASE) && subtype != VSLENGTH) { \
 		syntax = quoted? DQSYNTAX : BASESYNTAX; \
 		while (*p) { \
 			if (syntax[(int)*p] == CCTL) \
@@ -888,7 +888,7 @@
 		}
 		break;
 	case '@':
-		if (allow_split && quoted) {
+		if (flag & EXP_FULL && quoted) {
 			for (ap = shellparam.p ; (p = *ap++) != NULL ; ) {
 				STRTODEST(p);
 				if (*ap)

==== //depot/projects/binutils/src/sbin/quotacheck/quotacheck.8#2 (text+ko) ====

@@ -29,9 +29,9 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)quotacheck.8	8.1 (Berkeley) 6/5/93
-.\" $FreeBSD: src/sbin/quotacheck/quotacheck.8,v 1.16 2005/02/10 09:19:32 ru Exp $
+.\" $FreeBSD: src/sbin/quotacheck/quotacheck.8,v 1.17 2006/11/07 19:07:52 ceri Exp $
 .\"
-.Dd June 5, 1993
+.Dd November 7, 2006
 .Dt QUOTACHECK 8
 .Os
 .Sh NAME
@@ -40,6 +40,7 @@
 .Sh SYNOPSIS
 .Nm
 .Op Fl guv
+.Op Fl l Ar maxrun
 .Fl a
 .Nm
 .Op Fl guv
@@ -72,6 +73,13 @@
 Only group quotas listed in
 .Pa /etc/fstab
 are to be checked.
+.It Fl l Ar maxrun
+Specifies the maximum number of concurrent file systems
+to check in parallel.
+If this option is omitted, or if
+.Ar maxrun
+is zero, parallel passes are run as per
+.Xr fsck 8 .
 .It Fl u
 Only user quotas listed in
 .Pa /etc/fstab

==== //depot/projects/binutils/src/sbin/quotacheck/quotacheck.c#2 (text+ko) ====

@@ -42,7 +42,7 @@
 #endif /* not lint */
 #endif
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sbin/quotacheck/quotacheck.c,v 1.25 2005/02/10 09:19:33 ru Exp $");
+__FBSDID("$FreeBSD: src/sbin/quotacheck/quotacheck.c,v 1.26 2006/11/07 19:07:52 ceri Exp $");
 
 /*
  * Fix up / report on disk quotas & usage
@@ -192,6 +192,12 @@
 			(void) addid((u_long)pw->pw_uid, USRQUOTA, pw->pw_name);
 		endpwent();
 	}
+	/*
+	 * Setting maxrun (-l) makes no sense without the -a flag.
+	 * Historically this was never an error, so we just warn.
+	 */
+	if (maxrun > 0 && !aflag)
+		warnx("ignoring -l without -a");
 	if (aflag)
 		exit(checkfstab(1, maxrun, needchk, chkquota));
 	if (setfsent() == 0)
@@ -217,7 +223,7 @@
 usage()
 {
 	(void)fprintf(stderr, "%s\n%s\n", 
-		"usage: quotacheck [-guv] -a",
+		"usage: quotacheck [-guv] [-l maxrun] -a",
 		"       quotacheck [-guv] filesystem ...");
 	exit(1);
 }

==== //depot/projects/binutils/src/sys/amd64/amd64/machdep.c#2 (text+ko) ====

@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.657 2006/10/26 21:42:16 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.660 2006/11/07 21:57:18 ru Exp $");
 
 #include "opt_atalk.h"
 #include "opt_atpic.h"
@@ -196,7 +196,7 @@
 #ifdef PERFMON
 	perfmon_init();
 #endif
-	printf("usable memory  = %ju (%ju MB)\n", ptoa((uintmax_t)physmem),
+	printf("usable memory = %ju (%ju MB)\n", ptoa((uintmax_t)physmem),
 	    ptoa((uintmax_t)physmem) / 1048576);
 	realmem = Maxmem;
 	/*
@@ -220,7 +220,7 @@
 
 	vm_ksubmap_init(&kmi);
 
-	printf("avail memory = %ju (%ju MB)\n",
+	printf("avail memory  = %ju (%ju MB)\n",
 	    ptoa((uintmax_t)cnt.v_free_count),
 	    ptoa((uintmax_t)cnt.v_free_count) / 1048576);
 
@@ -747,8 +747,6 @@
 	ip->gd_hioffset = ((uintptr_t)func)>>16 ;
 }
 
-#define	IDTVEC(name)	__CONCAT(X,name)
-
 extern inthand_t
 	IDTVEC(div), IDTVEC(dbg), IDTVEC(nmi), IDTVEC(bpt), IDTVEC(ofl),
 	IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm),
@@ -877,7 +875,7 @@
 			if (smap->base < physmap[i + 1]) {
 				if (boothowto & RB_VERBOSE)
 					printf(
-	"Overlapping or non-montonic memory region, ignoring second region\n");
+	"Overlapping or non-monotonic memory region, ignoring second region\n");
 				continue;
 			}
 		}

==== //depot/projects/binutils/src/sys/amd64/linux32/linux.h#2 (text+ko) ====

@@ -27,14 +27,12 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.8 2006/10/29 14:02:38 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux.h,v 1.9 2006/11/07 18:53:49 jhb Exp $
  */
 
 #ifndef _AMD64_LINUX_LINUX_H_
 #define	_AMD64_LINUX_LINUX_H_
 
-#include <sys/signal.h> /* for sigval union */
-
 #include <amd64/linux32/linux32_syscall.h>
 
 /*
@@ -379,6 +377,11 @@
 #define LINUX_SI_MAX_SIZE     128
 #define LINUX_SI_PAD_SIZE     ((LINUX_SI_MAX_SIZE/sizeof(l_int)) - 3)
 
+union l_sigval {
+	l_int		sival_int;
+	l_uintptr_t	sival_ptr;
+};
+
 typedef struct l_siginfo {
 	l_int		lsi_signo;
 	l_int		lsi_errno;
@@ -399,7 +402,7 @@
 		struct {
 			l_pid_t		_pid;		/* sender's pid */
 			l_uid16_t	_uid;		/* sender's uid */
-			union sigval _sigval;
+			union l_sigval _sigval;
 		} __packed _rt;
 
 		struct {

==== //depot/projects/binutils/src/sys/arm/arm/cpufunc.c#2 (text+ko) ====

@@ -45,7 +45,7 @@
  * Created      : 30/01/97
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.12 2006/10/21 04:25:00 kevlo Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.13 2006/11/07 22:36:56 cognet Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -73,13 +73,17 @@
 #include <arm/xscale/i80321/i80321var.h>
 #endif
 
+#if defined(CPU_XSCALE_81342)
+#include <arm/xscale/i8134x/i81342reg.h>
+#endif
+
 #ifdef CPU_XSCALE_IXP425
 #include <arm/xscale/ixp425/ixp425reg.h>
 #include <arm/xscale/ixp425/ixp425var.h>
 #endif
 
 #if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
-    defined(CPU_XSCALE_80219)
+    defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
 #include <arm/xscale/xscalereg.h>
 #endif
 
@@ -570,6 +574,62 @@
 /* CPU_XSCALE_80200 || CPU_XSCALE_80321 || CPU_XSCALE_PXA2X0 || CPU_XSCALE_IXP425
    CPU_XSCALE_80219 */
 
+#ifdef CPU_XSCALE_81342
+struct cpu_functions xscalec3_cpufuncs = {
+	/* CPU functions */
+	
+	cpufunc_id,			/* id			*/
+	xscale_cpwait,			/* cpwait		*/
+
+	/* MMU functions */
+
+	xscale_control,			/* control		*/
+	cpufunc_domains,		/* domain		*/
+	xscalec3_setttb,		/* setttb		*/
+	cpufunc_faultstatus,		/* faultstatus		*/
+	cpufunc_faultaddress,		/* faultaddress		*/
+
+	/* TLB functions */
+
+	armv4_tlb_flushID,		/* tlb_flushID		*/
+	xscale_tlb_flushID_SE,		/* tlb_flushID_SE	*/
+	armv4_tlb_flushI,		/* tlb_flushI		*/
+	(void *)armv4_tlb_flushI,	/* tlb_flushI_SE	*/
+	armv4_tlb_flushD,		/* tlb_flushD		*/
+	armv4_tlb_flushD_SE,		/* tlb_flushD_SE	*/
+
+	/* Cache operations */
+
+	xscalec3_cache_syncI,		/* icache_sync_all	*/
+	xscale_cache_syncI_rng,		/* icache_sync_range	*/
+
+	xscalec3_cache_purgeD,		/* dcache_wbinv_all	*/
+	xscalec3_cache_purgeD_rng,	/* dcache_wbinv_range	*/
+	xscale_cache_flushD_rng,	/* dcache_inv_range	*/
+	xscalec3_cache_cleanD_rng,	/* dcache_wb_range	*/
+
+	xscalec3_cache_purgeID,	/* idcache_wbinv_all	*/
+	xscalec3_cache_purgeID_rng,	/* idcache_wbinv_range	*/
+
+	/* Other functions */
+
+	cpufunc_nullop,			/* flush_prefetchbuf	*/
+	armv4_drain_writebuf,		/* drain_writebuf	*/
+	cpufunc_nullop,			/* flush_brnchtgt_C	*/
+	(void *)cpufunc_nullop,		/* flush_brnchtgt_E	*/
+
+	xscale_cpu_sleep,		/* sleep		*/
+
+	/* Soft functions */
+
+	cpufunc_null_fixup,		/* dataabt_fixup	*/
+	cpufunc_null_fixup,		/* prefetchabt_fixup	*/
+
+	xscalec3_context_switch,	/* context_switch	*/
+
+	xscale_setup			/* cpu setup		*/
+};
+#endif /* CPU_XSCALE_81342 */
 /*
  * Global constants also used by locore.s
  */
@@ -582,7 +642,7 @@
   defined (CPU_ARM10) ||					       \
   defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) ||	       \
   defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||	       \
-  defined(CPU_XSCALE_80219)
+  defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
 
 static void get_cachetype_cp15(void);
 
@@ -895,7 +955,6 @@
 	if (cputype == CPU_ID_80321_400 || cputype == CPU_ID_80321_600 ||
 	    cputype == CPU_ID_80321_400_B0 || cputype == CPU_ID_80321_600_B0 ||
 	    cputype == CPU_ID_80219_400 || cputype == CPU_ID_80219_600) {
-
 		/*
 		 * Reset the Performance Monitoring Unit to a
 		 * pristine state:
@@ -920,6 +979,19 @@
 	}
 #endif /* CPU_XSCALE_80321 */
 
+#if defined(CPU_XSCALE_81342)
+	if (cputype == CPU_ID_81342) {
+		cpufuncs = xscalec3_cpufuncs;
+#if defined(PERFCTRS)
+		xscale_pmu_init();
+#endif
+
+		cpu_reset_needs_v4_MMU_disable = 1;	/* XScale needs it */
+		get_cachetype_cp15();
+		pmap_pte_init_xscale();
+		return 0;
+	}
+#endif /* CPU_XSCALE_81342 */
 #ifdef CPU_XSCALE_PXA2X0
 	/* ignore core revision to test PXA2xx CPUs */
 	if ((cputype & ~CPU_ID_XSCALE_COREREV_MASK) == CPU_ID_PXA250 ||
@@ -1326,7 +1398,7 @@
   defined(CPU_SA110) || defined(CPU_SA1100) || defined(CPU_SA1110) ||	\
   defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) ||		\
   defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||		\
-  defined(CPU_XSCALE_80219)
+  defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
 
 #define IGN	0
 #define OR	1
@@ -1794,7 +1866,7 @@
 
 #if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
   defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) || \
-  defined(CPU_XSCALE_80219)
+  defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
 struct cpu_option xscale_options[] = {
 #ifdef COMPAT_12
 	{ "branchpredict", 	BIC, OR,  CPU_CONTROL_BPRD_ENABLE },

==== //depot/projects/binutils/src/sys/arm/arm/identcpu.c#2 (text+ko) ====

@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.8 2006/08/24 23:51:27 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.9 2006/11/07 22:36:57 cognet Exp $");
 #include <sys/systm.h>
 #include <sys/param.h>
 #include <sys/malloc.h>
@@ -126,6 +126,13 @@
 	"rev 12",	"rev 13",	"rev 14",	"rev 15",
 };
 
+static const char * const i81342_steppings[16] = {
+	"step A-0",	"rev 1",	"rev 2",	"rev 3",
+	"rev 4",	"rev 5",	"rev 6",	"rev 7",
+	"rev 8",	"rev 9",	"rev 10",	"rev 11",
+	"rev 12",	"rev 13",	"rev 14",	"rev 15",
+};
+
 static const char * const pxa2x0_steppings[16] = {
 	"step A-0",	"step A-1",	"step B-0",	"step B-1",
 	"step B-2",	"step C-0",	"rev 6",	"rev 7",
@@ -229,6 +236,9 @@
 	{ CPU_ID_80321_600_B0,	CPU_CLASS_XSCALE,	"i80321 600MHz",
 	  i80321_steppings },
 
+	{ CPU_ID_81342,		CPU_CLASS_XSCALE,	"i81342",
+	  i81342_steppings },
+
 	{ CPU_ID_80219_400,	CPU_CLASS_XSCALE,	"i80219 400MHz",
 	  xscale_steppings },
 	

==== //depot/projects/binutils/src/sys/arm/arm/intr.c#2 (text+ko) ====

@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/intr.c,v 1.12 2005/12/22 22:16:06 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/intr.c,v 1.13 2006/11/08 01:32:24 cognet Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/syslog.h> 
@@ -106,6 +106,7 @@
 	struct thread *td = curthread;
 	int i, thread;
 
+	PCPU_LAZY_INC(cnt.v_intr);
 	td->td_intr_nesting_level++;
 	while ((i = arm_get_next_irq()) != -1) {
 		arm_mask_irq(i);

==== //depot/projects/binutils/src/sys/arm/arm/pmap.c#2 (text+ko) ====

@@ -147,7 +147,7 @@
 #include "opt_vm.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.69 2006/08/28 21:43:34 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.71 2006/11/08 06:31:28 alc Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/kernel.h>
@@ -278,6 +278,8 @@
 extern void bcopy_page(vm_offset_t, vm_offset_t);
 extern void bzero_page(vm_offset_t);
 
+extern vm_offset_t alloc_firstaddr;
+
 char *_tmppt;
 
 /*
@@ -1960,7 +1962,7 @@
 
 	TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc);
 	
-	pv_entry_max = shpgperproc * maxproc + vm_page_array_size;
+	pv_entry_max = shpgperproc * maxproc + cnt.v_page_count;
 	pv_entry_high_water = 9 * (pv_entry_max / 10);
 	l2zone = uma_zcreate("L2 Table", L2_TABLE_SIZE_REAL, pmap_l2ptp_ctor,
 	    NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM | UMA_ZONE_NOFREE);
@@ -2784,6 +2786,11 @@
 		KASSERT(l2b != NULL, ("No L2 bucket in pmap_remove_pages"));
 		pt = &l2b->l2b_kva[l2pte_index(pv->pv_va)];
 		m = PHYS_TO_VM_PAGE(*pt & L2_ADDR_MASK);
+#ifdef ARM_USE_SMALL_ALLOC
+		KASSERT((vm_offset_t)m >= alloc_firstaddr, ("Trying to access non-existent page va %x pte %x", pv->pv_va, *pt));
+#else
+		KASSERT((vm_offset_t)m >= KERNBASE, ("Trying to access non-existent page va %x pte %x", pv->pv_va, *pt));
+#endif
 		*pt = 0;
 		PTE_SYNC(pt);
 		npv = TAILQ_NEXT(pv, pv_plist);
@@ -4563,7 +4570,7 @@
 /*
  * pmap_link_l2pt:
  *
- *	Link the L2 page table specified by "pa" into the L1
+ *	Link the L2 page table specified by l2pv.pv_pa into the L1
  *	page table at the slot for "va".
  */
 void
@@ -4574,7 +4581,12 @@
 
 	proto = L1_S_DOM(PMAP_DOMAIN_KERNEL) | L1_C_PROTO;
 
+#ifdef VERBOSE_INIT_ARM     
+	printf("pmap_link_l2pt: pa=0x%x va=0x%x\n", l2pv->pv_pa, l2pv->pv_va);
+#endif
+
 	pde[slot + 0] = proto | (l2pv->pv_pa + 0x000);
+
 	PTE_SYNC(&pde[slot]);
 
 	SLIST_INSERT_HEAD(&kernel_pt_list, l2pv, pv_list);

==== //depot/projects/binutils/src/sys/arm/arm/vm_machdep.c#2 (text+ko) ====

@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.28 2006/10/24 23:27:52 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.29 2006/11/07 22:35:30 cognet Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -456,7 +456,7 @@
 
 MALLOC_DEFINE(M_VMSMALLALLOC, "vm_small_alloc", "VM Small alloc data");
 
-static vm_offset_t alloc_firstaddr;
+vm_offset_t alloc_firstaddr;
 
 vm_offset_t
 arm_ptovirt(vm_paddr_t pa)

==== //depot/projects/binutils/src/sys/arm/include/armreg.h#2 (text+ko) ====

@@ -35,7 +35,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/arm/include/armreg.h,v 1.4 2006/08/24 23:51:28 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/armreg.h,v 1.5 2006/11/07 22:36:56 cognet Exp $
  */
 
 #ifndef MACHINE_ARMREG_H
@@ -157,6 +157,7 @@
 #define	CPU_ID_80321_600_B0	0x69052c30
 #define	CPU_ID_80219_400	0x69052e20 /* A0 stepping/revision. */
 #define	CPU_ID_80219_600	0x69052e30 /* A0 stepping/revision. */
+#define	CPU_ID_81342		0x69056810
 #define	CPU_ID_IXP425_533	0x690541c0
 #define	CPU_ID_IXP425_400	0x690541d0
 #define	CPU_ID_IXP425_266	0x690541f0

==== //depot/projects/binutils/src/sys/arm/include/atomic.h#2 (text+ko) ====

@@ -33,7 +33,7 @@
  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/arm/include/atomic.h,v 1.19 2006/05/15 13:08:12 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/atomic.h,v 1.20 2006/11/07 11:53:44 cognet Exp $
  */
 
 #ifndef	_MACHINE_ATOMIC_H_
@@ -337,6 +337,7 @@
 #define atomic_cmpset_acq_int		atomic_cmpset_32
 #define atomic_cmpset_acq_ptr		atomic_cmpset_ptr
 #define atomic_cmpset_acq_long		atomic_cmpset_long
+#define atomic_cmpset_acq_32		atomic_cmpset_32
 #define atomic_store_rel_ptr		atomic_store_ptr
 #define atomic_store_rel_int		atomic_store_32
 #define atomic_cmpset_rel_32		atomic_cmpset_32

==== //depot/projects/binutils/src/sys/arm/include/cpuconf.h#2 (text+ko) ====

@@ -34,7 +34,7 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/arm/include/cpuconf.h,v 1.8 2006/08/24 23:51:28 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/cpuconf.h,v 1.9 2006/11/07 22:36:56 cognet Exp $
  *
  */
 
@@ -64,7 +64,8 @@
 #define	ARM_ARCH_4	0
 #endif
 
-#if (defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || defined(CPU_XSCALE_80219) || \
+#if (defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
+    defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) || \
      defined(CPU_XSCALE_PXA2X0)) || defined(CPU_ARM10)
 #define	ARM_ARCH_5	1
 #else
@@ -113,7 +114,7 @@
 
 #if(defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) ||		\
     defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||		\
-    defined(CPU_XSCALE_80219))
+    defined(CPU_XSCALE_80219)) || defined(CPU_XSCALE_81342)
 #define	ARM_MMU_XSCALE		1
 #else
 #define	ARM_MMU_XSCALE		0
@@ -132,7 +133,7 @@
  */
 
 #if (defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
-     defined(CPU_XSCALE_80219))
+     defined(CPU_XSCALE_80219)) || defined(CPU_XSCALE_81342)
 #define ARM_XSCALE_PMU	1
 #else
 #define ARM_XSCALE_PMU	0

==== //depot/projects/binutils/src/sys/arm/include/cpufunc.h#2 (text+ko) ====

@@ -38,7 +38,7 @@
  *
  * Prototypes for cpu, mmu and tlb related functions.
  *
- * $FreeBSD: src/sys/arm/include/cpufunc.h,v 1.9 2006/08/24 23:51:28 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/cpufunc.h,v 1.10 2006/11/07 22:36:56 cognet Exp $
  */
 
 #ifndef _MACHINE_CPUFUNC_H_
@@ -374,7 +374,7 @@
   defined(CPU_SA1100) || defined(CPU_SA1110) ||			     \
   defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) ||	     \
   defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||	     \
-  defined(CPU_XSCALE_80219)
+  defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
   
 void	armv4_tlb_flushID	(void);
 void	armv4_tlb_flushI	(void);
@@ -392,7 +392,7 @@
 
 #if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) ||	\
   defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||	\
-  defined(CPU_XSCALE_80219)
+  defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
 void	xscale_cpwait		(void);
 
 void	xscale_cpu_sleep	(int mode);
@@ -433,6 +433,28 @@
 #endif	/* CPU_XSCALE_80200 || CPU_XSCALE_80321 || CPU_XSCALE_PXA2X0 || CPU_XSCALE_IXP425 
 	   CPU_XSCALE_80219 */
 
+#ifdef	CPU_XSCALE_81342
+
+void	xscalec3_cache_cleanID	(void);
+void	xscalec3_cache_cleanD	(void);
+
+void	xscalec3_cache_purgeID	(void);
+void	xscalec3_cache_purgeID_E	(u_int entry);
+void	xscalec3_cache_purgeD	(void);
+void	xscalec3_cache_purgeD_E	(u_int entry);
+
+void	xscalec3_cache_syncI	(void);
+void	xscalec3_cache_cleanID_rng (vm_offset_t start, vm_size_t end);
+void	xscalec3_cache_cleanD_rng	(vm_offset_t start, vm_size_t end);
+void	xscalec3_cache_purgeID_rng (vm_offset_t start, vm_size_t end);
+void	xscalec3_cache_purgeD_rng	(vm_offset_t start, vm_size_t end);
+
+
+void	xscalec3_setttb		(u_int ttb);
+void	xscalec3_context_switch	(void);
+
+#endif /* CPU_XSCALE_81342 */
+
 #define tlb_flush	cpu_tlb_flushID
 #define setttb		cpu_setttb
 #define drain_writebuf	cpu_drain_writebuf

==== //depot/projects/binutils/src/sys/arm/include/pmap.h#2 (text+ko) ====

@@ -44,7 +44,7 @@
  *      from: @(#)pmap.h        7.4 (Berkeley) 5/12/91
  * 	from: FreeBSD: src/sys/i386/include/pmap.h,v 1.70 2000/11/30
  *
- * $FreeBSD: src/sys/arm/include/pmap.h,v 1.20 2006/08/08 20:59:38 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/pmap.h,v 1.21 2006/11/07 22:36:56 cognet Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -426,7 +426,7 @@
 extern void (*pmap_copy_page_func)(vm_paddr_t, vm_paddr_t);
 extern void (*pmap_zero_page_func)(vm_paddr_t, int, int);
 
-#if (ARM_MMU_GENERIC + ARM_MMU_SA1) != 0
+#if (ARM_MMU_GENERIC + ARM_MMU_SA1) != 0 || defined(CPU_XSCALE_81342)
 void	pmap_copy_page_generic(vm_paddr_t, vm_paddr_t);
 void	pmap_zero_page_generic(vm_paddr_t, int, int);
 

==== //depot/projects/binutils/src/sys/cam/cam_xpt.c#2 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.166 2006/11/02 00:54:33 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.168 2006/11/07 23:06:00 mjacob Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -1607,6 +1607,9 @@
 	cts.ccb_h.func_code = XPT_GET_TRAN_SETTINGS;
 	cts.type = CTS_TYPE_CURRENT_SETTINGS;
 	xpt_action((union ccb*)&cts);
+	if ((cts.ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) {
+		return;
+	}
 
 	/* Ask the SIM for its base transfer speed */
 	xpt_setup_ccb(&cpi.ccb_h, path, /*priority*/1);
@@ -5835,6 +5838,9 @@
 	cts.ccb_h.func_code = XPT_GET_TRAN_SETTINGS;
 	cts.type = CTS_TYPE_USER_SETTINGS;
 	xpt_action((union ccb *)&cts);
+	if ((cts.ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) {
+		return;
+	}
 	cts.ccb_h.func_code = XPT_SET_TRAN_SETTINGS;
 	cts.type = CTS_TYPE_CURRENT_SETTINGS;
 	xpt_action((union ccb *)&cts);
@@ -6356,7 +6362,9 @@
 		cur_cts.ccb_h.func_code = XPT_GET_TRAN_SETTINGS;
 		cur_cts.type = cts->type;
 		xpt_action((union ccb *)&cur_cts);
-
+		if ((cur_cts.ccb_h.status & CAM_STATUS_MASK) != CAM_REQ_CMP) {
+			return;
+		}
 		cur_scsi = &cur_cts.proto_specific.scsi;
 		if ((scsi->valid & CTS_SCSI_VALID_TQ) == 0) {
 			scsi->flags &= ~CTS_SCSI_FLAGS_TAG_ENB;
@@ -6403,8 +6411,8 @@
 		  && (inq_data->flags & SID_Sync) == 0
 		  && cts->type == CTS_TYPE_CURRENT_SETTINGS)
 		 || ((cpi.hba_inquiry & PI_SDTR_ABLE) == 0)
-		 || (cur_spi->sync_offset == 0)
-		 || (cur_spi->sync_period == 0)) {
+		 || (spi->sync_offset == 0)
+		 || (spi->sync_period == 0)) {
 			/* Force async */
 			spi->sync_period = 0;
 			spi->sync_offset = 0;

==== //depot/projects/binutils/src/sys/conf/files.arm#2 (text+ko) ====

@@ -1,4 +1,7 @@
-# $FreeBSD: src/sys/conf/files.arm,v 1.11 2006/07/14 00:50:51 cognet Exp $
+# $FreeBSD: src/sys/conf/files.arm,v 1.12 2006/11/08 20:51:01 sam Exp $
+crypto/blowfish/bf_enc.c	optional	crypto | ipsec ipsec_esp
+crypto/des/des_enc.c		optional	crypto | ipsec ipsec_esp | \
+						netsmb
 arm/arm/autoconf.c	standard
 arm/arm/bcopy_page.S	standard
 arm/arm/bcopyinout.S		standard

==== //depot/projects/binutils/src/sys/conf/files.sun4v#2 (text+ko) ====

@@ -1,7 +1,7 @@
 # This file tells config what files go into building a kernel,
 # files marked standard are always included.
 #
-# $FreeBSD: src/sys/conf/files.sun4v,v 1.2 2006/10/09 04:45:17 kmacy Exp $
+# $FreeBSD: src/sys/conf/files.sun4v,v 1.3 2006/11/08 21:45:45 ru Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -20,7 +20,7 @@
 #
 crypto/blowfish/bf_enc.c	optional	crypto | ipsec ipsec_esp
 crypto/des/des_enc.c		optional	crypto | ipsec ipsec_esp | \
-						netsmbcrypto
+						netsmb
 dev/ofw/ofw_bus_if.m		standard
 dev/ofw/ofw_bus_subr.c		standard
 dev/ofw/ofw_console.c		optional	ofw_console

==== //depot/projects/binutils/src/sys/dev/aha/ahareg.h#2 (text+ko) ====

@@ -30,7 +30,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/dev/aha/ahareg.h,v 1.19 2005/01/19 06:54:10 imp Exp $
+ * $FreeBSD: src/sys/dev/aha/ahareg.h,v 1.20 2006/11/09 02:19:30 kevlo Exp $
  */
 
 #ifndef _AHAREG_H_
@@ -184,10 +184,6 @@
 } config_data_t;
 
 typedef struct {
-	uint8_t enable;
-} target_mode_params_t;
-
-typedef struct {
 	uint8_t offset : 4,
 		 period : 3,
 		 sync	: 1;
@@ -212,28 +208,8 @@
 	uint8_t	bios_mbox_addr[3];
 } setup_data_t;
 
-struct aha_isa_port {
-	uint16_t addr;
-	uint8_t  bio;	/* board IO offset */
-};
-
 #define AHA_NUM_ISAPORTS 6
 
-typedef enum {
-	BIO_330		= 0,
-	BIO_334		= 1,
-	BIO_230		= 2,
-	BIO_234		= 3,
-	BIO_130		= 4,
-	BIO_134		= 5,
-	BIO_DISABLED	= 6,
-	BIO_DISABLED2	= 7
-} isa_compat_io_t;
-
-typedef struct {
-	uint8_t sync_rate[16];		/* Sync in 10ns units */
-} target_sync_info_data_t;
-
 typedef struct {
 	uint8_t len[3];
 	uint8_t addr[3];
@@ -409,7 +385,6 @@
 void aha_free(struct aha_softc *);
 int aha_init(struct aha_softc *); 
 void aha_intr(void *);
-int aha_iop_from_bio(isa_compat_io_t);
 int aha_probe(struct aha_softc *);
 
 #define DEFAULT_CMD_TIMEOUT 10000	/* 1 sec */

==== //depot/projects/binutils/src/sys/dev/iwi/if_iwi.c#2 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/iwi/if_iwi.c,v 1.41 2006/10/23 00:34:07 mlaier Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/iwi/if_iwi.c,v 1.42 2006/11/07 19:03:42 jhb Exp $");
 
 /*-
  * Intel(R) PRO/Wireless 2200BG/2225BG/2915ABG driver
@@ -488,13 +488,12 @@
 	struct ieee80211com *ic = &sc->sc_ic;
 	struct ifnet *ifp = ic->ic_ifp;
 
-	iwi_stop(sc);
-	iwi_put_firmware(sc);
-
 	if (ifp != NULL) {
+		iwi_stop(sc);
 		bpfdetach(ifp);
 		ieee80211_ifdetach(ic);
 	}
+	iwi_put_firmware(sc);
 
 	iwi_free_cmd_ring(sc, &sc->cmdq);
 	iwi_free_tx_ring(sc, &sc->txq[0]);

==== //depot/projects/binutils/src/sys/dev/pci/pci.c#2 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.319 2006/11/04 06:56:51 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.320 2006/11/07 18:55:51 jhb Exp $");
 
 #include "opt_bus.h"
 
@@ -83,11 +83,11 @@
 static int		pci_probe(device_t dev);
 static int		pci_attach(device_t dev);
 static void		pci_load_vendor_data(void);
-static int		pci_describe_parse_line(char **ptr, int *vendor, 
+static int		pci_describe_parse_line(char **ptr, int *vendor,
 			    int *device, char **desc);
 static char		*pci_describe_device(device_t dev);
 static int		pci_modevent(module_t mod, int what, void *arg);
-static void		pci_hdrtypedata(device_t pcib, int b, int s, int f, 
+static void		pci_hdrtypedata(device_t pcib, int b, int s, int f,
 			    pcicfgregs *cfg);
 static void		pci_read_extcap(device_t pcib, pcicfgregs *cfg);
 static uint32_t		pci_read_vpd_reg(device_t pcib, pcicfgregs *cfg,
@@ -371,7 +371,7 @@
 			return (NULL);
 
 		cfg = &devlist_entry->cfg;
-		
+
 		cfg->bus		= b;
 		cfg->slot		= s;
 		cfg->func		= f;
@@ -1124,14 +1124,14 @@
 	if (bootverbose) {
 		pcicfgregs *cfg = &dinfo->cfg;
 
-		printf("found->\tvendor=0x%04x, dev=0x%04x, revid=0x%02x\n", 
+		printf("found->\tvendor=0x%04x, dev=0x%04x, revid=0x%02x\n",
 		    cfg->vendor, cfg->device, cfg->revid);
 		printf("\tbus=%d, slot=%d, func=%d\n",
 		    cfg->bus, cfg->slot, cfg->func);
 		printf("\tclass=%02x-%02x-%02x, hdrtype=0x%02x, mfdev=%d\n",
 		    cfg->baseclass, cfg->subclass, cfg->progif, cfg->hdrtype,
 		    cfg->mfdev);
-		printf("\tcmdreg=0x%04x, statreg=0x%04x, cachelnsz=%d (dwords)\n", 
+		printf("\tcmdreg=0x%04x, statreg=0x%04x, cachelnsz=%d (dwords)\n",
 		    cfg->cmdreg, cfg->statreg, cfg->cachelnsz);
 		printf("\tlattimer=0x%02x (%d ns), mingnt=0x%02x (%d ns), maxlat=0x%02x (%d ns)\n",
 		    cfg->lattimer, cfg->lattimer * 30, cfg->mingnt,
@@ -1161,7 +1161,7 @@
 					      *(uint16_t *)&vrop->value[2]));
 				else if (strncmp("RV", vrop->keyword, 2) == 0)
 					printf("\tRV: %#hhx\n", vrop->value[0]);
-				else 
+				else
 					printf("\t%.2s: %s\n", vrop->keyword,
 					    vrop->value);
 			}
@@ -1281,6 +1281,7 @@
 		    "pci%d:%d:%d bar %#x too many address bits", b, s, f, reg);
 		return (barlen);

>>> TRUNCATED FOR MAIL (1000 lines) <<<



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611090526.kA95Q04Z086460>