PERFORCE change 109808 for review

Marcel Moolenaar marcel at FreeBSD.org
Sun Nov 12 17:58:24 UTC 2006


http://perforce.freebsd.org/chv.cgi?CH=109808

Change 109808 by marcel at marcel_cluster on 2006/11/12 17:57:50

	IFC @109804

Affected files ...

.. //depot/projects/ia64/sys/amd64/linux32/linux32_proto.h#12 integrate
.. //depot/projects/ia64/sys/amd64/linux32/linux32_syscall.h#12 integrate
.. //depot/projects/ia64/sys/amd64/linux32/linux32_sysent.c#12 integrate
.. //depot/projects/ia64/sys/arm/arm/pmap.c#22 integrate
.. //depot/projects/ia64/sys/arm/at91/kb920x_machdep.c#6 integrate
.. //depot/projects/ia64/sys/arm/include/pmap.h#17 integrate
.. //depot/projects/ia64/sys/arm/sa11x0/assabet_machdep.c#13 integrate
.. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_proto.h#23 integrate
.. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscall.h#23 integrate
.. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscalls.c#23 integrate
.. //depot/projects/ia64/sys/compat/freebsd32/freebsd32_sysent.c#23 integrate
.. //depot/projects/ia64/sys/compat/svr4/svr4_proto.h#10 integrate
.. //depot/projects/ia64/sys/compat/svr4/svr4_syscall.h#9 integrate
.. //depot/projects/ia64/sys/compat/svr4/svr4_syscallnames.c#9 integrate
.. //depot/projects/ia64/sys/compat/svr4/svr4_sysent.c#9 integrate
.. //depot/projects/ia64/sys/conf/NOTES#111 integrate
.. //depot/projects/ia64/sys/dev/usb/usb_quirks.c#15 integrate
.. //depot/projects/ia64/sys/dev/usb/usbdevs#78 integrate
.. //depot/projects/ia64/sys/kern/init_main.c#59 integrate
.. //depot/projects/ia64/sys/kern/init_sysent.c#57 integrate
.. //depot/projects/ia64/sys/kern/kern_idle.c#20 integrate
.. //depot/projects/ia64/sys/kern/kern_lock.c#34 integrate
.. //depot/projects/ia64/sys/kern/posix4_mib.c#2 integrate
.. //depot/projects/ia64/sys/kern/subr_lock.c#3 integrate
.. //depot/projects/ia64/sys/kern/syscalls.c#58 integrate
.. //depot/projects/ia64/sys/kern/systrace_args.c#4 integrate
.. //depot/projects/ia64/sys/netinet/sctp_constants.h#3 integrate
.. //depot/projects/ia64/sys/netinet/sctp_input.c#3 integrate
.. //depot/projects/ia64/sys/netinet/sctp_output.c#3 integrate
.. //depot/projects/ia64/sys/netinet/sctputil.c#3 integrate
.. //depot/projects/ia64/sys/netinet/sctputil.h#3 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/pmap_dispatch.c#6 integrate
.. //depot/projects/ia64/sys/sun4v/sun4v/pmap.c#4 integrate
.. //depot/projects/ia64/sys/sys/lock_profile.h#2 integrate
.. //depot/projects/ia64/sys/sys/syscall.h#57 integrate
.. //depot/projects/ia64/sys/sys/syscall.mk#57 integrate
.. //depot/projects/ia64/sys/sys/sysproto.h#61 integrate

Differences ...

==== //depot/projects/ia64/sys/amd64/linux32/linux32_proto.h#12 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.26 2006/11/11 21:49:07 ru Exp $
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp 
  */
 
@@ -11,7 +11,7 @@
 
 #include <sys/signal.h>
 #include <sys/acl.h>
-#include <posix4/_semaphore.h>
+#include <sys/_semaphore.h>
 #include <sys/ucontext.h>
 
 #include <bsm/audit_kevents.h>

==== //depot/projects/ia64/sys/amd64/linux32/linux32_syscall.h#12 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.26 2006/11/11 21:49:07 ru Exp $
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp 
  */
 

==== //depot/projects/ia64/sys/amd64/linux32/linux32_sysent.c#12 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.26 2006/11/11 21:49:07 ru Exp $
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp 
  */
 

==== //depot/projects/ia64/sys/arm/arm/pmap.c#22 (text+ko) ====

@@ -147,7 +147,7 @@
 #include "opt_vm.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.71 2006/11/08 06:31:28 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.72 2006/11/11 20:57:51 alc Exp $");
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/kernel.h>
@@ -218,7 +218,6 @@
 
 static MALLOC_DEFINE(M_VMPMAP, "pmap", "PMAP L1");
 
-vm_offset_t avail_end;		/* PA of last available physical page */
 vm_offset_t virtual_avail;	/* VA of first avail page (after kernel bss) */
 vm_offset_t virtual_end;	/* VA of last avail page (end of kernel AS) */
 vm_offset_t pmap_curmaxkvaddr;

