Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Mar 2012 14:24:46 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r233548 - in projects/pseries: . amd64/acpica amd64/amd64 amd64/conf amd64/ia32 amd64/include arm/conf arm/mv boot/common boot/fdt boot/uboot/common boot/uboot/lib cddl/contrib/opensola...
Message-ID:  <201203271424.q2REOk9b089582@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Tue Mar 27 14:24:46 2012
New Revision: 233548
URL: http://svn.freebsd.org/changeset/base/233548

Log:
  IFC @ r233546

Added:
  projects/pseries/amd64/include/npx.h
     - copied unchanged from r233546, head/sys/amd64/include/npx.h
  projects/pseries/cddl/contrib/opensolaris/uts/mips/
     - copied from r233546, head/sys/cddl/contrib/opensolaris/uts/mips/
  projects/pseries/cddl/dev/dtrace/mips/
     - copied from r233546, head/sys/cddl/dev/dtrace/mips/
  projects/pseries/contrib/dev/acpica/compiler/preprocess.h
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/preprocess.h
  projects/pseries/contrib/dev/acpica/compiler/prexpress.c
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prexpress.c
  projects/pseries/contrib/dev/acpica/compiler/prmacros.c
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prmacros.c
  projects/pseries/contrib/dev/acpica/compiler/prparser.l
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prparser.l
  projects/pseries/contrib/dev/acpica/compiler/prparser.y
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prparser.y
  projects/pseries/contrib/dev/acpica/compiler/prscan.c
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prscan.c
  projects/pseries/contrib/dev/acpica/compiler/prutils.c
     - copied unchanged from r233546, head/sys/contrib/dev/acpica/compiler/prutils.c
  projects/pseries/contrib/dev/ral/microcode.h
     - copied unchanged from r233546, head/sys/contrib/dev/ral/microcode.h
  projects/pseries/dev/hwpmc/hwpmc_octeon.c
     - copied unchanged from r233546, head/sys/dev/hwpmc/hwpmc_octeon.c
  projects/pseries/dev/iicbus/ds1374.c
     - copied unchanged from r233546, head/sys/dev/iicbus/ds1374.c
  projects/pseries/dev/iicbus/iicoc.c
     - copied unchanged from r233546, head/sys/dev/iicbus/iicoc.c
  projects/pseries/dev/iicbus/iicoc.h
     - copied unchanged from r233546, head/sys/dev/iicbus/iicoc.h
  projects/pseries/dev/mpt/mpilib/mpi_log_fc.h
     - copied unchanged from r233546, head/sys/dev/mpt/mpilib/mpi_log_fc.h
  projects/pseries/dev/mpt/mpilib/mpi_log_sas.h
     - copied unchanged from r233546, head/sys/dev/mpt/mpilib/mpi_log_sas.h
  projects/pseries/geom/part/g_part_ldm.c
     - copied unchanged from r233546, head/sys/geom/part/g_part_ldm.c
  projects/pseries/mips/cavium/octeon_pmc.c
     - copied unchanged from r233546, head/sys/mips/cavium/octeon_pmc.c
  projects/pseries/mips/conf/XLP.hints
     - copied unchanged from r233546, head/sys/mips/conf/XLP.hints
  projects/pseries/mips/mips/libkern_machdep.c
     - copied unchanged from r233546, head/sys/mips/mips/libkern_machdep.c
  projects/pseries/mips/nlm/board_cpld.c
     - copied unchanged from r233546, head/sys/mips/nlm/board_cpld.c
  projects/pseries/mips/nlm/board_eeprom.c
     - copied unchanged from r233546, head/sys/mips/nlm/board_eeprom.c
  projects/pseries/mips/nlm/dev/
     - copied from r233546, head/sys/mips/nlm/dev/
  projects/pseries/mips/nlm/hal/gbu.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/gbu.h
  projects/pseries/mips/nlm/hal/interlaken.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/interlaken.h
  projects/pseries/mips/nlm/hal/mdio.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/mdio.h
  projects/pseries/mips/nlm/hal/nae.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/nae.h
  projects/pseries/mips/nlm/hal/nlmsaelib.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/nlmsaelib.h
  projects/pseries/mips/nlm/hal/poe.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/poe.h
  projects/pseries/mips/nlm/hal/sgmii.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/sgmii.h
  projects/pseries/mips/nlm/hal/ucore_loader.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/ucore_loader.h
  projects/pseries/mips/nlm/hal/xaui.h
     - copied unchanged from r233546, head/sys/mips/nlm/hal/xaui.h
  projects/pseries/modules/acl_nfs4/
     - copied from r233546, head/sys/modules/acl_nfs4/
  projects/pseries/modules/acl_posix1e/
     - copied from r233546, head/sys/modules/acl_posix1e/
  projects/pseries/modules/geom/geom_part/geom_part_ldm/
     - copied from r233546, head/sys/modules/geom/geom_part/geom_part_ldm/
  projects/pseries/modules/ralfw/rt2860/
     - copied from r233546, head/sys/modules/ralfw/rt2860/
  projects/pseries/x86/include/fpu.h
     - copied unchanged from r233546, head/sys/x86/include/fpu.h
  projects/pseries/x86/include/psl.h
     - copied unchanged from r233546, head/sys/x86/include/psl.h
  projects/pseries/x86/include/reg.h
     - copied unchanged from r233546, head/sys/x86/include/reg.h
  projects/pseries/x86/include/segments.h
     - copied unchanged from r233546, head/sys/x86/include/segments.h
  projects/pseries/x86/include/specialreg.h
     - copied unchanged from r233546, head/sys/x86/include/specialreg.h
  projects/pseries/x86/include/sysarch.h
     - copied unchanged from r233546, head/sys/x86/include/sysarch.h
Deleted:
  projects/pseries/compat/ia32/ia32_reg.h
  projects/pseries/contrib/dev/ral/rt2661_ucode.h
  projects/pseries/contrib/octeon-sdk/cvmx-csr-db-support.c
  projects/pseries/contrib/octeon-sdk/cvmx-csr-db.c
  projects/pseries/contrib/octeon-sdk/cvmx-csr-db.h
  projects/pseries/contrib/octeon-sdk/cvmx-error-custom.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-custom.h
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn30xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn31xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn38xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn38xxp2.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn50xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn52xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn52xxp1.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn56xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn56xxp1.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn58xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn58xxp1.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn61xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn63xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn63xxp1.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn66xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn68xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cn68xxp1.c
  projects/pseries/contrib/octeon-sdk/cvmx-error-init-cnf71xx.c
  projects/pseries/contrib/octeon-sdk/cvmx-error.c
  projects/pseries/contrib/octeon-sdk/cvmx-error.h
  projects/pseries/dev/hwpmc/hwpmc_mips24k.h
  projects/pseries/dev/mpt/mpilib/mpi_inb.h
