Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 May 2003 08:12:04 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 31564 for review
Message-ID:  <200305211512.h4LFC4l0029115@repoman.freebsd.org>

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

Change 31564 by jhb@jhb_laptop on 2003/05/21 08:11:24

	IFC @31562.

Affected files ...

.. //depot/projects/smpng/sys/alpha/conf/GENERIC#29 integrate
.. //depot/projects/smpng/sys/alpha/include/_limits.h#5 integrate
.. //depot/projects/smpng/sys/alpha/include/limits.h#7 integrate
.. //depot/projects/smpng/sys/amd64/amd64/cpu_switch.S#4 integrate
.. //depot/projects/smpng/sys/amd64/amd64/genassym.c#4 integrate
.. //depot/projects/smpng/sys/amd64/amd64/locore.S#2 integrate
.. //depot/projects/smpng/sys/amd64/amd64/machdep.c#6 integrate
.. //depot/projects/smpng/sys/amd64/ia32/ia32_sysvec.c#2 integrate
.. //depot/projects/smpng/sys/amd64/include/_limits.h#2 integrate
.. //depot/projects/smpng/sys/amd64/include/cpufunc.h#3 integrate
.. //depot/projects/smpng/sys/amd64/include/limits.h#2 integrate
.. //depot/projects/smpng/sys/amd64/include/pcb.h#4 integrate
.. //depot/projects/smpng/sys/amd64/include/pmap.h#2 integrate
.. //depot/projects/smpng/sys/arm/include/_limits.h#4 integrate
.. //depot/projects/smpng/sys/arm/include/limits.h#5 integrate
.. //depot/projects/smpng/sys/boot/common/loader.8#23 integrate
.. //depot/projects/smpng/sys/boot/forth/loader.conf#18 integrate
.. //depot/projects/smpng/sys/boot/i386/libi386/amd64_tramp.S#2 integrate
.. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#39 integrate
.. //depot/projects/smpng/sys/conf/Makefile.amd64#3 integrate
.. //depot/projects/smpng/sys/conf/Makefile.ia64#24 integrate
.. //depot/projects/smpng/sys/conf/NOTES#44 integrate
.. //depot/projects/smpng/sys/conf/files.amd64#3 integrate
.. //depot/projects/smpng/sys/conf/files.ia64#28 integrate
.. //depot/projects/smpng/sys/conf/ldscript.ia64#5 integrate
.. //depot/projects/smpng/sys/conf/options#54 integrate
.. //depot/projects/smpng/sys/conf/options.amd64#3 integrate
.. //depot/projects/smpng/sys/conf/options.ia64#14 integrate
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/Makefile#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_bstream.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self_context.s#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_step.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_str.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_str.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_swap.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_swap.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_ttrace.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_uinfo.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_utable.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_utable.h#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/test/Makefile#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/test/dump_context.c#1 branch
.. //depot/projects/smpng/sys/contrib/ia64/libuwx/test/dumpmyself.c#1 branch
.. //depot/projects/smpng/sys/dev/ata/ata-all.c#37 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#13 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-disk.c#30 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.h#9 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bge.c#27 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#15 integrate
.. //depot/projects/smpng/sys/dev/ciss/ciss.c#14 integrate
.. //depot/projects/smpng/sys/dev/fxp/if_fxp.c#35 integrate
.. //depot/projects/smpng/sys/dev/fxp/if_fxpreg.h#8 integrate
.. //depot/projects/smpng/sys/dev/gem/if_gem.c#13 integrate
.. //depot/projects/smpng/sys/dev/gem/if_gemvar.h#8 integrate
.. //depot/projects/smpng/sys/dev/md/md.c#36 integrate
.. //depot/projects/smpng/sys/dev/sio/sio_isa.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/ugen.c#14 integrate
.. //depot/projects/smpng/sys/dev/usb/umass.c#24 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#32 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs.h#33 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs_data.h#33 integrate
.. //depot/projects/smpng/sys/dev/vinum/vinumio.c#13 integrate
.. //depot/projects/smpng/sys/i386/conf/GENERIC#37 integrate
.. //depot/projects/smpng/sys/i386/conf/NOTES#59 integrate
.. //depot/projects/smpng/sys/i386/conf/PAE#4 integrate
.. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#45 integrate
.. //depot/projects/smpng/sys/i386/i386/trap.c#57 integrate
.. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#35 integrate
.. //depot/projects/smpng/sys/i386/include/_limits.h#4 integrate
.. //depot/projects/smpng/sys/i386/include/limits.h#7 integrate
.. //depot/projects/smpng/sys/ia64/ia32/ia32_sysvec.c#3 integrate
.. //depot/projects/smpng/sys/ia64/ia32/ia32_util.h#3 integrate
.. //depot/projects/smpng/sys/ia64/ia64/clock.c#12 integrate
.. //depot/projects/smpng/sys/ia64/ia64/context.s#1 branch
.. //depot/projects/smpng/sys/ia64/ia64/db_interface.c#16 integrate
.. //depot/projects/smpng/sys/ia64/ia64/db_trace.c#10 integrate
.. //depot/projects/smpng/sys/ia64/ia64/elf_machdep.c#8 integrate
.. //depot/projects/smpng/sys/ia64/ia64/exception.s#24 integrate
.. //depot/projects/smpng/sys/ia64/ia64/genassym.c#20 integrate
.. //depot/projects/smpng/sys/ia64/ia64/interrupt.c#18 integrate
.. //depot/projects/smpng/sys/ia64/ia64/locore.s#18 integrate
.. //depot/projects/smpng/sys/ia64/ia64/machdep.c#55 integrate
.. //depot/projects/smpng/sys/ia64/ia64/mp_machdep.c#21 integrate
.. //depot/projects/smpng/sys/ia64/ia64/pmap.c#44 integrate
.. //depot/projects/smpng/sys/ia64/ia64/support.s#11 integrate
.. //depot/projects/smpng/sys/ia64/ia64/swtch.s#14 delete
.. //depot/projects/smpng/sys/ia64/ia64/syscall.s#1 branch
.. //depot/projects/smpng/sys/ia64/ia64/trap.c#47 integrate
.. //depot/projects/smpng/sys/ia64/ia64/unaligned.c#3 integrate
.. //depot/projects/smpng/sys/ia64/ia64/unwind.c#6 integrate
.. //depot/projects/smpng/sys/ia64/ia64/vm_machdep.c#24 integrate
.. //depot/projects/smpng/sys/ia64/include/_limits.h#4 integrate
.. //depot/projects/smpng/sys/ia64/include/_regset.h#1 branch
.. //depot/projects/smpng/sys/ia64/include/asm.h#7 integrate
.. //depot/projects/smpng/sys/ia64/include/cpu.h#12 integrate
.. //depot/projects/smpng/sys/ia64/include/db_machdep.h#7 integrate
.. //depot/projects/smpng/sys/ia64/include/frame.h#3 integrate
.. //depot/projects/smpng/sys/ia64/include/limits.h#7 integrate
.. //depot/projects/smpng/sys/ia64/include/pcb.h#8 integrate
.. //depot/projects/smpng/sys/ia64/include/pmap.h#13 integrate
.. //depot/projects/smpng/sys/ia64/include/proc.h#6 integrate
.. //depot/projects/smpng/sys/ia64/include/reg.h#9 integrate
.. //depot/projects/smpng/sys/ia64/include/rse.h#2 delete
.. //depot/projects/smpng/sys/ia64/include/signal.h#8 integrate
.. //depot/projects/smpng/sys/ia64/include/smp.h#6 integrate
.. //depot/projects/smpng/sys/ia64/include/ucontext.h#2 integrate
.. //depot/projects/smpng/sys/ia64/include/unwind.h#3 integrate
.. //depot/projects/smpng/sys/ia64/include/vmparam.h#5 integrate
.. //depot/projects/smpng/sys/kern/kern_descrip.c#45 integrate
.. //depot/projects/smpng/sys/kern/kern_sig.c#68 integrate
.. //depot/projects/smpng/sys/kern/kern_synch.c#50 integrate
.. //depot/projects/smpng/sys/kern/kern_thr.c#7 integrate
.. //depot/projects/smpng/sys/kern/kern_thread.c#33 integrate
.. //depot/projects/smpng/sys/kern/subr_mbuf.c#32 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#53 integrate
.. //depot/projects/smpng/sys/netgraph/ng_bridge.c#8 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_bio.c#18 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#23 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#29 integrate
.. //depot/projects/smpng/sys/pc98/conf/NOTES#7 integrate
.. //depot/projects/smpng/sys/pc98/i386/machdep.c#54 integrate
.. //depot/projects/smpng/sys/pci/if_dc.c#37 integrate
.. //depot/projects/smpng/sys/powerpc/include/_limits.h#4 integrate
.. //depot/projects/smpng/sys/powerpc/include/limits.h#8 integrate
.. //depot/projects/smpng/sys/sparc64/include/_limits.h#4 integrate
.. //depot/projects/smpng/sys/sparc64/include/limits.h#7 integrate
.. //depot/projects/smpng/sys/sys/ata.h#14 integrate
.. //depot/projects/smpng/sys/sys/limits.h#4 integrate
.. //depot/projects/smpng/sys/sys/mutex.h#36 integrate
.. //depot/projects/smpng/sys/sys/proc.h#87 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_rawread.c#4 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_extattr.c#23 integrate
.. //depot/projects/smpng/sys/vm/vm_object.c#36 integrate
.. //depot/projects/smpng/sys/vm/vm_object.h#18 integrate
.. //depot/projects/smpng/sys/vm/vm_pageout.c#31 integrate