==== //depot/projects/ia64/sys/arm/at91/kb920x_machdep.c#6 (text) ====

@@ -48,7 +48,7 @@
 #include "opt_at91.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.18 2006/10/26 21:42:17 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.19 2006/11/11 20:57:52 alc Exp $");
 
 #define _ARM32_BUS_DMA_PRIVATE
 #include <sys/param.h>
@@ -129,7 +129,6 @@
 vm_paddr_t phys_avail[10];
 vm_paddr_t dump_avail[4];
 vm_offset_t physical_pages;
-vm_offset_t clean_sva, clean_eva;
 
 struct pv_addr systempage;
 struct pv_addr msgbufpv;
@@ -496,7 +495,6 @@
 	/* Do basic tuning, hz etc */
 	init_param1();
 	init_param2(physmem);
-	avail_end = KERNPHYSADDR + memsize - 1;
 	kdb_init();
 	return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP -
 	    sizeof(struct pcb)));

==== //depot/projects/ia64/sys/arm/include/pmap.h#17 (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.21 2006/11/07 22:36:56 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/pmap.h,v 1.22 2006/11/11 20:57:52 alc Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -213,9 +213,6 @@
 	return (ptep);
 }
 
-extern vm_offset_t avail_end;
-extern vm_offset_t clean_eva;
-extern vm_offset_t clean_sva;
 extern vm_offset_t phys_avail[];
 extern vm_offset_t virtual_avail;
 extern vm_offset_t virtual_end;

==== //depot/projects/ia64/sys/arm/sa11x0/assabet_machdep.c#13 (text+ko) ====

@@ -47,7 +47,7 @@
 
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.19 2006/10/26 21:42:17 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.20 2006/11/11 20:57:52 alc Exp $");
 
 #include "opt_md.h"
 
@@ -146,7 +146,6 @@
 vm_paddr_t physical_end;
 vm_paddr_t physical_freestart;
 vm_offset_t physical_pages;
-vm_offset_t clean_sva, clean_eva;
 
 struct pv_addr systempage;
 struct pv_addr irqstack;
@@ -455,7 +454,6 @@
 	init_param1();
 	init_param2(physmem);
 	kdb_init();
-	avail_end = 0xc0000000 + memsize - 1;
 	return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP -
 	    sizeof(struct pcb)));
 }

==== //depot/projects/ia64/sys/compat/freebsd32/freebsd32_proto.h#23 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.74 2006/11/03 21:23:33 ru Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.75 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.87 2006/11/03 21:21:28 ru Exp 
  */
 
@@ -11,7 +11,7 @@
 
 #include <sys/signal.h>
 #include <sys/acl.h>
-#include <posix4/_semaphore.h>
+#include <sys/_semaphore.h>
 #include <sys/ucontext.h>
 
 #include <bsm/audit_kevents.h>

==== //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscall.h#23 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.72 2006/11/03 21:23:33 ru Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.73 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.87 2006/11/03 21:21:28 ru Exp 
  */
 

==== //depot/projects/ia64/sys/compat/freebsd32/freebsd32_syscalls.c#23 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.63 2006/11/03 21:23:33 ru Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.64 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.87 2006/11/03 21:21:28 ru Exp 
  */
 

==== //depot/projects/ia64/sys/compat/freebsd32/freebsd32_sysent.c#23 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.73 2006/11/03 21:23:33 ru Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.74 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.87 2006/11/03 21:21:28 ru Exp 
  */
 

==== //depot/projects/ia64/sys/compat/svr4/svr4_proto.h#10 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.27 2006/08/15 17:36:59 jhb Exp $
+ * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.28 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.28 2006/07/28 19:05:27 jhb Exp 
  */
 
@@ -11,7 +11,7 @@
 
 #include <sys/signal.h>
 #include <sys/acl.h>
-#include <posix4/_semaphore.h>
+#include <sys/_semaphore.h>
 #include <sys/ucontext.h>
 
 #include <bsm/audit_kevents.h>

==== //depot/projects/ia64/sys/compat/svr4/svr4_syscall.h#9 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.25 2006/08/15 17:36:59 jhb Exp $
+ * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.26 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.28 2006/07/28 19:05:27 jhb Exp 
  */
 

==== //depot/projects/ia64/sys/compat/svr4/svr4_syscallnames.c#9 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.25 2006/08/15 17:36:59 jhb Exp $
+ * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.26 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.28 2006/07/28 19:05:27 jhb Exp 
  */
 

==== //depot/projects/ia64/sys/compat/svr4/svr4_sysent.c#9 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.26 2006/08/15 17:36:59 jhb Exp $
+ * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.27 2006/11/11 21:49:08 ru Exp $
  * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.28 2006/07/28 19:05:27 jhb Exp 
  */
 