Modified:
  projects/pseries/Makefile
  projects/pseries/amd64/acpica/acpi_wakeup.c
  projects/pseries/amd64/amd64/pmap.c
  projects/pseries/amd64/amd64/trap.c
  projects/pseries/amd64/conf/GENERIC
  projects/pseries/amd64/conf/NOTES
  projects/pseries/amd64/ia32/ia32_reg.c
  projects/pseries/amd64/include/fpu.h
  projects/pseries/amd64/include/proc.h
  projects/pseries/amd64/include/psl.h
  projects/pseries/amd64/include/reg.h
  projects/pseries/amd64/include/segments.h
  projects/pseries/amd64/include/specialreg.h
  projects/pseries/amd64/include/sysarch.h
  projects/pseries/arm/conf/AVILA
  projects/pseries/arm/conf/BWCT
  projects/pseries/arm/conf/CAMBRIA
  projects/pseries/arm/conf/CNS11XXNAS
  projects/pseries/arm/conf/CRB
  projects/pseries/arm/conf/DB-78XXX
  projects/pseries/arm/conf/DB-88F5XXX
  projects/pseries/arm/conf/DB-88F6XXX
  projects/pseries/arm/conf/DOCKSTAR
  projects/pseries/arm/conf/EP80219
  projects/pseries/arm/conf/GUMSTIX
  projects/pseries/arm/conf/HL200
  projects/pseries/arm/conf/HL201
  projects/pseries/arm/conf/IQ31244
  projects/pseries/arm/conf/KB920X
  projects/pseries/arm/conf/LN2410SBC
  projects/pseries/arm/conf/NSLU
  projects/pseries/arm/conf/QILA9G20
  projects/pseries/arm/conf/SAM9G20EK
  projects/pseries/arm/conf/SHEEVAPLUG
  projects/pseries/arm/conf/TS7800
  projects/pseries/arm/mv/common.c
  projects/pseries/boot/common/crc32.c
  projects/pseries/boot/common/ufsread.c
  projects/pseries/boot/fdt/fdt_loader_cmd.c
  projects/pseries/boot/uboot/common/metadata.c
  projects/pseries/boot/uboot/lib/Makefile
  projects/pseries/boot/uboot/lib/glue.c
  projects/pseries/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
  projects/pseries/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
  projects/pseries/cddl/dev/dtrace/dtrace_ioctl.c
  projects/pseries/cddl/dev/lockstat/lockstat.c
  projects/pseries/cddl/dev/profile/profile.c
  projects/pseries/compat/ia32/ia32_sysvec.c
  projects/pseries/conf/Makefile.mips
  projects/pseries/conf/NOTES
  projects/pseries/conf/files
  projects/pseries/conf/files.mips
  projects/pseries/conf/files.pc98
  projects/pseries/conf/kern.mk
  projects/pseries/conf/options
  projects/pseries/conf/options.amd64
  projects/pseries/conf/options.i386
  projects/pseries/conf/options.mips
  projects/pseries/contrib/dev/acpica/acpica_prep.sh
  projects/pseries/contrib/dev/acpica/changes.txt   (contents, props changed)
  projects/pseries/contrib/dev/acpica/common/adisasm.c
  projects/pseries/contrib/dev/acpica/common/getopt.c
  projects/pseries/contrib/dev/acpica/compiler/aslcodegen.c
  projects/pseries/contrib/dev/acpica/compiler/aslcompile.c
  projects/pseries/contrib/dev/acpica/compiler/aslcompiler.h
  projects/pseries/contrib/dev/acpica/compiler/aslcompiler.y
  projects/pseries/contrib/dev/acpica/compiler/aslerror.c
  projects/pseries/contrib/dev/acpica/compiler/aslfiles.c
  projects/pseries/contrib/dev/acpica/compiler/aslglobal.h
  projects/pseries/contrib/dev/acpica/compiler/aslmain.c
  projects/pseries/contrib/dev/acpica/compiler/aslmessages.h
  projects/pseries/contrib/dev/acpica/compiler/aslstartup.c
  projects/pseries/contrib/dev/acpica/compiler/asltypes.h
  projects/pseries/contrib/dev/acpica/compiler/aslutils.c
  projects/pseries/contrib/dev/acpica/compiler/dtcompile.c
  projects/pseries/contrib/dev/acpica/compiler/dtcompiler.h
  projects/pseries/contrib/dev/acpica/compiler/dtexpress.c
  projects/pseries/contrib/dev/acpica/compiler/dtio.c
  projects/pseries/contrib/dev/acpica/compiler/dtparser.y
  projects/pseries/contrib/dev/acpica/components/debugger/dbcmds.c
  projects/pseries/contrib/dev/acpica/components/hardware/hwesleep.c
  projects/pseries/contrib/dev/acpica/components/hardware/hwsleep.c
  projects/pseries/contrib/dev/acpica/components/hardware/hwxfsleep.c
  projects/pseries/contrib/dev/acpica/components/namespace/nsdump.c
  projects/pseries/contrib/dev/acpica/components/namespace/nsdumpdv.c
  projects/pseries/contrib/dev/acpica/components/namespace/nspredef.c
  projects/pseries/contrib/dev/acpica/components/namespace/nsrepair.c
  projects/pseries/contrib/dev/acpica/components/namespace/nsutils.c
  projects/pseries/contrib/dev/acpica/components/tables/tbfadt.c
  projects/pseries/contrib/dev/acpica/components/tables/tbinstal.c
  projects/pseries/contrib/dev/acpica/components/tables/tbutils.c
  projects/pseries/contrib/dev/acpica/include/achware.h
  projects/pseries/contrib/dev/acpica/include/aclocal.h
  projects/pseries/contrib/dev/acpica/include/acnames.h
  projects/pseries/contrib/dev/acpica/include/acnamesp.h
  projects/pseries/contrib/dev/acpica/include/acoutput.h
  projects/pseries/contrib/dev/acpica/include/acpixf.h
  projects/pseries/contrib/dev/acpica/include/actypes.h
  projects/pseries/contrib/dev/ral/Makefile
  projects/pseries/contrib/dev/ral/rt2860.fw.uu
  projects/pseries/contrib/dev/run/rt2870.fw.uu
  projects/pseries/contrib/octeon-sdk/cvmx-pcie.c
  projects/pseries/contrib/octeon-sdk/cvmx-twsi.c
  projects/pseries/contrib/octeon-sdk/cvmx-usb.c
  projects/pseries/dev/acpica/acpi.c
  projects/pseries/dev/acpica/acpivar.h
  projects/pseries/dev/advansys/adv_eisa.c
  projects/pseries/dev/advansys/adv_isa.c
  projects/pseries/dev/advansys/adv_pci.c
  projects/pseries/dev/advansys/adw_pci.c
  projects/pseries/dev/ahb/ahb.c
  projects/pseries/dev/aic7xxx/ahc_eisa.c
  projects/pseries/dev/aic7xxx/ahc_isa.c
  projects/pseries/dev/aic7xxx/ahc_pci.c
  projects/pseries/dev/aic7xxx/ahd_pci.c
  projects/pseries/dev/aic7xxx/aicasm/aicasm_symbol.c
  projects/pseries/dev/amr/amr_pci.c
  projects/pseries/dev/an/if_an_pci.c
  projects/pseries/dev/arcmsr/arcmsr.c
  projects/pseries/dev/asr/asr.c
  projects/pseries/dev/ata/ata-all.c
  projects/pseries/dev/ata/ata-all.h
  projects/pseries/dev/ata/ata-card.c
  projects/pseries/dev/ata/ata-cbus.c
  projects/pseries/dev/ata/ata-disk.c
  projects/pseries/dev/ata/ata-pci.c
  projects/pseries/dev/ata/ata-pci.h
  projects/pseries/dev/ata/ata-queue.c
  projects/pseries/dev/ata/ata-raid.c
  projects/pseries/dev/ata/atapi-cam.c
  projects/pseries/dev/ata/atapi-cd.c
  projects/pseries/dev/ata/atapi-fd.c
  projects/pseries/dev/ata/atapi-tape.c
  projects/pseries/dev/ata/chipsets/ata-acard.c
  projects/pseries/dev/ata/chipsets/ata-acerlabs.c
  projects/pseries/dev/ata/chipsets/ata-adaptec.c
  projects/pseries/dev/ata/chipsets/ata-ahci.c
  projects/pseries/dev/ata/chipsets/ata-amd.c
  projects/pseries/dev/ata/chipsets/ata-ati.c
  projects/pseries/dev/ata/chipsets/ata-cyrix.c
  projects/pseries/dev/ata/chipsets/ata-highpoint.c
  projects/pseries/dev/ata/chipsets/ata-intel.c
  projects/pseries/dev/ata/chipsets/ata-ite.c
  projects/pseries/dev/ata/chipsets/ata-jmicron.c
  projects/pseries/dev/ata/chipsets/ata-marvell.c
  projects/pseries/dev/ata/chipsets/ata-national.c
  projects/pseries/dev/ata/chipsets/ata-nvidia.c
  projects/pseries/dev/ata/chipsets/ata-promise.c
  projects/pseries/dev/ata/chipsets/ata-serverworks.c
  projects/pseries/dev/ata/chipsets/ata-siliconimage.c
  projects/pseries/dev/ata/chipsets/ata-sis.c
  projects/pseries/dev/ata/chipsets/ata-via.c
  projects/pseries/dev/ath/ath_hal/ar5416/ar5416_reset.c
  projects/pseries/dev/ath/if_ath.c
  projects/pseries/dev/ath/if_ath_debug.c
  projects/pseries/dev/ath/if_ath_tx.c
  projects/pseries/dev/ath/if_ath_tx.h
  projects/pseries/dev/ath/if_ath_tx_ht.c
  projects/pseries/dev/ath/if_athvar.h
  projects/pseries/dev/bge/if_bge.c
  projects/pseries/dev/bge/if_bgereg.h
  projects/pseries/dev/buslogic/bt_pci.c
  projects/pseries/dev/bxe/if_bxe.c
  projects/pseries/dev/cesa/cesa.c
  projects/pseries/dev/ciss/ciss.c
  projects/pseries/dev/cxgb/cxgb_sge.c
  projects/pseries/dev/de/if_de.c
  projects/pseries/dev/dpt/dpt_pci.c
  projects/pseries/dev/e1000/e1000_osdep.h
  projects/pseries/dev/en/midway.c
  projects/pseries/dev/fb/vesa.c
  projects/pseries/dev/fxp/if_fxp.c
  projects/pseries/dev/glxsb/glxsb.c
  projects/pseries/dev/hatm/if_hatm.c
  projects/pseries/dev/hifn/hifn7751.c
  projects/pseries/dev/hptiop/hptiop.c
  projects/pseries/dev/hptmv/entry.c
  projects/pseries/dev/hwpmc/hwpmc_logging.c
  projects/pseries/dev/hwpmc/hwpmc_mips.c
  projects/pseries/dev/hwpmc/hwpmc_mips24k.c
  projects/pseries/dev/hwpmc/pmc_events.h
  projects/pseries/dev/ida/ida_pci.c
  projects/pseries/dev/if_ndis/if_ndis_pci.c
  projects/pseries/dev/iir/iir_pci.c
  projects/pseries/dev/ips/ips_pci.c
  projects/pseries/dev/ipw/if_ipw.c
  projects/pseries/dev/ipw/if_ipwvar.h
  projects/pseries/dev/isci/isci.h
  projects/pseries/dev/isci/isci_controller.c
  projects/pseries/dev/isci/isci_remote_device.c
  projects/pseries/dev/iwi/if_iwi.c
  projects/pseries/dev/iwn/if_iwn.c
  projects/pseries/dev/ixgb/if_ixgb.c
  projects/pseries/dev/ixgbe/ixgbe.c
  projects/pseries/dev/ixgbe/ixv.c
  projects/pseries/dev/lmc/if_lmc.c
  projects/pseries/dev/mfi/mfi_pci.c
  projects/pseries/dev/mge/if_mge.c
  projects/pseries/dev/mlx/mlx_pci.c
  projects/pseries/dev/mly/mly.c
  projects/pseries/dev/mpt/mpilib/mpi.h
  projects/pseries/dev/mpt/mpilib/mpi_cnfg.h
  projects/pseries/dev/mpt/mpilib/mpi_fc.h
  projects/pseries/dev/mpt/mpilib/mpi_init.h
  projects/pseries/dev/mpt/mpilib/mpi_ioc.h
  projects/pseries/dev/mpt/mpilib/mpi_lan.h
  projects/pseries/dev/mpt/mpilib/mpi_raid.h
  projects/pseries/dev/mpt/mpilib/mpi_sas.h
  projects/pseries/dev/mpt/mpilib/mpi_targ.h
  projects/pseries/dev/mpt/mpilib/mpi_tool.h
  projects/pseries/dev/mpt/mpilib/mpi_type.h
  projects/pseries/dev/mpt/mpt.h
  projects/pseries/dev/mpt/mpt_pci.c
  projects/pseries/dev/mxge/if_mxge.c
  projects/pseries/dev/nve/if_nve.c
  projects/pseries/dev/ofw/ofw_bus_if.m
  projects/pseries/dev/ofw/ofw_bus_subr.c
  projects/pseries/dev/ofw/ofw_iicbus.c
  projects/pseries/dev/patm/if_patm_attach.c
  projects/pseries/dev/pcf/pcf_ebus.c
  projects/pseries/dev/pci/pci.c
  projects/pseries/dev/safe/safe.c
  projects/pseries/dev/sound/pci/emu10kx.c
  projects/pseries/dev/trm/trm.c
  projects/pseries/dev/twe/twe_freebsd.c
  projects/pseries/dev/tws/tws.c
  projects/pseries/dev/uart/uart_bus_pci.c
  projects/pseries/dev/ubsec/ubsec.c
  projects/pseries/dev/usb/wlan/if_run.c
  projects/pseries/dev/wds/wd7000.c
  projects/pseries/dev/wpi/if_wpi.c
  projects/pseries/dev/wtap/if_wtap.c
  projects/pseries/dev/xen/blkfront/blkfront.c
  projects/pseries/fs/fdescfs/fdesc_vfsops.c
  projects/pseries/fs/nfsclient/nfs_clbio.c
  projects/pseries/fs/nfsclient/nfs_clvnops.c
  projects/pseries/fs/nullfs/null_vfsops.c
  projects/pseries/fs/portalfs/portal_vfsops.c
  projects/pseries/fs/tmpfs/tmpfs_subr.c
  projects/pseries/fs/tmpfs/tmpfs_vnops.c
  projects/pseries/fs/unionfs/union_vfsops.c
  projects/pseries/geom/part/g_part.c
  projects/pseries/geom/part/g_part.h
  projects/pseries/i386/acpica/acpi_wakeup.c
  projects/pseries/i386/conf/GENERIC
  projects/pseries/i386/conf/NOTES
  projects/pseries/i386/conf/XBOX
  projects/pseries/i386/conf/XEN
  projects/pseries/i386/i386/machdep.c
  projects/pseries/i386/i386/pmap.c
  projects/pseries/i386/i386/trap.c
  projects/pseries/i386/include/npx.h
  projects/pseries/i386/include/proc.h
  projects/pseries/i386/include/psl.h
  projects/pseries/i386/include/reg.h
  projects/pseries/i386/include/segments.h
  projects/pseries/i386/include/specialreg.h
  projects/pseries/i386/include/sysarch.h
  projects/pseries/ia64/conf/GENERIC
  projects/pseries/ia64/conf/SKI
  projects/pseries/ia64/ia32/ia32_reg.c
  projects/pseries/ia64/ia32/ia32_signal.c
  projects/pseries/ia64/ia32/ia32_trap.c
  projects/pseries/ia64/include/reg.h
  projects/pseries/kern/imgact_elf.c
  projects/pseries/kern/kern_clocksource.c
  projects/pseries/kern/kern_event.c
  projects/pseries/kern/kern_exit.c
  projects/pseries/kern/kern_linker.c
  projects/pseries/kern/kern_proc.c
  projects/pseries/kern/kern_racct.c
  projects/pseries/kern/kern_sysctl.c
  projects/pseries/kern/kern_umtx.c
  projects/pseries/kern/sched_ule.c
  projects/pseries/kern/subr_acl_nfs4.c
  projects/pseries/kern/subr_acl_posix1e.c
  projects/pseries/kern/subr_msgbuf.c
  projects/pseries/kern/subr_uio.c
  projects/pseries/kern/sys_capability.c
  projects/pseries/kern/uipc_syscalls.c
  projects/pseries/libkern/crc32.c
  projects/pseries/mips/adm5120/adm5120_machdep.c
  projects/pseries/mips/adm5120/std.adm5120
  projects/pseries/mips/alchemy/alchemy_machdep.c
  projects/pseries/mips/alchemy/std.alchemy
  projects/pseries/mips/atheros/apb.c
  projects/pseries/mips/atheros/ar71xx_chip.c
  projects/pseries/mips/atheros/ar71xx_cpudef.h
  projects/pseries/mips/atheros/ar71xx_machdep.c
  projects/pseries/mips/atheros/ar71xxreg.h
  projects/pseries/mips/atheros/ar724x_chip.c
  projects/pseries/mips/atheros/ar91xx_chip.c
  projects/pseries/mips/atheros/files.ar71xx
  projects/pseries/mips/atheros/if_arge.c
  projects/pseries/mips/atheros/std.ar71xx
  projects/pseries/mips/cavium/files.octeon1
  projects/pseries/mips/cavium/octeon_ebt3000_cf.c
  projects/pseries/mips/cavium/octeon_irq.h
  projects/pseries/mips/cavium/octeon_machdep.c
  projects/pseries/mips/conf/AR71XX_BASE
  projects/pseries/mips/conf/AR91XX_BASE
  projects/pseries/mips/conf/MALTA
  projects/pseries/mips/conf/MALTA64
  projects/pseries/mips/conf/OCTEON1
  projects/pseries/mips/conf/PB92
  projects/pseries/mips/conf/RT305X
  projects/pseries/mips/conf/SWARM
  projects/pseries/mips/conf/SWARM64
  projects/pseries/mips/conf/SWARM64_SMP
  projects/pseries/mips/conf/SWARM_SMP
  projects/pseries/mips/conf/XLP
  projects/pseries/mips/conf/XLP64
  projects/pseries/mips/conf/XLPN32
  projects/pseries/mips/conf/XLR
  projects/pseries/mips/conf/XLR64
  projects/pseries/mips/conf/XLRN32
  projects/pseries/mips/conf/std.XLP
  projects/pseries/mips/idt/idt_machdep.c
  projects/pseries/mips/idt/std.idt
  projects/pseries/mips/include/_bus.h
  projects/pseries/mips/include/bus.h
  projects/pseries/mips/include/cache.h
  projects/pseries/mips/include/cpufunc.h
  projects/pseries/mips/include/frame.h
  projects/pseries/mips/include/hwfunc.h
  projects/pseries/mips/include/md_var.h
  projects/pseries/mips/include/pmap.h
  projects/pseries/mips/include/pmc_mdep.h
  projects/pseries/mips/include/proc.h
  projects/pseries/mips/include/trap.h
  projects/pseries/mips/malta/malta_machdep.c
  projects/pseries/mips/malta/std.malta
  projects/pseries/mips/mips/bus_space_generic.c
  projects/pseries/mips/mips/cache.c
  projects/pseries/mips/mips/cache_mipsNN.c
  projects/pseries/mips/mips/cpu.c
  projects/pseries/mips/mips/exception.S
  projects/pseries/mips/mips/freebsd32_machdep.c
  projects/pseries/mips/mips/intr_machdep.c
  projects/pseries/mips/mips/machdep.c
  projects/pseries/mips/mips/pm_machdep.c
  projects/pseries/mips/mips/pmap.c
  projects/pseries/mips/mips/support.S
  projects/pseries/mips/mips/swtch.S
  projects/pseries/mips/mips/tick.c
  projects/pseries/mips/mips/trap.c
  projects/pseries/mips/mips/vm_machdep.c
  projects/pseries/mips/nlm/board.c
  projects/pseries/mips/nlm/board.h
  projects/pseries/mips/nlm/cms.c
  projects/pseries/mips/nlm/files.xlp
  projects/pseries/mips/nlm/hal/iomap.h
  projects/pseries/mips/nlm/hal/nlm_hal.c
  projects/pseries/mips/nlm/hal/pcibus.h
  projects/pseries/mips/nlm/hal/sys.h
  projects/pseries/mips/nlm/mpreset.S
  projects/pseries/mips/nlm/msgring.h
  projects/pseries/mips/nlm/tick.c
  projects/pseries/mips/nlm/xlp.h
  projects/pseries/mips/nlm/xlp_machdep.c
  projects/pseries/mips/nlm/xlp_pci.c
  projects/pseries/mips/rmi/tick.c
  projects/pseries/mips/rmi/xlr_machdep.c
  projects/pseries/mips/rt305x/rt305x_machdep.c
  projects/pseries/mips/rt305x/std.rt305x
  projects/pseries/mips/sentry5/s5_machdep.c
  projects/pseries/mips/sentry5/std.sentry5
  projects/pseries/mips/sibyte/sb_machdep.c
  projects/pseries/modules/Makefile
  projects/pseries/modules/cyclic/Makefile
  projects/pseries/modules/dtrace/Makefile
  projects/pseries/modules/geom/geom_part/Makefile
  projects/pseries/modules/mps/Makefile
  projects/pseries/modules/netgraph/netflow/Makefile
  projects/pseries/modules/ralfw/Makefile
  projects/pseries/net/if_var.h
  projects/pseries/net/route.c
  projects/pseries/net/route.h
  projects/pseries/net80211/ieee80211.c
  projects/pseries/net80211/ieee80211_alq.c
  projects/pseries/net80211/ieee80211_freebsd.c
  projects/pseries/net80211/ieee80211_ht.c
  projects/pseries/net80211/ieee80211_ht.h
  projects/pseries/net80211/ieee80211_node.c
  projects/pseries/net80211/ieee80211_node.h
  projects/pseries/net80211/ieee80211_proto.c
  projects/pseries/net80211/ieee80211_sta.c
  projects/pseries/net80211/ieee80211_var.h
  projects/pseries/netgraph/netflow/netflow.c
  projects/pseries/netgraph/netflow/ng_netflow.c
  projects/pseries/netgraph/netflow/ng_netflow.h
  projects/pseries/netgraph/ng_vlan.c
  projects/pseries/netgraph/ng_vlan.h
  projects/pseries/netinet/in_pcb.h
  projects/pseries/netinet/ip_fw.h
  projects/pseries/netinet/ipfw/ip_fw2.c
  projects/pseries/netinet/ipfw/ip_fw_private.h
  projects/pseries/netinet/ipfw/ip_fw_sockopt.c
  projects/pseries/netinet/ipfw/ip_fw_table.c
  projects/pseries/netinet/sctp_bsd_addr.c
  projects/pseries/netinet/sctp_peeloff.c
  projects/pseries/netinet/sctp_usrreq.c
  projects/pseries/netinet/sctputil.c
  projects/pseries/netinet6/in6_pcb.c
  projects/pseries/netinet6/sctp6_usrreq.c
  projects/pseries/ofed/drivers/infiniband/core/addr.c
  projects/pseries/ofed/drivers/infiniband/core/cma.c
  projects/pseries/ofed/drivers/infiniband/core/fmr_pool.c
  projects/pseries/ofed/drivers/infiniband/ulp/sdp/sdp_main.c
  projects/pseries/pc98/conf/GENERIC
  projects/pseries/pc98/include/psl.h
  projects/pseries/pc98/include/reg.h
  projects/pseries/pc98/include/specialreg.h
  projects/pseries/pc98/include/sysarch.h
  projects/pseries/pc98/pc98/machdep.c
  projects/pseries/powerpc/aim/mmu_oea.c
  projects/pseries/powerpc/aim/mmu_oea64.c
  projects/pseries/powerpc/aim/moea64_native.c
  projects/pseries/powerpc/conf/GENERIC
  projects/pseries/powerpc/conf/GENERIC64
  projects/pseries/powerpc/conf/MPC85XX
  projects/pseries/powerpc/ofw/ofw_pcib_pci.c
  projects/pseries/powerpc/ofw/ofw_pcibus.c
  projects/pseries/powerpc/powermac/uninorth.c
  projects/pseries/sparc64/conf/GENERIC
  projects/pseries/sparc64/pci/fire.c
  projects/pseries/sparc64/pci/ofw_pcibus.c
  projects/pseries/sys/cpuset.h
  projects/pseries/sys/elf_common.h
  projects/pseries/sys/event.h
  projects/pseries/sys/libkern.h
  projects/pseries/sys/msgbuf.h
  projects/pseries/sys/pmc.h
  projects/pseries/sys/proc.h
  projects/pseries/sys/signal.h
  projects/pseries/sys/sysctl.h
  projects/pseries/sys/vnode.h
  projects/pseries/ufs/ffs/ffs_balloc.c
  projects/pseries/ufs/ffs/ffs_extern.h
  projects/pseries/ufs/ffs/ffs_inode.c
  projects/pseries/ufs/ffs/ffs_rawread.c
  projects/pseries/ufs/ffs/ffs_snapshot.c
  projects/pseries/ufs/ffs/ffs_softdep.c
  projects/pseries/ufs/ffs/ffs_vfsops.c
  projects/pseries/ufs/ffs/ffs_vnops.c
  projects/pseries/vm/vm_contig.c
  projects/pseries/vm/vm_fault.c
  projects/pseries/vm/vm_map.c
  projects/pseries/vm/vm_mmap.c
  projects/pseries/vm/vm_object.c
  projects/pseries/vm/vm_object.h
  projects/pseries/vm/vm_pageout.c
  projects/pseries/vm/vm_pageout.h
  projects/pseries/x86/acpica/madt.c
  projects/pseries/x86/include/endian.h
  projects/pseries/x86/isa/atpic.c
  projects/pseries/x86/isa/icu.h
  projects/pseries/x86/x86/busdma_machdep.c
  projects/pseries/x86/x86/intr_machdep.c
