From owner-svn-src-user@FreeBSD.ORG Mon Aug 23 22:58:14 2010 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 34E921065698; Mon, 23 Aug 2010 22:58:14 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 1FBCC8FC1E; Mon, 23 Aug 2010 22:58:14 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o7NMwEi7056322; Mon, 23 Aug 2010 22:58:14 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o7NMwDj5056303; Mon, 23 Aug 2010 22:58:13 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201008232258.o7NMwDj5056303@svn.freebsd.org> From: Nathan Whitehorn Date: Mon, 23 Aug 2010 22:58:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r211727 - in user/nwhitehorn/ps3: amd64/acpica amd64/amd64 amd64/conf amd64/ia32 amd64/include arm/include boot boot/arm/ixp425/boot2 boot/arm/uboot boot/common boot/efi/libefi boot/fic... X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2010 22:58:14 -0000 Author: nwhitehorn Date: Mon Aug 23 22:58:13 2010 New Revision: 211727 URL: http://svn.freebsd.org/changeset/base/211727 Log: MFC @ 211726 Added: user/nwhitehorn/ps3/boot/Makefile.amd64 - copied unchanged from r211726, head/sys/boot/Makefile.amd64 user/nwhitehorn/ps3/boot/Makefile.arm - copied unchanged from r211726, head/sys/boot/Makefile.arm user/nwhitehorn/ps3/boot/Makefile.i386 - copied unchanged from r211726, head/sys/boot/Makefile.i386 user/nwhitehorn/ps3/boot/Makefile.ia64 - copied unchanged from r211726, head/sys/boot/Makefile.ia64 user/nwhitehorn/ps3/boot/Makefile.pc98 - copied unchanged from r211726, head/sys/boot/Makefile.pc98 user/nwhitehorn/ps3/boot/Makefile.powerpc - copied unchanged from r211726, head/sys/boot/Makefile.powerpc user/nwhitehorn/ps3/boot/Makefile.sparc64 - copied unchanged from r211726, head/sys/boot/Makefile.sparc64 user/nwhitehorn/ps3/cddl/dev/dtrace/amd64/regset.h - copied unchanged from r211726, head/sys/cddl/dev/dtrace/amd64/regset.h user/nwhitehorn/ps3/cddl/dev/dtrace/i386/regset.h - copied unchanged from r211726, head/sys/cddl/dev/dtrace/i386/regset.h user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utosi.c - copied unchanged from r211726, head/sys/contrib/dev/acpica/utilities/utosi.c user/nwhitehorn/ps3/dev/tpm/ - copied from r211726, head/sys/dev/tpm/ user/nwhitehorn/ps3/mips/atheros/ar71xx_chip.c - copied unchanged from r211726, head/sys/mips/atheros/ar71xx_chip.c user/nwhitehorn/ps3/mips/atheros/ar71xx_chip.h - copied unchanged from r211726, head/sys/mips/atheros/ar71xx_chip.h user/nwhitehorn/ps3/mips/atheros/ar71xx_cpudef.h - copied unchanged from r211726, head/sys/mips/atheros/ar71xx_cpudef.h user/nwhitehorn/ps3/mips/atheros/ar71xx_setup.c - copied unchanged from r211726, head/sys/mips/atheros/ar71xx_setup.c user/nwhitehorn/ps3/mips/atheros/ar71xx_setup.h - copied unchanged from r211726, head/sys/mips/atheros/ar71xx_setup.h user/nwhitehorn/ps3/mips/atheros/ar724x_chip.c - copied unchanged from r211726, head/sys/mips/atheros/ar724x_chip.c user/nwhitehorn/ps3/mips/atheros/ar724x_chip.h - copied unchanged from r211726, head/sys/mips/atheros/ar724x_chip.h user/nwhitehorn/ps3/mips/atheros/ar724xreg.h - copied unchanged from r211726, head/sys/mips/atheros/ar724xreg.h user/nwhitehorn/ps3/mips/atheros/ar91xx_chip.c - copied unchanged from r211726, head/sys/mips/atheros/ar91xx_chip.c user/nwhitehorn/ps3/mips/atheros/ar91xx_chip.h - copied unchanged from r211726, head/sys/mips/atheros/ar91xx_chip.h user/nwhitehorn/ps3/mips/atheros/ar91xxreg.h - copied unchanged from r211726, head/sys/mips/atheros/ar91xxreg.h user/nwhitehorn/ps3/modules/if_carp/ - copied from r211726, head/sys/modules/if_carp/ user/nwhitehorn/ps3/modules/send/ - copied from r211726, head/sys/modules/send/ user/nwhitehorn/ps3/modules/tpm/ - copied from r211726, head/sys/modules/tpm/ user/nwhitehorn/ps3/netinet6/send.c - copied unchanged from r211726, head/sys/netinet6/send.c user/nwhitehorn/ps3/netinet6/send.h - copied unchanged from r211726, head/sys/netinet6/send.h Modified: user/nwhitehorn/ps3/amd64/acpica/acpi_switch.S user/nwhitehorn/ps3/amd64/acpica/acpi_wakecode.S user/nwhitehorn/ps3/amd64/acpica/acpi_wakeup.c user/nwhitehorn/ps3/amd64/amd64/cpu_switch.S user/nwhitehorn/ps3/amd64/amd64/genassym.c user/nwhitehorn/ps3/amd64/amd64/initcpu.c user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c user/nwhitehorn/ps3/amd64/amd64/mptable_pci.c user/nwhitehorn/ps3/amd64/amd64/pmap.c user/nwhitehorn/ps3/amd64/amd64/trap.c user/nwhitehorn/ps3/amd64/amd64/tsc.c user/nwhitehorn/ps3/amd64/amd64/vm_machdep.c user/nwhitehorn/ps3/amd64/conf/GENERIC user/nwhitehorn/ps3/amd64/ia32/ia32_signal.c user/nwhitehorn/ps3/amd64/ia32/ia32_syscall.c user/nwhitehorn/ps3/amd64/include/elf.h user/nwhitehorn/ps3/amd64/include/pcb.h user/nwhitehorn/ps3/amd64/include/smp.h user/nwhitehorn/ps3/arm/include/elf.h user/nwhitehorn/ps3/arm/include/pmap.h user/nwhitehorn/ps3/boot/Makefile user/nwhitehorn/ps3/boot/arm/ixp425/boot2/Makefile user/nwhitehorn/ps3/boot/arm/uboot/Makefile user/nwhitehorn/ps3/boot/common/Makefile.inc user/nwhitehorn/ps3/boot/common/loader.8 user/nwhitehorn/ps3/boot/efi/libefi/Makefile user/nwhitehorn/ps3/boot/ficl/Makefile user/nwhitehorn/ps3/boot/i386/Makefile.inc user/nwhitehorn/ps3/boot/i386/boot2/Makefile user/nwhitehorn/ps3/boot/i386/gptboot/Makefile user/nwhitehorn/ps3/boot/i386/gptzfsboot/Makefile user/nwhitehorn/ps3/boot/i386/libfirewire/Makefile user/nwhitehorn/ps3/boot/i386/libi386/Makefile user/nwhitehorn/ps3/boot/i386/loader/Makefile user/nwhitehorn/ps3/boot/i386/zfsboot/Makefile user/nwhitehorn/ps3/boot/ia64/common/Makefile user/nwhitehorn/ps3/boot/ia64/efi/Makefile user/nwhitehorn/ps3/boot/ia64/ski/Makefile user/nwhitehorn/ps3/boot/ofw/libofw/Makefile user/nwhitehorn/ps3/boot/uboot/lib/Makefile user/nwhitehorn/ps3/boot/zfs/Makefile user/nwhitehorn/ps3/boot/zfs/zfsimpl.c user/nwhitehorn/ps3/cam/cam.c user/nwhitehorn/ps3/cam/scsi/scsi_target.c user/nwhitehorn/ps3/cddl/compat/opensolaris/kern/opensolaris_misc.c user/nwhitehorn/ps3/cddl/compat/opensolaris/sys/misc.h user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/sys/dtrace.h user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/sys/fasttrap.h user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/sys/fasttrap_impl.h user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/sys/isa_defs.h user/nwhitehorn/ps3/cddl/dev/dtrace/amd64/dtrace_isa.c user/nwhitehorn/ps3/cddl/dev/dtrace/amd64/instr_size.c user/nwhitehorn/ps3/cddl/dev/dtrace/dtrace_cddl.h user/nwhitehorn/ps3/cddl/dev/dtrace/dtrace_ioctl.c user/nwhitehorn/ps3/cddl/dev/dtrace/dtrace_load.c user/nwhitehorn/ps3/cddl/dev/dtrace/dtrace_unload.c user/nwhitehorn/ps3/cddl/dev/dtrace/i386/dtrace_isa.c user/nwhitehorn/ps3/cddl/dev/dtrace/i386/instr_size.c user/nwhitehorn/ps3/cddl/dev/systrace/systrace.c user/nwhitehorn/ps3/compat/freebsd32/freebsd32.h user/nwhitehorn/ps3/compat/freebsd32/freebsd32_misc.c user/nwhitehorn/ps3/compat/x86bios/x86bios.c user/nwhitehorn/ps3/compat/x86bios/x86bios.h user/nwhitehorn/ps3/conf/NOTES user/nwhitehorn/ps3/conf/files user/nwhitehorn/ps3/conf/files.i386 user/nwhitehorn/ps3/conf/files.powerpc user/nwhitehorn/ps3/conf/kern.mk user/nwhitehorn/ps3/conf/kern.post.mk user/nwhitehorn/ps3/conf/kern.pre.mk user/nwhitehorn/ps3/conf/kmod.mk user/nwhitehorn/ps3/conf/makeLINT.mk user/nwhitehorn/ps3/conf/options.mips user/nwhitehorn/ps3/contrib/dev/acpica/changes.txt user/nwhitehorn/ps3/contrib/dev/acpica/common/adisasm.c user/nwhitehorn/ps3/contrib/dev/acpica/common/dmextern.c user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslcompiler.h user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslglobal.h user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslmain.c user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslstartup.c user/nwhitehorn/ps3/contrib/dev/acpica/debugger/dbcmds.c user/nwhitehorn/ps3/contrib/dev/acpica/debugger/dbinput.c user/nwhitehorn/ps3/contrib/dev/acpica/events/evxfevnt.c user/nwhitehorn/ps3/contrib/dev/acpica/executer/exfldio.c user/nwhitehorn/ps3/contrib/dev/acpica/executer/exprep.c user/nwhitehorn/ps3/contrib/dev/acpica/include/acdebug.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acdisasm.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acglobal.h user/nwhitehorn/ps3/contrib/dev/acpica/include/aclocal.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acobject.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acpiosxf.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acpixf.h user/nwhitehorn/ps3/contrib/dev/acpica/include/actypes.h user/nwhitehorn/ps3/contrib/dev/acpica/include/acutils.h user/nwhitehorn/ps3/contrib/dev/acpica/osunixxf.c user/nwhitehorn/ps3/contrib/dev/acpica/utilities/uteval.c user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utglobal.c user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utinit.c user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utmutex.c user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utxface.c user/nwhitehorn/ps3/dev/acpica/Osd/OsdHardware.c user/nwhitehorn/ps3/dev/acpica/Osd/OsdMemory.c user/nwhitehorn/ps3/dev/acpica/acpi.c user/nwhitehorn/ps3/dev/acpica/acpi_ec.c user/nwhitehorn/ps3/dev/acpica/acpi_pcib.c user/nwhitehorn/ps3/dev/acpica/acpi_pcib_acpi.c user/nwhitehorn/ps3/dev/acpica/acpi_pcib_pci.c user/nwhitehorn/ps3/dev/acpica/acpi_pcibvar.h user/nwhitehorn/ps3/dev/acpica/acpivar.h user/nwhitehorn/ps3/dev/aic7xxx/aicasm/Makefile user/nwhitehorn/ps3/dev/alc/if_alc.c user/nwhitehorn/ps3/dev/alc/if_alcreg.h user/nwhitehorn/ps3/dev/alc/if_alcvar.h user/nwhitehorn/ps3/dev/ath/ath_hal/ar5212/ar5212.h user/nwhitehorn/ps3/dev/ath/ath_hal/ar5212/ar5212_misc.c user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar5416.ini user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar5416_cal.c user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar5416_cal_iq.c user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar5416_reset.c user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar9160.ini user/nwhitehorn/ps3/dev/ath/ath_hal/ar5416/ar9285_reset.c user/nwhitehorn/ps3/dev/ath/if_ath.c user/nwhitehorn/ps3/dev/ath/if_athioctl.h user/nwhitehorn/ps3/dev/bge/if_bge.c user/nwhitehorn/ps3/dev/bge/if_bgereg.h user/nwhitehorn/ps3/dev/bwi/if_bwi.c user/nwhitehorn/ps3/dev/bwn/if_bwn.c user/nwhitehorn/ps3/dev/cfe/cfe_env.c user/nwhitehorn/ps3/dev/coretemp/coretemp.c user/nwhitehorn/ps3/dev/cxgb/common/cxgb_common.h user/nwhitehorn/ps3/dev/cxgb/common/cxgb_t3_hw.c user/nwhitehorn/ps3/dev/cxgb/common/cxgb_xgmac.c user/nwhitehorn/ps3/dev/cxgb/cxgb_main.c user/nwhitehorn/ps3/dev/drm/drm_pciids.h user/nwhitehorn/ps3/dev/e1000/if_igb.c user/nwhitehorn/ps3/dev/ed/if_ed.c user/nwhitehorn/ps3/dev/fb/vesa.c user/nwhitehorn/ps3/dev/flash/mx25l.c user/nwhitehorn/ps3/dev/iicbus/iic.h user/nwhitehorn/ps3/dev/iscsi/initiator/isc_cam.c user/nwhitehorn/ps3/dev/iscsi/initiator/isc_sm.c user/nwhitehorn/ps3/dev/iscsi/initiator/isc_soc.c user/nwhitehorn/ps3/dev/iscsi/initiator/isc_subr.c user/nwhitehorn/ps3/dev/iscsi/initiator/iscsi.c user/nwhitehorn/ps3/dev/iscsi/initiator/iscsi.h user/nwhitehorn/ps3/dev/iscsi/initiator/iscsi_subr.c user/nwhitehorn/ps3/dev/iscsi/initiator/iscsivar.h user/nwhitehorn/ps3/dev/iwn/if_iwn.c user/nwhitehorn/ps3/dev/mii/atphy.c user/nwhitehorn/ps3/dev/mii/e1000phy.c user/nwhitehorn/ps3/dev/mii/miidevs user/nwhitehorn/ps3/dev/mpt/mpt_pci.c user/nwhitehorn/ps3/dev/null/null.c user/nwhitehorn/ps3/dev/pci/pci.c user/nwhitehorn/ps3/dev/pci/pci_pci.c user/nwhitehorn/ps3/dev/pci/pci_private.h user/nwhitehorn/ps3/dev/pci/pcib_if.m user/nwhitehorn/ps3/dev/pci/pcib_private.h user/nwhitehorn/ps3/dev/ral/rt2560.c user/nwhitehorn/ps3/dev/ral/rt2661.c user/nwhitehorn/ps3/dev/sound/pci/hda/hdac.c user/nwhitehorn/ps3/dev/ste/if_ste.c user/nwhitehorn/ps3/dev/usb/quirk/usb_quirk.c user/nwhitehorn/ps3/dev/usb/serial/uplcom.c user/nwhitehorn/ps3/dev/usb/serial/uslcom.c user/nwhitehorn/ps3/dev/usb/usbdevs user/nwhitehorn/ps3/dev/usb/wlan/if_rum.c user/nwhitehorn/ps3/dev/usb/wlan/if_run.c user/nwhitehorn/ps3/dev/usb/wlan/if_ural.c user/nwhitehorn/ps3/dev/usb/wlan/if_zyd.c user/nwhitehorn/ps3/dev/wpi/if_wpi.c user/nwhitehorn/ps3/dev/xl/if_xl.c user/nwhitehorn/ps3/dev/xl/if_xlreg.h user/nwhitehorn/ps3/fs/coda/coda.h user/nwhitehorn/ps3/fs/coda/coda_venus.c user/nwhitehorn/ps3/fs/coda/coda_vnops.c user/nwhitehorn/ps3/fs/devfs/devfs.h user/nwhitehorn/ps3/fs/devfs/devfs_devs.c user/nwhitehorn/ps3/fs/devfs/devfs_rule.c user/nwhitehorn/ps3/fs/devfs/devfs_vfsops.c user/nwhitehorn/ps3/fs/devfs/devfs_vnops.c user/nwhitehorn/ps3/fs/nfs/nfs_var.h user/nwhitehorn/ps3/fs/nfsclient/nfs_clnode.c user/nwhitehorn/ps3/fs/nfsclient/nfs_clport.c user/nwhitehorn/ps3/fs/nfsclient/nfs_clstate.c user/nwhitehorn/ps3/fs/nfsclient/nfs_clsubs.c user/nwhitehorn/ps3/fs/nfsclient/nfs_clvnops.c user/nwhitehorn/ps3/fs/nwfs/nwfs_node.c user/nwhitehorn/ps3/fs/pseudofs/pseudofs_vncache.c user/nwhitehorn/ps3/fs/smbfs/smbfs_node.c user/nwhitehorn/ps3/fs/tmpfs/tmpfs.h user/nwhitehorn/ps3/fs/tmpfs/tmpfs_subr.c user/nwhitehorn/ps3/fs/tmpfs/tmpfs_vnops.c user/nwhitehorn/ps3/geom/mirror/g_mirror.c user/nwhitehorn/ps3/geom/part/g_part.c user/nwhitehorn/ps3/geom/sched/g_sched.c user/nwhitehorn/ps3/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c user/nwhitehorn/ps3/i386/acpica/Makefile user/nwhitehorn/ps3/i386/conf/GENERIC user/nwhitehorn/ps3/i386/i386/initcpu.c user/nwhitehorn/ps3/i386/i386/mp_machdep.c user/nwhitehorn/ps3/i386/i386/mptable_pci.c user/nwhitehorn/ps3/i386/i386/pmap.c user/nwhitehorn/ps3/i386/i386/trap.c user/nwhitehorn/ps3/i386/i386/tsc.c user/nwhitehorn/ps3/i386/i386/vm_machdep.c user/nwhitehorn/ps3/i386/include/elf.h user/nwhitehorn/ps3/i386/include/smp.h user/nwhitehorn/ps3/i386/include/vm86.h user/nwhitehorn/ps3/i386/pci/pci_bus.c user/nwhitehorn/ps3/i386/xen/mp_machdep.c user/nwhitehorn/ps3/i386/xen/pmap.c user/nwhitehorn/ps3/ia64/ia32/ia32_signal.c user/nwhitehorn/ps3/ia64/ia64/mp_machdep.c user/nwhitehorn/ps3/ia64/ia64/trap.c user/nwhitehorn/ps3/ia64/include/elf.h user/nwhitehorn/ps3/ia64/include/smp.h user/nwhitehorn/ps3/kern/Makefile user/nwhitehorn/ps3/kern/imgact_elf.c user/nwhitehorn/ps3/kern/init_main.c user/nwhitehorn/ps3/kern/kern_conf.c user/nwhitehorn/ps3/kern/kern_cons.c user/nwhitehorn/ps3/kern/kern_dtrace.c user/nwhitehorn/ps3/kern/kern_exec.c user/nwhitehorn/ps3/kern/kern_exit.c user/nwhitehorn/ps3/kern/kern_fork.c user/nwhitehorn/ps3/kern/kern_ktrace.c user/nwhitehorn/ps3/kern/kern_lock.c user/nwhitehorn/ps3/kern/kern_malloc.c user/nwhitehorn/ps3/kern/kern_priv.c user/nwhitehorn/ps3/kern/kern_proc.c user/nwhitehorn/ps3/kern/kern_sig.c user/nwhitehorn/ps3/kern/kern_timeout.c user/nwhitehorn/ps3/kern/sched_4bsd.c user/nwhitehorn/ps3/kern/sched_ule.c user/nwhitehorn/ps3/kern/subr_autoconf.c user/nwhitehorn/ps3/kern/subr_bus.c user/nwhitehorn/ps3/kern/subr_param.c user/nwhitehorn/ps3/kern/subr_rtc.c user/nwhitehorn/ps3/kern/subr_sleepqueue.c user/nwhitehorn/ps3/kern/subr_smp.c user/nwhitehorn/ps3/kern/subr_taskqueue.c user/nwhitehorn/ps3/kern/subr_trap.c user/nwhitehorn/ps3/kern/tty.c user/nwhitehorn/ps3/kern/uipc_socket.c user/nwhitehorn/ps3/kern/vfs_bio.c user/nwhitehorn/ps3/kern/vfs_cache.c user/nwhitehorn/ps3/kern/vfs_cluster.c user/nwhitehorn/ps3/kern/vfs_default.c user/nwhitehorn/ps3/kern/vfs_lookup.c user/nwhitehorn/ps3/kern/vfs_subr.c user/nwhitehorn/ps3/kern/vfs_syscalls.c user/nwhitehorn/ps3/mips/atheros/ar71xx_machdep.c user/nwhitehorn/ps3/mips/atheros/ar71xx_pci.c user/nwhitehorn/ps3/mips/atheros/ar71xx_wdog.c user/nwhitehorn/ps3/mips/atheros/ar71xxreg.h user/nwhitehorn/ps3/mips/atheros/files.ar71xx user/nwhitehorn/ps3/mips/atheros/if_arge.c user/nwhitehorn/ps3/mips/atheros/if_argevar.h user/nwhitehorn/ps3/mips/atheros/uart_bus_ar71xx.c user/nwhitehorn/ps3/mips/atheros/uart_cpu_ar71xx.c user/nwhitehorn/ps3/mips/conf/XLR user/nwhitehorn/ps3/mips/conf/XLR64 user/nwhitehorn/ps3/mips/conf/XLRN32 user/nwhitehorn/ps3/mips/include/bus.h user/nwhitehorn/ps3/mips/include/cpuregs.h user/nwhitehorn/ps3/mips/include/elf.h user/nwhitehorn/ps3/mips/include/endian.h user/nwhitehorn/ps3/mips/include/intr_machdep.h user/nwhitehorn/ps3/mips/include/param.h user/nwhitehorn/ps3/mips/include/pmap.h user/nwhitehorn/ps3/mips/include/pte.h user/nwhitehorn/ps3/mips/include/smp.h user/nwhitehorn/ps3/mips/include/vmparam.h user/nwhitehorn/ps3/mips/mips/exception.S user/nwhitehorn/ps3/mips/mips/genassym.c user/nwhitehorn/ps3/mips/mips/locore.S user/nwhitehorn/ps3/mips/mips/machdep.c user/nwhitehorn/ps3/mips/mips/mp_machdep.c user/nwhitehorn/ps3/mips/mips/mpboot.S user/nwhitehorn/ps3/mips/mips/pm_machdep.c user/nwhitehorn/ps3/mips/mips/pmap.c user/nwhitehorn/ps3/mips/mips/tick.c user/nwhitehorn/ps3/mips/mips/trap.c user/nwhitehorn/ps3/mips/mips/vm_machdep.c user/nwhitehorn/ps3/mips/rmi/on_chip.c user/nwhitehorn/ps3/mips/rmi/std.xlr user/nwhitehorn/ps3/mips/rmi/xlr_machdep.c user/nwhitehorn/ps3/mips/sibyte/sb_machdep.c user/nwhitehorn/ps3/mips/sibyte/sb_scd.c user/nwhitehorn/ps3/mips/sibyte/sb_zbpci.c user/nwhitehorn/ps3/modules/Makefile user/nwhitehorn/ps3/modules/aac/Makefile user/nwhitehorn/ps3/modules/acpi/acpi/Makefile user/nwhitehorn/ps3/modules/agp/Makefile user/nwhitehorn/ps3/modules/amr/Makefile user/nwhitehorn/ps3/modules/asr/Makefile user/nwhitehorn/ps3/modules/bge/Makefile user/nwhitehorn/ps3/modules/cpufreq/Makefile user/nwhitehorn/ps3/modules/cxgb/Makefile user/nwhitehorn/ps3/modules/cyclic/Makefile user/nwhitehorn/ps3/modules/dtrace/Makefile user/nwhitehorn/ps3/modules/dtrace/Makefile.inc user/nwhitehorn/ps3/modules/dtrace/dtrace/Makefile user/nwhitehorn/ps3/modules/dtrace/fasttrap/Makefile user/nwhitehorn/ps3/modules/em/Makefile user/nwhitehorn/ps3/modules/hptmv/Makefile user/nwhitehorn/ps3/modules/hptrr/Makefile user/nwhitehorn/ps3/modules/hwpmc/Makefile user/nwhitehorn/ps3/modules/i2c/controllers/pcf/Makefile user/nwhitehorn/ps3/modules/igb/Makefile user/nwhitehorn/ps3/modules/io/Makefile user/nwhitehorn/ps3/modules/ixgbe/Makefile user/nwhitehorn/ps3/modules/le/Makefile user/nwhitehorn/ps3/modules/linprocfs/Makefile user/nwhitehorn/ps3/modules/linsysfs/Makefile user/nwhitehorn/ps3/modules/linux/Makefile user/nwhitehorn/ps3/modules/mem/Makefile user/nwhitehorn/ps3/modules/mfi/Makefile user/nwhitehorn/ps3/modules/ndis/Makefile user/nwhitehorn/ps3/modules/ppc/Makefile user/nwhitehorn/ps3/modules/procfs/Makefile user/nwhitehorn/ps3/modules/sem/Makefile user/nwhitehorn/ps3/modules/smbfs/Makefile user/nwhitehorn/ps3/modules/sound/driver/Makefile user/nwhitehorn/ps3/modules/svr4/Makefile user/nwhitehorn/ps3/modules/syscons/Makefile user/nwhitehorn/ps3/modules/uart/Makefile user/nwhitehorn/ps3/modules/usb/Makefile user/nwhitehorn/ps3/modules/vx/Makefile user/nwhitehorn/ps3/modules/x86bios/Makefile user/nwhitehorn/ps3/net/if.c user/nwhitehorn/ps3/net/if_bridge.c user/nwhitehorn/ps3/net/if_ethersubr.c user/nwhitehorn/ps3/net/if_vlan.c user/nwhitehorn/ps3/net/rtsock.c user/nwhitehorn/ps3/net/vnet.c user/nwhitehorn/ps3/net80211/ieee80211.c user/nwhitehorn/ps3/net80211/ieee80211_node.c user/nwhitehorn/ps3/net80211/ieee80211_sta.c user/nwhitehorn/ps3/net80211/ieee80211_var.h user/nwhitehorn/ps3/netgraph/bluetooth/l2cap/ng_l2cap_cmds.h user/nwhitehorn/ps3/netinet/if_ether.c user/nwhitehorn/ps3/netinet/in.c user/nwhitehorn/ps3/netinet/in.h user/nwhitehorn/ps3/netinet/in_proto.c user/nwhitehorn/ps3/netinet/ip_carp.c user/nwhitehorn/ps3/netinet/ip_carp.h user/nwhitehorn/ps3/netinet/ip_divert.c user/nwhitehorn/ps3/netinet/ip_icmp.c user/nwhitehorn/ps3/netinet/ip_input.c user/nwhitehorn/ps3/netinet/libalias/alias_db.c user/nwhitehorn/ps3/netinet/raw_ip.c user/nwhitehorn/ps3/netinet/sctp_output.c user/nwhitehorn/ps3/netinet/tcp_input.c user/nwhitehorn/ps3/netinet/tcp_output.c user/nwhitehorn/ps3/netinet/tcp_subr.c user/nwhitehorn/ps3/netinet/tcp_syncache.c user/nwhitehorn/ps3/netinet/tcp_var.h user/nwhitehorn/ps3/netinet/udp_usrreq.c user/nwhitehorn/ps3/netinet6/icmp6.c user/nwhitehorn/ps3/netinet6/in6_proto.c user/nwhitehorn/ps3/netinet6/nd6.c user/nwhitehorn/ps3/netinet6/nd6_nbr.c user/nwhitehorn/ps3/netinet6/raw_ip6.c user/nwhitehorn/ps3/nfsclient/nfs_node.c user/nwhitehorn/ps3/nfsclient/nfs_vnops.c user/nwhitehorn/ps3/opencrypto/cryptodev.c user/nwhitehorn/ps3/opencrypto/deflate.c user/nwhitehorn/ps3/pci/if_rl.c user/nwhitehorn/ps3/powerpc/aim/trap.c user/nwhitehorn/ps3/powerpc/booke/trap.c user/nwhitehorn/ps3/powerpc/conf/Makefile user/nwhitehorn/ps3/powerpc/conf/NOTES user/nwhitehorn/ps3/powerpc/include/elf.h user/nwhitehorn/ps3/powerpc/include/pmap.h user/nwhitehorn/ps3/powerpc/include/smp.h user/nwhitehorn/ps3/powerpc/powerpc/mp_machdep.c user/nwhitehorn/ps3/security/mac/mac_framework.c user/nwhitehorn/ps3/security/mac/mac_internal.h user/nwhitehorn/ps3/sparc64/include/cache.h user/nwhitehorn/ps3/sparc64/include/elf.h user/nwhitehorn/ps3/sparc64/include/pmap.h user/nwhitehorn/ps3/sparc64/include/smp.h user/nwhitehorn/ps3/sparc64/sparc64/cache.c user/nwhitehorn/ps3/sparc64/sparc64/genassym.c user/nwhitehorn/ps3/sparc64/sparc64/mem.c user/nwhitehorn/ps3/sparc64/sparc64/mp_exception.S user/nwhitehorn/ps3/sparc64/sparc64/mp_machdep.c user/nwhitehorn/ps3/sparc64/sparc64/pmap.c user/nwhitehorn/ps3/sparc64/sparc64/tick.c user/nwhitehorn/ps3/sparc64/sparc64/trap.c user/nwhitehorn/ps3/sparc64/sparc64/uio_machdep.c user/nwhitehorn/ps3/sparc64/sparc64/vm_machdep.c user/nwhitehorn/ps3/sun4v/include/elf.h user/nwhitehorn/ps3/sun4v/include/smp.h user/nwhitehorn/ps3/sun4v/sun4v/mp_machdep.c user/nwhitehorn/ps3/sun4v/sun4v/pmap.c user/nwhitehorn/ps3/sun4v/sun4v/trap.c user/nwhitehorn/ps3/sys/cdefs.h user/nwhitehorn/ps3/sys/conf.h user/nwhitehorn/ps3/sys/imgact.h user/nwhitehorn/ps3/sys/ktrace.h user/nwhitehorn/ps3/sys/link_elf.h user/nwhitehorn/ps3/sys/lockmgr.h user/nwhitehorn/ps3/sys/mbuf.h user/nwhitehorn/ps3/sys/param.h user/nwhitehorn/ps3/sys/sdt.h user/nwhitehorn/ps3/sys/sysent.h user/nwhitehorn/ps3/sys/vnode.h user/nwhitehorn/ps3/teken/teken_subr.h user/nwhitehorn/ps3/tools/vnode_if.awk user/nwhitehorn/ps3/ufs/ffs/ffs_softdep.c user/nwhitehorn/ps3/ufs/ffs/ffs_vfsops.c user/nwhitehorn/ps3/vm/device_pager.c user/nwhitehorn/ps3/vm/memguard.c user/nwhitehorn/ps3/vm/memguard.h user/nwhitehorn/ps3/vm/uma.h user/nwhitehorn/ps3/vm/uma_core.c user/nwhitehorn/ps3/vm/vm_extern.h user/nwhitehorn/ps3/vm/vm_kern.c user/nwhitehorn/ps3/vm/vm_mmap.c Directory Properties: user/nwhitehorn/ps3/ (props changed) user/nwhitehorn/ps3/amd64/include/xen/ (props changed) user/nwhitehorn/ps3/boot/powerpc/ps3/ (props changed) user/nwhitehorn/ps3/cddl/contrib/opensolaris/ (props changed) user/nwhitehorn/ps3/contrib/dev/acpica/ (props changed) user/nwhitehorn/ps3/contrib/pf/ (props changed) user/nwhitehorn/ps3/contrib/x86emu/ (props changed) user/nwhitehorn/ps3/dev/xen/xenpci/ (props changed) user/nwhitehorn/ps3/powerpc/ps3/ (props changed) Modified: user/nwhitehorn/ps3/amd64/acpica/acpi_switch.S ============================================================================== --- user/nwhitehorn/ps3/amd64/acpica/acpi_switch.S Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/acpica/acpi_switch.S Mon Aug 23 22:58:13 2010 (r211727) @@ -1,7 +1,7 @@ /*- * Copyright (c) 2001 Takanori Watanabe * Copyright (c) 2001 Mitsuru IWASAKI - * Copyright (c) 2008-2009 Jung-uk Kim + * Copyright (c) 2008-2010 Jung-uk Kim * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,14 +34,11 @@ #include "acpi_wakedata.h" #include "assym.s" -#define WAKEUP_CTX(member) wakeup_ ## member - wakeup_ctx(%rdi) -#define WAKEUP_PCB(member) PCB_ ## member(%r11) -#define WAKEUP_XPCB(member) XPCB_ ## member(%r11) +#define WAKEUP_CTX(member) wakeup_ ## member - wakeup_ctx(%rsi) ENTRY(acpi_restorecpu) /* Switch to KPML4phys. */ - movq %rsi, %rax - movq %rax, %cr3 + movq %rdi, %cr3 /* Restore GDT. */ lgdt WAKEUP_CTX(gdt) @@ -49,7 +46,7 @@ ENTRY(acpi_restorecpu) 1: /* Fetch PCB. */ - movq WAKEUP_CTX(xpcb), %r11 + movq WAKEUP_CTX(pcb), %rdi /* Force kernel segment registers. */ movl $KDSEL, %eax @@ -62,16 +59,16 @@ ENTRY(acpi_restorecpu) movw %ax, %gs movl $MSR_FSBASE, %ecx - movl WAKEUP_PCB(FSBASE), %eax - movl 4 + WAKEUP_PCB(FSBASE), %edx + movl PCB_FSBASE(%rdi), %eax + movl 4 + PCB_FSBASE(%rdi), %edx wrmsr movl $MSR_GSBASE, %ecx - movl WAKEUP_PCB(GSBASE), %eax - movl 4 + WAKEUP_PCB(GSBASE), %edx + movl PCB_GSBASE(%rdi), %eax + movl 4 + PCB_GSBASE(%rdi), %edx wrmsr movl $MSR_KGSBASE, %ecx - movl WAKEUP_XPCB(KGSBASE), %eax - movl 4 + WAKEUP_XPCB(KGSBASE), %edx + movl PCB_KGSBASE(%rdi), %eax + movl 4 + PCB_KGSBASE(%rdi), %edx wrmsr /* Restore EFER. */ @@ -103,19 +100,20 @@ ENTRY(acpi_restorecpu) wrmsr /* Restore CR0 except for FPU mode. */ - movq WAKEUP_XPCB(CR0), %rax + movq PCB_CR0(%rdi), %rax + movq %rax, %rcx andq $~(CR0_EM | CR0_TS), %rax movq %rax, %cr0 /* Restore CR2 and CR4. */ - movq WAKEUP_XPCB(CR2), %rax + movq PCB_CR2(%rdi), %rax movq %rax, %cr2 - movq WAKEUP_XPCB(CR4), %rax + movq PCB_CR4(%rdi), %rax movq %rax, %cr4 /* Restore descriptor tables. */ - lidt WAKEUP_XPCB(IDT) - lldt WAKEUP_XPCB(LDT) + lidt PCB_IDT(%rdi) + lldt PCB_LDT(%rdi) #define SDT_SYSTSS 9 #define SDT_SYSBSY 11 @@ -123,48 +121,44 @@ ENTRY(acpi_restorecpu) /* Clear "task busy" bit and reload TR. */ movq PCPU(TSS), %rax andb $(~SDT_SYSBSY | SDT_SYSTSS), 5(%rax) - movw WAKEUP_XPCB(TR), %ax + movw PCB_TR(%rdi), %ax ltr %ax #undef SDT_SYSTSS #undef SDT_SYSBSY /* Restore other callee saved registers. */ - movq WAKEUP_PCB(R15), %r15 - movq WAKEUP_PCB(R14), %r14 - movq WAKEUP_PCB(R13), %r13 - movq WAKEUP_PCB(R12), %r12 - movq WAKEUP_PCB(RBP), %rbp - movq WAKEUP_PCB(RSP), %rsp - movq WAKEUP_PCB(RBX), %rbx + movq PCB_R15(%rdi), %r15 + movq PCB_R14(%rdi), %r14 + movq PCB_R13(%rdi), %r13 + movq PCB_R12(%rdi), %r12 + movq PCB_RBP(%rdi), %rbp + movq PCB_RSP(%rdi), %rsp + movq PCB_RBX(%rdi), %rbx /* Restore debug registers. */ - movq WAKEUP_PCB(DR0), %rax + movq PCB_DR0(%rdi), %rax movq %rax, %dr0 - movq WAKEUP_PCB(DR1), %rax + movq PCB_DR1(%rdi), %rax movq %rax, %dr1 - movq WAKEUP_PCB(DR2), %rax + movq PCB_DR2(%rdi), %rax movq %rax, %dr2 - movq WAKEUP_PCB(DR3), %rax + movq PCB_DR3(%rdi), %rax movq %rax, %dr3 - movq WAKEUP_PCB(DR6), %rax + movq PCB_DR6(%rdi), %rax movq %rax, %dr6 - movq WAKEUP_PCB(DR7), %rax + movq PCB_DR7(%rdi), %rax movq %rax, %dr7 /* Restore FPU state. */ - movq PCPU(FPCURTHREAD), %rax - testq %rax, %rax - je 1f - fxrstor WAKEUP_PCB(USERFPU) -1: + fninit + fxrstor PCB_USERFPU(%rdi) - /* Restore CR0 with FPU mode. */ - movq WAKEUP_XPCB(CR0), %rax - movq %rax, %cr0 + /* Reload CR0. */ + movq %rcx, %cr0 /* Restore return address. */ - movq WAKEUP_PCB(RIP), %rax + movq PCB_RIP(%rdi), %rax movq %rax, (%rsp) /* Indicate the CPU is resumed. */ @@ -173,19 +167,3 @@ ENTRY(acpi_restorecpu) ret END(acpi_restorecpu) - -ENTRY(acpi_savecpu) - /* Fetch XPCB and save CPU context. */ - movq %rdi, %r10 - call savectx2 - movq %r10, %r11 - - /* Patch caller's return address and stack pointer. */ - movq (%rsp), %rax - movq %rax, WAKEUP_PCB(RIP) - movq %rsp, %rax - movq %rax, WAKEUP_PCB(RSP) - - movl $1, %eax - ret -END(acpi_savecpu) Modified: user/nwhitehorn/ps3/amd64/acpica/acpi_wakecode.S ============================================================================== --- user/nwhitehorn/ps3/amd64/acpica/acpi_wakecode.S Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/acpica/acpi_wakecode.S Mon Aug 23 22:58:13 2010 (r211727) @@ -2,7 +2,7 @@ * Copyright (c) 2001 Takanori Watanabe * Copyright (c) 2001 Mitsuru IWASAKI * Copyright (c) 2003 Peter Wemm - * Copyright (c) 2008-2009 Jung-uk Kim + * Copyright (c) 2008-2010 Jung-uk Kim * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -210,8 +210,8 @@ wakeup_64: mov %ax, %ds /* Restore arguments and return. */ - movq wakeup_ctx - wakeup_start(%rbx), %rdi - movq wakeup_kpml4 - wakeup_start(%rbx), %rsi + movq wakeup_kpml4 - wakeup_start(%rbx), %rdi + movq wakeup_ctx - wakeup_start(%rbx), %rsi movq wakeup_retaddr - wakeup_start(%rbx), %rax jmp *%rax @@ -265,7 +265,7 @@ wakeup_kpml4: wakeup_ctx: .quad 0 -wakeup_xpcb: +wakeup_pcb: .quad 0 wakeup_gdt: .word 0 Modified: user/nwhitehorn/ps3/amd64/acpica/acpi_wakeup.c ============================================================================== --- user/nwhitehorn/ps3/amd64/acpica/acpi_wakeup.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/acpica/acpi_wakeup.c Mon Aug 23 22:58:13 2010 (r211727) @@ -2,7 +2,7 @@ * Copyright (c) 2001 Takanori Watanabe * Copyright (c) 2001 Mitsuru IWASAKI * Copyright (c) 2003 Peter Wemm - * Copyright (c) 2008-2009 Jung-uk Kim + * Copyright (c) 2008-2010 Jung-uk Kim * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -66,13 +66,12 @@ extern int acpi_resume_beep; extern int acpi_reset_video; #ifdef SMP -extern struct xpcb **stopxpcbs; +extern struct pcb **susppcbs; #else -static struct xpcb **stopxpcbs; +static struct pcb **susppcbs; #endif -int acpi_restorecpu(struct xpcb *, vm_offset_t); -int acpi_savecpu(struct xpcb *); +int acpi_restorecpu(vm_offset_t, struct pcb *); static void *acpi_alloc_wakeup_handler(void); static void acpi_stop_beep(void *); @@ -105,10 +104,10 @@ acpi_wakeup_ap(struct acpi_softc *sc, in int apic_id = cpu_apic_ids[cpu]; int ms; - WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, stopxpcbs[cpu]); - WAKECODE_FIXUP(wakeup_gdt, uint16_t, stopxpcbs[cpu]->xpcb_gdt.rd_limit); + WAKECODE_FIXUP(wakeup_pcb, struct pcb *, susppcbs[cpu]); + WAKECODE_FIXUP(wakeup_gdt, uint16_t, susppcbs[cpu]->pcb_gdt.rd_limit); WAKECODE_FIXUP(wakeup_gdt + 2, uint64_t, - stopxpcbs[cpu]->xpcb_gdt.rd_base); + susppcbs[cpu]->pcb_gdt.rd_base); WAKECODE_FIXUP(wakeup_cpu, int, cpu); /* do an INIT IPI: assert RESET */ @@ -177,7 +176,6 @@ static void acpi_wakeup_cpus(struct acpi_softc *sc, cpumask_t wakeup_cpus) { uint32_t mpbioswarmvec; - cpumask_t map; int cpu; u_char mpbiosreason; @@ -194,8 +192,7 @@ acpi_wakeup_cpus(struct acpi_softc *sc, /* Wake up each AP. */ for (cpu = 1; cpu < mp_ncpus; cpu++) { - map = 1ul << cpu; - if ((wakeup_cpus & map) != map) + if ((wakeup_cpus & (1 << cpu)) == 0) continue; if (acpi_wakeup_ap(sc, cpu) == 0) { /* restore the warmstart vector */ @@ -245,7 +242,7 @@ acpi_sleep_machdep(struct acpi_softc *sc cr3 = rcr3(); load_cr3(KPML4phys); - if (acpi_savecpu(stopxpcbs[0])) { + if (savectx(susppcbs[0])) { #ifdef SMP if (wakeup_cpus != 0 && suspend_cpus(wakeup_cpus) == 0) { device_printf(sc->acpi_dev, @@ -258,11 +255,11 @@ acpi_sleep_machdep(struct acpi_softc *sc WAKECODE_FIXUP(resume_beep, uint8_t, (acpi_resume_beep != 0)); WAKECODE_FIXUP(reset_video, uint8_t, (acpi_reset_video != 0)); - WAKECODE_FIXUP(wakeup_xpcb, struct xpcb *, stopxpcbs[0]); + WAKECODE_FIXUP(wakeup_pcb, struct pcb *, susppcbs[0]); WAKECODE_FIXUP(wakeup_gdt, uint16_t, - stopxpcbs[0]->xpcb_gdt.rd_limit); + susppcbs[0]->pcb_gdt.rd_limit); WAKECODE_FIXUP(wakeup_gdt + 2, uint64_t, - stopxpcbs[0]->xpcb_gdt.rd_base); + susppcbs[0]->pcb_gdt.rd_base); WAKECODE_FIXUP(wakeup_cpu, int, 0); /* Call ACPICA to enter the desired sleep state */ @@ -281,6 +278,8 @@ acpi_sleep_machdep(struct acpi_softc *sc for (;;) ia32_pause(); } else { + PCPU_SET(switchtime, 0); + PCPU_SET(switchticks, ticks); #ifdef SMP if (wakeup_cpus != 0) acpi_wakeup_cpus(sc, wakeup_cpus); @@ -332,9 +331,9 @@ acpi_alloc_wakeup_handler(void) printf("%s: can't alloc wake memory\n", __func__); return (NULL); } - stopxpcbs = malloc(mp_ncpus * sizeof(*stopxpcbs), M_DEVBUF, M_WAITOK); + susppcbs = malloc(mp_ncpus * sizeof(*susppcbs), M_DEVBUF, M_WAITOK); for (i = 0; i < mp_ncpus; i++) - stopxpcbs[i] = malloc(sizeof(**stopxpcbs), M_DEVBUF, M_WAITOK); + susppcbs[i] = malloc(sizeof(**susppcbs), M_DEVBUF, M_WAITOK); return (wakeaddr); } Modified: user/nwhitehorn/ps3/amd64/amd64/cpu_switch.S ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/cpu_switch.S Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/cpu_switch.S Mon Aug 23 22:58:13 2010 (r211727) @@ -302,128 +302,65 @@ END(cpu_switch) * Update pcb, saving current processor state. */ ENTRY(savectx) - /* Fetch PCB. */ - movq %rdi,%rcx - - /* Save caller's return address. */ - movq (%rsp),%rax - movq %rax,PCB_RIP(%rcx) - - movq %cr3,%rax - movq %rax,PCB_CR3(%rcx) - - movq %rbx,PCB_RBX(%rcx) - movq %rsp,PCB_RSP(%rcx) - movq %rbp,PCB_RBP(%rcx) - movq %r12,PCB_R12(%rcx) - movq %r13,PCB_R13(%rcx) - movq %r14,PCB_R14(%rcx) - movq %r15,PCB_R15(%rcx) - - /* - * If fpcurthread == NULL, then the fpu h/w state is irrelevant and the - * state had better already be in the pcb. This is true for forks - * but not for dumps (the old book-keeping with FP flags in the pcb - * always lost for dumps because the dump pcb has 0 flags). - * - * If fpcurthread != NULL, then we have to save the fpu h/w state to - * fpcurthread's pcb and copy it to the requested pcb, or save to the - * requested pcb and reload. Copying is easier because we would - * have to handle h/w bugs for reloading. We used to lose the - * parent's fpu state for forks by forgetting to reload. - */ - pushfq - cli - movq PCPU(FPCURTHREAD),%rax - testq %rax,%rax - je 1f - - movq TD_PCB(%rax),%rdi - movq PCB_SAVEFPU(%rdi),%rdi - clts - fxsave (%rdi) - smsw %ax - orb $CR0_TS,%al - lmsw %ax - - movq $PCB_SAVEFPU_SIZE,%rdx /* arg 3 */ - leaq PCB_USERFPU(%rcx),%rsi /* arg 2 */ - /* arg 1 (%rdi) already loaded */ - call bcopy -1: - popfq - - ret -END(savectx) - -/* - * savectx2(xpcb) - * Update xpcb, saving current processor state. - */ -ENTRY(savectx2) - /* Fetch XPCB. */ - movq %rdi,%r8 - /* Save caller's return address. */ movq (%rsp),%rax - movq %rax,PCB_RIP(%r8) + movq %rax,PCB_RIP(%rdi) - movq %rbx,PCB_RBX(%r8) - movq %rsp,PCB_RSP(%r8) - movq %rbp,PCB_RBP(%r8) - movq %r12,PCB_R12(%r8) - movq %r13,PCB_R13(%r8) - movq %r14,PCB_R14(%r8) - movq %r15,PCB_R15(%r8) + movq %rbx,PCB_RBX(%rdi) + movq %rsp,PCB_RSP(%rdi) + movq %rbp,PCB_RBP(%rdi) + movq %r12,PCB_R12(%rdi) + movq %r13,PCB_R13(%rdi) + movq %r14,PCB_R14(%rdi) + movq %r15,PCB_R15(%rdi) - movq %cr0,%rax - movq %rax,XPCB_CR0(%r8) + movq %cr0,%rsi + movq %rsi,PCB_CR0(%rdi) movq %cr2,%rax - movq %rax,XPCB_CR2(%r8) + movq %rax,PCB_CR2(%rdi) + movq %cr3,%rax + movq %rax,PCB_CR3(%rdi) movq %cr4,%rax - movq %rax,XPCB_CR4(%r8) + movq %rax,PCB_CR4(%rdi) movq %dr0,%rax - movq %rax,PCB_DR0(%r8) + movq %rax,PCB_DR0(%rdi) movq %dr1,%rax - movq %rax,PCB_DR1(%r8) + movq %rax,PCB_DR1(%rdi) movq %dr2,%rax - movq %rax,PCB_DR2(%r8) + movq %rax,PCB_DR2(%rdi) movq %dr3,%rax - movq %rax,PCB_DR3(%r8) + movq %rax,PCB_DR3(%rdi) movq %dr6,%rax - movq %rax,PCB_DR6(%r8) + movq %rax,PCB_DR6(%rdi) movq %dr7,%rax - movq %rax,PCB_DR7(%r8) - - sgdt XPCB_GDT(%r8) - sidt XPCB_IDT(%r8) - sldt XPCB_LDT(%r8) - str XPCB_TR(%r8) + movq %rax,PCB_DR7(%rdi) movl $MSR_FSBASE,%ecx rdmsr shlq $32,%rdx leaq (%rax,%rdx),%rax - movq %rax,PCB_FSBASE(%r8) + movq %rax,PCB_FSBASE(%rdi) movl $MSR_GSBASE,%ecx rdmsr shlq $32,%rdx leaq (%rax,%rdx),%rax - movq %rax,PCB_GSBASE(%r8) + movq %rax,PCB_GSBASE(%rdi) movl $MSR_KGSBASE,%ecx rdmsr shlq $32,%rdx leaq (%rax,%rdx),%rax - movq %rax,XPCB_KGSBASE(%r8) + movq %rax,PCB_KGSBASE(%rdi) + + sgdt PCB_GDT(%rdi) + sidt PCB_IDT(%rdi) + sldt PCB_LDT(%rdi) + str PCB_TR(%rdi) - movq PCPU(FPCURTHREAD),%rax - testq %rax,%rax - je 1f clts - fxsave PCB_USERFPU(%r8) -1: + fxsave PCB_USERFPU(%rdi) + movq %rsi,%cr0 /* The previous %cr0 is saved in %rsi. */ - movl $1, %eax + movl $1,%eax ret -END(savectx2) +END(savectx) Modified: user/nwhitehorn/ps3/amd64/amd64/genassym.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/genassym.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/genassym.c Mon Aug 23 22:58:13 2010 (r211727) @@ -123,7 +123,7 @@ ASSYM(KERNBASE, KERNBASE); ASSYM(DMAP_MIN_ADDRESS, DMAP_MIN_ADDRESS); ASSYM(DMAP_MAX_ADDRESS, DMAP_MAX_ADDRESS); ASSYM(MCLBYTES, MCLBYTES); -ASSYM(PCB_CR3, offsetof(struct pcb, pcb_cr3)); + ASSYM(PCB_R15, offsetof(struct pcb, pcb_r15)); ASSYM(PCB_R14, offsetof(struct pcb, pcb_r14)); ASSYM(PCB_R13, offsetof(struct pcb, pcb_r13)); @@ -134,40 +134,35 @@ ASSYM(PCB_RBX, offsetof(struct pcb, pcb_ ASSYM(PCB_RIP, offsetof(struct pcb, pcb_rip)); 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_CR0, offsetof(struct pcb, pcb_cr0)); +ASSYM(PCB_CR2, offsetof(struct pcb, pcb_cr2)); +ASSYM(PCB_CR3, offsetof(struct pcb, pcb_cr3)); +ASSYM(PCB_CR4, offsetof(struct pcb, pcb_cr4)); ASSYM(PCB_DR0, offsetof(struct pcb, pcb_dr0)); ASSYM(PCB_DR1, offsetof(struct pcb, pcb_dr1)); ASSYM(PCB_DR2, offsetof(struct pcb, pcb_dr2)); ASSYM(PCB_DR3, offsetof(struct pcb, pcb_dr3)); ASSYM(PCB_DR6, offsetof(struct pcb, pcb_dr6)); ASSYM(PCB_DR7, offsetof(struct pcb, pcb_dr7)); -ASSYM(PCB_USERFPU, offsetof(struct pcb, pcb_user_save)); +ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); +ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); +ASSYM(PCB_GS32SD, offsetof(struct pcb, pcb_gs32sd)); ASSYM(PCB_TSSP, offsetof(struct pcb, pcb_tssp)); +ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save)); +ASSYM(PCB_SAVEFPU_SIZE, sizeof(struct savefpu)); ASSYM(PCB_FULL_IRET, offsetof(struct pcb, pcb_full_iret)); +ASSYM(PCB_GDT, offsetof(struct pcb, pcb_gdt)); +ASSYM(PCB_IDT, offsetof(struct pcb, pcb_idt)); +ASSYM(PCB_LDT, offsetof(struct pcb, pcb_ldt)); +ASSYM(PCB_TR, offsetof(struct pcb, pcb_tr)); +ASSYM(PCB_USERFPU, offsetof(struct pcb, pcb_user_save)); +ASSYM(PCB_SIZE, sizeof(struct pcb)); ASSYM(PCB_DBREGS, PCB_DBREGS); ASSYM(PCB_32BIT, PCB_32BIT); ASSYM(PCB_GS32BIT, PCB_GS32BIT); ASSYM(PCB_FULLCTX, PCB_FULLCTX); -ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags)); -ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save)); -ASSYM(PCB_SAVEFPU_SIZE, sizeof(struct savefpu)); -ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); -ASSYM(PCB_GS32SD, offsetof(struct pcb, pcb_gs32sd)); - -ASSYM(PCB_SIZE, sizeof(struct pcb)); - -ASSYM(XPCB_PCB, offsetof(struct xpcb, xpcb_pcb)); -ASSYM(XPCB_CR0, offsetof(struct xpcb, xpcb_cr0)); -ASSYM(XPCB_CR2, offsetof(struct xpcb, xpcb_cr2)); -ASSYM(XPCB_CR4, offsetof(struct xpcb, xpcb_cr4)); -ASSYM(XPCB_KGSBASE, offsetof(struct xpcb, xpcb_kgsbase)); -ASSYM(XPCB_GDT, offsetof(struct xpcb, xpcb_gdt)); -ASSYM(XPCB_IDT, offsetof(struct xpcb, xpcb_idt)); -ASSYM(XPCB_LDT, offsetof(struct xpcb, xpcb_ldt)); -ASSYM(XPCB_TR, offsetof(struct xpcb, xpcb_tr)); - -ASSYM(XPCB_SIZE, sizeof(struct xpcb)); - ASSYM(COMMON_TSS_RSP0, offsetof(struct amd64tss, tss_rsp0)); ASSYM(TF_R15, offsetof(struct trapframe, tf_r15)); Modified: user/nwhitehorn/ps3/amd64/amd64/initcpu.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/initcpu.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/initcpu.c Mon Aug 23 22:58:13 2010 (r211727) @@ -177,17 +177,17 @@ initializecpucache() if ((cpu_feature & CPUID_CLFSH) != 0) cpu_clflush_line_size = ((cpu_procinfo >> 8) & 0xff) * 8; /* - * XXXKIB: (temporary) hack to work around traps generated when - * CLFLUSHing APIC registers window. + * XXXKIB: (temporary) hack to work around traps generated + * when CLFLUSHing APIC register window under virtualization + * environments. These environments tend to disable the + * CPUID_SS feature even though the native CPU supports it. */ TUNABLE_INT_FETCH("hw.clflush_disable", &hw_clflush_disable); - if (cpu_vendor_id == CPU_VENDOR_INTEL && !(cpu_feature & CPUID_SS) && - hw_clflush_disable == -1) + if (vm_guest != VM_GUEST_NO && hw_clflush_disable == -1) cpu_feature &= ~CPUID_CLFSH; /* * Allow to disable CLFLUSH feature manually by - * hw.clflush_disable tunable. This may help Xen guest on some AMD - * CPUs. + * hw.clflush_disable tunable. */ if (hw_clflush_disable == 1) cpu_feature &= ~CPUID_CLFSH; Modified: user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c Mon Aug 23 22:58:13 2010 (r211727) @@ -100,7 +100,7 @@ char *nmi_stack; void *dpcpu; struct pcb stoppcbs[MAXCPU]; -struct xpcb **stopxpcbs = NULL; +struct pcb **susppcbs = NULL; /* Variables needed for SMP tlb shootdown. */ vm_offset_t smp_tlb_addr1; @@ -1053,7 +1053,7 @@ smp_targeted_tlb_shootdown(cpumask_t mas int ncpu, othercpus; othercpus = mp_ncpus - 1; - if (mask == (u_int)-1) { + if (mask == (cpumask_t)-1) { ncpu = othercpus; if (ncpu < 1) return; @@ -1078,7 +1078,7 @@ smp_targeted_tlb_shootdown(cpumask_t mas smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); - if (mask == (u_int)-1) + if (mask == (cpumask_t)-1) ipi_all_but_self(vector); else ipi_selected(mask, vector); @@ -1087,6 +1087,30 @@ smp_targeted_tlb_shootdown(cpumask_t mas mtx_unlock_spin(&smp_ipi_mtx); } +/* + * Send an IPI to specified CPU handling the bitmap logic. + */ +static void +ipi_send_cpu(int cpu, u_int ipi) +{ + u_int bitmap, old_pending, new_pending; + + KASSERT(cpu_apic_ids[cpu] != -1, ("IPI to non-existent CPU %d", cpu)); + + if (IPI_IS_BITMAPED(ipi)) { + bitmap = 1 << ipi; + ipi = IPI_BITMAP_VECTOR; + do { + old_pending = cpu_ipi_pending[cpu]; + new_pending = old_pending | bitmap; + } while (!atomic_cmpset_int(&cpu_ipi_pending[cpu], + old_pending, new_pending)); + if (old_pending) + return; + } + lapic_ipi_vectored(ipi, cpu_apic_ids[cpu]); +} + void smp_cache_flush(void) { @@ -1210,14 +1234,6 @@ void ipi_selected(cpumask_t cpus, u_int ipi) { int cpu; - u_int bitmap = 0; - u_int old_pending; - u_int new_pending; - - if (IPI_IS_BITMAPED(ipi)) { - bitmap = 1 << ipi; - ipi = IPI_BITMAP_VECTOR; - } /* * IPI_STOP_HARD maps to a NMI and the trap handler needs a bit @@ -1231,23 +1247,27 @@ ipi_selected(cpumask_t cpus, u_int ipi) while ((cpu = ffs(cpus)) != 0) { cpu--; cpus &= ~(1 << cpu); + ipi_send_cpu(cpu, ipi); + } +} - KASSERT(cpu_apic_ids[cpu] != -1, - ("IPI to non-existent CPU %d", cpu)); - - if (bitmap) { - do { - old_pending = cpu_ipi_pending[cpu]; - new_pending = old_pending | bitmap; - } while (!atomic_cmpset_int(&cpu_ipi_pending[cpu],old_pending, new_pending)); - - if (old_pending) - continue; - } +/* + * send an IPI to a specific CPU. + */ +void +ipi_cpu(int cpu, u_int ipi) +{ - lapic_ipi_vectored(ipi, cpu_apic_ids[cpu]); - } + /* + * IPI_STOP_HARD maps to a NMI and the trap handler needs a bit + * of help in order to understand what is the source. + * Set the mask of receiving CPUs for this purpose. + */ + if (ipi == IPI_STOP_HARD) + atomic_set_int(&ipi_nmi_pending, 1 << cpu); + CTR3(KTR_SMP, "%s: cpu: %d ipi: %x", __func__, cpu, ipi); + ipi_send_cpu(cpu, ipi); } /* @@ -1301,8 +1321,11 @@ ipi_nmi_handler() void cpustop_handler(void) { - int cpu = PCPU_GET(cpuid); - int cpumask = PCPU_GET(cpumask); + cpumask_t cpumask; + u_int cpu; + + cpu = PCPU_GET(cpuid); + cpumask = PCPU_GET(cpumask); savectx(&stoppcbs[cpu]); @@ -1329,16 +1352,22 @@ cpustop_handler(void) void cpususpend_handler(void) { + cpumask_t cpumask; register_t cr3, rf; - int cpu = PCPU_GET(cpuid); - int cpumask = PCPU_GET(cpumask); + u_int cpu; + + cpu = PCPU_GET(cpuid); + cpumask = PCPU_GET(cpumask); rf = intr_disable(); cr3 = rcr3(); - if (savectx2(stopxpcbs[cpu])) { + if (savectx(susppcbs[cpu])) { wbinvd(); atomic_set_int(&stopped_cpus, cpumask); + } else { + PCPU_SET(switchtime, 0); + PCPU_SET(switchticks, ticks); } /* Wait for resume */ @@ -1503,19 +1532,23 @@ SYSINIT(cpu_hlt, SI_SUB_SMP, SI_ORDER_AN int mp_grab_cpu_hlt(void) { - u_int mask = PCPU_GET(cpumask); + cpumask_t mask; #ifdef MP_WATCHDOG - u_int cpuid = PCPU_GET(cpuid); + u_int cpuid; #endif int retval; + mask = PCPU_GET(cpumask); #ifdef MP_WATCHDOG + cpuid = PCPU_GET(cpuid); ap_watchdog(cpuid); #endif - retval = mask & hlt_cpus_mask; - while (mask & hlt_cpus_mask) + retval = 0; + while (mask & hlt_cpus_mask) { + retval = 1; __asm __volatile("sti; hlt" : : : "memory"); + } return (retval); } Modified: user/nwhitehorn/ps3/amd64/amd64/mptable_pci.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/mptable_pci.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/mptable_pci.c Mon Aug 23 22:58:13 2010 (r211727) @@ -163,38 +163,15 @@ mptable_pcib_probe(device_t dev) static device_method_t mptable_pcib_pci_methods[] = { /* Device interface */ DEVMETHOD(device_probe, mptable_pcib_probe), - DEVMETHOD(device_attach, pcib_attach), - DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), - - /* Bus interface */ - DEVMETHOD(bus_print_child, bus_generic_print_child), - DEVMETHOD(bus_read_ivar, pcib_read_ivar), - DEVMETHOD(bus_write_ivar, pcib_write_ivar), - DEVMETHOD(bus_alloc_resource, pcib_alloc_resource), - DEVMETHOD(bus_release_resource, bus_generic_release_resource), - DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), - DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), - DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), - DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), /* pcib interface */ - DEVMETHOD(pcib_maxslots, pcib_maxslots), - DEVMETHOD(pcib_read_config, pcib_read_config), - DEVMETHOD(pcib_write_config, pcib_write_config), DEVMETHOD(pcib_route_interrupt, mptable_pci_route_interrupt), - DEVMETHOD(pcib_alloc_msi, pcib_alloc_msi), - DEVMETHOD(pcib_release_msi, pcib_release_msi), - DEVMETHOD(pcib_alloc_msix, pcib_alloc_msix), - DEVMETHOD(pcib_release_msix, pcib_release_msix), - DEVMETHOD(pcib_map_msi, pcib_map_msi), {0, 0} }; static devclass_t pcib_devclass; -DEFINE_CLASS_0(pcib, mptable_pcib_driver, mptable_pcib_pci_methods, - sizeof(struct pcib_softc)); +DEFINE_CLASS_1(pcib, mptable_pcib_driver, mptable_pcib_pci_methods, + sizeof(struct pcib_softc), pcib_driver); DRIVER_MODULE(mptable_pcib, pci, mptable_pcib_driver, pcib_devclass, 0, 0); Modified: user/nwhitehorn/ps3/amd64/amd64/pmap.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/pmap.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/pmap.c Mon Aug 23 22:58:13 2010 (r211727) @@ -620,7 +620,8 @@ pmap_init_pat(void) if (sysenv != NULL) { if (strncmp(sysenv, "MacBook5,1", 10) == 0 || strncmp(sysenv, "MacBookPro5,5", 13) == 0 || - strncmp(sysenv, "Macmini3,1", 10) == 0) + strncmp(sysenv, "Macmini3,1", 10) == 0 || + strncmp(sysenv, "iMac9,1", 7) == 0) pat_works = 0; freeenv(sysenv); } @@ -926,8 +927,7 @@ pmap_update_pde_invalidate(vm_offset_t v void pmap_invalidate_page(pmap_t pmap, vm_offset_t va) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { @@ -947,8 +947,7 @@ pmap_invalidate_page(pmap_t pmap, vm_off void pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; vm_offset_t addr; sched_pin(); @@ -972,8 +971,7 @@ pmap_invalidate_range(pmap_t pmap, vm_of void pmap_invalidate_all(pmap_t pmap) { - u_int cpumask; - u_int other_cpus; + cpumask_t cpumask, other_cpus; sched_pin(); if (pmap == kernel_pmap || pmap->pm_active == all_cpus) { Modified: user/nwhitehorn/ps3/amd64/amd64/trap.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/trap.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/trap.c Mon Aug 23 22:58:13 2010 (r211727) @@ -50,7 +50,6 @@ __FBSDID("$FreeBSD$"); #include "opt_isa.h" #include "opt_kdb.h" #include "opt_kdtrace.h" -#include "opt_ktrace.h" #include #include @@ -70,9 +69,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#ifdef KTRACE -#include -#endif #ifdef HWPMC_HOOKS #include #endif Modified: user/nwhitehorn/ps3/amd64/amd64/tsc.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/tsc.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/tsc.c Mon Aug 23 22:58:13 2010 (r211727) @@ -222,7 +222,7 @@ sysctl_machdep_tsc_freq(SYSCTL_HANDLER_A } SYSCTL_PROC(_machdep, OID_AUTO, tsc_freq, CTLTYPE_QUAD | CTLFLAG_RW, - 0, sizeof(u_int), sysctl_machdep_tsc_freq, "QU", ""); + 0, 0, sysctl_machdep_tsc_freq, "QU", ""); static unsigned tsc_get_timecount(struct timecounter *tc) Modified: user/nwhitehorn/ps3/amd64/amd64/vm_machdep.c ============================================================================== --- user/nwhitehorn/ps3/amd64/amd64/vm_machdep.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/amd64/vm_machdep.c Mon Aug 23 22:58:13 2010 (r211727) @@ -527,7 +527,8 @@ void cpu_reset() { #ifdef SMP - u_int cnt, map; + cpumask_t map; + u_int cnt; if (smp_active) { map = PCPU_GET(other_cpus) & ~stopped_cpus; Modified: user/nwhitehorn/ps3/amd64/conf/GENERIC ============================================================================== --- user/nwhitehorn/ps3/amd64/conf/GENERIC Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/conf/GENERIC Mon Aug 23 22:58:13 2010 (r211727) @@ -62,7 +62,7 @@ options KBD_INSTALL_CDEV # install a CD options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) options AUDIT # Security event auditing options MAC # TrustedBSD MAC Framework -options FLOWTABLE # per-cpu routing cache +options FLOWTABLE # per-cpu routing cache #options KDTRACE_FRAME # Ensure frames are compiled in #options KDTRACE_HOOKS # Kernel DTrace hooks options INCLUDE_CONFIG_FILE # Include this file in kernel Modified: user/nwhitehorn/ps3/amd64/ia32/ia32_signal.c ============================================================================== --- user/nwhitehorn/ps3/amd64/ia32/ia32_signal.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/ia32/ia32_signal.c Mon Aug 23 22:58:13 2010 (r211727) @@ -391,7 +391,7 @@ freebsd4_ia32_sendsig(sig_t catcher, ksi } regs->tf_rsp = (uintptr_t)sfp; - regs->tf_rip = FREEBSD32_PS_STRINGS - sz_freebsd4_ia32_sigcode; + regs->tf_rip = p->p_sysent->sv_psstrings - sz_freebsd4_ia32_sigcode; regs->tf_rflags &= ~(PSL_T | PSL_D); regs->tf_cs = _ucode32sel; regs->tf_ss = _udatasel; @@ -512,7 +512,7 @@ ia32_sendsig(sig_t catcher, ksiginfo_t * } regs->tf_rsp = (uintptr_t)sfp; - regs->tf_rip = FREEBSD32_PS_STRINGS - *(p->p_sysent->sv_szsigcode); + regs->tf_rip = p->p_sysent->sv_psstrings - *(p->p_sysent->sv_szsigcode); regs->tf_rflags &= ~(PSL_T | PSL_D); regs->tf_cs = _ucode32sel; regs->tf_ss = _udatasel; Modified: user/nwhitehorn/ps3/amd64/ia32/ia32_syscall.c ============================================================================== --- user/nwhitehorn/ps3/amd64/ia32/ia32_syscall.c Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/ia32/ia32_syscall.c Mon Aug 23 22:58:13 2010 (r211727) @@ -45,7 +45,6 @@ __FBSDID("$FreeBSD$"); #include "opt_clock.h" #include "opt_cpu.h" #include "opt_isa.h" -#include "opt_ktrace.h" #include #include @@ -65,9 +64,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#ifdef KTRACE -#include -#endif #include #include Modified: user/nwhitehorn/ps3/amd64/include/elf.h ============================================================================== --- user/nwhitehorn/ps3/amd64/include/elf.h Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/include/elf.h Mon Aug 23 22:58:13 2010 (r211727) @@ -88,8 +88,14 @@ __ElfType(Auxinfo); #define AT_GID 13 /* Real gid. */ #define AT_EGID 14 /* Effective gid. */ #define AT_EXECPATH 15 /* Path to the executable. */ +#define AT_CANARY 16 /* Canary for SSP */ +#define AT_CANARYLEN 17 /* Length of the canary. */ +#define AT_OSRELDATE 18 /* OSRELDATE. */ +#define AT_NCPUS 19 /* Number of CPUs. */ +#define AT_PAGESIZES 20 /* Pagesizes. */ +#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */ -#define AT_COUNT 16 /* Count of defined aux entry types. */ +#define AT_COUNT 22 /* Count of defined aux entry types. */ /* * Relocation types. Modified: user/nwhitehorn/ps3/amd64/include/pcb.h ============================================================================== --- user/nwhitehorn/ps3/amd64/include/pcb.h Mon Aug 23 22:41:49 2010 (r211726) +++ user/nwhitehorn/ps3/amd64/include/pcb.h Mon Aug 23 22:58:13 2010 (r211727) @@ -44,7 +44,6 @@ #include struct pcb { - register_t pcb_cr3; register_t pcb_r15; register_t pcb_r14; register_t pcb_r13; @@ -55,6 +54,18 @@ struct pcb { register_t pcb_rip; register_t pcb_fsbase; register_t pcb_gsbase; + register_t pcb_kgsbase; + register_t pcb_cr0; + register_t pcb_cr2; + register_t pcb_cr3; + register_t pcb_cr4; + register_t pcb_dr0; + register_t pcb_dr1; + register_t pcb_dr2; + register_t pcb_dr3; + register_t pcb_dr6; + register_t pcb_dr7; + u_long pcb_flags; #define PCB_DBREGS 0x02 /* process using debug registers */ #define PCB_KERNFPU 0x04 /* kernel uses fpu */ @@ -64,44 +75,30 @@ struct pcb { #define PCB_32BIT 0x40 /* process has 32 bit context (segs etc) */ #define PCB_FULLCTX 0x80 /* full context restore on sysret */ - u_int64_t pcb_dr0; - u_int64_t pcb_dr1; - u_int64_t pcb_dr2; - u_int64_t pcb_dr3; - u_int64_t pcb_dr6; - u_int64_t pcb_dr7; - - struct savefpu pcb_user_save; uint16_t pcb_initial_fpucw; caddr_t pcb_onfault; /* copyin/out fault recovery */ /* 32-bit segment descriptor */ - struct user_segment_descriptor pcb_gs32sd; + struct user_segment_descriptor pcb_gs32sd; /* local tss, with i/o bitmap; NULL for common */ struct amd64tss *pcb_tssp; struct savefpu *pcb_save; *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***