==== //depot/projects/ia64/sys/conf/NOTES#111 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1398 2006/11/11 05:35:39 kmacy Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1399 2006/11/11 23:37:52 ru Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -195,7 +195,7 @@
 # MUTEX_NOINLINE forces mutex operations to call functions to perform each
 # operation rather than inlining the simple cases.  This can be used to
 # shrink the size of the kernel text segment.  Note that this behavior is
-# already implied by the INVARIANT_SUPPORT, INVARIANTS, KTR, MUTEX_PROFILING,
+# already implied by the INVARIANT_SUPPORT, INVARIANTS, KTR, LOCK_PROFILING,
 # and WITNESS options.
 options 	MUTEX_NOINLINE
 
@@ -207,7 +207,7 @@
 # RWLOCK_NOINLINE forces rwlock operations to call functions to perform each
 # operation rather than inlining the simple cases.  This can be used to
 # shrink the size of the kernel text segment.  Note that this behavior is
-# already implied by the INVARIANT_SUPPORT, INVARIANTS, KTR, MUTEX_PROFILING,
+# already implied by the INVARIANT_SUPPORT, INVARIANTS, KTR, LOCK_PROFILING,
 # and WITNESS options.
 options 	RWLOCK_NOINLINE
 
@@ -241,8 +241,7 @@
 options 	WITNESS_KDB
 options 	WITNESS_SKIPSPIN
 
-# LOCK_PROFILING - Profiling locks.  See
-# MUTEX_PROFILING(9) for details.
+# LOCK_PROFILING - Profiling locks.  See LOCK_PROFILING(9) for details.
 options 	LOCK_PROFILING
 # Set the number of buffers and the hash size.  The hash size MUST be larger
 # than the number of buffers.  Hash size should be prime.

==== //depot/projects/ia64/sys/dev/usb/usb_quirks.c#15 (text+ko) ====

@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/usb/usb_quirks.c,v 1.54 2006/10/07 19:42:45 flz Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/usb_quirks.c,v 1.55 2006/11/11 23:53:25 flz Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -88,6 +88,7 @@
  { USB_VENDOR_HP, USB_PRODUCT_HP_810C,		    ANY,   { UQ_BROKEN_BIDIR }},
  { USB_VENDOR_HP, USB_PRODUCT_HP_830C,		    ANY,   { UQ_BROKEN_BIDIR }},
  { USB_VENDOR_HP, USB_PRODUCT_HP_1220C,		    ANY,   { UQ_BROKEN_BIDIR }},
+ { USB_VENDOR_XEROX, USB_PRODUCT_XEROX_WCM15,	    ANY,   { UQ_BROKEN_BIDIR }},
  /* YAMAHA router's ucdDevice is the version of farmware and often changes. */
  { USB_VENDOR_YAMAHA, USB_PRODUCT_YAMAHA_RTA54I,
 	ANY, { UQ_ASSUME_CM_OVER_DATA }},

==== //depot/projects/ia64/sys/dev/usb/usbdevs#78 (text+ko) ====

@@ -1,4 +1,4 @@
-$FreeBSD: src/sys/dev/usb/usbdevs,v 1.276 2006/10/31 02:27:24 kevlo Exp $
+$FreeBSD: src/sys/dev/usb/usbdevs,v 1.277 2006/11/11 23:53:25 flz Exp $
 /* $NetBSD: usbdevs,v 1.392 2004/12/29 08:38:44 imp Exp $ */
 
 /*-
@@ -417,6 +417,7 @@
 vendor ALATION		0x0910	Alation
 vendor CONCORDCAMERA	0x0919	Concord Camera
 vendor GOHUBS		0x0921	GoHubs
+vendor XEROX		0x0924	Xerox
 vendor BIOMETRIC	0x0929	American Biometric
 vendor TOSHIBA		0x0930	Toshiba
 vendor PLEXTOR		0x093b	Plextor
@@ -1690,6 +1691,9 @@
 /* Windbond Electronics */
 product WINBOND UH104		0x5518	4-port USB Hub
 
+/* Xerox products */
+product XEROX WCM15		0xffef	WorkCenter M15
+
 /* Xirlink products */
 product XIRLINK PCCAM		0x8080	IBM PC Camera
 

==== //depot/projects/ia64/sys/kern/init_main.c#59 (text+ko) ====

@@ -42,7 +42,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.269 2006/10/26 21:42:19 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/init_main.c,v 1.270 2006/11/12 11:48:37 davidxu Exp $");
 
 #include "opt_ddb.h"
 #include "opt_init_path.h"
@@ -447,6 +447,7 @@
 #else
 	td->td_pri_class = PRI_TIMESHARE;
 	td->td_user_pri = PUSER;
+	td->td_base_user_pri = PUSER;
 #endif
 	td->td_priority = PVM;
 	td->td_base_pri = PUSER;

==== //depot/projects/ia64/sys/kern/init_sysent.c#57 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/kern/init_sysent.c,v 1.227 2006/11/03 18:57:49 rrs Exp $
+ * $FreeBSD: src/sys/kern/init_sysent.c,v 1.228 2006/11/11 22:01:25 ru Exp $
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.231 2006/11/03 15:23:14 rrs Exp 
  */
 

