Date: Sun, 1 Oct 2006 18:15:31 GMT From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 107055 for review Message-ID: <200610011815.k91IFVRp059733@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=107055 Change 107055 by rwatson@rwatson_peppercorn on 2006/10/01 18:14:43 Integrate trustedbsd_priv6 from FreeBSD CVS. Affected files ... .. //depot/projects/trustedbsd/priv6/src/sys/amd64/amd64/local_apic.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/amd64/conf/NOTES#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/common/loader.8#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/boot2/boot1.S#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosacpi.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosmem.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biospnp.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biossmap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/gatea20.c#2 delete .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/i386_copy.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/libi386.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/i386/loader/main.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/biosdisk.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/biosmem.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/gatea20.c#2 delete .. //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/loader/main.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/bsm/audit.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/bsm/audit_internal.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/bsm/audit_kevents.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/bsm/audit_record.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/cam/cam_xpt.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/linux/linux_file.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/compat/linux/linux_misc.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/NOTES#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/files#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/files.amd64#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/files.i386#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/kern.post.mk#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/kmod.mk#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/newvers.sh#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/conf/options#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/dev/acpica/acfreebsd.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/dev/nve/adapter.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/dev/nve/amd64/nvenetlib.o.bz2.uu#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/dev/nve/i386/nvenetlib.o.bz2.uu#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/dev/nve/nvenet_version.h#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/contrib/pf/net/pf.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/contrib/pf/net/pf_ioctl.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/crypto/sha2/sha2.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/crypto/via/padlock.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/crypto/via/padlock.h#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/crypto/via/padlock_cipher.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/crypto/via/padlock_hash.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/acpica/acpi.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-all.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-disk.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-raid.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/ata-raid.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ata/atapi-cd.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/atkbdc/atkbdc.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/bktr/bktr_i2c.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/bktr/bktr_i2c.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/hifn/hifn7751var.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ichsmb/ichsmb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/iicbus/iicsmb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_acpi.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_isa.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_kcs.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_pci.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_smbios.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_smbus.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_smic.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmi_ssif.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/dev/ipmi/ipmivars.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/kbdmux/kbdmux.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/lnc/if_lnc_pci.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mk48txx/mk48txx.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_cam.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_cam.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_debug.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_raid.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_raid.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/mpt/mpt_reg.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/nve/if_nve.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/nve/if_nvereg.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/pci/pci.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/puc/pucdata.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/re/if_re.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/safe/safe.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/safe/safevar.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smb.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smbconf.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smbconf.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smbus.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smbus.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/smbus/smbus_if.m#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/uart/uart_kbd_sun.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ubsec/ubsec.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/ubsec/ubsecvar.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/usb/ehci.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/usb/if_cdce.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/usb/ugen.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/dev/vge/if_vge.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/fs/msdosfs/msdosfs_vfsops.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli_ctl.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli_integrity.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli_key.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/eli/g_eli_privacy.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/geom/gate/g_gate.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/gate/g_gate.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/geom.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/geom_event.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/geom_io.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/label/g_label.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/label/g_label_ufs.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/conf/NOTES#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/i386/local_apic.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/i386/machdep.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/i386/nexus.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/i386/trap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/ia64/ia32/ia32_trap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/ia64/ia64/trap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/init_main.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/init_sysent.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_acct.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_descrip.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_event.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_exec.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_exit.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_fork.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_ktrace.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_proc.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_prot.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_sig.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/kern_thread.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/subr_bus.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/subr_rman.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/subr_taskqueue.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/subr_trap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/sys_process.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/syscalls.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/syscalls.master#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/tty.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/tty_pty.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/tty_tty.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/uipc_socket2.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/uipc_syscalls.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_aio.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_cache.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_default.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_lookup.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_mount.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_subr.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_syscalls.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/kern/vfs_vnops.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/libkern/strstr.c#1 branch .. //depot/projects/trustedbsd/priv6/src/sys/modules/Makefile#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/geom/geom_bde/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/geom/geom_eli/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/if_ef/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/if_ppp/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/ipfw/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/ipmi/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/netgraph/mppc/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/padlock/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/pf/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/modules/sound/sound/Makefile#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net/if_bridge.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net/if_loop.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net80211/ieee80211_input.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net80211/ieee80211_ioctl.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net80211/ieee80211_ioctl.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/net80211/ieee80211_output.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netgraph/ng_eiface.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netgraph/ng_fec.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/in_pcb.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/in_var.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/ip_carp.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/ip_fw2.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/ip_input.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/ip_output.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_input.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_subr.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_timer.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_timer.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_usrreq.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/tcp_var.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet/udp_usrreq.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet6/in6.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet6/in6_pcb.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet6/ip6_forward.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet6/ipsec.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netinet6/nd6.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netipsec/ipsec_osdep.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netipsec/key.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netipsec/xform_ah.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netipsec/xform_esp.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/netipsec/xform_ipcomp.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsclient/nfs_node.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsserver/nfs.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsserver/nfs_serv.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsserver/nfs_srvsock.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsserver/nfs_srvsubs.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/nfsserver/nfs_syscalls.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/criov.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/crypto.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/cryptodev.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/cryptodev.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/cryptosoft.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/cryptosoft.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/xform.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/opencrypto/xform.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/alpm.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/amdpm.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/amdsmb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/intpm.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/nfsmb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/pci/viapm.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/powerpc/powerpc/trap.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit_bsm.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit_bsm_token.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit_private.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit_syscalls.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/audit/audit_worker.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/mac/mac_inet.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/mac/mac_vfs.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/mac_biba/mac_biba.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/mac_lomac/mac_lomac.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/security/mac_mls/mac_mls.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sparc64/sparc64/mp_machdep.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sparc64/sparc64/tsb.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/bus.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/copyright.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/ipmi.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/ktrace.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/libkern.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/mac.h#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/mac_policy.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/mount.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/msgbuf.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/namei.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/param.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/proc.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/sx.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/syscall.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/syscall.mk#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/sys/sysproto.h#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/ufs/ffs/ffs_vfsops.c#3 integrate .. //depot/projects/trustedbsd/priv6/src/sys/ufs/ufs/ufs_lookup.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/vm/vm_contig.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/vm/vm_object.c#2 integrate .. //depot/projects/trustedbsd/priv6/src/sys/vm/vm_page.c#2 integrate Differences ... ==== //depot/projects/trustedbsd/priv6/src/sys/amd64/amd64/local_apic.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.17.2.8 2006/09/20 00:10:29 sobomax Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.17.2.9 2006/09/26 19:12:11 sobomax Exp $"); #include "opt_hwpmc_hooks.h" @@ -611,18 +611,6 @@ { struct lapic *la; -#ifdef SMP - /* - * Don't do any accounting for the disabled HTT cores, since it - * will provide misleading numbers for the userland. - * - * No locking is necessary here, since even if we loose the race - * when hlt_cpus_mask changes it is not a big deal, really. - */ - if ((hlt_cpus_mask & (1 << PCPU_GET(cpuid))) != 0) - return; -#endif - la = &lapics[PCPU_GET(apic_id)]; (*la->la_timer_count)++; critical_enter(); ==== //depot/projects/trustedbsd/priv6/src/sys/amd64/amd64/pmap.c#2 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.516.2.7 2006/07/24 23:28:08 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.516.2.8 2006/09/27 18:10:15 alc Exp $"); /* * Manages physical address maps. @@ -2364,7 +2364,7 @@ PHYS_TO_DMAP(VM_PAGE_TO_PHYS(dstmpde)); pde = &pde[pmap_pde_index(addr)]; if (*pde == 0) { - *pde = srcptepaddr; + *pde = srcptepaddr & ~PG_W; dst_pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE; } else @@ -2401,12 +2401,13 @@ dst_pte = &dst_pte[pmap_pte_index(addr)]; if (*dst_pte == 0) { /* - * Clear the modified and + * Clear the wired, modified, and * accessed (referenced) bits * during the copy. */ m = PHYS_TO_VM_PAGE(ptetemp & PG_FRAME); - *dst_pte = ptetemp & ~(PG_M | PG_A); + *dst_pte = ptetemp & ~(PG_W | PG_M | + PG_A); dst_pmap->pm_stats.resident_count++; pmap_insert_entry(dst_pmap, addr, m); } else ==== //depot/projects/trustedbsd/priv6/src/sys/amd64/conf/NOTES#2 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.36.2.10 2006/04/30 17:39:43 scottl Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.36.2.11 2006/09/29 21:21:52 jhb Exp $ # # @@ -311,6 +311,7 @@ # # cy: Cyclades serial driver # digi: Digiboard driver +# ipmi: Intelligent Platform Management Interface # smbios: DMI/SMBIOS entry point # Notes on the Specialix SI/XIO driver: @@ -330,6 +331,7 @@ device digi_Xe device digi_Xem device digi_Xr +device ipmi # Parallel (8255 PPI) basic I/O (mode 0) port (e.g. Advantech PCL-724) device pbio hint.pbio.0.at="isa" ==== //depot/projects/trustedbsd/priv6/src/sys/boot/common/loader.8#2 (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.82.2.3 2006/08/27 07:58:19 marck Exp $ +.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.82.2.4 2006/10/01 12:07:06 ru Exp $ .\" .Dd August 18, 2006 .Dt LOADER 8 @@ -428,7 +428,7 @@ process. The first matching binary is used. The default list is -.Dq Li /sbin/init:/sbin/oinit:/sbin/init.bak:/rescue/init:/stand/sysinstall . +.Dq Li /sbin/init:/sbin/oinit:/sbin/init.bak:\:/rescue/init:/stand/sysinstall . .It Va interpret Has the value .Dq Li OK ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/boot2/boot1.S#2 (text+ko) ==== @@ -12,7 +12,7 @@ * warranties of merchantability and fitness for a particular * purpose. * - * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.30 2004/08/28 08:32:23 yar Exp $ + * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.30.2.1 2006/10/01 12:07:07 ru Exp $ */ /* Memory Locations */ @@ -212,8 +212,7 @@ jnz seta20.2 # Yes movb $0xdf,%al # Enable outb %al,$0x60 # A20 -seta20.3: - sti # Enable interrupts +seta20.3: sti # Enable interrupts jmp start+MEM_JMP-MEM_ORG # Start BTX ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/libi386/Makefile,v 1.37.2.1 2006/05/22 23:31:30 jkim Exp $ +# $FreeBSD: src/sys/boot/i386/libi386/Makefile,v 1.37.2.2 2006/10/01 12:07:07 ru Exp $ # LIB= i386 INTERNALLIB= @@ -6,7 +6,7 @@ SRCS= biosacpi.c bioscd.c biosdisk.c biosmem.c biospnp.c \ biospci.c biossmap.c bootinfo.c bootinfo32.c bootinfo64.c \ comconsole.c devicename.c elf32_freebsd.c \ - elf64_freebsd.c gatea20.c \ + elf64_freebsd.c \ i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ smbios.c time.c vidconsole.c amd64_tramp.S @@ -29,6 +29,9 @@ # Include simple terminal emulation (cons25-compatible) CFLAGS+= -DTERM_EMU +# XXX: make alloca() useable +CFLAGS+= -Dalloca=__builtin_alloca + CFLAGS+= -I${.CURDIR}/../../common -I${.CURDIR}/../btx/lib \ -I${.CURDIR}/../../../contrib/dev/acpica \ -I${.CURDIR}/../../.. -I. ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosacpi.c#2 (text+ko) ==== @@ -25,11 +25,13 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosacpi.c,v 1.10 2005/04/16 17:38:24 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosacpi.c,v 1.10.2.1 2006/10/01 12:07:07 ru Exp $"); #include <stand.h> #include <machine/stdarg.h> #include <bootstrap.h> +#include <btxv86.h> +#include "libi386.h" #include "acfreebsd.h" #include "acconfig.h" @@ -93,7 +95,7 @@ uint16_t *addr; /* EBDA is the 1 KB addressed by the 16 bit pointer at 0x40E. */ - addr = (uint16_t *)0x40E; + addr = (uint16_t *)PTOV(0x40E); if ((rsdp = biosacpi_search_rsdp((char *)(*addr << 4), 0x400)) != NULL) return (rsdp); @@ -113,7 +115,7 @@ /* search on 16-byte boundaries */ for (ofs = 0; ofs < length; ofs += 16) { - rsdp = (RSDP_DESCRIPTOR *)(base + ofs); + rsdp = (RSDP_DESCRIPTOR *)PTOV(base + ofs); /* compare signature, validate checksum */ if (!strncmp(rsdp->Signature, RSDP_SIG, strlen(RSDP_SIG))) { ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosdisk.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.45.2.1 2006/06/26 01:44:41 iedowse Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.45.2.2 2006/10/01 12:07:07 ru Exp $"); /* * BIOS disk device handling. @@ -861,17 +861,18 @@ p = dest; /* Decide whether we have to bounce */ - if ((od->od_unit < 0x80) && - ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { + if (VTOP(dest) >> 20 != 0 || ((od->od_unit < 0x80) && + ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16)))) { /* - * There is a 64k physical boundary somewhere in the destination buffer, so we have + * There is a 64k physical boundary somewhere in the destination buffer, or the + * destination buffer is above first 1MB of physical memory so we have * to arrange a suitable bounce buffer. Allocate a buffer twice as large as we * need to. Use the bottom half unless there is a break there, in which case we * use the top half. */ x = min(FLOPPY_BOUNCEBUF, (unsigned)blks); - bbuf = malloc(x * 2 * BIOSDISK_SECSIZE); + bbuf = alloca(x * 2 * BIOSDISK_SECSIZE); if (((u_int32_t)VTOP(bbuf) & 0xffff0000) == ((u_int32_t)VTOP(bbuf + x * BIOSDISK_SECSIZE) & 0xffff0000)) { breg = bbuf; } else { @@ -960,8 +961,6 @@ DEBUG("ax = 0x%04x cx = 0x%04x dx = 0x%04x status 0x%x", 0x200 | x, ((cyl & 0xff) << 8) | ((cyl & 0x300) >> 2) | sec, (hd << 8) | od->od_unit, (v86.eax >> 8) & 0xff); if (result) { - if (bbuf != NULL) - free(bbuf); return(-1); } if (bbuf != NULL) @@ -972,8 +971,6 @@ } /* hexdump(dest, (blks * BIOSDISK_SECSIZE)); */ - if (bbuf != NULL) - free(bbuf); return(0); } @@ -993,18 +990,18 @@ p = dest; /* Decide whether we have to bounce */ - if ((od->od_unit < 0x80) && - ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { + if (VTOP(dest) >> 20 != 0 || ((od->od_unit < 0x80) && + ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16)))) { /* - * There is a 64k physical boundary somewhere in the destination buffer, so we have + * There is a 64k physical boundary somewhere in the destination buffer, or the + * destination buffer is above first 1MB of physical memory so we have * to arrange a suitable bounce buffer. Allocate a buffer twice as large as we * need to. Use the bottom half unless there is a break there, in which case we * use the top half. */ - x = min(FLOPPY_BOUNCEBUF, (unsigned)blks); - bbuf = malloc(x * 2 * BIOSDISK_SECSIZE); + bbuf = alloca(x * 2 * BIOSDISK_SECSIZE); if (((u_int32_t)VTOP(bbuf) & 0xffff0000) == ((u_int32_t)VTOP(bbuf + x * BIOSDISK_SECSIZE) & 0xffff0000)) { breg = bbuf; } else { @@ -1101,8 +1098,6 @@ DEBUG("ax = 0x%04x cx = 0x%04x dx = 0x%04x status 0x%x", 0x200 | x, ((cyl & 0xff) << 8) | ((cyl & 0x300) >> 2) | sec, (hd << 8) | od->od_unit, (v86.eax >> 8) & 0xff); if (result) { - if (bbuf != NULL) - free(bbuf); return(-1); } p += (x * BIOSDISK_SECSIZE); @@ -1111,8 +1106,6 @@ } /* hexdump(dest, (blks * BIOSDISK_SECSIZE)); */ - if (bbuf != NULL) - free(bbuf); return(0); } static int ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biosmem.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosmem.c,v 1.7 2003/08/25 23:28:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosmem.c,v 1.7.10.1 2006/10/01 12:07:07 ru Exp $"); /* * Obtain memory configuration information from the BIOS @@ -34,7 +34,7 @@ #include "libi386.h" #include "btxv86.h" -vm_offset_t memtop; +vm_offset_t memtop, memtop_copyin; u_int32_t bios_basemem, bios_extmem; #define SMAPSIG 0x534D4150 @@ -101,7 +101,7 @@ } /* Set memtop to actual top of memory */ - memtop = 0x100000 + bios_extmem; + memtop = memtop_copyin = 0x100000 + bios_extmem; } ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biospnp.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospnp.c,v 1.9 2003/08/25 23:28:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospnp.c,v 1.9.10.1 2006/10/01 12:07:07 ru Exp $"); /* * PnP BIOS enumerator. @@ -165,7 +165,7 @@ if (biospnp_init()) return; - devNodeBuffer = (struct pnp_devNode *)malloc(pnp_NodeSize); + devNodeBuffer = (struct pnp_devNode *)alloca(pnp_NodeSize); Node = 0; count = 1000; while((Node != 0xff) && (count-- > 0)) { ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/biossmap.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.3 2004/11/08 23:59:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.3.2.1 2006/10/01 12:07:07 ru Exp $"); /* * Obtain memory configuration information from the BIOS @@ -86,9 +86,10 @@ v86.eax = 0xe820; v86.ecx = sizeof(struct smap); v86.edx = SMAPSIG; - v86.es = VTOPSEG(&smapbase[smaplen]); - v86.edi = VTOPOFF(&smapbase[smaplen]); + v86.es = VTOPSEG(&smap); + v86.edi = VTOPOFF(&smap); v86int(); + bcopy(&smap, &smapbase[smaplen], sizeof(struct smap)); smaplen++; if ((v86.efl & 1) || (v86.eax != SMAPSIG)) break; ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/i386_copy.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/i386_copy.c,v 1.10 2003/08/25 23:28:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/i386_copy.c,v 1.10.10.1 2006/10/01 12:07:07 ru Exp $"); /* * MD primitives supporting placement of module data @@ -37,8 +37,6 @@ #include "libi386.h" #include "btxv86.h" -#define READIN_BUF (16 * 1024) - ssize_t i386_copyin(const void *src, vm_offset_t dest, const size_t len) { @@ -67,25 +65,11 @@ ssize_t i386_readin(const int fd, vm_offset_t dest, const size_t len) { - void *buf; - size_t resid, chunk, get; - ssize_t got; - if (dest + len >= memtop) - return(0); + if (dest + len >= memtop_copyin) { + errno = EFBIG; + return(-1); + } - chunk = min(READIN_BUF, len); - buf = malloc(chunk); - if (buf == NULL) - return(0); - - for (resid = len; resid > 0; resid -= got, dest += got) { - get = min(chunk, resid); - got = read(fd, buf, get); - if (got <= 0) - break; - bcopy(buf, PTOV(dest), (size_t)got); - } - free(buf); - return(len - resid); + return (read(fd, PTOV(dest), len)); } ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/libi386/libi386.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/boot/i386/libi386/libi386.h,v 1.20.2.2 2006/05/22 23:31:30 jkim Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.20.2.3 2006/10/01 12:07:07 ru Exp $ */ @@ -91,7 +91,10 @@ void bios_getmem(void); extern u_int32_t bios_basemem; /* base memory in bytes */ extern u_int32_t bios_extmem; /* extended memory in bytes */ -extern vm_offset_t memtop; +extern vm_offset_t memtop; /* last address of physical memory + 1 */ +extern vm_offset_t memtop_copyin; /* memtop less heap size for the cases */ + /* when heap is at the top of extended memory */ + /* for other cases - just the same as memtop */ int biospci_find_devclass(uint32_t class, int index); int biospci_write_config(uint32_t locator, int offset, int width, int val); @@ -101,8 +104,6 @@ void smbios_detect(void); -void gateA20(void); - int i386_autoload(void); int bi_getboothowto(char *kargs); ==== //depot/projects/trustedbsd/priv6/src/sys/boot/i386/loader/main.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.31.2.2 2006/05/22 23:31:30 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.31.2.3 2006/10/01 12:07:07 ru Exp $"); /* * MD bootstrap main() and assorted miscellaneous @@ -72,6 +72,9 @@ /* XXX debugging */ extern char end[]; +static void *heap_top; +static void *heap_bottom; + int main(void) { @@ -88,7 +91,15 @@ */ bios_getmem(); - setheap((void *)end, (void *)bios_basemem); +#ifdef LOADER_BZIP2_SUPPORT + heap_top = PTOV(memtop_copyin); + memtop_copyin -= 0x300000; + heap_bottom = PTOV(memtop_copyin); +#else + heap_top = (void *)bios_basemem; + heap_bottom = (void *)end; +#endif + setheap(heap_bottom, heap_top); /* * XXX Chicken-and-egg problem; we want to have console output early, but some @@ -215,7 +226,7 @@ /* * If we are booted by an old bootstrap, we have to guess at the BIOS - * unit number. We will loose if there is more than one disk type + * unit number. We will lose if there is more than one disk type * and we are not booting from the lowest-numbered disk type * (ie. SCSI when IDE also exists). */ @@ -269,7 +280,8 @@ command_heap(int argc, char *argv[]) { mallocstats(); - printf("heap base at %p, top at %p\n", end, sbrk(0)); + printf("heap base at %p, top at %p, upper limit at %p\n", heap_bottom, + sbrk(0), heap_top); return(CMD_OK); } ==== //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/pc98/libpc98/Makefile,v 1.22 2005/05/08 14:17:28 nyan Exp $ +# $FreeBSD: src/sys/boot/pc98/libpc98/Makefile,v 1.22.2.1 2006/10/01 12:07:07 ru Exp $ # LIB= pc98 INTERNALLIB= @@ -7,7 +7,7 @@ SRCS= bioscd.c biosdisk.c biosmem.c biospnp.c biospci.c biossmap.c \ bootinfo.c bootinfo32.c comconsole.c devicename.c elf32_freebsd.c \ - gatea20.c i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ + i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ time.c vidconsole.c BOOT_COMCONSOLE_PORT?= 0x238 @@ -24,6 +24,9 @@ # Include simple terminal emulation (cons25-compatible) CFLAGS+= -DTERM_EMU +# XXX: make alloca() useable +CFLAGS+= -Dalloca=__builtin_alloca + CFLAGS+= -I${.CURDIR}/../../common -I${.CURDIR}/../btx/lib \ -I${.CURDIR}/../../i386/libi386 \ -I${.CURDIR}/../../.. -I. ==== //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/biosdisk.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.32 2005/05/08 14:17:28 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.32.2.1 2006/10/01 12:07:07 ru Exp $"); /* * BIOS disk device handling. @@ -754,16 +754,18 @@ p = dest; /* Decide whether we have to bounce */ - if (((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { + if (VTOP(dest) >> 20 != 0 || + ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { /* - * There is a 64k physical boundary somewhere in the destination buffer, so we have + * There is a 64k physical boundary somewhere in the destination buffer, or the + * destination buffer is above first 1MB of physical memory so we have * to arrange a suitable bounce buffer. Allocate a buffer twice as large as we * need to. Use the bottom half unless there is a break there, in which case we * use the top half. */ x = min(od->od_sec, (unsigned)blks); - bbuf = malloc(x * 2 * BIOSDISK_SECSIZE); + bbuf = alloca(x * 2 * BIOSDISK_SECSIZE); if (((u_int32_t)VTOP(bbuf) & 0xffff0000) == ((u_int32_t)VTOP(bbuf + x * BIOSDISK_SECSIZE) & 0xffff0000)) { breg = bbuf; } else { @@ -837,8 +839,6 @@ od->od_flags & BD_FLOPPY ? 0x0200 | cyl : cyl, (hd << 8) | sec, (v86.eax >> 8) & 0xff); if (result) { - if (bbuf != NULL) - free(bbuf); return(-1); } if (bbuf != NULL) @@ -849,8 +849,6 @@ } /* hexdump(dest, (blks * BIOSDISK_SECSIZE)); */ - if (bbuf != NULL) - free(bbuf); return(0); } @@ -870,17 +868,18 @@ p = dest; /* Decide whether we have to bounce */ - if (((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { + if (VTOP(dest) >> 20 != 0 || + ((VTOP(dest) >> 16) != (VTOP(dest + blks * BIOSDISK_SECSIZE) >> 16))) { /* - * There is a 64k physical boundary somewhere in the destination buffer, so we have + * There is a 64k physical boundary somewhere in the destination buffer, or the + * destination buffer is above first 1MB of physical memory so we have * to arrange a suitable bounce buffer. Allocate a buffer twice as large as we * need to. Use the bottom half unless there is a break there, in which case we * use the top half. */ - x = min(od->od_sec, (unsigned)blks); - bbuf = malloc(x * 2 * BIOSDISK_SECSIZE); + bbuf = alloca(x * 2 * BIOSDISK_SECSIZE); if (((u_int32_t)VTOP(bbuf) & 0xffff0000) == ((u_int32_t)VTOP(bbuf + x * BIOSDISK_SECSIZE) & 0xffff0000)) { breg = bbuf; } else { @@ -959,15 +958,11 @@ (v86.eax >> 8) & 0xff); if (result) { - if (bbuf != NULL) - free(bbuf); return(-1); } } /* hexdump(dest, (blks * BIOSDISK_SECSIZE)); */ - if (bbuf != NULL) - free(bbuf); return(0); } static int ==== //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/libpc98/biosmem.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosmem.c,v 1.7 2005/05/08 14:17:28 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosmem.c,v 1.7.2.1 2006/10/01 12:07:07 ru Exp $"); /* * Obtain memory configuration information from the BIOS @@ -34,7 +34,7 @@ #include "libi386.h" #include "btxv86.h" -vm_offset_t memtop; +vm_offset_t memtop, memtop_copyin; u_int32_t bios_basemem, bios_extmem; void @@ -46,7 +46,7 @@ *(u_int16_t *)PTOV(0xA1594) * 1024 * 1024; /* Set memtop to actual top of memory */ - memtop = 0x100000 + bios_extmem; + memtop = memtop_copyin = 0x100000 + bios_extmem; } ==== //depot/projects/trustedbsd/priv6/src/sys/boot/pc98/loader/main.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/boot/pc98/loader/main.c,v 1.20.2.1 2006/02/15 13:55:13 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/loader/main.c,v 1.20.2.2 2006/10/01 12:07:08 ru Exp $"); /* * MD bootstrap main() and assorted miscellaneous @@ -72,6 +72,9 @@ /* XXX debugging */ extern char end[]; +static void *heap_top; +static void *heap_bottom; + int main(void) { @@ -88,7 +91,15 @@ */ bios_getmem(); - setheap((void *)end, (void *)bios_basemem); +#ifdef LOADER_BZIP2_SUPPORT + heap_top = PTOV(memtop_copyin); + memtop_copyin -= 0x300000; + heap_bottom = PTOV(memtop_copyin); +#else + heap_top = (void *)bios_basemem; + heap_bottom = (void *)end; +#endif + setheap(heap_bottom, heap_top); /* * XXX Chicken-and-egg problem; we want to have console output early, but some @@ -207,7 +218,7 @@ /* * If we are booted by an old bootstrap, we have to guess at the BIOS - * unit number. We will loose if there is more than one disk type + * unit number. We will lose if there is more than one disk type >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200610011815.k91IFVRp059733>