Directory Properties:
  projects/pseries/   (props changed)
  projects/pseries/boot/   (props changed)
  projects/pseries/cddl/contrib/opensolaris/   (props changed)
  projects/pseries/conf/   (props changed)
  projects/pseries/contrib/dev/acpica/   (props changed)
  projects/pseries/contrib/dev/acpica/common/   (props changed)
  projects/pseries/contrib/dev/acpica/compiler/   (props changed)
  projects/pseries/contrib/dev/acpica/components/debugger/   (props changed)
  projects/pseries/contrib/dev/acpica/components/hardware/   (props changed)
  projects/pseries/contrib/dev/acpica/components/namespace/   (props changed)
  projects/pseries/contrib/dev/acpica/components/tables/   (props changed)
  projects/pseries/contrib/dev/acpica/include/   (props changed)
  projects/pseries/contrib/octeon-sdk/   (props changed)

Modified: projects/pseries/Makefile
==============================================================================
--- projects/pseries/Makefile	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/Makefile	Tue Mar 27 14:24:46 2012	(r233548)
@@ -11,7 +11,7 @@ SUBDIR=	boot
 CSCOPEDIRS=	boot bsm cam cddl compat conf contrib crypto ddb dev fs gdb \
 		geom gnu isa kern libkern modules net net80211 netatalk \
 		netgraph netinet netinet6 netipsec netipx netnatm netncp \