==== //depot/projects/ia64/sys/kern/kern_idle.c#20 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_idle.c,v 1.44 2006/10/26 21:42:19 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_idle.c,v 1.45 2006/11/12 03:18:22 davidxu Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -122,12 +122,7 @@
 #ifdef SMP
 		idle_cpus_mask &= ~mycpu;
 #endif
-#ifdef KSE
 		mi_switch(SW_VOL, NULL);
-#else
-		if ((td = choosethread()) != curthread)
-			mi_switch(SW_VOL, td);
-#endif
 #ifdef SMP
 		idle_cpus_mask |= mycpu;
 #endif

==== //depot/projects/ia64/sys/kern/kern_lock.c#34 (text+ko) ====

@@ -41,7 +41,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_lock.c,v 1.101 2006/11/11 03:18:06 kmacy Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_lock.c,v 1.102 2006/11/12 03:30:01 kmacy Exp $");
 
 #include "opt_ddb.h"
 #include "opt_global.h"
@@ -166,6 +166,8 @@
 		thr = td;
 
 	lock_profile_waitstart(&waitstart);
+
+	lkp->lk_object.lo_type = "lockmgr";
 	if ((flags & LK_INTERNAL) == 0)
 		mtx_lock(lkp->lk_interlock);
 	CTR6(KTR_LOCK,

==== //depot/projects/ia64/sys/kern/posix4_mib.c#2 (text+ko) ====

@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/posix4_mib.c,v 1.11 2006/11/11 16:19:11 trhodes Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/posix4_mib.c,v 1.12 2006/11/12 03:34:03 trhodes Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -39,6 +39,7 @@
 #include <sys/queue.h>
 #include <sys/sysctl.h>
 #include <sys/vnode.h>
+#include <sys/proc.h>
 #include <sys/posix4.h>
 
 static int facility[CTL_P1003_1B_MAXID - 1];

==== //depot/projects/ia64/sys/kern/subr_lock.c#3 (text+ko) ====

@@ -33,7 +33,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/subr_lock.c,v 1.8 2006/11/11 07:38:48 kmacy Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/subr_lock.c,v 1.9 2006/11/12 03:30:01 kmacy Exp $");
 
 #include "opt_ddb.h"
 #include "opt_mprof.h"
@@ -128,16 +128,14 @@
 retry_sbufops:
         sb = sbuf_new(NULL, NULL, LPROF_SBUF_SIZE * multiplier, SBUF_FIXEDLEN);
         sbuf_printf(sb, "\n%6s %12s %12s %11s %5s %5s %12s %12s %s\n",
-            "max", "total", "wait_total", "count", "avg", "wait_avg", "cnt_hold", "cn\
-t_lock", "name");
+            "max", "total", "wait_total", "count", "avg", "wait_avg", "cnt_hold", "cnt_lock", "name");
         for (i = 0; i < LPROF_HASH_SIZE; ++i) {
                 if (lprof_buf[i].name == NULL)
                         continue;
                 for (p = lprof_buf[i].file;
                         p != NULL && strncmp(p, "../", 3) == 0; p += 3)
                                 /* nothing */ ;
-                sbuf_printf(sb, "%6ju %12ju %12ju %11ju %5ju %5ju %12ju %12ju %s:%d (\
-%s)\n",
+                sbuf_printf(sb, "%6ju %12ju %12ju %11ju %5ju %5ju %12ju %12ju %s:%d (%s:%s)\n",
                     lprof_buf[i].cnt_max / 1000,
                     lprof_buf[i].cnt_tot / 1000,
                     lprof_buf[i].cnt_wait / 1000,
@@ -148,7 +146,9 @@
                         lprof_buf[i].cnt_wait / (lprof_buf[i].cnt_cur * 1000),
                     lprof_buf[i].cnt_contest_holding,
                     lprof_buf[i].cnt_contest_locking,
-                    p, lprof_buf[i].line, lprof_buf[i].name);
+                    p, lprof_buf[i].line, 
+			    lprof_buf[i].type,
+			    lprof_buf[i].name);
                 if (sbuf_overflowed(sb)) {
                         sbuf_delete(sb);
                         multiplier++;
@@ -210,7 +210,7 @@
 
 	/* Initialize the lock object. */
 	lock->lo_name = name;
-	lock->lo_type = type != NULL ? type : name;
+	lock->lo_type = type != NULL ? type : class->lc_name;
 	lock->lo_flags |= flags | LO_INITIALIZED;
 	LOCK_LOG_INIT(lock, 0);
 	WITNESS_INIT(lock);
@@ -303,14 +303,15 @@
                                 ++lock_prof_rejected;
                                 return;
                         }
-                        mpp->file = p;
-                        mpp->line = l->lpo_lineno;
-                        mpp->name = lo->lo_name;
-                        mpp->namehash = l->lpo_namehash;
-                        if (collision)
-                                ++lock_prof_collisions;
+			mpp->file = p;
+			mpp->line = l->lpo_lineno;
+			mpp->name = lo->lo_name;
+			mpp->type = lo->lo_type;
+			mpp->namehash = l->lpo_namehash;
+			if (collision)
+				++lock_prof_collisions;
                         /* We might have raced someone else but who cares, they'll try again next time */
-                        ++lock_prof_records;
+			++lock_prof_records;
                 }
                 LPROF_LOCK(hash);
                 mpp->cnt_wait += waittime;
