From owner-p4-projects@FreeBSD.ORG Thu Nov 9 05:26:03 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D472916A416; Thu, 9 Nov 2006 05:26:02 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7B74A16A412 for ; Thu, 9 Nov 2006 05:26:02 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 058B843D5E for ; Thu, 9 Nov 2006 05:26:02 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id kA95Q1Ep086463 for ; Thu, 9 Nov 2006 05:26:01 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id kA95Q04Z086460 for perforce@freebsd.org; Thu, 9 Nov 2006 05:26:00 GMT (envelope-from jb@freebsd.org) Date: Thu, 9 Nov 2006 05:26:00 GMT Message-Id: <200611090526.kA95Q04Z086460@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 109593 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Nov 2006 05:26:03 -0000 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 -__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 #include @@ -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 -__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 -__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 /* for sigval union */ - #include /* @@ -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 -__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 #include @@ -73,13 +73,17 @@ #include #endif +#if defined(CPU_XSCALE_81342) +#include +#endif + #ifdef CPU_XSCALE_IXP425 #include #include #endif #if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ - defined(CPU_XSCALE_80219) + defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342) #include #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 -__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 #include #include @@ -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 -__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 #include #include @@ -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 -__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 #include #include @@ -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 -__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 #include @@ -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 -__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 #include @@ -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 -__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 -__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) <<<