-		netsmb nfs nfsclient nfsserver nlm opencrypto \
+		netsmb nfs nfsclient nfsserver nlm ofed opencrypto \
 		pci rpc security sys ufs vm xdr xen ${CSCOPE_ARCHDIR}
 .if !defined(CSCOPE_ARCHDIR)
 .if defined(ALL_ARCH)

Modified: projects/pseries/amd64/acpica/acpi_wakeup.c
==============================================================================
--- projects/pseries/amd64/acpica/acpi_wakeup.c	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/acpica/acpi_wakeup.c	Tue Mar 27 14:24:46 2012	(r233548)
@@ -223,6 +223,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
 #ifdef SMP
 	cpuset_t	wakeup_cpus;
 #endif
+	register_t	rf;
 	ACPI_STATUS	status;
 	int		ret;
 
@@ -241,7 +242,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
 
 	AcpiSetFirmwareWakingVector(WAKECODE_PADDR(sc));
 
-	spinlock_enter();
+	rf = intr_disable();
 	intr_suspend();
 
 	if (savectx(susppcbs[0])) {
@@ -269,7 +270,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
 		if (state == ACPI_STATE_S4 && sc->acpi_s4bios)
 			status = AcpiEnterSleepStateS4bios();
 		else
-			status = AcpiEnterSleepState(state);
+			status = AcpiEnterSleepState(state, acpi_sleep_flags);
 
 		if (status != AE_OK) {
 			device_printf(sc->acpi_dev,
@@ -300,7 +301,7 @@ out:
 
 	mca_resume();
 	intr_resume();
-	spinlock_exit();
+	intr_restore(rf);
 
 	AcpiSetFirmwareWakingVector(0);
 

Modified: projects/pseries/amd64/amd64/pmap.c
==============================================================================
--- projects/pseries/amd64/amd64/pmap.c	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/amd64/pmap.c	Tue Mar 27 14:24:46 2012	(r233548)
@@ -148,10 +148,6 @@ __FBSDID("$FreeBSD$");
 #include <machine/smp.h>
 #endif
 
-#ifndef PMAP_SHPGPERPROC
-#define PMAP_SHPGPERPROC 200
-#endif
-
 #if !defined(DIAGNOSTIC)
 #ifdef __GNUC_GNU_INLINE__
 #define PMAP_INLINE	__attribute__((__gnu_inline__)) inline
@@ -162,7 +158,6 @@ __FBSDID("$FreeBSD$");
 #define PMAP_INLINE
 #endif
 
-#define PV_STATS
 #ifdef PV_STATS
 #define PV_STAT(x)	do { x ; } while (0)
 #else
@@ -206,9 +201,8 @@ static u_int64_t	DMPDPphys;	/* phys addr
 /*
  * Data for the pv entry allocation mechanism
  */
-static int pv_entry_count = 0, pv_entry_max = 0, pv_entry_high_water = 0;
+static long pv_entry_count;
 static struct md_page *pv_table;
-static int shpgperproc = PMAP_SHPGPERPROC;
 
 /*
  * All those kernel PT submaps that BSD is so fond of
@@ -222,7 +216,7 @@ caddr_t CADDR1 = 0;
 static caddr_t crashdumpmap;
 
 static void	free_pv_entry(pmap_t pmap, pv_entry_t pv);
-static pv_entry_t get_pv_entry(pmap_t locked_pmap, int try);
+static pv_entry_t get_pv_entry(pmap_t locked_pmap, boolean_t try);
 static void	pmap_pv_demote_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa);
 static boolean_t pmap_pv_insert_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa);
 static void	pmap_pv_promote_pde(pmap_t pmap, vm_offset_t va, vm_paddr_t pa);
@@ -731,16 +725,6 @@ pmap_init(void)
 	}
 
 	/*
-	 * Initialize the address space (zone) for the pv entries.  Set a
-	 * high water mark so that the system can recover from excessive
-	 * numbers of pv entries.
-	 */
-	TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc);
-	pv_entry_max = shpgperproc * maxproc + cnt.v_page_count;
-	TUNABLE_INT_FETCH("vm.pmap.pv_entries", &pv_entry_max);
-	pv_entry_high_water = 9 * (pv_entry_max / 10);
-
-	/*
 	 * If the kernel is running in a virtual machine on an AMD Family 10h
 	 * processor, then it must assume that MCA is enabled by the virtual
 	 * machine monitor.
@@ -775,36 +759,6 @@ pmap_init(void)
 		TAILQ_INIT(&pv_table[i].pv_list);
 }
 
-static int
-pmap_pventry_proc(SYSCTL_HANDLER_ARGS)
-{
-	int error;
-
-	error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req);
-	if (error == 0 && req->newptr) {
-		shpgperproc = (pv_entry_max - cnt.v_page_count) / maxproc;
-		pv_entry_high_water = 9 * (pv_entry_max / 10);
-	}
-	return (error);
-}
-SYSCTL_PROC(_vm_pmap, OID_AUTO, pv_entry_max, CTLTYPE_INT|CTLFLAG_RW, 
-    &pv_entry_max, 0, pmap_pventry_proc, "IU", "Max number of PV entries");
-
-static int
-pmap_shpgperproc_proc(SYSCTL_HANDLER_ARGS)
-{
-	int error;
-
-	error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req);
-	if (error == 0 && req->newptr) {
-		pv_entry_max = shpgperproc * maxproc + cnt.v_page_count;
-		pv_entry_high_water = 9 * (pv_entry_max / 10);
-	}
-	return (error);
-}
-SYSCTL_PROC(_vm_pmap, OID_AUTO, shpgperproc, CTLTYPE_INT|CTLFLAG_RW, 
-    &shpgperproc, 0, pmap_shpgperproc_proc, "IU", "Page share factor per proc");
-
 static SYSCTL_NODE(_vm_pmap, OID_AUTO, pde, CTLFLAG_RD, 0,
     "2MB page mapping counters");
 
@@ -2050,7 +2004,7 @@ pv_to_chunk(pv_entry_t pv)
 
 static uint64_t pc_freemask[_NPCM] = { PC_FREE0, PC_FREE1, PC_FREE2 };
 
-SYSCTL_INT(_vm_pmap, OID_AUTO, pv_entry_count, CTLFLAG_RD, &pv_entry_count, 0,
+SYSCTL_LONG(_vm_pmap, OID_AUTO, pv_entry_count, CTLFLAG_RD, &pv_entry_count, 0,
 	"Current number of pv entries");
 
 #ifdef PV_STATS
@@ -2184,10 +2138,8 @@ free_pv_entry(pmap_t pmap, pv_entry_t pv
  * when needed.
  */
 static pv_entry_t
-get_pv_entry(pmap_t pmap, int try)
+get_pv_entry(pmap_t pmap, boolean_t try)
 {
-	static const struct timeval printinterval = { 60, 0 };
-	static struct timeval lastprint;
 	struct vpgqueues *pq;
 	int bit, field;
 	pv_entry_t pv;
@@ -2197,12 +2149,6 @@ get_pv_entry(pmap_t pmap, int try)
 	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	PV_STAT(pv_entry_allocs++);
-	pv_entry_count++;
-	if (pv_entry_count > pv_entry_high_water)
-		if (ratecheck(&lastprint, &printinterval))
-			printf("Approaching the limit on PV entries, consider "
-			    "increasing either the vm.pmap.shpgperproc or the "
-			    "vm.pmap.pv_entry_max sysctl.\n");
 	pq = NULL;
 retry:
 	pc = TAILQ_FIRST(&pmap->pm_pvchunk);
@@ -2220,8 +2166,10 @@ retry:
 			if (pc->pc_map[0] == 0 && pc->pc_map[1] == 0 &&
 			    pc->pc_map[2] == 0) {
 				TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list);
-				TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, pc_list);
+				TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc,
+				    pc_list);
 			}