Differences ...

==== //depot/projects/smpng/sys/alpha/conf/GENERIC#29 (text+ko) ====

@@ -18,7 +18,7 @@
 #
 # For hardware specific information check HARDWARE.TXT
 #
-# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.159 2003/04/21 16:44:04 simokawa Exp $
+# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.160 2003/05/18 20:39:15 ru Exp $
 
 machine		alpha
 cpu		EV4
@@ -95,6 +95,7 @@
 # SCSI Controllers
 device		ahc		# AHA2940 and onboard AIC7xxx devices
 device		isp		# Qlogic family
+device		ispfw		# Firmware module for Qlogic host adapters
 device		mpt		# LSI-Logic MPT-Fusion
 #device		ncr		# NCR/Symbios Logic
 device		sym		# NCR/Symbios Logic (newer chipsets + those of `ncr')

==== //depot/projects/smpng/sys/alpha/include/_limits.h#5 (text+ko) ====

@@ -32,14 +32,12 @@
  *
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
  *	From: NetBSD: limits.h,v 1.3 1997/04/06 08:47:31 cgd Exp
- * $FreeBSD: src/sys/alpha/include/_limits.h,v 1.13 2003/05/04 22:13:03 kan Exp $
+ * $FreeBSD: src/sys/alpha/include/_limits.h,v 1.14 2003/05/19 20:29:06 kan Exp $
  */
 
-#ifndef	_MACHINE__LIMITS_H_
+#ifndef _MACHINE__LIMITS_H_
 #define	_MACHINE__LIMITS_H_
 
