From owner-p4-projects@FreeBSD.ORG Mon May 5 13:27:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8ED9137B404; Mon, 5 May 2003 13:27:43 -0700 (PDT) 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 41A7737B401 for ; Mon, 5 May 2003 13:27:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C689143F75 for ; Mon, 5 May 2003 13:27:41 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h45KRf0U008071 for ; Mon, 5 May 2003 13:27:41 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h45KReV7008067 for perforce@freebsd.org; Mon, 5 May 2003 13:27:40 -0700 (PDT) Date: Mon, 5 May 2003 13:27:40 -0700 (PDT) Message-Id: <200305052027.h45KReV7008067@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 30620 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 May 2003 20:27:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=30620 Change 30620 by jhb@jhb_laptop on 2003/05/05 13:26:54 IFC @30616. Affected files ... .. //depot/projects/smpng/sys/alpha/include/_limits.h#4 integrate .. //depot/projects/smpng/sys/amd64/Makefile#1 branch .. //depot/projects/smpng/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/smpng/sys/amd64/amd64/critical.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/smpng/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/smpng/sys/amd64/amd64/support.S#1 branch .. //depot/projects/smpng/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/smpng/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/smpng/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/smpng/sys/amd64/conf/Makefile#1 branch .. //depot/projects/smpng/sys/amd64/conf/gethints.awk#1 branch .. //depot/projects/smpng/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/smpng/sys/amd64/include/_limits.h#1 branch .. //depot/projects/smpng/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/smpng/sys/amd64/include/_types.h#1 branch .. //depot/projects/smpng/sys/amd64/include/asm.h#1 branch .. //depot/projects/smpng/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/smpng/sys/amd64/include/atomic.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus_at386.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus_memio.h#1 branch .. //depot/projects/smpng/sys/amd64/include/bus_pio.h#1 branch .. //depot/projects/smpng/sys/amd64/include/clock.h#1 branch .. //depot/projects/smpng/sys/amd64/include/cpu.h#1 branch .. //depot/projects/smpng/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/smpng/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/smpng/sys/amd64/include/critical.h#1 branch .. //depot/projects/smpng/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/smpng/sys/amd64/include/elf.h#1 branch .. //depot/projects/smpng/sys/amd64/include/endian.h#1 branch .. //depot/projects/smpng/sys/amd64/include/exec.h#1 branch .. //depot/projects/smpng/sys/amd64/include/float.h#1 branch .. //depot/projects/smpng/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/smpng/sys/amd64/include/frame.h#1 branch .. //depot/projects/smpng/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/smpng/sys/amd64/include/kse.h#1 branch .. //depot/projects/smpng/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/smpng/sys/amd64/include/limits.h#1 branch .. //depot/projects/smpng/sys/amd64/include/md_var.h#1 branch .. //depot/projects/smpng/sys/amd64/include/metadata.h#1 branch .. //depot/projects/smpng/sys/amd64/include/mutex.h#1 branch .. //depot/projects/smpng/sys/amd64/include/npx.h#1 branch .. //depot/projects/smpng/sys/amd64/include/param.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pcb.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/smpng/sys/amd64/include/pmap.h#1 branch .. //depot/projects/smpng/sys/amd64/include/proc.h#1 branch .. //depot/projects/smpng/sys/amd64/include/profile.h#1 branch .. //depot/projects/smpng/sys/amd64/include/psl.h#1 branch .. //depot/projects/smpng/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/smpng/sys/amd64/include/reg.h#1 branch .. //depot/projects/smpng/sys/amd64/include/reloc.h#1 branch .. //depot/projects/smpng/sys/amd64/include/resource.h#1 branch .. //depot/projects/smpng/sys/amd64/include/runq.h#1 branch .. //depot/projects/smpng/sys/amd64/include/segments.h#1 branch .. //depot/projects/smpng/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/smpng/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/smpng/sys/amd64/include/signal.h#1 branch .. //depot/projects/smpng/sys/amd64/include/smp.h#1 branch .. //depot/projects/smpng/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/smpng/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/smpng/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/smpng/sys/amd64/include/trap.h#1 branch .. //depot/projects/smpng/sys/amd64/include/tss.h#1 branch .. //depot/projects/smpng/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/smpng/sys/amd64/include/varargs.h#1 branch .. //depot/projects/smpng/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/clock.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/icu.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/smpng/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/smpng/sys/amd64/isa/intr_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/intr_machdep.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/isa.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/isa.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/isa_dma.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/ithread.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/npx.c#1 branch .. //depot/projects/smpng/sys/amd64/isa/timerreg.h#1 branch .. //depot/projects/smpng/sys/amd64/isa/vector.S#1 branch .. //depot/projects/smpng/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/smpng/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/smpng/sys/arm/include/_limits.h#3 integrate .. //depot/projects/smpng/sys/boot/Makefile#8 integrate .. //depot/projects/smpng/sys/boot/alpha/libalpha/elf_freebsd.c#2 integrate .. //depot/projects/smpng/sys/boot/arc/lib/elf_freebsd.c#2 integrate .. //depot/projects/smpng/sys/boot/common/Makefile.inc#4 integrate .. //depot/projects/smpng/sys/boot/common/bootstrap.h#7 integrate .. //depot/projects/smpng/sys/boot/common/help.common#10 integrate .. //depot/projects/smpng/sys/boot/common/load_elf.c#8 integrate .. //depot/projects/smpng/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/smpng/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/smpng/sys/boot/common/loader.8#22 integrate .. //depot/projects/smpng/sys/boot/efi/libefi/elf_freebsd.c#10 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/Makefile#7 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo.c#7 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/smpng/sys/boot/i386/libi386/elf_freebsd.c#3 delete .. //depot/projects/smpng/sys/boot/i386/libi386/i386_module.c#7 integrate .. //depot/projects/smpng/sys/boot/i386/libi386/libi386.h#4 integrate .. //depot/projects/smpng/sys/boot/i386/loader/conf.c#7 integrate .. //depot/projects/smpng/sys/boot/i386/loader/main.c#5 integrate .. //depot/projects/smpng/sys/boot/ia64/libski/elf_freebsd.c#6 integrate .. //depot/projects/smpng/sys/boot/ofw/libofw/elf_freebsd.c#5 integrate .. //depot/projects/smpng/sys/boot/pc98/boot0.5/start.s#2 integrate .. //depot/projects/smpng/sys/boot/pc98/libpc98/Makefile#7 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/smpng/sys/boot/powerpc/loader/metadata.c#3 integrate .. //depot/projects/smpng/sys/boot/sparc64/loader/main.c#13 integrate .. //depot/projects/smpng/sys/boot/sparc64/loader/metadata.c#9 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#38 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ipc.c#13 integrate .. //depot/projects/smpng/sys/conf/Makefile.amd64#1 branch .. //depot/projects/smpng/sys/conf/Makefile.x86_64#5 delete .. //depot/projects/smpng/sys/conf/NOTES#42 integrate .. //depot/projects/smpng/sys/conf/files#76 integrate .. //depot/projects/smpng/sys/conf/files.amd64#1 branch .. //depot/projects/smpng/sys/conf/files.pc98#41 integrate .. //depot/projects/smpng/sys/conf/files.x86_64#6 delete .. //depot/projects/smpng/sys/conf/kern.mk#4 integrate .. //depot/projects/smpng/sys/conf/ldscript.amd64#1 branch .. //depot/projects/smpng/sys/conf/options.amd64#1 branch .. //depot/projects/smpng/sys/conf/options.x86_64#6 delete .. //depot/projects/smpng/sys/contrib/dev/acpica/acenv.h#10 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/acfreebsd.h#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/dbcmds.c#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/dbxface.c#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/hwregs.c#10 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/hwsleep.c#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/psparse.c#14 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#42 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahc_eisa.c#7 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahc_pci.c#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/ahd_pci.c#7 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7770.c#7 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx.c#10 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx.h#8 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx.reg#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx.seq#8 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_inline.h#8 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_osm.c#8 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_pci.c#9 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.c#13 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.h#7 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx.reg#7 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_inline.h#6 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_osm.c#8 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_pci.c#9 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#36 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#16 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#10 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#29 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.h#12 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#31 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.h#6 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#19 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.h#13 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.c#20 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#25 integrate .. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#13 integrate .. //depot/projects/smpng/sys/dev/ct/ct_isa.c#5 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#20 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#13 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.c#8 integrate .. //depot/projects/smpng/sys/dev/em/if_em_hw.h#8 integrate .. //depot/projects/smpng/sys/dev/em/if_em_osdep.h#11 integrate .. //depot/projects/smpng/sys/dev/en/midway.c#12 integrate .. //depot/projects/smpng/sys/dev/en/midwayvar.h#5 integrate .. //depot/projects/smpng/sys/dev/fb/fbreg.h#9 integrate .. //depot/projects/smpng/sys/dev/fb/vga.c#13 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.c#16 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#16 integrate .. //depot/projects/smpng/sys/dev/kbd/atkbdc.c#5 integrate .. //depot/projects/smpng/sys/dev/md/md.c#35 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#14 integrate .. //depot/projects/smpng/sys/dev/mii/miidevs#9 integrate .. //depot/projects/smpng/sys/dev/mii/ruephy.c#1 branch .. //depot/projects/smpng/sys/dev/mii/ruephyreg.h#1 branch .. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#27 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbbdevid.h#9 integrate .. //depot/projects/smpng/sys/dev/ppbus/vpo.c#5 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#12 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#13 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#29 integrate .. //depot/projects/smpng/sys/dev/snc/dp83932subr.c#3 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/dsp.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/if_rue.c#1 branch .. //depot/projects/smpng/sys/dev/usb/if_ruereg.h#1 branch .. //depot/projects/smpng/sys/dev/usb/usbdevs#30 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs.h#31 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs_data.h#31 integrate .. //depot/projects/smpng/sys/dev/vinum/request.h#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinum.c#11 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumconfig.c#11 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumext.h#8 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumio.c#12 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumio.h#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumioctl.c#12 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumkw.h#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumlock.c#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinummemory.c#5 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumobj.h#4 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumparser.c#3 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumraid5.c#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrequest.c#10 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrevive.c#7 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumstate.c#3 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumutil.c#2 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumvar.h#4 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_dbregs.c#11 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_fpregs.c#11 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_regs.c#11 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_status.c#16 integrate .. //depot/projects/smpng/sys/fs/udf/udf.h#3 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vfsops.c#8 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#11 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde.c#10 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde_crypt.c#11 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde_work.c#9 integrate .. //depot/projects/smpng/sys/geom/geom.h#27 integrate .. //depot/projects/smpng/sys/geom/geom_aes.c#10 integrate .. //depot/projects/smpng/sys/geom/geom_apple.c#5 integrate .. //depot/projects/smpng/sys/geom/geom_bsd.c#29 integrate .. //depot/projects/smpng/sys/geom/geom_bsd_enc.c#2 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.c#10 integrate .. //depot/projects/smpng/sys/geom/geom_dev.c#23 integrate .. //depot/projects/smpng/sys/geom/geom_disk.c#24 integrate .. //depot/projects/smpng/sys/geom/geom_event.c#17 integrate .. //depot/projects/smpng/sys/geom/geom_gpt.c#11 integrate .. //depot/projects/smpng/sys/geom/geom_io.c#19 integrate .. //depot/projects/smpng/sys/geom/geom_mbr.c#20 integrate .. //depot/projects/smpng/sys/geom/geom_mirror.c#4 integrate .. //depot/projects/smpng/sys/geom/geom_pc98.c#18 integrate .. //depot/projects/smpng/sys/geom/geom_pc98_enc.c#1 branch .. //depot/projects/smpng/sys/geom/geom_slice.c#21 integrate .. //depot/projects/smpng/sys/geom/geom_slice.h#13 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#26 integrate .. //depot/projects/smpng/sys/geom/geom_sunlabel.c#21 integrate .. //depot/projects/smpng/sys/geom/geom_vol_ffs.c#4 integrate .. //depot/projects/smpng/sys/i386/include/_limits.h#3 integrate .. //depot/projects/smpng/sys/i386/include/elf.h#5 integrate .. //depot/projects/smpng/sys/i386/include/metadata.h#1 branch .. //depot/projects/smpng/sys/i386/include/specialreg.h#5 integrate .. //depot/projects/smpng/sys/i386/include/vmparam.h#4 integrate .. //depot/projects/smpng/sys/ia64/ia64/locore.s#17 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#53 integrate .. //depot/projects/smpng/sys/ia64/include/_limits.h#3 integrate .. //depot/projects/smpng/sys/ia64/include/param.h#9 integrate .. //depot/projects/smpng/sys/isa/isa_common.c#10 integrate .. //depot/projects/smpng/sys/isa/vga_isa.c#6 integrate .. //depot/projects/smpng/sys/kern/init_main.c#33 integrate .. //depot/projects/smpng/sys/kern/kern_acct.c#27 integrate .. //depot/projects/smpng/sys/kern/kern_exit.c#64 integrate .. //depot/projects/smpng/sys/kern/kern_fork.c#59 integrate .. //depot/projects/smpng/sys/kern/kern_idle.c#14 integrate .. //depot/projects/smpng/sys/kern/kern_intr.c#29 integrate .. //depot/projects/smpng/sys/kern/kern_kthread.c#11 integrate .. //depot/projects/smpng/sys/kern/kern_ktr.c#18 integrate .. //depot/projects/smpng/sys/kern/kern_malloc.c#20 integrate .. //depot/projects/smpng/sys/kern/kern_proc.c#51 integrate .. //depot/projects/smpng/sys/kern/kern_prot.c#69 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#47 integrate .. //depot/projects/smpng/sys/kern/kern_thr.c#6 integrate .. //depot/projects/smpng/sys/kern/kern_thread.c#32 integrate .. //depot/projects/smpng/sys/kern/md5c.c#4 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#10 integrate .. //depot/projects/smpng/sys/kern/subr_mbuf.c#30 integrate .. //depot/projects/smpng/sys/kern/subr_prof.c#20 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#16 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#19 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#51 integrate .. //depot/projects/smpng/sys/modules/Makefile#51 integrate .. //depot/projects/smpng/sys/modules/mii/Makefile#5 integrate .. //depot/projects/smpng/sys/modules/rue/Makefile#1 branch .. //depot/projects/smpng/sys/net/if_atm.h#5 integrate .. //depot/projects/smpng/sys/net/if_atmsubr.c#9 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#33 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_lock.c#24 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#35 integrate .. //depot/projects/smpng/sys/pci/if_en_pci.c#6 integrate .. //depot/projects/smpng/sys/powerpc/include/_limits.h#3 integrate .. //depot/projects/smpng/sys/powerpc/include/metadata.h#2 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/machdep.c#37 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/ofwmagic.S#2 integrate .. //depot/projects/smpng/sys/sparc64/include/_limits.h#3 integrate .. //depot/projects/smpng/sys/sparc64/include/metadata.h#4 integrate .. //depot/projects/smpng/sys/sparc64/pci/psycho.c#20 integrate .. //depot/projects/smpng/sys/sparc64/sbus/sbus.c#9 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/iommu.c#15 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#49 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#51 integrate .. //depot/projects/smpng/sys/sys/ata.h#13 integrate .. //depot/projects/smpng/sys/sys/disklabel.h#25 integrate .. //depot/projects/smpng/sys/sys/diskpc98.h#5 integrate .. //depot/projects/smpng/sys/sys/limits.h#3 integrate .. //depot/projects/smpng/sys/sys/linker.h#11 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#23 integrate .. //depot/projects/smpng/sys/sys/param.h#40 integrate .. //depot/projects/smpng/sys/sys/proc.h#85 integrate .. //depot/projects/smpng/sys/sys/soundcard.h#6 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#6 integrate .. //depot/projects/smpng/sys/sys/user.h#14 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#40 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#17 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#33 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#30 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.h#10 integrate .. //depot/projects/smpng/sys/x86_64/compile/.cvsignore#2 delete .. //depot/projects/smpng/sys/x86_64/include/_limits.h#3 delete .. //depot/projects/smpng/sys/x86_64/include/_stdint.h#2 delete .. //depot/projects/smpng/sys/x86_64/include/_types.h#3 delete .. //depot/projects/smpng/sys/x86_64/include/endian.h#4 delete .. //depot/projects/smpng/sys/x86_64/include/limits.h#5 delete .. //depot/projects/smpng/sys/x86_64/include/param.h#3 delete .. //depot/projects/smpng/sys/x86_64/include/stdarg.h#5 delete Differences ... ==== //depot/projects/smpng/sys/alpha/include/_limits.h#4 (text+ko) ==== @@ -32,7 +32,7 @@ * * @(#)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.12 2003/04/28 22:35:34 kan Exp $ + * $FreeBSD: src/sys/alpha/include/_limits.h,v 1.13 2003/05/04 22:13:03 kan Exp $ */ #ifndef _MACHINE__LIMITS_H_ @@ -40,6 +40,17 @@ #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 + * same type as would an expression that is an object of the corresponding + * type converted according to the integral promotions. The subtraction for + * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an + * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2). + * These numbers are for the default configuration of gcc. They work for + * some other compilers as well, but this should not be depended on. + */ + #define __SCHAR_MAX 0x7f /* max value for a signed char */ #define __SCHAR_MIN (-0x7f-1) /* min value for a signed char */ @@ -72,7 +83,7 @@ #define __OFF_MAX __LONG_MAX /* max value for a off_t */ #define __OFF_MIN __LONG_MIN /* min value for a off_t */ -/* Quads and longs are the same on the alpha. Ensure they stay in sync. */ +/* Quads and longs are the same on the alpha. Ensure they stay in sync. */ #define __UQUAD_MAX (__ULONG_MAX) /* max value for a uquad_t */ #define __QUAD_MAX (__LONG_MAX) /* max value for a quad_t */ #define __QUAD_MIN (__LONG_MIN) /* min value for a quad_t */ @@ -80,12 +91,4 @@ #define __LONG_BIT 64 #define __WORD_BIT 32 -#define __DBL_DIG 15 -#define __DBL_MAX 1.7976931348623157E+308 -#define __DBL_MIN 2.2250738585072014E-308 - -#define __FLT_DIG 6 -#define __FLT_MAX 3.40282347E+38F -#define __FLT_MIN 1.17549435E-38F - #endif /* !_MACHINE__LIMITS_H_ */ ==== //depot/projects/smpng/sys/arm/include/_limits.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)limits.h 8.3 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/arm/include/_limits.h,v 1.4 2003/04/23 21:41:58 kan Exp $ + * $FreeBSD: src/sys/arm/include/_limits.h,v 1.5 2003/05/04 22:13:03 kan Exp $ */ #ifndef _MACHINE__LIMITS_H_ @@ -39,6 +39,17 @@ #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 + * same type as would an expression that is an object of the corresponding + * type converted according to the integral promotions. The subtraction for + * INT_MIN, etc., is so the value is not unsigned; e.g., 0x80000000 is an + * unsigned int for 32-bit two's complement ANSI compilers (section 3.1.3.2). + * These numbers are for the default configuration of gcc. They work for + * some other compilers as well, but this should not be depended on. + */ + #define __SCHAR_MAX 0x7f /* max value for a signed char */ #define __SCHAR_MIN (-0x7f - 1) /* min value for a signed char */ @@ -87,12 +98,4 @@ #endif #define __WORD_BIT 32 -#define __DBL_DIG 15 -#define __DBL_MAX 1.7976931348623157E+308 -#define __DBL_MIN 2.2250738585072014E-308 - -#define __FLT_DIG 6 -#define __FLT_MAX 3.40282347E+38F -#define __FLT_MIN 1.17549435E-38F - #endif /* !_MACHINE__LIMITS_H_ */ ==== //depot/projects/smpng/sys/boot/Makefile#8 (text+ko) ==== @@ -1,4 +1,9 @@ -# $FreeBSD: src/sys/boot/Makefile,v 1.15 2003/02/13 04:35:04 benno Exp $ +# $FreeBSD: src/sys/boot/Makefile,v 1.16 2003/04/30 22:13:36 peter Exp $ + +.if ${MACHINE_ARCH} == "amd64" +MACHINE_ARCH=i386 +MACHINE=i386 +.endif .if !defined(NOFORTH) # Build the add-in FORTH interpreter ==== //depot/projects/smpng/sys/boot/alpha/libalpha/elf_freebsd.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/alpha/libalpha/elf_freebsd.c,v 1.11 2000/11/14 08:10:15 mjacob Exp $ */ +/* $FreeBSD: src/sys/boot/alpha/libalpha/elf_freebsd.c,v 1.12 2003/05/01 03:56:28 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- @@ -90,16 +90,16 @@ #define _KERNEL -static int elf_exec(struct preloaded_file *afp); +static int elf64_exec(struct preloaded_file *afp); int bi_load(struct bootinfo_v1 *, vm_offset_t *, struct preloaded_file *); -struct file_format alpha_elf = { elf_loadfile, elf_exec }; +struct file_format alpha_elf = { elf64_loadfile, elf64_exec }; vm_offset_t ffp_save, ptbr_save; static int -elf_exec(struct preloaded_file *fp) +elf64_exec(struct preloaded_file *fp) { static struct bootinfo_v1 bootinfo_v1; struct file_metadata *md; ==== //depot/projects/smpng/sys/boot/arc/lib/elf_freebsd.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/boot/arc/lib/elf_freebsd.c,v 1.3 2000/05/01 17:41:20 bp Exp $ */ +/* $FreeBSD: src/sys/boot/arc/lib/elf_freebsd.c,v 1.4 2003/05/01 03:56:29 peter Exp $ */ /* $NetBSD: loadfile.c,v 1.10 1998/06/25 06:45:46 ross Exp $ */ /*- @@ -90,16 +90,16 @@ #define _KERNEL -static int elf_exec(struct preloaded_file *amp); +static int elf64_exec(struct preloaded_file *amp); int bi_load(struct bootinfo_v1 *, vm_offset_t *, struct preloaded_file *); -struct file_format alpha_elf = { elf_loadfile, elf_exec }; +struct file_format alpha_elf = { elf64_loadfile, elf64_exec }; vm_offset_t ffp_save, ptbr_save; static int -elf_exec(struct preloaded_file *fp) +elf64_exec(struct preloaded_file *fp) { #if 0 static struct bootinfo_v1 bootinfo_v1; ==== //depot/projects/smpng/sys/boot/common/Makefile.inc#4 (text+ko) ==== @@ -1,9 +1,19 @@ -# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.14 2002/08/29 02:02:27 peter Exp $ +# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.15 2003/05/01 03:56:29 peter Exp $ SRCS+= bcache.c boot.c commands.c console.c devopen.c interp.c -SRCS+= interp_backslash.c interp_parse.c load_elf.c ls.c misc.c +SRCS+= interp_backslash.c interp_parse.c ls.c misc.c SRCS+= module.c panic.c +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" +SRCS+= load_elf32.c load_elf64.c +.endif +.if ${MACHINE_ARCH} == "powerpc" +SRCS+= load_elf32.c +.endif +.if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "alpha" +SRCS+= load_elf64.c +.endif + .if defined(LOADER_NET_SUPPORT) SRCS+= dev_net.c .endif @@ -25,3 +35,6 @@ MAN+= loader.8 +.if ${MACHINE_ARCH} == "amd64" +CFLAGS+= -m32 +.endif ==== //depot/projects/smpng/sys/boot/common/bootstrap.h#7 (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/common/bootstrap.h,v 1.37 2003/04/06 06:28:08 peter Exp $ + * $FreeBSD: src/sys/boot/common/bootstrap.h,v 1.38 2003/05/01 03:56:29 peter Exp $ */ #include @@ -210,7 +210,7 @@ struct file_format { /* Load function must return EFTYPE if it can't handle the module supplied */ - int (* l_load)(char *filename, vm_offset_t dest, struct preloaded_file **result); + int (* l_load)(char *filename, u_int64_t dest, struct preloaded_file **result); /* Only a loader that will load a kernel (first module) should have an exec handler */ int (* l_exec)(struct preloaded_file *mp); }; @@ -231,7 +231,9 @@ /* MI module loaders */ -int elf_loadfile(char *filename, vm_offset_t dest, struct preloaded_file **result); +#ifdef __elfN +int __elfN(loadfile)(char *filename, u_int64_t dest, struct preloaded_file **result); +#endif /* * Support for commands ==== //depot/projects/smpng/sys/boot/common/help.common#10 (text+ko) ==== @@ -13,6 +13,11 @@ Some commands may not be available. Use the '?' command to list most available commands. + If needed, disable the use of ACPI with: + + unset acpi_load + $hint.acpi.0.disabled="1" + ################################################################################ # Tautoboot DBoot after a delay ==== //depot/projects/smpng/sys/boot/common/load_elf.c#8 (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/boot/common/load_elf.c,v 1.26 2003/04/04 16:35:14 phk Exp $ + * $FreeBSD: src/sys/boot/common/load_elf.c,v 1.27 2003/05/01 03:56:29 peter Exp $ */ #include @@ -41,6 +41,12 @@ #define COPYOUT(s,d,l) archsw.arch_copyout((vm_offset_t)(s), d, l) +#if defined(__i386__) && __ELF_WORD_SIZE == 64 +#undef ELF_TARG_CLASS +#undef ELF_TARG_MACH +#define ELF_TARG_CLASS ELFCLASS64 +#define ELF_TARG_MACH EM_X86_64 +#endif typedef struct elf_file { Elf_Phdr *ph; @@ -59,20 +65,20 @@ caddr_t firstpage; size_t firstlen; int kernel; - vm_offset_t off; + u_int64_t off; } *elf_file_t; -static int elf_loadimage(struct preloaded_file *mp, elf_file_t ef, vm_offset_t loadaddr); -static int elf_lookup_symbol(struct preloaded_file *mp, elf_file_t ef, const char* name, Elf_Sym* sym); +static int __elfN(loadimage)(struct preloaded_file *mp, elf_file_t ef, u_int64_t loadaddr); +static int __elfN(lookup_symbol)(struct preloaded_file *mp, elf_file_t ef, const char* name, Elf_Sym* sym); #ifdef __sparc__ -static void elf_reloc_ptr(struct preloaded_file *mp, elf_file_t ef, +static void __elfN(reloc_ptr)(struct preloaded_file *mp, elf_file_t ef, void *p, void *val, size_t len); #endif -static int elf_parse_modmetadata(struct preloaded_file *mp, elf_file_t ef); +static int __elfN(parse_modmetadata)(struct preloaded_file *mp, elf_file_t ef); static char *fake_modname(const char *name); -const char *elf_kerneltype = "elf kernel"; -const char *elf_moduletype = "elf module"; +const char *__elfN(kerneltype) = "elf kernel"; +const char *__elfN(moduletype) = "elf module"; /* * Attempt to load the file (file) as an ELF module. It will be stored at @@ -80,7 +86,7 @@ * will be saved in (result). */ int -elf_loadfile(char *filename, vm_offset_t dest, struct preloaded_file **result) +__elfN(loadfile)(char *filename, u_int64_t dest, struct preloaded_file **result) { struct preloaded_file *fp, *kfp; struct elf_file ef; @@ -134,12 +140,12 @@ if (ehdr->e_type == ET_DYN) { /* Looks like a kld module */ if (kfp == NULL) { - printf("elf_loadfile: can't load module before kernel\n"); + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadfile: can't load module before kernel\n"); err = EPERM; goto oerr; } - if (strcmp(elf_kerneltype, kfp->f_type)) { - printf("elf_loadfile: can't load module with kernel type '%s'\n", kfp->f_type); + if (strcmp(__elfN(kerneltype), kfp->f_type)) { + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadfile: can't load module with kernel type '%s'\n", kfp->f_type); err = EPERM; goto oerr; } @@ -155,16 +161,16 @@ } else if (ehdr->e_type == ET_EXEC) { /* Looks like a kernel */ if (kfp != NULL) { - printf("elf_loadfile: kernel already loaded\n"); + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadfile: kernel already loaded\n"); err = EPERM; goto oerr; } /* * Calculate destination address based on kernel entrypoint */ - dest = (vm_offset_t) ehdr->e_entry; + dest = ehdr->e_entry; if (dest == 0) { - printf("elf_loadfile: not a kernel (maybe static binary?)\n"); + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadfile: not a kernel (maybe static binary?)\n"); err = EPERM; goto oerr; } @@ -180,23 +186,23 @@ */ fp = file_alloc(); if (fp == NULL) { - printf("elf_loadfile: cannot allocate module info\n"); + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadfile: cannot allocate module info\n"); err = EPERM; goto out; } if (ef.kernel) setenv("kernelname", filename, 1); fp->f_name = strdup(filename); - fp->f_type = strdup(ef.kernel ? elf_kerneltype : elf_moduletype); + fp->f_type = strdup(ef.kernel ? __elfN(kerneltype) : __elfN(moduletype)); #ifdef ELF_VERBOSE if (ef.kernel) - printf("%s entry at %p\n", filename, (void *) dest); + printf("%s entry at 0x%jx\n", filename, (uintmax_t)dest); #else printf("%s ", filename); #endif - fp->f_size = elf_loadimage(fp, &ef, dest); + fp->f_size = __elfN(loadimage)(fp, &ef, dest); if (fp->f_size == 0 || fp->f_addr == 0) goto ioerr; @@ -224,7 +230,7 @@ * the Elf header, load the image at (off) */ static int -elf_loadimage(struct preloaded_file *fp, elf_file_t ef, vm_offset_t off) +__elfN(loadimage)(struct preloaded_file *fp, elf_file_t ef, u_int64_t off) { int i; u_int j; @@ -238,12 +244,13 @@ size_t resid, chunk; ssize_t result; vm_offset_t dest; - vm_offset_t ssym, esym; + Elf_Addr ssym, esym; Elf_Dyn *dp; + Elf_Addr adp; int ndp; int symstrindex; int symtabindex; - long size; + Elf_Size size; u_int fpcopy; dp = NULL; @@ -253,7 +260,11 @@ ehdr = ef->ehdr; if (ef->kernel) { #ifdef __i386__ +#if __ELF_WORD_SIZE == 64 + off = - (off & 0xffffffffff000000ull);/* x86_64 relocates after locore */ +#else off = - (off & 0xff000000u); /* i386 relocates after locore */ +#endif #else off = 0; /* alpha is direct mapped for kernels */ #endif @@ -261,7 +272,7 @@ ef->off = off; if ((ehdr->e_phoff + ehdr->e_phnum * sizeof(*phdr)) > ef->firstlen) { - printf("elf_loadimage: program header not within first page\n"); + printf("elf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: program header not within first page\n"); goto out; } phdr = (Elf_Phdr *)(ef->firstpage + ehdr->e_phoff); @@ -295,12 +306,12 @@ if (phdr[i].p_filesz > fpcopy) { if (lseek(ef->fd, (off_t)(phdr[i].p_offset + fpcopy), SEEK_SET) == -1) { - printf("\nelf_loadexec: cannot seek\n"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadexec: cannot seek\n"); goto out; } if (archsw.arch_readin(ef->fd, phdr[i].p_vaddr + off + fpcopy, phdr[i].p_filesz - fpcopy) != (ssize_t)(phdr[i].p_filesz - fpcopy)) { - printf("\nelf_loadexec: archsw.readin failed\n"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadexec: archsw.readin failed\n"); goto out; } } @@ -315,7 +326,7 @@ /* no archsw.arch_bzero */ buf = malloc(PAGE_SIZE); if (buf == NULL) { - printf("\nelf_loadimage: malloc() failed\n"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: malloc() failed\n"); goto out; } bzero(buf, PAGE_SIZE); @@ -353,12 +364,12 @@ if (shdr == NULL) goto nosyms; if (lseek(ef->fd, (off_t)ehdr->e_shoff, SEEK_SET) == -1) { - printf("\nelf_loadimage: cannot lseek() to section headers"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: cannot lseek() to section headers"); goto nosyms; } result = read(ef->fd, shdr, chunk); if (result < 0 || (size_t)result != chunk) { - printf("\nelf_loadimage: read section headers failed"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: read section headers failed"); goto nosyms; } symtabindex = -1; @@ -410,7 +421,7 @@ size = shdr[i].sh_size; archsw.arch_copyin(&size, lastaddr, sizeof(size)); - lastaddr += sizeof(long); + lastaddr += sizeof(size); #ifdef ELF_VERBOSE printf("\n%s: 0x%lx@0x%lx -> 0x%lx-0x%lx", secname, @@ -419,25 +430,25 @@ #else if (i == symstrindex) printf("+"); - printf("0x%lx+0x%lx", (long)sizeof(size), size); + printf("0x%lx+0x%lx", (long)sizeof(size), (long)size); #endif if (lseek(ef->fd, (off_t)shdr[i].sh_offset, SEEK_SET) == -1) { - printf("\nelf_loadimage: could not seek for symbols - skipped!"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: could not seek for symbols - skipped!"); lastaddr = ssym; ssym = 0; goto nosyms; } result = archsw.arch_readin(ef->fd, lastaddr, shdr[i].sh_size); if (result < 0 || (size_t)result != shdr[i].sh_size) { - printf("\nelf_loadimage: could not read symbols - skipped!"); + printf("\nelf" __XSTRING(__ELF_WORD_SIZE) "_loadimage: could not read symbols - skipped!"); lastaddr = ssym; ssym = 0; goto nosyms; } /* Reset offsets relative to ssym */ lastaddr += shdr[i].sh_size; - lastaddr = roundup(lastaddr, sizeof(long)); + lastaddr = roundup(lastaddr, sizeof(size)); if (i == symtabindex) symtabindex = -1; else if (i == symstrindex) @@ -461,9 +472,8 @@ for (i = 0; i < ehdr->e_phnum; i++) { if (phdr[i].p_type == PT_DYNAMIC) { php = phdr + i; - dp = (Elf_Dyn *)(php->p_vaddr); - file_addmetadata(fp, MODINFOMD_DYNAMIC, sizeof(dp), &dp); - dp = NULL; + adp = php->p_vaddr; + file_addmetadata(fp, MODINFOMD_DYNAMIC, sizeof(adp), &adp); break; } } @@ -485,19 +495,19 @@ break; switch (dp[i].d_tag) { case DT_HASH: - ef->hashtab = (Elf_Hashelt*)(dp[i].d_un.d_ptr + off); + ef->hashtab = (Elf_Hashelt*)(uintptr_t)(dp[i].d_un.d_ptr + off); break; case DT_STRTAB: - ef->strtab = (char *)(dp[i].d_un.d_ptr + off); + ef->strtab = (char *)(uintptr_t)(dp[i].d_un.d_ptr + off); break; case DT_STRSZ: ef->strsz = dp[i].d_un.d_val; break; case DT_SYMTAB: - ef->symtab = (Elf_Sym*)(dp[i].d_un.d_ptr + off); + ef->symtab = (Elf_Sym*)(uintptr_t)(dp[i].d_un.d_ptr + off); break; case DT_RELA: - ef->rela = (Elf_Rela *)(dp[i].d_un.d_ptr + off); + ef->rela = (Elf_Rela *)(uintptr_t)(dp[i].d_un.d_ptr + off); break; case DT_RELASZ: ef->relasz = dp[i].d_un.d_val; @@ -513,7 +523,7 @@ COPYOUT(ef->hashtab + 1, &ef->nchains, sizeof(ef->nchains)); ef->buckets = ef->hashtab + 2; ef->chains = ef->buckets + ef->nbuckets; - if (elf_parse_modmetadata(fp, ef) == 0) + if (__elfN(parse_modmetadata)(fp, ef) == 0) goto out; if (ef->kernel) /* kernel must not depend on anything */ @@ -559,33 +569,34 @@ } int -elf_parse_modmetadata(struct preloaded_file *fp, elf_file_t ef) +__elfN(parse_modmetadata)(struct preloaded_file *fp, elf_file_t ef) { struct mod_metadata md; struct mod_depend *mdepend; struct mod_version mver; Elf_Sym sym; - char *s, *v, **p, **p_stop; + char *s, **p, **p_stop; int modcnt, minfolen; + Elf_Addr v; - if (elf_lookup_symbol(fp, ef, "__start_set_modmetadata_set", &sym) != 0) + if (__elfN(lookup_symbol)(fp, ef, "__start_set_modmetadata_set", &sym) != 0) return ENOENT; - p = (char **)(sym.st_value + ef->off); - if (elf_lookup_symbol(fp, ef, "__stop_set_modmetadata_set", &sym) != 0) + p = (char **)(uintptr_t)(sym.st_value + ef->off); + if (__elfN(lookup_symbol)(fp, ef, "__stop_set_modmetadata_set", &sym) != 0) return ENOENT; - p_stop = (char **)(sym.st_value + ef->off); + p_stop = (char **)(uintptr_t)(sym.st_value + ef->off); modcnt = 0; while (p < p_stop) { COPYOUT(p, &v, sizeof(v)); #ifdef __sparc64__ - elf_reloc_ptr(fp, ef, p, &v, sizeof(v)); + __elfN(reloc_ptr)(fp, ef, p, &v, sizeof(v)); #else v += ef->off; #endif COPYOUT(v, &md, sizeof(md)); #ifdef __sparc64__ - elf_reloc_ptr(fp, ef, v, &md, sizeof(md)); + __elfN(reloc_ptr)(fp, ef, v, &md, sizeof(md)); #else md.md_cval += ef->off; md.md_data += ef->off; @@ -639,9 +650,9 @@ return h; } -static const char elf_bad_symtable[] = "elf_lookup_symbol: corrupt symbol table\n"; +static const char __elfN(bad_symtable)[] = "elf" __XSTRING(__ELF_WORD_SIZE) "_lookup_symbol: corrupt symbol table\n"; int -elf_lookup_symbol(struct preloaded_file *fp, elf_file_t ef, const char* name, +__elfN(lookup_symbol)(struct preloaded_file *fp, elf_file_t ef, const char* name, Elf_Sym *symp) { Elf_Hashelt symnum; @@ -654,13 +665,13 @@ while (symnum != STN_UNDEF) { if (symnum >= ef->nchains) { - printf(elf_bad_symtable); + printf(__elfN(bad_symtable)); return ENOENT; } COPYOUT(ef->symtab + symnum, &sym, sizeof(sym)); if (sym.st_name == 0) { - printf(elf_bad_symtable); + printf(__elfN(bad_symtable)); return ENOENT; } @@ -688,7 +699,7 @@ * the image in-place, because this is done by kern_linker later on. */ static void -elf_reloc_ptr(struct preloaded_file *mp, elf_file_t ef, +__elfN(reloc_ptr)(struct preloaded_file *mp, elf_file_t ef, void *p, void *val, size_t len) { Elf_Addr off = (Elf_Addr)p - ef->off, word; ==== //depot/projects/smpng/sys/boot/common/loader.8#22 (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.54 2003/03/04 23:46:29 seanc Exp $ +.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.55 2003/05/04 08:23:24 murray Exp $ .\" .\" Note: The date here should be updated whenever a non-trivial .\" change is made to the manual page. @@ -163,7 +163,7 @@ .Op Fl n .Op Aq message .Xc -Displays a text on the screen. +Displays text on the screen. A new line will be printed unless .Fl n is specified. @@ -181,10 +181,10 @@ .Pp >>> TRUNCATED FOR MAIL (1000 lines) <<<