+			pv_entry_count++;
 			PV_STAT(pv_entry_spare--);
 			return (pv);
 		}
@@ -2232,7 +2180,6 @@ retry:
 	    VM_ALLOC_WIRED);
 	if (m == NULL) {
 		if (try) {
-			pv_entry_count--;
 			PV_STAT(pc_chunk_tryfail++);
 			return (NULL);
 		}
@@ -2248,7 +2195,7 @@ retry:
 			PV_STAT(pmap_collect_active++);
 			pq = &vm_page_queues[PQ_ACTIVE];
 		} else
-			panic("get_pv_entry: increase vm.pmap.shpgperproc");
+			panic("get_pv_entry: allocation failed");
 		pmap_collect(pmap, pq);
 		goto retry;
 	}
@@ -2262,6 +2209,7 @@ retry:
 	pc->pc_map[2] = PC_FREE2;
 	pv = &pc->pc_pventry[0];
 	TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, pc_list);
+	pv_entry_count++;
 	PV_STAT(pv_entry_spare += _NPCPV - 1);
 	return (pv);
 }
@@ -2386,7 +2334,7 @@ pmap_remove_entry(pmap_t pmap, vm_page_t
 
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	pmap_pvh_free(&m->md, pmap, va);
-	if (TAILQ_EMPTY(&m->md.pv_list)) {
+	if (TAILQ_EMPTY(&m->md.pv_list) && (m->flags & PG_FICTITIOUS) == 0) {
 		pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 		if (TAILQ_EMPTY(&pvh->pv_list))
 			vm_page_aflag_clear(m, PGA_WRITEABLE);
@@ -2419,8 +2367,7 @@ pmap_try_insert_pv_entry(pmap_t pmap, vm
 
 	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
-	if (pv_entry_count < pv_entry_high_water && 
-	    (pv = get_pv_entry(pmap, TRUE)) != NULL) {
+	if ((pv = get_pv_entry(pmap, TRUE)) != NULL) {
 		pv->pv_va = va;
 		TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list);
 		return (TRUE);
@@ -2438,8 +2385,7 @@ pmap_pv_insert_pde(pmap_t pmap, vm_offse
 	pv_entry_t pv;
 
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
-	if (pv_entry_count < pv_entry_high_water && 
-	    (pv = get_pv_entry(pmap, TRUE)) != NULL) {
+	if ((pv = get_pv_entry(pmap, TRUE)) != NULL) {
 		pv->pv_va = va;
 		pvh = pa_to_pvh(pa);
 		TAILQ_INSERT_TAIL(&pvh->pv_list, pv, pv_list);
@@ -2849,6 +2795,8 @@ pmap_remove_all(vm_page_t m)
 	    ("pmap_remove_all: page %p is not managed", m));
 	free = NULL;
 	vm_page_lock_queues();
+	if ((m->flags & PG_FICTITIOUS) != 0)
+		goto small_mappings;
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	while ((pv = TAILQ_FIRST(&pvh->pv_list)) != NULL) {
 		pmap = PV_PMAP(pv);
@@ -2858,6 +2806,7 @@ pmap_remove_all(vm_page_t m)
 		(void)pmap_demote_pde(pmap, pde, va);
 		PMAP_UNLOCK(pmap);
 	}
+small_mappings:
 	while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
@@ -2939,7 +2888,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sv
 	pdp_entry_t *pdpe;
 	pd_entry_t ptpaddr, *pde;
 	pt_entry_t *pte;
-	int anychanged;
+	boolean_t anychanged, pv_lists_locked;
 
 	if ((prot & VM_PROT_READ) == VM_PROT_NONE) {
 		pmap_remove(pmap, sva, eva);
@@ -2950,9 +2899,10 @@ pmap_protect(pmap_t pmap, vm_offset_t sv
 	    (VM_PROT_WRITE|VM_PROT_EXECUTE))
 		return;
 
-	anychanged = 0;
+	pv_lists_locked = FALSE;
+resume:
+	anychanged = FALSE;
 
-	vm_page_lock_queues();
 	PMAP_LOCK(pmap);
 	for (; sva < eva; sva = va_next) {
 
@@ -2999,11 +2949,27 @@ pmap_protect(pmap_t pmap, vm_offset_t sv
 				 * invalidated by pmap_protect_pde().
 				 */
 				if (pmap_protect_pde(pmap, pde, sva, prot))
-					anychanged = 1;
-				continue;
-			} else if (!pmap_demote_pde(pmap, pde, sva)) {
-				/* The large page mapping was destroyed. */
+					anychanged = TRUE;
 				continue;
+			} else {
+				if (!pv_lists_locked) {
+					pv_lists_locked = TRUE;
+					if (!mtx_trylock(&vm_page_queue_mtx)) {
+						if (anychanged)
+							pmap_invalidate_all(
+							    pmap);
+						PMAP_UNLOCK(pmap);
+						vm_page_lock_queues();
+						goto resume;
+					}
+				}
+				if (!pmap_demote_pde(pmap, pde, sva)) {
+					/*
+					 * The large page mapping was
+					 * destroyed.
+					 */
+					continue;
+				}
 			}
 		}
 
@@ -3037,13 +3003,14 @@ retry:
 				if (obits & PG_G)
 					pmap_invalidate_page(pmap, sva);
 				else
-					anychanged = 1;
+					anychanged = TRUE;
 			}
 		}
 	}
 	if (anychanged)
 		pmap_invalidate_all(pmap);
-	vm_page_unlock_queues();
+	if (pv_lists_locked)
+		vm_page_unlock_queues();
 	PMAP_UNLOCK(pmap);
 }
 
@@ -3336,7 +3303,8 @@ validate:
 			}
 			if ((origpte & PG_MANAGED) != 0 &&
 			    TAILQ_EMPTY(&om->md.pv_list) &&
-			    TAILQ_EMPTY(&pa_to_pvh(opa)->pv_list))
+			    ((om->flags & PG_FICTITIOUS) != 0 ||
+			    TAILQ_EMPTY(&pa_to_pvh(opa)->pv_list)))
 				vm_page_aflag_clear(om, PGA_WRITEABLE);
 			if (invlva)
 				pmap_invalidate_page(pmap, va);
@@ -3349,7 +3317,8 @@ validate:
 	 * populated, then attempt promotion.
 	 */
 	if ((mpte == NULL || mpte->wire_count == NPTEPG) &&
-	    pg_ps_enabled && vm_reserv_level_iffullpop(m) == 0)
+	    pg_ps_enabled && (m->flags & PG_FICTITIOUS) == 0 &&
+	    vm_reserv_level_iffullpop(m) == 0)
 		pmap_promote_pde(pmap, pde, va);
 
 	vm_page_unlock_queues();
@@ -3969,7 +3938,7 @@ pmap_page_exists_quick(pmap_t pmap, vm_p
 		if (loops >= 16)
 			break;
 	}
-	if (!rv && loops < 16) {
+	if (!rv && loops < 16 && (m->flags & PG_FICTITIOUS) == 0) {
 		pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 		TAILQ_FOREACH(pv, &pvh->pv_list, pv_list) {
 			if (PV_PMAP(pv) == pmap) {
@@ -4001,7 +3970,10 @@ pmap_page_wired_mappings(vm_page_t m)
 		return (count);
 	vm_page_lock_queues();
 	count = pmap_pvh_wired_mappings(&m->md, count);
-	count = pmap_pvh_wired_mappings(pa_to_pvh(VM_PAGE_TO_PHYS(m)), count);
+	if ((m->flags & PG_FICTITIOUS) == 0) {
+	    count = pmap_pvh_wired_mappings(pa_to_pvh(VM_PAGE_TO_PHYS(m)),
+	        count);
+	}
 	vm_page_unlock_queues();
 	return (count);
 }
@@ -4043,7 +4015,8 @@ pmap_page_is_mapped(vm_page_t m)
 		return (FALSE);
 	vm_page_lock_queues();
 	rv = !TAILQ_EMPTY(&m->md.pv_list) ||
-	    !TAILQ_EMPTY(&pa_to_pvh(VM_PAGE_TO_PHYS(m))->pv_list);
+	    ((m->flags & PG_FICTITIOUS) == 0 &&
+	    !TAILQ_EMPTY(&pa_to_pvh(VM_PAGE_TO_PHYS(m))->pv_list));
 	vm_page_unlock_queues();
 	return (rv);
 }
@@ -4116,9 +4089,10 @@ pmap_remove_pages(pmap_t pmap)
 				    m, (uintmax_t)m->phys_addr,
 				    (uintmax_t)tpte));
 
-				KASSERT(m < &vm_page_array[vm_page_array_size],
-					("pmap_remove_pages: bad tpte %#jx",
-					(uintmax_t)tpte));
+				KASSERT((m->flags & PG_FICTITIOUS) != 0 ||
+				    m < &vm_page_array[vm_page_array_size],
+				    ("pmap_remove_pages: bad tpte %#jx",
+				    (uintmax_t)tpte));
 
 				pte_clear(pte);
 
@@ -4160,7 +4134,8 @@ pmap_remove_pages(pmap_t pmap)
 				} else {
 					pmap_resident_count_dec(pmap, 1);
 					TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
-					if (TAILQ_EMPTY(&m->md.pv_list)) {
+					if (TAILQ_EMPTY(&m->md.pv_list) &&
+					    (m->flags & PG_FICTITIOUS) == 0) {
 						pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 						if (TAILQ_EMPTY(&pvh->pv_list))
 							vm_page_aflag_clear(m, PGA_WRITEABLE);
@@ -4211,7 +4186,8 @@ pmap_is_modified(vm_page_t m)
 		return (FALSE);
 	vm_page_lock_queues();
 	rv = pmap_is_modified_pvh(&m->md) ||
-	    pmap_is_modified_pvh(pa_to_pvh(VM_PAGE_TO_PHYS(m)));
+	    ((m->flags & PG_FICTITIOUS) == 0 &&
+	    pmap_is_modified_pvh(pa_to_pvh(VM_PAGE_TO_PHYS(m))));
 	vm_page_unlock_queues();
 	return (rv);
 }
@@ -4282,7 +4258,8 @@ pmap_is_referenced(vm_page_t m)
 	    ("pmap_is_referenced: page %p is not managed", m));
 	vm_page_lock_queues();
 	rv = pmap_is_referenced_pvh(&m->md) ||
-	    pmap_is_referenced_pvh(pa_to_pvh(VM_PAGE_TO_PHYS(m)));
+	    ((m->flags & PG_FICTITIOUS) == 0 &&
+	    pmap_is_referenced_pvh(pa_to_pvh(VM_PAGE_TO_PHYS(m))));
 	vm_page_unlock_queues();
 	return (rv);
 }