-#define	__CHAR_BIT	8		/* number of bits in a char */
-
 /*
  * According to ANSI (section 2.2.4.2), the values below must be usable by
  * #if preprocessing directives.  Additionally, the expression must have the
@@ -51,6 +49,8 @@
  * some other compilers as well, but this should not be depended on.
  */
 
+#define	__CHAR_BIT	8		/* number of bits in a char */
+
 #define	__SCHAR_MAX	0x7f		/* max value for a signed char */
 #define	__SCHAR_MIN	(-0x7f-1)	/* min value for a signed char */
 

==== //depot/projects/smpng/sys/alpha/include/limits.h#7 (text+ko) ====

@@ -32,10 +32,10 @@
  *
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
  *	From: NetBSD: limits.h,v 1.3 1997/04/06 08:47:31 cgd Exp
- * $FreeBSD: src/sys/alpha/include/limits.h,v 1.11 2003/04/29 13:35:58 kan Exp $
+ * $FreeBSD: src/sys/alpha/include/limits.h,v 1.12 2003/05/19 20:29:06 kan Exp $
  */
 
-#ifndef	_MACHINE_LIMITS_H_
+#ifndef _MACHINE_LIMITS_H_
 #define	_MACHINE_LIMITS_H_
 
 #if __GNUC__

==== //depot/projects/smpng/sys/amd64/amd64/cpu_switch.S#4 (text+ko) ====

@@ -33,7 +33,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.140 2003/05/14 04:10:47 peter Exp $
+ * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.141 2003/05/15 00:23:39 peter Exp $
  */
 
 #include <machine/asmacros.h>
@@ -106,12 +106,6 @@
 	pushfq					/* PSL */
 	popq	PCB_RFLAGS(%r8)
 
-	/* Save kernel %gs.base */
-	movl	$MSR_GSBASE,%ecx
-	rdmsr
-	movl	%eax,PCB_KGSBASE(%r8)
-	movl	%edx,PCB_KGSBASE+4(%r8)
-
 	/* Save userland %fs */
 	movl	$MSR_FSBASE,%ecx
 	rdmsr
@@ -176,12 +170,11 @@
 	movl	PCB_DS(%r8),%ds
 	movl	PCB_ES(%r8),%es
 	movl	PCB_FS(%r8),%fs
-	movl	PCB_GS(%r8),%gs
 
-	/* Restore kernel %gs.base */
+	/* Restore userland %gs while preserving kernel gsbase */
 	movl	$MSR_GSBASE,%ecx
-	movl	PCB_KGSBASE(%r8),%eax
-	movl	PCB_KGSBASE+4(%r8),%edx
+	rdmsr
+	movl	PCB_GS(%r8),%gs
 	wrmsr
 
 	/* Restore userland %fs */

==== //depot/projects/smpng/sys/amd64/amd64/genassym.c#4 (text+ko) ====

@@ -34,7 +34,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)genassym.c	5.11 (Berkeley) 5/10/91
- * $FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.145 2003/05/14 04:10:48 peter Exp $
+ * $FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.146 2003/05/15 00:23:39 peter Exp $
  */
 
 #include "opt_compat.h"
@@ -125,7 +125,6 @@
 ASSYM(PCB_RFLAGS, offsetof(struct pcb, pcb_rflags));
 ASSYM(PCB_FSBASE, offsetof(struct pcb, pcb_fsbase));
 ASSYM(PCB_GSBASE, offsetof(struct pcb, pcb_gsbase));
-ASSYM(PCB_KGSBASE, offsetof(struct pcb, pcb_kgsbase));
 ASSYM(PCB_DS, offsetof(struct pcb, pcb_ds));
 ASSYM(PCB_ES, offsetof(struct pcb, pcb_es));
 ASSYM(PCB_FS, offsetof(struct pcb, pcb_fs));

==== //depot/projects/smpng/sys/amd64/amd64/locore.S#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/amd64/amd64/locore.S,v 1.172 2003/05/01 01:05:21 peter Exp $
+ * $FreeBSD: src/sys/amd64/amd64/locore.S,v 1.173 2003/05/15 00:20:17 peter Exp $
  */
 
 #include <machine/asmacros.h>
@@ -34,15 +34,6 @@
 #include "assym.s"
 
 /*
- * PTmap is recursive pagemap at top of virtual address space.
- * Within PTmap, the page directory can be found (third indirection).
- */
-	.globl	PTmap,PTD,PTDpde
-	.set	PTmap,(PTDPTDI << PDRSHIFT)
-	.set	PTD,PTmap + (PTDPTDI * PAGE_SIZE)
-	.set	PTDpde,PTD + (PTDPTDI * PDESIZE)
-
-/*
  * Compiled KERNBASE location
  */
 	.globl	kernbase

==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#6 (text+ko) ====

@@ -35,7 +35,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)machdep.c	7.4 (Berkeley) 6/3/91
- * $FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.577 2003/05/14 04:10:48 peter Exp $
+ * $FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.579 2003/05/17 02:05:10 peter Exp $
  */
 
 #include "opt_atalk.h"