@@ -364,12 +365,14 @@
                                 ++lock_prof_rejected;
                                 return;
                         }
-                        mpp->file = p;
-                        mpp->line = l->lpo_lineno;
-                        mpp->name = lo->lo_name;
-                        mpp->namehash = l->lpo_namehash;
-                        if (collision)
-                                ++lock_prof_collisions;
+			mpp->file = p;
+			mpp->line = l->lpo_lineno;
+			mpp->namehash = l->lpo_namehash;
+			mpp->type = lo->lo_type;
+			mpp->name = lo->lo_name;
+
+			if (collision)
+				++lock_prof_collisions;
 			
                         /* 
 			 * We might have raced someone else but who cares, 

==== //depot/projects/ia64/sys/kern/syscalls.c#58 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/kern/syscalls.c,v 1.211 2006/11/03 18:57:49 rrs Exp $
+ * $FreeBSD: src/sys/kern/syscalls.c,v 1.212 2006/11/11 22:01:25 ru Exp $
  * created from FreeBSD: src/sys/kern/syscalls.master,v 1.231 2006/11/03 15:23:14 rrs Exp 
  */
 

==== //depot/projects/ia64/sys/kern/systrace_args.c#4 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call argument to DTrace register array converstion.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/kern/systrace_args.c,v 1.11 2006/11/03 18:57:49 rrs Exp $
+ * $FreeBSD: src/sys/kern/systrace_args.c,v 1.12 2006/11/11 22:01:25 ru Exp $
  * This file is part of the DTrace syscall provider.
  */
 

==== //depot/projects/ia64/sys/netinet/sctp_constants.h#3 (text+ko) ====

@@ -31,7 +31,7 @@
 /* $KAME: sctp_constants.h,v 1.17 2005/03/06 16:04:17 itojun Exp $	 */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netinet/sctp_constants.h,v 1.2 2006/11/11 15:59:01 rrs Exp $");
+__FBSDID("$FreeBSD: src/sys/netinet/sctp_constants.h,v 1.3 2006/11/11 22:44:12 rrs Exp $");
 
 #ifndef __sctp_constants_h__
 #define __sctp_constants_h__
@@ -307,6 +307,7 @@
 #define SCTP_OUTPUT_FROM_EARLY_FR_TMR   11
 #define SCTP_OUTPUT_FROM_STRRST_REQ     12
 #define SCTP_OUTPUT_FROM_USR_RCVD       13
+#define SCTP_OUTPUT_FROM_COOKIE_ACK     14
 /* SCTP chunk types are moved sctp.h for application (NAT, FW) use */
 
 /* align to 32-bit sizes */

==== //depot/projects/ia64/sys/netinet/sctp_input.c#3 (text+ko) ====

@@ -31,7 +31,7 @@
 /* $KAME: sctp_input.c,v 1.27 2005/03/06 16:04:17 itojun Exp $	 */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netinet/sctp_input.c,v 1.7 2006/11/11 15:59:01 rrs Exp $");
+__FBSDID("$FreeBSD: src/sys/netinet/sctp_input.c,v 1.8 2006/11/11 22:44:12 rrs Exp $");
 
 #include "opt_ipsec.h"
 #include "opt_compat.h"
@@ -701,7 +701,7 @@
 	if (!TAILQ_EMPTY(&asoc->send_queue) ||
 	    !TAILQ_EMPTY(&asoc->sent_queue) ||
 	    !TAILQ_EMPTY(&asoc->out_wheel)) {
-		sctp_report_all_outbound(stcb);
+		sctp_report_all_outbound(stcb, 0);
 	}
 	/* stop the timer */
 	sctp_timer_stop(SCTP_TIMER_TYPE_SHUTDOWN, stcb->sctp_ep, stcb, net);
@@ -1092,6 +1092,7 @@
 	int chk_length;
 	int init_offset, initack_offset;
 	int retval;
+	int spec_flag = 0;
 
 	/* I know that the TCB is non-NULL from the caller */
 	asoc = &stcb->asoc;
@@ -1271,18 +1272,31 @@
 			sctp_timer_start(SCTP_TIMER_TYPE_AUTOCLOSE, inp, stcb,
 			    NULL);
 		}
-		/*
-		 * FIX? Should we go out, in this case (if the seq numbers
-		 * changed on the peer) and set any data to RETRANSMIT?
-		 */
 		asoc->my_rwnd = ntohl(initack_cp->init.a_rwnd);