@@ -4339,6 +4316,8 @@ pmap_remove_write(vm_page_t m)
 	    (m->aflags & PGA_WRITEABLE) == 0)
 		return;
 	vm_page_lock_queues();
+	if ((m->flags & PG_FICTITIOUS) != 0)
+		goto small_mappings;
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, next_pv) {
 		pmap = PV_PMAP(pv);
@@ -4349,6 +4328,7 @@ pmap_remove_write(vm_page_t m)
 			(void)pmap_demote_pde(pmap, pde, va);
 		PMAP_UNLOCK(pmap);
 	}
+small_mappings:
 	TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
@@ -4397,8 +4377,10 @@ pmap_ts_referenced(vm_page_t m)
 
 	KASSERT((m->oflags & VPO_UNMANAGED) == 0,
 	    ("pmap_ts_referenced: page %p is not managed", m));
-	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	vm_page_lock_queues();
+	if ((m->flags & PG_FICTITIOUS) != 0)
+		goto small_mappings;
+	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, pvn) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
@@ -4429,6 +4411,7 @@ pmap_ts_referenced(vm_page_t m)
 		}
 		PMAP_UNLOCK(pmap);
 	}
+small_mappings:
 	if ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {
 		pvf = pv;
 		do {
@@ -4483,6 +4466,8 @@ pmap_clear_modify(vm_page_t m)
 	if ((m->aflags & PGA_WRITEABLE) == 0)
 		return;
 	vm_page_lock_queues();
+	if ((m->flags & PG_FICTITIOUS) != 0)
+		goto small_mappings;
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, next_pv) {
 		pmap = PV_PMAP(pv);
@@ -4515,6 +4500,7 @@ pmap_clear_modify(vm_page_t m)
 		}
 		PMAP_UNLOCK(pmap);
 	}
+small_mappings:
 	TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
@@ -4549,6 +4535,8 @@ pmap_clear_reference(vm_page_t m)
 	KASSERT((m->oflags & VPO_UNMANAGED) == 0,
 	    ("pmap_clear_reference: page %p is not managed", m));
 	vm_page_lock_queues();
+	if ((m->flags & PG_FICTITIOUS) != 0)
+		goto small_mappings;
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, next_pv) {
 		pmap = PV_PMAP(pv);
@@ -4572,6 +4560,7 @@ pmap_clear_reference(vm_page_t m)
 		}
 		PMAP_UNLOCK(pmap);
 	}
+small_mappings:
 	TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);

Modified: projects/pseries/amd64/amd64/trap.c
==============================================================================
--- projects/pseries/amd64/amd64/trap.c	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/amd64/trap.c	Tue Mar 27 14:24:46 2012	(r233548)
@@ -301,26 +301,6 @@ trap(struct trapframe *frame)
 	}
 
 	code = frame->tf_err;