@@ -476,21 +476,15 @@
 {
 	struct trapframe *regs = td->td_frame;
 	struct pcb *pcb = td->td_pcb;
-	u_int64_t pc;
 	
 	wrmsr(MSR_FSBASE, 0);
 	wrmsr(MSR_KGSBASE, 0);	/* User value while we're in the kernel */
 	pcb->pcb_fsbase = 0;
 	pcb->pcb_gsbase = 0;
-	pcb->pcb_kgsbase = rdmsr(MSR_GSBASE);
 	load_ds(_udatasel);
 	load_es(_udatasel);
 	load_fs(_udatasel);
-	critical_enter();
-	pc = rdmsr(MSR_GSBASE);
-	load_gs(_udatasel);	/* Clobbers kernel %GS.base */
-	wrmsr(MSR_GSBASE, pc);
-	critical_exit();
+	load_gs(_udatasel);
 	pcb->pcb_ds = _udatasel;
 	pcb->pcb_es = _udatasel;
 	pcb->pcb_fs = _udatasel;
@@ -728,7 +722,7 @@
 {
 
 	sd->sd_lobase = (ssd->ssd_base) & 0xffffff;
-	sd->sd_hibase = (ssd->ssd_base >> 24) & 0xffffff;
+	sd->sd_hibase = (ssd->ssd_base >> 24) & 0xfffffffffful;
 	sd->sd_lolimit = (ssd->ssd_limit) & 0xffff;
 	sd->sd_hilimit = (ssd->ssd_limit >> 16) & 0xf;
 	sd->sd_type  = ssd->ssd_type;
@@ -1317,7 +1311,6 @@
 	/* setup proc 0's pcb */
 	thread0.td_pcb->pcb_flags = 0; /* XXXKSE */
 	thread0.td_pcb->pcb_cr3 = IdlePML4;
-	thread0.td_pcb->pcb_kgsbase = (u_int64_t)pc;
 	thread0.td_frame = &proc0_tf;
 }
 

==== //depot/projects/smpng/sys/amd64/ia32/ia32_sysvec.c#2 (text+ko) ====

@@ -24,7 +24,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/ia32/ia32_sysvec.c,v 1.3 2003/05/14 04:10:48 peter Exp $
+ * $FreeBSD: src/sys/amd64/ia32/ia32_sysvec.c,v 1.4 2003/05/15 00:23:39 peter Exp $
  */
 
 #include "opt_compat.h"
@@ -241,22 +241,15 @@
 {
 	struct trapframe *regs = td->td_frame;
 	struct pcb *pcb = td->td_pcb;
-	u_int64_t pc;
-	register_t s;
 	
 	wrmsr(MSR_FSBASE, 0);
 	wrmsr(MSR_KGSBASE, 0);	/* User value while we're in the kernel */
 	pcb->pcb_fsbase = 0;
 	pcb->pcb_gsbase = 0;
-	pcb->pcb_kgsbase = rdmsr(MSR_GSBASE);
 	load_ds(_udatasel);
 	load_es(_udatasel);
 	load_fs(_udatasel);
-	s = intr_disable();
-	pc = rdmsr(MSR_GSBASE);
-	load_gs(_udatasel);	/* Clobbers kernel %GS.base */
-	wrmsr(MSR_GSBASE, pc);
-	intr_restore(s);
+	load_gs(_udatasel);
 	pcb->pcb_ds = _udatasel;
 	pcb->pcb_es = _udatasel;
 	pcb->pcb_fs = _udatasel;

==== //depot/projects/smpng/sys/amd64/include/_limits.h#2 (text+ko) ====

@@ -33,14 +33,12 @@
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
  *	From: NetBSD: limits.h,v 1.3 1997/04/06 08:47:31 cgd Exp
  * 	From: FreeBSD: src/sys/alpha/include/limits.h,v 1.8 2001/11/02
- * $FreeBSD: src/sys/amd64/include/_limits.h,v 1.6 2003/05/04 22:13:04 kan Exp $
+ * $FreeBSD: src/sys/amd64/include/_limits.h,v 1.7 2003/05/19 20:29:06 kan Exp $
  */
 
 #ifndef	_MACHINE__LIMITS_H_
 #define	_MACHINE__LIMITS_H_
 
-#define	__CHAR_BIT	8		/* number of bits in a char */
-
 /*
  * According to ANSI (section 2.2.4.2), the values below must be usable by
  * #if preprocessing directives.  Additionally, the expression must have the
@@ -52,6 +50,8 @@
  * some other compilers as well, but this should not be depended on.
  */
 
+#define	__CHAR_BIT	8		/* number of bits in a char */
+
 #define	__SCHAR_MAX	0x7f		/* max value for a signed char */
 #define	__SCHAR_MIN	(-0x7f-1)	/* min value for a signed char */
 

==== //depot/projects/smpng/sys/amd64/include/cpufunc.h#3 (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/amd64/include/cpufunc.h,v 1.135 2003/05/14 04:10:49 peter Exp $
+ * $FreeBSD: src/sys/amd64/include/cpufunc.h,v 1.136 2003/05/15 00:23:40 peter Exp $
  */
 
 /*
@@ -475,6 +475,41 @@
 	__asm __volatile("movl %0,%%es" : : "rm" (sel));
 }
 
+#ifdef _KERNEL
+/* This is defined in <machine/specialreg.h> but is too painful to get to */
+#ifndef	MSR_FSBASE
+#define	MSR_FSBASE	0xc0000100
+#endif
+static __inline void
+load_fs(u_int sel)
+{
+	register u_int32_t fsbase __asm("ecx");
+
+	/* Preserve the fsbase value across the selector load */
+	fsbase = MSR_FSBASE;
+        __asm __volatile("rdmsr; movl %0,%%fs; wrmsr"
+            : : "rm" (sel), "c" (fsbase) : "eax", "edx");
+}
+
+#ifndef	MSR_GSBASE
+#define	MSR_GSBASE	0xc0000101
+#endif
+static __inline void
+load_gs(u_int sel)
+{
+	register u_int32_t gsbase __asm("ecx");
+
+	/*
+	 * Preserve the gsbase value across the selector load.
+	 * Note that we have to disable interrupts because the gsbase
+	 * being trashed happens to be the kernel gsbase at the time.
+	 */
+	gsbase = MSR_GSBASE;
+        __asm __volatile("pushfq; cli; rdmsr; movl %0,%%gs; wrmsr; popfq"
+            : : "rm" (sel), "c" (gsbase) : "eax", "edx");
+}
+#else
+/* Usable by userland */
 static __inline void
 load_fs(u_int sel)
 {
@@ -486,6 +521,7 @@
 {
 	__asm __volatile("movl %0,%%gs" : : "rm" (sel));
 }
+#endif
 
 /* void lidt(struct region_descriptor *addr); */
 static __inline void

==== //depot/projects/smpng/sys/amd64/include/limits.h#2 (text+ko) ====

@@ -33,10 +33,10 @@
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
  *	From: NetBSD: limits.h,v 1.3 1997/04/06 08:47:31 cgd Exp
  * 	From: FreeBSD: src/sys/alpha/include/limits.h,v 1.8 2001/11/02
- * $FreeBSD: src/sys/amd64/include/limits.h,v 1.5 2003/04/29 13:36:06 kan Exp $
+ * $FreeBSD: src/sys/amd64/include/limits.h,v 1.6 2003/05/19 20:29:06 kan Exp $
  */
 
-#ifndef	_MACHINE_LIMITS_H_
+#ifndef _MACHINE_LIMITS_H_
 #define	_MACHINE_LIMITS_H_
 
 #if __GNUC__

==== //depot/projects/smpng/sys/amd64/include/pcb.h#4 (text+ko) ====

@@ -34,7 +34,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)pcb.h	5.10 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pcb.h,v 1.52 2003/05/14 04:10:49 peter Exp $
+ * $FreeBSD: src/sys/amd64/include/pcb.h,v 1.53 2003/05/15 00:23:40 peter Exp $
  */
 
 #ifndef _I386_PCB_H_
@@ -59,7 +59,6 @@
 	register_t	pcb_rflags;
 	register_t	pcb_fsbase;
 	register_t	pcb_gsbase;
-	register_t	pcb_kgsbase;
 	u_int32_t	pcb_ds;
 	u_int32_t	pcb_es;
 	u_int32_t	pcb_fs;

==== //depot/projects/smpng/sys/amd64/include/pmap.h#2 (text+ko) ====

@@ -42,7 +42,7 @@
  *
  *	from: hp300: @(#)pmap.h	7.2 (Berkeley) 12/16/90
  *	from: @(#)pmap.h	7.4 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.100 2003/05/01 01:05:23 peter Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.101 2003/05/15 00:20:17 peter Exp $
  */
 
 #ifndef _MACHINE_PMAP_H_
@@ -145,13 +145,9 @@
  * in the page tables and the evil overlapping.
  */
 #ifdef _KERNEL
-extern pt_entry_t	PTmap[];
-extern pd_entry_t	PDmap[];
-extern pdp_entry_t	PDPmap[];
-extern pml4_entry_t	PML4[];
-extern pdp_entry_t	PDP[];
-extern pd_entry_t	PTD[];
-extern pd_entry_t	PTDpde[];
+#define	PTmap	((pt_entry_t *)(VADDR(0, 0, PTDPTDI, 0)))
+#define	PTD	((pd_entry_t *)(VADDR(0, 0, PTDPTDI, PTDPTDI)))
+#define	PTDpde	((pd_entry_t *)(VADDR(0, 0, PTDPTDI, PTDPTDI) + (PTDPTDI * sizeof(pd_entry_t))))
 
 extern u_int64_t IdlePML4;	/* physical address of "Idle" state directory */
 extern u_int64_t IdlePDP;	/* physical address of "Idle" state directory */

==== //depot/projects/smpng/sys/arm/include/_limits.h#4 (text+ko) ====

@@ -31,14 +31,12 @@
  * SUCH DAMAGE.
  *
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
- * $FreeBSD: src/sys/arm/include/_limits.h,v 1.5 2003/05/04 22:13:03 kan Exp $
+ * $FreeBSD: src/sys/arm/include/_limits.h,v 1.6 2003/05/19 20:29:06 kan Exp $
  */
 
 #ifndef _MACHINE__LIMITS_H_
 #define	_MACHINE__LIMITS_H_
 
-#define	__CHAR_BIT	8		/* number of bits in a char */
-
 /*
  * According to ANSI (section 2.2.4.2), the values below must be usable by
  * #if preprocessing directives.  Additionally, the expression must have the
@@ -50,6 +48,8 @@
  * some other compilers as well, but this should not be depended on.
  */
 
+#define	__CHAR_BIT	8		/* number of bits in a char */
+
 #define	__SCHAR_MAX	0x7f		/* max value for a signed char */
 #define	__SCHAR_MIN	(-0x7f - 1)	/* min value for a signed char */
 

==== //depot/projects/smpng/sys/arm/include/limits.h#5 (text+ko) ====

@@ -31,10 +31,10 @@
  * SUCH DAMAGE.
  *
  *	@(#)limits.h	8.3 (Berkeley) 1/4/94
- * $FreeBSD: src/sys/arm/include/limits.h,v 1.4 2003/04/29 13:35:58 kan Exp $
+ * $FreeBSD: src/sys/arm/include/limits.h,v 1.5 2003/05/19 20:29:06 kan Exp $
  */
 
-#ifndef	_MACHINE_LIMITS_H_
+#ifndef _MACHINE_LIMITS_H_
 #define	_MACHINE_LIMITS_H_
 
 #if __GNUC__

==== //depot/projects/smpng/sys/boot/common/loader.8#23 (text+ko) ====

@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.55 2003/05/04 08:23:24 murray Exp $
+.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.56 2003/05/17 22:17:23 ru Exp $
 .\"
 .\" Note: The date here should be updated whenever a non-trivial
 .\" change is made to the manual page.
@@ -446,9 +446,11 @@
 Modifies
 .Va NMBCLUSTERS .
 .It Va kern.ipc.nsfbufs
-Set the number of sendfile buffers to be allocated.
-Modifies
-.Va NSFBUFS .
+Set the number of
+.Xr sendfile 2
+buffers to be allocated.
+Overrides
+.Dv NSFBUFS .
 .It Va kern.vm.kmem.size
 Sets the size of kernel memory (bytes).
 This overrides the value determined when the kernel was compiled.

==== //depot/projects/smpng/sys/boot/forth/loader.conf#18 (text+ko) ====

@@ -6,7 +6,7 @@
 #
 # All arguments must be in double quotes.
 #
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.70 2003/03/11 12:09:25 ru Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.71 2003/05/16 04:31:00 murray Exp $
 
 ##############################################################
 ###  Basic configuration options  ############################
@@ -179,6 +179,7 @@
 miibus_load="NO"		# miibus support, needed for some drivers
 if_an_load="NO"			# Aironet 4500/4800 802.11 wireless NICs
 if_ar_load="NO"			# Digi SYNC/570i
+if_awi_load="NO"		# AMD PCnetMobile IEEE 802.11 wireless NICs
 if_bge_load="NO"		# Broadcom BCM570x PCI gigabit ethernet
 if_cm_load="NO"			# SMC (90c26, 90c56, 90c66)
 if_dc_load="NO"			# DEC/Intel 21143 and various workalikes
@@ -186,12 +187,16 @@
 if_ed_load="NO"			# National Semiconductor DS8390/WD83C690 ethernet
 if_el_load="NO"			# 3Com Etherlink 3C501
 if_em_load="NO"			# Intel(R) PRO/1000 gigabit ethernet
+if_en_load="NO"			# Midway-based ATM interfaces
 if_ep_load="NO"			# 3Com Etherlink III (3c5x9)
+if_ex_load="NO"			# Intel EtherExpress Pro/10 ethernet
 if_fe_load="NO"			# Fujitsu MB86960A/MB86965A based Ethernet adapters
 if_fxp_load="NO"		# Intel EtherExpress PRO/100B (82557, 82558)
 if_gx_load="NO"			# Intel Pro/1000 gigabit ethernet
+if_ie_load="NO"			# Intel 82586
 if_lge_load="NO"		# Level 1 LXT1001 NetCellerator PCI gigabit ethernet
 if_lnc_load="NO"		# AMD Lance/PCnet Ethernet
+if_my_load="NO"			# Myson PCI fast ethernet
 if_nge_load="NO"		# National Semiconductor PCI gigabit ethernet
 if_oltr_load="NO"		# Olicom
 if_pcn_load="NO"		# AMD PCnet PCI
@@ -287,6 +292,7 @@
 umodem_load="NO"		# Modems
 uscanner_load="NO"		# Scanners
 if_aue_load="NO"		# ADMtek USB ethernet
+if_axe_load="NO"		# ASIX Electronics AX88172 USB ethernet
 if_cue_load="NO"		# CATC USB ethernet
 if_kue_load="NO"		# Kawasaki LSI USB ethernet
 

==== //depot/projects/smpng/sys/boot/i386/libi386/amd64_tramp.S#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/boot/i386/libi386/amd64_tramp.S,v 1.1 2003/05/01 03:56:29 peter Exp $
+ * $FreeBSD: src/sys/boot/i386/libi386/amd64_tramp.S,v 1.2 2003/05/17 00:30:51 peter Exp $
  */
 
 /*
@@ -108,6 +108,6 @@
 	/* We're still running V=P, jump to entry point */
 	movl	%esi, %eax
 	salq	$32, %rax
-	movl	%edi, %eax
+	orq	%rdi, %rax
 	pushq	%rax
 	ret

==== //depot/projects/smpng/sys/cam/scsi/scsi_da.c#39 (text+ko) ====

@@ -25,7 +25,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.142 2003/05/03 00:21:40 ken Exp $
+ * $FreeBSD: src/sys/cam/scsi/scsi_da.c,v 1.143 2003/05/15 17:35:35 njl Exp $
  */
 
 #ifdef _KERNEL
@@ -499,6 +499,14 @@
 		 */
 		{T_DIRECT, SIP_MEDIA_REMOVABLE, "MITSUMI", "USB FDD", "*"},
 		/*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE
+	},
+	{
+		/*
+		 * OTi USB Flash Key
+		 * PR: kern/51825
+		 */
+		{T_DIRECT, SIP_MEDIA_REMOVABLE, "OTi", "Flash Disk", "*"},
+		/*quirks*/ DA_Q_NO_6_BYTE
 	}
 };
 

==== //depot/projects/smpng/sys/conf/Makefile.amd64#3 (text+ko) ====

@@ -1,19 +1,19 @@
-# Makefile.x86_64 -- with config changes.
+# Makefile.amd64 -- with config changes.
 # Copyright 1990 W. Jolitz
 #	from: @(#)Makefile.i386	7.1 5/10/91
 #	from FreeBSD: src/sys/conf/Makefile.i386,v 1.255 2002/02/20 23:35:49
-# $FreeBSD: src/sys/conf/Makefile.amd64,v 1.7 2003/05/10 01:12:24 peter Exp $
+# $FreeBSD: src/sys/conf/Makefile.amd64,v 1.8 2003/05/19 22:15:30 peter Exp $
 #
 # Makefile for FreeBSD
 #
 # This makefile is constructed from a machine description:
 #	config machineid
 # Most changes should be made in the machine description
-#	/sys/x86_64/conf/``machineid''
+#	/sys/amd64/conf/``machineid''
 # after which you should do
 #	 config machineid
 # Generic makefile changes should be made in
-#	/sys/conf/Makefile.x86_64
+#	/sys/conf/Makefile.amd64
 # after which config should be rerun for all machines.
 #
 

==== //depot/projects/smpng/sys/conf/Makefile.ia64#24 (text+ko) ====

@@ -1,7 +1,7 @@
 # Makefile.ia64 -- with config changes.
 # Copyright 1990 W. Jolitz
 #	from: src/sys/conf/Makefile.alpha,v 1.76
-# $FreeBSD: src/sys/conf/Makefile.ia64,v 1.55 2003/04/15 21:29:11 phk Exp $
+# $FreeBSD: src/sys/conf/Makefile.ia64,v 1.56 2003/05/16 21:26:40 marcel Exp $
 #
 # Makefile for FreeBSD
 #
@@ -32,6 +32,8 @@
 .endif
 .include "$S/conf/kern.pre.mk"
 
+INCLUDES+= -I$S/contrib/ia64/libuwx/src
+
 CFLAGS+= -mconstant-gp
 
 ASM_CFLAGS= -x assembler-with-cpp -Wa,-x -DLOCORE ${CFLAGS}

==== //depot/projects/smpng/sys/conf/NOTES#44 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1148 2003/05/05 21:21:31 phk Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1149 2003/05/15 02:10:29 jmallett Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -208,10 +208,19 @@
 #
 # Implement system calls compatible with 4.3BSD and older versions of
 # FreeBSD.  You probably do NOT want to remove this as much current code
-# still relies on the 4.3 emulation.
+# still relies on the 4.3 emulation.  Note that some architectures that
+# are supported by FreeBSD do not include support for certain important
+# aspects of this compatibility option, namely those related to the
+# signal delivery mechanism.
 #
 options 	COMPAT_43
 
+#
+# Be compatible with SunOS.  The COMPAT_43 option above pulls in most
+# (all?) of the changes that this option turns on.
+#
+options 	COMPAT_SUNOS
+
 # Enable FreeBSD4 compatibility syscalls
 options 	COMPAT_FREEBSD4
 

==== //depot/projects/smpng/sys/conf/files.amd64#3 (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.amd64,v 1.14 2003/05/14 04:10:49 peter Exp $
+# $FreeBSD: src/sys/conf/files.amd64,v 1.15 2003/05/16 02:27:17 obrien Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -16,7 +16,7 @@
 #
 ia32_assym.h			optional	ia32			\
 	dependency 	"$S/kern/genassym.sh ia32_genassym.o"		\
-	compile-with	"sh $S/kern/genassym.sh ia32_genassym.o > ${.TARGET}" \
+	compile-with	"env NM=${NM} sh $S/kern/genassym.sh ia32_genassym.o > ${.TARGET}" \
 	no-obj no-implicit-rule before-depend				\
 	clean		"ia32_assym.h"
 #

==== //depot/projects/smpng/sys/conf/files.ia64#28 (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.ia64,v 1.51 2003/04/29 05:38:41 marcel Exp $
+# $FreeBSD: src/sys/conf/files.ia64,v 1.52 2003/05/16 21:26:40 marcel Exp $
 #
 # The long compile-with and dependency lines are required because of
 # limitations in config: backslash-newline doesn't work in strings, and
@@ -18,6 +18,19 @@
 	no-obj no-implicit-rule before-depend				\
 	clean		"atkbdmap.h"
 #
+contrib/ia64/libuwx/src/uwx_bstream.c		standard
+contrib/ia64/libuwx/src/uwx_context.c		standard
+contrib/ia64/libuwx/src/uwx_env.c		standard
+contrib/ia64/libuwx/src/uwx_scoreboard.c	standard
+#contrib/ia64/libuwx/src/uwx_self.c		standard
+#contrib/ia64/libuwx/src/uwx_self_context.s	standard
+contrib/ia64/libuwx/src/uwx_step.c		standard
+contrib/ia64/libuwx/src/uwx_str.c		standard
+contrib/ia64/libuwx/src/uwx_swap.c		standard
+contrib/ia64/libuwx/src/uwx_trace.c		standard
+#contrib/ia64/libuwx/src/uwx_ttrace.c		standard
+contrib/ia64/libuwx/src/uwx_uinfo.c		standard
+contrib/ia64/libuwx/src/uwx_utable.c		standard
 crypto/blowfish/bf_enc.c	optional	crypto
 crypto/blowfish/bf_enc.c	optional	ipsec ipsec_esp
 crypto/des/des_enc.c		optional	crypto
@@ -62,6 +75,7 @@
 ia64/ia64/busdma_machdep.c	standard
 ia64/ia64/clock.c		standard
 ia64/ia64/clock_if.m		standard
+ia64/ia64/context.s		standard
 ia64/ia64/critical.c		standard
 ia64/ia64/db_disasm.c		optional	ddb
 ia64/ia64/db_interface.c	optional	ddb
@@ -88,8 +102,8 @@
 ia64/ia64/ssc.c			optional	ski
 ia64/ia64/sscdisk.c		optional	ski
 ia64/ia64/support.s		standard
-ia64/ia64/swtch.s		standard
 ia64/ia64/sys_machdep.c		standard
+ia64/ia64/syscall.s		standard
 ia64/ia64/trap.c		standard
 ia64/ia64/unaligned.c		standard
 ia64/ia64/unwind.c		standard

==== //depot/projects/smpng/sys/conf/ldscript.ia64#5 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.8 2002/12/05 18:35:44 obrien Exp $ */
+/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.9 2003/05/16 06:03:45 marcel Exp $ */
 OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little")
 OUTPUT_ARCH(ia64)
 ENTRY(__start)
@@ -8,107 +8,115 @@
 {
   /* Read-only sections, merged into text segment: */
   . = kernel_text + SIZEOF_HEADERS;
-
-  .text      :
+  .interp         : { *(.interp) }
+  .hash           : { *(.hash) }
+  .dynsym         : { *(.dynsym) }
+  .dynstr         : { *(.dynstr) }
+  .gnu.version    : { *(.gnu.version) }
+  .gnu.version_d  : { *(.gnu.version_d) }
+  .gnu.version_r  : { *(.gnu.version_r) }
+  .rela.init      : { *(.rela.init) }
+  .rela.text      : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
+  .rela.fini      : { *(.rela.fini) }
+  .rela.rodata    : { *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) }
+  .rela.data      : { *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) }
+  .rela.ctors     : { *(.rela.ctors) }
+  .rela.dtors     : { *(.rela.dtors) }
+  .rela.got       : { *(.rela.got) }
+  .rela.sdata     : { *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) }
+  .rela.sbss      : { *(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*) }
+  .rela.sdata2    : { *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) }
+  .rela.sbss2     : { *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) }
+  .rela.bss       : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
+  .rela.plt       : { *(.rela.plt) }
+  .rela.IA_64.pltoff   : { *(.rela.IA_64.pltoff) }
+  .init           :
+  {
+    *(.init)
+  } =0x00300000010070000002000001000400
+  .plt            : { *(.plt) }
+  .text           :
   {
-    *(.text.ivt)
-    . += 8192;
-    *(.text)
-    *(.stub)
+    *(.text .stub .text.* .gnu.linkonce.t.*)
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
-    *(.gnu.linkonce.t*)
-  } =0x47ff041f
-  .interp        : { *(.interp) 	}
-  .hash          : { *(.hash)		}
-  .dynsym        : { *(.dynsym)		}
-  .dynstr        : { *(.dynstr)		}
-  .gnu.version   : { *(.gnu.version)	}
-  .gnu.version_d   : { *(.gnu.version_d)	}
-  .gnu.version_r   : { *(.gnu.version_r)	}
-  .rel.text      :
-    { *(.rel.text) *(.rel.gnu.linkonce.t*) }
-  .rela.text     :
-    { *(.rela.text) *(.rela.gnu.linkonce.t*) }
-  .rel.data      :
-    { *(.rel.data) *(.rel.gnu.linkonce.d*) }
-  .rela.data     :
-    { *(.rela.data) *(.rela.gnu.linkonce.d*) }
-  .rel.rodata    :
-    { *(.rel.rodata) *(.rel.gnu.linkonce.r*) }
-  .rela.rodata   :
-    { *(.rela.rodata) *(.rela.gnu.linkonce.r*) }
-  .rel.got       : { *(.rel.got)		}
-  .rela.got      : { *(.rela.got)		}
-  .rel.ctors     : { *(.rel.ctors)	}
-  .rela.ctors    : { *(.rela.ctors)	}
-  .rel.dtors     : { *(.rel.dtors)	}
-  .rela.dtors    : { *(.rela.dtors)	}
-  .rel.init      : { *(.rel.init)	}
-  .rela.init     : { *(.rela.init)	}
-  .rel.fini      : { *(.rel.fini)	}
-  .rela.fini     : { *(.rela.fini)	}
-  .rel.bss       : { *(.rel.bss)		}
-  .rela.bss      : { *(.rela.bss)		}
-  .rel.plt       : { *(.rel.plt)		}
-  .rela.plt      : { *(.rela.plt)		}
-  .init          : { *(.init)	} =0x47ff041f
+  } =0x00300000010070000002000001000400
+  .fini           :
+  {
+    *(.fini)
+  } =0x00300000010070000002000001000400
   _etext = .;
   PROVIDE (etext = .);