-		asoc->pre_open_streams =
-		    ntohs(initack_cp->init.num_outbound_streams);
+		asoc->pre_open_streams = ntohs(initack_cp->init.num_outbound_streams);
+
+		/* Note last_cwr_tsn? where is this used? */
 		asoc->last_cwr_tsn = asoc->init_seq_number - 1;
-		asoc->asconf_seq_in = asoc->last_acked_seq = asoc->init_seq_number - 1;
-		asoc->str_reset_seq_in = asoc->init_seq_number;
-		asoc->advanced_peer_ack_point = asoc->last_acked_seq;
+		if (ntohl(init_cp->init.initiate_tag) != asoc->peer_vtag) {
+			/*
+			 * Ok the peer probably discarded our data (if we
+			 * echoed a cookie+data). So anything on the
+			 * sent_queue should be marked for retransmit, we
+			 * may not get something to kick us so it COULD
+			 * still take a timeout to move these.. but it can't
+			 * hurt to mark them.
+			 */
+			struct sctp_tmit_chunk *chk;
+
+			TAILQ_FOREACH(chk, &stcb->asoc.sent_queue, sctp_next) {
+				if (chk->sent < SCTP_DATAGRAM_RESEND) {
+					chk->sent = SCTP_DATAGRAM_RESEND;
+					stcb->asoc.sent_queue_retran_cnt++;
+					spec_flag++;
+				}
+			}
 
+		}
 		/* process the INIT info (peer's info) */
 		retval = sctp_process_init(init_cp, stcb, net);
 		if (retval < 0) {
@@ -1316,6 +1330,16 @@
 		}
 		sctp_stop_all_cookie_timers(stcb);
 		sctp_send_cookie_ack(stcb);