-	if (type == T_PAGEFLT) {
-		/*
-		 * If we get a page fault while in a critical section, then
-		 * it is most likely a fatal kernel page fault.  The kernel
-		 * is already going to panic trying to get a sleep lock to
-		 * do the VM lookup, so just consider it a fatal trap so the
-		 * kernel can print out a useful trap message and even get
-		 * to the debugger.
-		 *
-		 * If we get a page fault while holding a non-sleepable
-		 * lock, then it is most likely a fatal kernel page fault.
-		 * If WITNESS is enabled, then it's going to whine about
-		 * bogus LORs with various VM locks, so just skip to the
-		 * fatal trap handling directly.
-		 */
-		if (td->td_critnest != 0 ||
-		    WITNESS_CHECK(WARN_SLEEPOK | WARN_GIANTOK, NULL,
-		    "Kernel page fault") != 0)
-			trap_fatal(frame, frame->tf_addr);
-	}
 
         if (ISPL(frame->tf_cs) == SEL_UPL) {
 		/* user trap */
@@ -645,7 +625,7 @@ trap_pfault(frame, usermode)
 	int usermode;
 {
 	vm_offset_t va;
-	struct vmspace *vm = NULL;
+	struct vmspace *vm;
 	vm_map_t map;
 	int rv = 0;
 	vm_prot_t ftype;
@@ -653,6 +633,50 @@ trap_pfault(frame, usermode)
 	struct proc *p = td->td_proc;
 	vm_offset_t eva = frame->tf_addr;
 
+	if (__predict_false((td->td_pflags & TDP_NOFAULTING) != 0)) {
+		/*
+		 * Due to both processor errata and lazy TLB invalidation when
+		 * access restrictions are removed from virtual pages, memory
+		 * accesses that are allowed by the physical mapping layer may
+		 * nonetheless cause one spurious page fault per virtual page. 
+		 * When the thread is executing a "no faulting" section that
+		 * is bracketed by vm_fault_{disable,enable}_pagefaults(),
+		 * every page fault is treated as a spurious page fault,
+		 * unless it accesses the same virtual address as the most
+		 * recent page fault within the same "no faulting" section.
+		 */
+		if (td->td_md.md_spurflt_addr != eva ||
+		    (td->td_pflags & TDP_RESETSPUR) != 0) {
+			/*
+			 * Do nothing to the TLB.  A stale TLB entry is
+			 * flushed automatically by a page fault.
+			 */
+			td->td_md.md_spurflt_addr = eva;
+			td->td_pflags &= ~TDP_RESETSPUR;
+			return (0);
+		}
+	} else {
+		/*
+		 * If we get a page fault while in a critical section, then
+		 * it is most likely a fatal kernel page fault.  The kernel
+		 * is already going to panic trying to get a sleep lock to
+		 * do the VM lookup, so just consider it a fatal trap so the
+		 * kernel can print out a useful trap message and even get
+		 * to the debugger.
+		 *
+		 * If we get a page fault while holding a non-sleepable
+		 * lock, then it is most likely a fatal kernel page fault.
+		 * If WITNESS is enabled, then it's going to whine about
+		 * bogus LORs with various VM locks, so just skip to the
+		 * fatal trap handling directly.
+		 */
+		if (td->td_critnest != 0 ||
+		    WITNESS_CHECK(WARN_SLEEPOK | WARN_GIANTOK, NULL,
+		    "Kernel page fault") != 0) {
+			trap_fatal(frame, eva);
+			return (-1);
+		}
+	}
 	va = trunc_page(eva);
 	if (va >= VM_MIN_KERNEL_ADDRESS) {
 		/*
@@ -664,14 +688,10 @@ trap_pfault(frame, usermode)
 		map = kernel_map;
 	} else {
 		/*
-		 * This is a fault on non-kernel virtual memory.
-		 * vm is initialized above to NULL. If curproc is NULL
-		 * or curproc->p_vmspace is NULL the fault is fatal.
+		 * This is a fault on non-kernel virtual memory.  If either
+		 * p or p->p_vmspace is NULL, then the fault is fatal.
 		 */
-		if (p != NULL)
-			vm = p->p_vmspace;
-
-		if (vm == NULL)
+		if (p == NULL || (vm = p->p_vmspace) == NULL)
 			goto nogo;
 
 		map = &vm->vm_map;
@@ -735,8 +755,7 @@ nogo:
 		trap_fatal(frame, eva);
 		return (-1);
 	}
-
-	return((rv == KERN_PROTECTION_FAILURE) ? SIGBUS : SIGSEGV);
+	return ((rv == KERN_PROTECTION_FAILURE) ? SIGBUS : SIGSEGV);
 }
 
 static void

Modified: projects/pseries/amd64/conf/GENERIC
==============================================================================
--- projects/pseries/amd64/conf/GENERIC	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/conf/GENERIC	Tue Mar 27 14:24:46 2012	(r233548)
@@ -218,9 +218,12 @@ device		ale		# Atheros AR8121/AR8113/AR8
 device		bce		# Broadcom BCM5706/BCM5708 Gigabit Ethernet
 device		bfe		# Broadcom BCM440x 10/100 Ethernet
 device		bge		# Broadcom BCM570xx Gigabit Ethernet
+device		cas		# Sun Cassini/Cassini+ and NS DP83065 Saturn
 device		dc		# DEC/Intel 21143 and various workalikes
 device		et		# Agere ET1310 10/100/Gigabit Ethernet
 device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
+device		gem		# Sun GEM/Sun ERI/Apple GMAC
+device		hme		# Sun HME (Happy Meal Ethernet)
 device		jme		# JMicron JMC250 Gigabit/JMC260 Fast Ethernet
 device		lge		# Level 1 LXT1001 gigabit Ethernet
 device		msk		# Marvell/SysKonnect Yukon II Gigabit Ethernet
@@ -285,7 +288,6 @@ device		random		# Entropy device
 device		ether		# Ethernet support
 device		vlan		# 802.1Q VLAN support
 device		tun		# Packet tunnel.
-device		pty		# BSD-style compatibility pseudo ttys
 device		md		# Memory "disks"
 device		gif		# IPv6 and IPv4 tunneling
 device		faith		# IPv6-to-IPv4 relaying (translation)
@@ -317,6 +319,9 @@ device		dcons_crom	# Configuration ROM f
 
 # Sound support
 device		sound		# Generic sound driver (required)
+device		snd_cmi		# CMedia CMI8338/CMI8738
+device		snd_csa		# Crystal Semiconductor CS461x/428x
+device		snd_emu10kx	# Creative SoundBlaster Live! and Audigy
 device		snd_es137x	# Ensoniq AudioPCI ES137x
 device		snd_hda		# Intel High Definition Audio
 device		snd_ich		# Intel, NVidia and other ICH AC'97 Audio

Modified: projects/pseries/amd64/conf/NOTES
==============================================================================
--- projects/pseries/amd64/conf/NOTES	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/conf/NOTES	Tue Mar 27 14:24:46 2012	(r233548)
@@ -493,19 +493,6 @@ device		cpuctl
 options 	ENABLE_ALART		# Control alarm on Intel intpm driver
 
 #
-# Set the number of PV entries per process.  Increasing this can
-# stop panics related to heavy use of shared memory.  However, that can
-# (combined with large amounts of physical memory) cause panics at
-# boot time due the kernel running out of VM space.
-#
-# If you're tweaking this, you might also want to increase the sysctls
-# "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target".
-#
-# The value below is the one more than the default.
-#
-options 	PMAP_SHPGPERPROC=201
-
-#
 # Number of initial kernel page table pages used for early bootstrap.
 # This number should include enough pages to map the kernel and any
 # modules or other data loaded with the kernel by the loader.  Each
@@ -572,6 +559,10 @@ options 	LINSYSFS
 
 options 	KSTACK_PAGES=5
 
+# Enable detailed accounting by the PV entry allocator.
+
+options 	PV_STATS
+
 #####################################################################
 
 # More undocumented options for linting.

Modified: projects/pseries/amd64/ia32/ia32_reg.c
==============================================================================
--- projects/pseries/amd64/ia32/ia32_reg.c	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/ia32/ia32_reg.c	Tue Mar 27 14:24:46 2012	(r233548)
@@ -65,7 +65,6 @@ __FBSDID("$FreeBSD$");
 #include <compat/freebsd32/freebsd32_util.h>
 #include <compat/freebsd32/freebsd32_proto.h>
 #include <machine/fpu.h>
-#include <compat/ia32/ia32_reg.h>
 #include <machine/psl.h>
 #include <machine/segments.h>
 #include <machine/specialreg.h>

Modified: projects/pseries/amd64/include/fpu.h
==============================================================================
--- projects/pseries/amd64/include/fpu.h	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/include/fpu.h	Tue Mar 27 14:24:46 2012	(r233548)
@@ -41,64 +41,7 @@
 #ifndef _MACHINE_FPU_H_
 #define	_MACHINE_FPU_H_
 
-/* Contents of each x87 floating point accumulator */
-struct fpacc87 {
-	uint8_t	fp_bytes[10];
-};
-
-/* Contents of each SSE extended accumulator */
-struct  xmmacc {
-	uint8_t	xmm_bytes[16];
-};
-
-/* Contents of the upper 16 bytes of each AVX extended accumulator */
-struct  ymmacc {
-	uint8_t  ymm_bytes[16];
-};
-
-struct  envxmm {
-	uint16_t	en_cw;		/* control word (16bits) */
-	uint16_t	en_sw;		/* status word (16bits) */
-	uint8_t		en_tw;		/* tag word (8bits) */
-	uint8_t		en_zero;
-	uint16_t	en_opcode;	/* opcode last executed (11 bits ) */
-	uint64_t	en_rip;		/* floating point instruction pointer */
-	uint64_t	en_rdp;		/* floating operand pointer */
-	uint32_t	en_mxcsr;	/* SSE sontorol/status register */
-	uint32_t	en_mxcsr_mask;	/* valid bits in mxcsr */
-};
-
-struct  savefpu {
-	struct	envxmm	sv_env;
-	struct {
-		struct fpacc87	fp_acc;
-		uint8_t		fp_pad[6];      /* padding */
-	} sv_fp[8];
-	struct xmmacc	sv_xmm[16];
-	uint8_t sv_pad[96];
-} __aligned(16);
-
-struct xstate_hdr {
-	uint64_t xstate_bv;
-	uint8_t xstate_rsrv0[16];
-	uint8_t	xstate_rsrv[40];
-};
-
-struct savefpu_xstate {
-	struct xstate_hdr sx_hd;
-	struct ymmacc	sx_ymm[16];
-};
-
-struct savefpu_ymm {
-	struct	envxmm	sv_env;
-	struct {
-		struct fpacc87	fp_acc;
-		int8_t		fp_pad[6];      /* padding */
-	} sv_fp[8];
-	struct xmmacc	sv_xmm[16];
-	uint8_t sv_pad[96];
-	struct savefpu_xstate sv_xstate;
-} __aligned(64);
+#include <x86/fpu.h>
 
 #ifdef _KERNEL
 
@@ -108,32 +51,6 @@ struct fpu_kern_ctx;
 
 #define	XSAVE_AREA_ALIGN	64
 
-#endif
-
-/*
- * The hardware default control word for i387's and later coprocessors is
- * 0x37F, giving:
- *
- *	round to nearest
- *	64-bit precision
- *	all exceptions masked.
- *
- * FreeBSD/i386 uses 53 bit precision for things like fadd/fsub/fsqrt etc
- * because of the difference between memory and fpu register stack arguments.
- * If its using an intermediate fpu register, it has 80/64 bits to work
- * with.  If it uses memory, it has 64/53 bits to work with.  However,
- * gcc is aware of this and goes to a fair bit of trouble to make the
- * best use of it.
- *
- * This is mostly academic for AMD64, because the ABI prefers the use
- * SSE2 based math.  For FreeBSD/amd64, we go with the default settings.
- */
-#define	__INITIAL_FPUCW__	0x037F
-#define	__INITIAL_FPUCW_I386__	0x127F
-#define	__INITIAL_MXCSR__	0x1F80
-#define	__INITIAL_MXCSR_MASK__	0xFFBF
-
-#ifdef _KERNEL
 void	fpudna(void);
 void	fpudrop(void);
 void	fpuexit(struct thread *td);

Copied: projects/pseries/amd64/include/npx.h (from r233546, head/sys/amd64/include/npx.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/pseries/amd64/include/npx.h	Tue Mar 27 14:24:46 2012	(r233548, copy of r233546, head/sys/amd64/include/npx.h)
@@ -0,0 +1,6 @@
+/*-
+ * This file is in the public domain.
+ */
+/* $FreeBSD$ */
+
+#include <x86/fpu.h>

Modified: projects/pseries/amd64/include/proc.h
==============================================================================
--- projects/pseries/amd64/include/proc.h	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/include/proc.h	Tue Mar 27 14:24:46 2012	(r233548)
@@ -46,6 +46,7 @@ struct proc_ldt {
 struct mdthread {
 	int	md_spinlock_count;	/* (k) */
 	register_t md_saved_flags;	/* (k) */
+	register_t md_spurflt_addr;	/* (k) Spurious page fault address. */
 };
 
 struct mdproc {

Modified: projects/pseries/amd64/include/psl.h
==============================================================================
--- projects/pseries/amd64/include/psl.h	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/include/psl.h	Tue Mar 27 14:24:46 2012	(r233548)
@@ -1,84 +1,6 @@
 /*-
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	from: @(#)psl.h	5.2 (Berkeley) 1/18/91
- * $FreeBSD$
+ * This file is in the public domain.
  */
+/* $FreeBSD$ */
 
-#ifndef _MACHINE_PSL_H_
-#define	_MACHINE_PSL_H_
-
-/*
- * 386 processor status longword.
- */
-#define	PSL_C		0x00000001	/* carry bit */
-#define	PSL_PF		0x00000004	/* parity bit */
-#define	PSL_AF		0x00000010	/* bcd carry bit */
-#define	PSL_Z		0x00000040	/* zero bit */
-#define	PSL_N		0x00000080	/* negative bit */
-#define	PSL_T		0x00000100	/* trace enable bit */
-#define	PSL_I		0x00000200	/* interrupt enable bit */
-#define	PSL_D		0x00000400	/* string instruction direction bit */
-#define	PSL_V		0x00000800	/* overflow bit */
-#define	PSL_IOPL	0x00003000	/* i/o privilege level */
-#define	PSL_NT		0x00004000	/* nested task bit */
-#define	PSL_RF		0x00010000	/* resume flag bit */
-/* #define PSL_VM	0x00020000 */	/* virtual 8086 mode bit */
-#define	PSL_AC		0x00040000	/* alignment checking */
-/* #define PSL_VIF	0x00080000 */	/* virtual interrupt enable */
-/* #define PSL_VIP	0x00100000 */	/* virtual interrupt pending */
-#define	PSL_ID		0x00200000	/* identification bit */
-
-/*
- * The i486 manual says that we are not supposed to change reserved flags,
- * but this is too much trouble since the reserved flags depend on the cpu
- * and setting them to their historical values works in practice.
- */
-#define	PSL_RESERVED_DEFAULT	0x00000002
-
-/*
- * Initial flags for kernel and user mode.  The kernel later inherits
- * PSL_I and some other flags from user mode.
- */
-#define	PSL_KERNEL	PSL_RESERVED_DEFAULT
-#define	PSL_USER	(PSL_RESERVED_DEFAULT | PSL_I)
-
-/*
- * Bits that can be changed in user mode on 486's.  We allow these bits
- * to be changed using ptrace(), sigreturn() and procfs.  Setting PS_NT
- * is undesirable but it may as well be allowed since users can inflict
- * it on the kernel directly.  Changes to PSL_AC are silently ignored on
- * 386's.
- */
-#define	PSL_USERCHANGE (PSL_C | PSL_PF | PSL_AF | PSL_Z | PSL_N | PSL_T \
-			| PSL_D | PSL_V | PSL_NT | PSL_AC | PSL_ID)
-
-#endif /* !_MACHINE_PSL_H_ */
+#include <x86/psl.h>

Modified: projects/pseries/amd64/include/reg.h
==============================================================================
--- projects/pseries/amd64/include/reg.h	Tue Mar 27 14:24:29 2012	(r233547)
+++ projects/pseries/amd64/include/reg.h	Tue Mar 27 14:24:46 2012	(r233548)
@@ -1,141 +1,6 @@
 /*-
- * Copyright (c) 2003 Peter Wemm.
- * Copyright (c) 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * William Jolitz.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- *	from: @(#)reg.h	5.5 (Berkeley) 1/18/91
- * $FreeBSD$
+ * This file is in the public domain.
  */
+/* $FreeBSD$ */
 
-#ifndef _MACHINE_REG_H_
-#define	_MACHINE_REG_H_
-
-#if defined(_KERNEL) && !defined(_STANDALONE)
-#include "opt_compat.h"
-#endif
-
-/*
- * Register set accessible via /proc/$pid/regs and PT_{SET,GET}REGS.
- */
-struct reg {
-	register_t	r_r15;
-	register_t	r_r14;
-	register_t	r_r13;
-	register_t	r_r12;
-	register_t	r_r11;
-	register_t	r_r10;
-	register_t	r_r9;
-	register_t	r_r8;
-	register_t	r_rdi;
-	register_t	r_rsi;
-	register_t	r_rbp;
-	register_t	r_rbx;
-	register_t	r_rdx;
-	register_t	r_rcx;
-	register_t	r_rax;
-	uint32_t	r_trapno;
-	uint16_t	r_fs;
-	uint16_t	r_gs;
-	uint32_t	r_err;
-	uint16_t	r_es;
-	uint16_t	r_ds;
-	register_t	r_rip;
-	register_t	r_cs;
-	register_t	r_rflags;
-	register_t	r_rsp;
-	register_t	r_ss;
-};
-
-/*
- * Register set accessible via /proc/$pid/fpregs.
- */
-struct fpreg {
-	/*
-	 * XXX should get struct from fpu.h.  Here we give a slightly
-	 * simplified struct.  This may be too much detail.  Perhaps
-	 * an array of unsigned longs is best.
-	 */
-	unsigned long	fpr_env[4];
-	unsigned char	fpr_acc[8][16];
-	unsigned char	fpr_xacc[16][16];
-	unsigned long	fpr_spare[12];
-};
-
-/*
- * Register set accessible via /proc/$pid/dbregs.
- */
-struct dbreg {
-	unsigned long  dr[16];	/* debug registers */

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



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