-  .fini      : { *(.fini)    } =0x47ff041f
-  .rodata    : { *(.rodata) *(.gnu.linkonce.r*) }
-  .rodata1   : { *(.rodata1) }
-  .reginfo : { *(.reginfo) }
-  .IA_64.unwind_info : { *(.IA_64.unwind_info*) }
-  .IA_64.unwind : { *(.IA_64.unwind*) }
+  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
+  .rodata1        : { *(.rodata1) }
+  .sdata2         : { *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) }
+  .sbss2          : { *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) }
+  .opd            : { *(.opd) }
+  .IA_64.unwind_info   : { *(.IA_64.unwind_info* .gnu.linkonce.ia64unwi.*) }
+  .IA_64.unwind   : { *(.IA_64.unwind* .gnu.linkonce.ia64unw.*) }
   /* Adjust the address for the data segment.  We want to adjust up to
      the same address within the page on the next page up.  */
-  . = .;
-  .data    :
+  . = . + 8192;
+  .data           :
   {
-    *(.data)
-    *(.gnu.linkonce.d*)
-    CONSTRUCTORS
+    *(.data.proc0 .data .data.* .gnu.linkonce.d.*)
+    SORT(CONSTRUCTORS)
   }
-  .data1   : { *(.data1) }
-  .ctors         :
+  .data1          : { *(.data1) }
+  .dynamic        : { *(.dynamic) }
+  .ctors          :
   {
     *(.ctors)
+    *(SORT(.ctors.*))
   }
-  .dtors         :
+  .dtors          :
   {
     *(.dtors)
+    *(SORT(.dtors.*))

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



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