+		if (spec_flag) {
+			/*
+			 * only if we have retrans set do we do this. What
+			 * this call does is get only the COOKIE-ACK out and
+			 * then when we return the normal call to
+			 * sctp_chunk_output will get the retrans out behind
+			 * this.
+			 */
+			sctp_chunk_output(inp, stcb, SCTP_OUTPUT_FROM_COOKIE_ACK);
+		}
 		return (stcb);
 	}
 	if ((ntohl(initack_cp->init.initiate_tag) != asoc->my_vtag &&
@@ -1336,7 +1360,8 @@
 
 
 		/* send up all the data */
-		sctp_report_all_outbound(stcb);
+		SCTP_TCB_SEND_LOCK(stcb);
+		sctp_report_all_outbound(stcb, 1);
 
 		/* process the INIT-ACK info (my info) */
 		asoc->my_vtag = ntohl(initack_cp->init.initiate_tag);
@@ -1376,6 +1401,7 @@
 			memset(asoc->mapping_array, 0,
 			    asoc->mapping_array_size);
 		/* process the INIT info (peer's info) */
+		SCTP_TCB_SEND_UNLOCK(stcb);
 		retval = sctp_process_init(init_cp, stcb, net);
 		if (retval < 0) {
 			return (NULL);
@@ -2356,7 +2382,7 @@
 		if (!TAILQ_EMPTY(&asoc->send_queue) ||
 		    !TAILQ_EMPTY(&asoc->sent_queue) ||
 		    !TAILQ_EMPTY(&asoc->out_wheel)) {
-			sctp_report_all_outbound(stcb);
+			sctp_report_all_outbound(stcb, 0);
 		}
 	}
 	/* stop the timer */

==== //depot/projects/ia64/sys/netinet/sctp_output.c#3 (text+ko) ====

@@ -31,7 +31,7 @@
 /* $KAME: sctp_output.c,v 1.46 2005/03/06 16:04:17 itojun Exp $	 */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netinet/sctp_output.c,v 1.5 2006/11/11 15:59:01 rrs Exp $");
+__FBSDID("$FreeBSD: src/sys/netinet/sctp_output.c,v 1.6 2006/11/11 22:44:12 rrs Exp $");
 
 #include "opt_ipsec.h"
 #include "opt_compat.h"
@@ -7164,7 +7164,6 @@
 
 	un_sent = (stcb->asoc.total_output_queue_size - stcb->asoc.total_flight);
 
-
 	if ((un_sent <= 0) &&
 	    (TAILQ_EMPTY(&asoc->control_send_queue)) &&
 	    (asoc->sent_queue_retran_cnt == 0)) {
@@ -7184,7 +7183,17 @@
 		 * Ok, it is retransmission time only, we send out only ONE
 		 * packet with a single call off to the retran code.
 		 */
-		if (from_where != SCTP_OUTPUT_FROM_HB_TMR) {
+		if (from_where == SCTP_OUTPUT_FROM_COOKIE_ACK) {
+			/*
+			 * Special hook for handling cookiess discarded by
+			 * peer that carried data. Send cookie-ack only and
+			 * then the next call with get the retran's.
+			 */
+			(void)sctp_med_chunk_output(inp, stcb, asoc, &num_out, &reason_code, 1,
+			    &cwnd_full, from_where,
+			    &now, &now_filled, frag_point);
+			return (0);
+		} else if (from_where != SCTP_OUTPUT_FROM_HB_TMR) {
 			/* if its not from a HB then do it */
 			ret = sctp_chunk_retransmission(inp, stcb, asoc, &num_out, &now, &now_filled);
 		} else {

==== //depot/projects/ia64/sys/netinet/sctputil.c#3 (text+ko) ====

@@ -31,7 +31,7 @@
 /* $KAME: sctputil.c,v 1.37 2005/03/07 23:26:09 itojun Exp $	 */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netinet/sctputil.c,v 1.6 2006/11/11 15:59:01 rrs Exp $");
+__FBSDID("$FreeBSD: src/sys/netinet/sctputil.c,v 1.7 2006/11/11 22:44:12 rrs Exp $");
 
 
 #include "opt_ipsec.h"
@@ -3242,12 +3242,13 @@
 }
 
 void
-sctp_report_all_outbound(struct sctp_tcb *stcb)
+sctp_report_all_outbound(struct sctp_tcb *stcb, int holds_lock)
 {
 	struct sctp_association *asoc;
 	struct sctp_stream_out *outs;
 	struct sctp_tmit_chunk *chk;
 	struct sctp_stream_queue_pending *sp;
+	int i;
 
 	asoc = &stcb->asoc;
 
@@ -3257,9 +3258,12 @@
 		return;
 	}
 	/* now through all the gunk freeing chunks */
-
-	TAILQ_FOREACH(outs, &asoc->out_wheel, next_spoke) {
-		/* now clean up any chunks here */
+	if (holds_lock == 0)
+		SCTP_TCB_SEND_LOCK(stcb);
+	for (i = 0; i < stcb->asoc.streamoutcnt; i++) {
+		/* For each stream */
+		outs = &stcb->asoc.strmout[i];
+		/* clean up any sends there */
 		stcb->asoc.locked_on_sending = NULL;
 		sp = TAILQ_FIRST(&outs->outqueue);
 		while (sp) {
@@ -3338,6 +3342,8 @@
 			chk = TAILQ_FIRST(&asoc->sent_queue);
 		}
 	}
+	if (holds_lock == 0)
+		SCTP_TCB_SEND_UNLOCK(stcb);
 }
 
 void
@@ -3350,7 +3356,7 @@
 		return;
 	}
 	/* Tell them we lost the asoc */
-	sctp_report_all_outbound(stcb);
+	sctp_report_all_outbound(stcb, 1);
 	if ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_IN_TCPPOOL) ||
 	    ((stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_TCPTYPE) &&
 	    (stcb->sctp_ep->sctp_flags & SCTP_PCB_FLAGS_CONNECTED))) {

==== //depot/projects/ia64/sys/netinet/sctputil.h#3 (text+ko) ====

@@ -32,7 +32,7 @@
 /* $KAME: sctputil.h,v 1.15 2005/03/06 16:04:19 itojun Exp $	 */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/netinet/sctputil.h,v 1.3 2006/11/11 15:59:01 rrs Exp $");
+__FBSDID("$FreeBSD: src/sys/netinet/sctputil.h,v 1.4 2006/11/11 22:44:12 rrs Exp $");
 #ifndef __sctputil_h__
 #define __sctputil_h__
 
@@ -131,7 +131,7 @@
 
 void sctp_stop_timers_for_shutdown(struct sctp_tcb *);
 
-void sctp_report_all_outbound(struct sctp_tcb *);
+void sctp_report_all_outbound(struct sctp_tcb *, int);
 
 int sctp_expand_mapping_array(struct sctp_association *);
 

==== //depot/projects/ia64/sys/powerpc/powerpc/pmap_dispatch.c#6 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/pmap_dispatch.c,v 1.7 2006/08/01 19:06:05 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/powerpc/powerpc/pmap_dispatch.c,v 1.8 2006/11/11 20:57:52 alc Exp $");
 
 /*
  * Dispatch MI pmap calls to the appropriate MMU implementation
@@ -68,8 +68,6 @@
 struct msgbuf *msgbufp;
 vm_offset_t    msgbuf_phys;
 
-vm_offset_t avail_start;
-vm_offset_t avail_end;
 vm_offset_t kernel_vm_end;
 vm_offset_t phys_avail[PHYS_AVAIL_SZ];
 vm_offset_t virtual_avail;

==== //depot/projects/ia64/sys/sun4v/sun4v/pmap.c#4 (text+ko) ====

@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/sun4v/sun4v/pmap.c,v 1.4 2006/11/03 07:27:55 kmacy Exp $");
+__FBSDID("$FreeBSD: src/sys/sun4v/sun4v/pmap.c,v 1.5 2006/11/12 01:21:15 kmacy Exp $");
 
 #include "opt_kstack_pages.h"
 #include "opt_msgbuf.h"
@@ -140,7 +140,7 @@
 
 static int permanent_mappings = 0;
 static uint64_t nucleus_memory;
-static uint64_t nucleus_mappings[2];
+static uint64_t nucleus_mappings[4];
 /*
  * Kernel pmap.
  */
@@ -438,8 +438,6 @@
 	int i, sz, j;
 	uint64_t tsb_8k_size, tsb_4m_size, error, physmem_tunable;
 
-
-
 	if ((vmem = OF_finddevice("/virtual-memory")) == -1)
 		panic("pmap_bootstrap: finddevice /virtual-memory");
 	if ((sz = OF_getproplen(vmem, "translations")) == -1)
@@ -454,13 +452,14 @@
 	nucleus_memory_start = 0;
 	CTR0(KTR_PMAP, "pmap_bootstrap: translations");
 	qsort(translations, sz, sizeof (*translations), om_cmp);
+
 	for (i = 0; i < sz; i++) {
 		KDPRINTF("om_size=%ld om_start=%lx om_tte=%lx\n", 
 			translations[i].om_size, translations[i].om_start, 
 			translations[i].om_tte);
 		if (translations[i].om_size == PAGE_SIZE_4M && 
-		    (translations[i].om_start == KERNBASE ||
-		     translations[i].om_start == KERNBASE + PAGE_SIZE_4M)) {
+		    (translations[i].om_start >= KERNBASE && 
+		     translations[i].om_start <= KERNBASE + 3*PAGE_SIZE_4M)) {
 			KDPRINTF("mapping permanent translation\n");
 			pa = TTE_GET_PA(translations[i].om_tte);
 			error = hv_mmu_map_perm_addr((char *)translations[i].om_start, 
@@ -515,14 +514,14 @@
 		 * Is kernel memory at the beginning of range?
 		 */
 		if (nucleus_memory_start == mra[i].mr_start) {
-			mra[i].mr_start += 2*PAGE_SIZE_4M;
-			mra[i].mr_size -= 2*PAGE_SIZE_4M;
+			mra[i].mr_start += nucleus_memory;
+			mra[i].mr_size -= nucleus_memory;
 		}
 		/* 
 		 * Is kernel memory at the end of range?
 		 */
-		if (nucleus_memory_start == (start + size - 2*PAGE_SIZE_4M)) 
-			mra[i].mr_size -= 2*PAGE_SIZE_4M;
+		if (nucleus_memory_start == (start + size - nucleus_memory)) 
+			mra[i].mr_size -= nucleus_memory;
 
 		/* 
 		 * Is kernel memory in the middle somewhere?
@@ -536,15 +535,15 @@
 				break;
 			}
 			phys_avail[j+1] = nucleus_memory_start;
-			size = size - firstsize - 2*PAGE_SIZE_4M;
-			mra[i].mr_start =  nucleus_memory_start + 2*PAGE_SIZE_4M;
+			size = size - firstsize - nucleus_memory;
+			mra[i].mr_start =  nucleus_memory_start + nucleus_memory;
 			mra[i].mr_size = size;
-			physsz += firstsize + 2*PAGE_SIZE_4M;
+			physsz += firstsize + nucleus_memory;
 			j += 2;
 		}
 		if (mra[i].mr_size < PAGE_SIZE_4M)
 			continue;
-		if ((mra[i].mr_start & PAGE_MASK_4M) && (mra[i].mr_size < 2*PAGE_SIZE_4M))
+		if ((mra[i].mr_start & PAGE_MASK_4M) && (mra[i].mr_size < nucleus_memory))
 			continue;
 		if (mra[i].mr_start & PAGE_MASK_4M) {
 			uint64_t newstart, roundup;
@@ -742,7 +741,7 @@
 		pa = phys_avail[i];
 	} while (pa != 0);
 
-	for (i = 0; i < 2; i++) {
+	for (i = 0; i < permanent_mappings; i++) {
                 pa = nucleus_mappings[i];
 		tsb_assert_invalid(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa));
                 tsb_set_tte_real(&kernel_td[TSB4M_INDEX], TLB_PHYS_TO_DIRECT(pa),

==== //depot/projects/ia64/sys/sys/lock_profile.h#2 (text+ko) ====

@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/sys/lock_profile.h,v 1.4 2006/11/11 07:52:38 kmacy Exp $
+ * $FreeBSD: src/sys/sys/lock_profile.h,v 1.5 2006/11/12 05:16:28 kmacy Exp $
  */
 
 
@@ -47,6 +47,7 @@
 
 struct lock_prof {
 	const char	*name;
+	const char      *type;
 	const char	*file;
 	u_int		 namehash;
 	int		line;

==== //depot/projects/ia64/sys/sys/syscall.h#57 (text+ko) ====

@@ -2,7 +2,7 @@
  * System call numbers.
  *

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


More information about the p4-projects mailing list