svn commit: r207795 - in projects/altix/sys: amd64/amd64 amd64/conf amd64/ia32 amd64/include amd64/include/xen arm/arm arm/at91 arm/conf arm/include arm/mv arm/xscale/ixp425 boot/forth boot/sparc64...

Marcel Moolenaar marcel at FreeBSD.org
Sat May 8 20:08:02 UTC 2010


Author: marcel
Date: Sat May  8 20:08:01 2010
New Revision: 207795
URL: http://svn.freebsd.org/changeset/base/207795

Log:
  Merge svn+ssh://svn.freebsd.org/base/head@207793

Added:
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype1i.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/compiler/aslrestype1i.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype2d.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/compiler/aslrestype2d.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype2e.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/compiler/aslrestype2e.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype2q.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/compiler/aslrestype2q.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype2w.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/compiler/aslrestype2w.c
  projects/altix/sys/contrib/dev/acpica/events/evgpeinit.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/events/evgpeinit.c
  projects/altix/sys/contrib/dev/acpica/events/evgpeutil.c
     - copied unchanged from r207793, head/sys/contrib/dev/acpica/events/evgpeutil.c
  projects/altix/sys/dev/io/iodev.h
     - copied unchanged from r207793, head/sys/dev/io/iodev.h
  projects/altix/sys/dev/mvs/
     - copied from r207793, head/sys/dev/mvs/
  projects/altix/sys/dev/sge/
     - copied from r207793, head/sys/dev/sge/
  projects/altix/sys/mips/cavium/octeon_mp.c
     - copied unchanged from r207793, head/sys/mips/cavium/octeon_mp.c
  projects/altix/sys/modules/mvs/
     - copied from r207793, head/sys/modules/mvs/
  projects/altix/sys/modules/sge/
     - copied from r207793, head/sys/modules/sge/
  projects/altix/sys/sparc64/include/mcntl.h
     - copied unchanged from r207793, head/sys/sparc64/include/mcntl.h
  projects/altix/sys/sparc64/sparc64/zeus.c
     - copied unchanged from r207793, head/sys/sparc64/sparc64/zeus.c
Deleted:
  projects/altix/sys/cddl/dev/cyclic/amd64/
  projects/altix/sys/mips/cavium/dev/rgmii/octeon_fau.c
  projects/altix/sys/mips/include/archtype.h
  projects/altix/sys/mips/include/defs.h
  projects/altix/sys/mips/include/psl.h
  projects/altix/sys/mips/include/queue.h
  projects/altix/sys/mips/include/rm7000.h
  projects/altix/sys/mips/include/segments.h
  projects/altix/sys/mips/mips/copystr.S
Modified:
  projects/altix/sys/amd64/amd64/bpf_jit_machdep.c
  projects/altix/sys/amd64/amd64/bpf_jit_machdep.h
  projects/altix/sys/amd64/amd64/exception.S
  projects/altix/sys/amd64/amd64/identcpu.c
  projects/altix/sys/amd64/amd64/io.c
  projects/altix/sys/amd64/amd64/local_apic.c
  projects/altix/sys/amd64/amd64/pmap.c
  projects/altix/sys/amd64/amd64/trap.c
  projects/altix/sys/amd64/conf/GENERIC
  projects/altix/sys/amd64/ia32/ia32_signal.c
  projects/altix/sys/amd64/include/iodev.h
  projects/altix/sys/amd64/include/pmap.h
  projects/altix/sys/amd64/include/proc.h
  projects/altix/sys/amd64/include/specialreg.h
  projects/altix/sys/amd64/include/vmparam.h
  projects/altix/sys/amd64/include/xen/xenfunc.h
  projects/altix/sys/amd64/include/xen/xenvar.h
  projects/altix/sys/arm/arm/cpufunc.c
  projects/altix/sys/arm/arm/cpufunc_asm_fa526.S
  projects/altix/sys/arm/arm/elf_trampoline.c
  projects/altix/sys/arm/arm/identcpu.c
  projects/altix/sys/arm/arm/pmap.c
  projects/altix/sys/arm/at91/if_ate.c
  projects/altix/sys/arm/conf/DB-78XXX
  projects/altix/sys/arm/conf/DB-88F5XXX
  projects/altix/sys/arm/conf/DB-88F6XXX
  projects/altix/sys/arm/conf/HL200
  projects/altix/sys/arm/conf/KB920X
  projects/altix/sys/arm/conf/LN2410SBC
  projects/altix/sys/arm/conf/SHEEVAPLUG
  projects/altix/sys/arm/include/cpuconf.h
  projects/altix/sys/arm/include/cpufunc.h
  projects/altix/sys/arm/include/pmap.h
  projects/altix/sys/arm/include/proc.h
  projects/altix/sys/arm/mv/files.mv
  projects/altix/sys/arm/xscale/ixp425/if_npe.c
  projects/altix/sys/boot/forth/loader.conf
  projects/altix/sys/boot/sparc64/loader/main.c
  projects/altix/sys/cam/ata/ata_da.c
  projects/altix/sys/cam/ata/ata_pmp.c
  projects/altix/sys/cam/ata/ata_xpt.c
  projects/altix/sys/cam/cam_ccb.h
  projects/altix/sys/cam/cam_xpt.c
  projects/altix/sys/cam/scsi/scsi_cd.c
  projects/altix/sys/cddl/compat/opensolaris/kern/opensolaris_taskq.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
  projects/altix/sys/cddl/dev/cyclic/i386/cyclic_machdep.c
  projects/altix/sys/compat/freebsd32/freebsd32.h
  projects/altix/sys/compat/freebsd32/freebsd32_misc.c
  projects/altix/sys/compat/freebsd32/freebsd32_util.h
  projects/altix/sys/compat/linprocfs/linprocfs.c
  projects/altix/sys/compat/linux/linux_ioctl.c
  projects/altix/sys/compat/x86bios/x86bios.c
  projects/altix/sys/conf/NOTES
  projects/altix/sys/conf/files
  projects/altix/sys/conf/files.mips
  projects/altix/sys/conf/files.sparc64
  projects/altix/sys/conf/files.sun4v
  projects/altix/sys/conf/kern.pre.mk
  projects/altix/sys/conf/kmod.mk
  projects/altix/sys/conf/options
  projects/altix/sys/conf/options.arm
  projects/altix/sys/contrib/dev/acpica/acpica_prep.sh
  projects/altix/sys/contrib/dev/acpica/changes.txt
  projects/altix/sys/contrib/dev/acpica/common/adisasm.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslcompile.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslcompiler.h
  projects/altix/sys/contrib/dev/acpica/compiler/asldefine.h
  projects/altix/sys/contrib/dev/acpica/compiler/aslfiles.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslglobal.h
  projects/altix/sys/contrib/dev/acpica/compiler/asllisting.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslmain.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslpredef.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslresource.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype1.c
  projects/altix/sys/contrib/dev/acpica/compiler/aslrestype2.c
  projects/altix/sys/contrib/dev/acpica/compiler/asltypes.h
  projects/altix/sys/contrib/dev/acpica/debugger/dbcmds.c
  projects/altix/sys/contrib/dev/acpica/debugger/dbdisply.c
  projects/altix/sys/contrib/dev/acpica/events/evgpe.c
  projects/altix/sys/contrib/dev/acpica/events/evgpeblk.c
  projects/altix/sys/contrib/dev/acpica/executer/exconfig.c
  projects/altix/sys/contrib/dev/acpica/executer/exoparg1.c
  projects/altix/sys/contrib/dev/acpica/executer/exsystem.c
  projects/altix/sys/contrib/dev/acpica/include/acevents.h
  projects/altix/sys/contrib/dev/acpica/include/acglobal.h
  projects/altix/sys/contrib/dev/acpica/include/acinterp.h
  projects/altix/sys/contrib/dev/acpica/include/aclocal.h
  projects/altix/sys/contrib/dev/acpica/include/acpiosxf.h
  projects/altix/sys/contrib/dev/acpica/include/acpixf.h
  projects/altix/sys/contrib/dev/acpica/include/actypes.h
  projects/altix/sys/contrib/dev/acpica/include/amlresrc.h
  projects/altix/sys/contrib/dev/acpica/osunixxf.c
  projects/altix/sys/contrib/dev/acpica/tables/tbfind.c
  projects/altix/sys/contrib/dev/acpica/tables/tbinstal.c
  projects/altix/sys/contrib/dev/acpica/tables/tbutils.c
  projects/altix/sys/contrib/dev/acpica/tables/tbxface.c
  projects/altix/sys/contrib/dev/acpica/utilities/utcopy.c
  projects/altix/sys/contrib/dev/acpica/utilities/utglobal.c
  projects/altix/sys/contrib/dev/acpica/utilities/uttrack.c
  projects/altix/sys/contrib/ipfilter/netinet/ip_auth.c
  projects/altix/sys/contrib/ipfilter/netinet/ip_compat.h
  projects/altix/sys/ddb/db_sym.c
  projects/altix/sys/dev/acpica/Osd/OsdHardware.c
  projects/altix/sys/dev/ae/if_ae.c
  projects/altix/sys/dev/age/if_age.c
  projects/altix/sys/dev/agp/agp.c
  projects/altix/sys/dev/agp/agp_i810.c
  projects/altix/sys/dev/ahci/ahci.c
  projects/altix/sys/dev/ahci/ahci.h
  projects/altix/sys/dev/alc/if_alc.c
  projects/altix/sys/dev/ale/if_ale.c
  projects/altix/sys/dev/an/if_an.c
  projects/altix/sys/dev/ata/ata-all.c
  projects/altix/sys/dev/ata/ata-queue.c
  projects/altix/sys/dev/ata/chipsets/ata-acerlabs.c
  projects/altix/sys/dev/ath/ath_hal/ar5212/ar5212_reset.c
  projects/altix/sys/dev/ath/if_ath.c
  projects/altix/sys/dev/atkbdc/atkbdc.c
  projects/altix/sys/dev/atkbdc/atkbdc_ebus.c
  projects/altix/sys/dev/atkbdc/atkbdc_isa.c
  projects/altix/sys/dev/atkbdc/atkbdcreg.h
  projects/altix/sys/dev/bce/if_bce.c
  projects/altix/sys/dev/bce/if_bcereg.h
  projects/altix/sys/dev/bge/if_bge.c
  projects/altix/sys/dev/bwi/if_bwi.c
  projects/altix/sys/dev/bwn/if_bwn.c
  projects/altix/sys/dev/cas/if_cas.c
  projects/altix/sys/dev/cas/if_casreg.h
  projects/altix/sys/dev/ce/if_ce.c
  projects/altix/sys/dev/ciss/ciss.c
  projects/altix/sys/dev/cm/smc90cx6.c
  projects/altix/sys/dev/cp/if_cp.c
  projects/altix/sys/dev/cs/if_cs.c
  projects/altix/sys/dev/ctau/if_ct.c
  projects/altix/sys/dev/cx/if_cx.c
  projects/altix/sys/dev/cxgb/cxgb_adapter.h
  projects/altix/sys/dev/cxgb/cxgb_ioctl.h
  projects/altix/sys/dev/cxgb/cxgb_main.c
  projects/altix/sys/dev/cxgb/cxgb_sge.c
  projects/altix/sys/dev/cxgb/sys/mvec.h
  projects/altix/sys/dev/cxgb/sys/uipc_mvec.c
  projects/altix/sys/dev/drm/ati_pcigart.c
  projects/altix/sys/dev/drm/drmP.h
  projects/altix/sys/dev/drm/drm_bufs.c
  projects/altix/sys/dev/drm/drm_context.c
  projects/altix/sys/dev/drm/drm_drv.c
  projects/altix/sys/dev/drm/drm_hashtab.c
  projects/altix/sys/dev/drm/drm_memory.c
  projects/altix/sys/dev/drm/drm_mm.c
  projects/altix/sys/dev/drm/drm_scatter.c
  projects/altix/sys/dev/drm/drm_sman.c
  projects/altix/sys/dev/drm/drm_sysctl.c
  projects/altix/sys/dev/drm/drm_vm.c
  projects/altix/sys/dev/drm/i915_dma.c
  projects/altix/sys/dev/drm/mach64_dma.c
  projects/altix/sys/dev/drm/mga_dma.c
  projects/altix/sys/dev/drm/mga_warp.c
  projects/altix/sys/dev/drm/r128_cce.c
  projects/altix/sys/dev/drm/r128_state.c
  projects/altix/sys/dev/drm/r600_blit.c
  projects/altix/sys/dev/drm/r600_cp.c
  projects/altix/sys/dev/drm/radeon_cp.c
  projects/altix/sys/dev/drm/radeon_cs.c
  projects/altix/sys/dev/drm/radeon_state.c
  projects/altix/sys/dev/drm/savage_bci.c
  projects/altix/sys/dev/drm/via_dma.c
  projects/altix/sys/dev/drm/via_dmablit.c
  projects/altix/sys/dev/drm/via_map.c
  projects/altix/sys/dev/drm/via_mm.c
  projects/altix/sys/dev/drm/via_video.c
  projects/altix/sys/dev/e1000/if_em.c
  projects/altix/sys/dev/e1000/if_igb.c
  projects/altix/sys/dev/e1000/if_lem.c
  projects/altix/sys/dev/ed/if_ed.c
  projects/altix/sys/dev/ep/if_ep.c
  projects/altix/sys/dev/esp/esp_sbus.c
  projects/altix/sys/dev/ex/if_ex.c
  projects/altix/sys/dev/fe/if_fe.c
  projects/altix/sys/dev/fxp/if_fxp.c
  projects/altix/sys/dev/hwpmc/hwpmc_core.c
  projects/altix/sys/dev/hwpmc/hwpmc_mod.c
  projects/altix/sys/dev/hwpmc/pmc_events.h
  projects/altix/sys/dev/ie/if_ie.c
  projects/altix/sys/dev/iicbus/if_ic.c
  projects/altix/sys/dev/io/iodev.c
  projects/altix/sys/dev/ipw/if_ipw.c
  projects/altix/sys/dev/ipw/if_ipwvar.h
  projects/altix/sys/dev/isp/isp_pci.c
  projects/altix/sys/dev/isp/isp_sbus.c
  projects/altix/sys/dev/iwi/if_iwi.c
  projects/altix/sys/dev/iwn/if_iwn.c
  projects/altix/sys/dev/ixgbe/ixgbe.c
  projects/altix/sys/dev/le/lance.c
  projects/altix/sys/dev/malo/if_malo.c
  projects/altix/sys/dev/md/md.c
  projects/altix/sys/dev/mii/brgphy.c
  projects/altix/sys/dev/mii/e1000phy.c
  projects/altix/sys/dev/mii/miidevs
  projects/altix/sys/dev/mpt/mpt.c
  projects/altix/sys/dev/mpt/mpt.h
  projects/altix/sys/dev/mpt/mpt_cam.c
  projects/altix/sys/dev/mpt/mpt_pci.c
  projects/altix/sys/dev/msk/if_msk.c
  projects/altix/sys/dev/msk/if_mskreg.h
  projects/altix/sys/dev/mwl/if_mwl.c
  projects/altix/sys/dev/mxge/if_mxge.c
  projects/altix/sys/dev/mxge/if_mxge_var.h
  projects/altix/sys/dev/my/if_my.c
  projects/altix/sys/dev/nfe/if_nfe.c
  projects/altix/sys/dev/nxge/if_nxge.c
  projects/altix/sys/dev/pdq/pdq_ifsubr.c
  projects/altix/sys/dev/ppbus/if_plip.c
  projects/altix/sys/dev/quicc/quicc_bfe.h
  projects/altix/sys/dev/ral/rt2560.c
  projects/altix/sys/dev/ral/rt2661.c
  projects/altix/sys/dev/re/if_re.c
  projects/altix/sys/dev/sbni/if_sbni.c
  projects/altix/sys/dev/siis/siis.c
  projects/altix/sys/dev/siis/siis.h
  projects/altix/sys/dev/sis/if_sis.c
  projects/altix/sys/dev/smc/if_smc.c
  projects/altix/sys/dev/sn/if_sn.c
  projects/altix/sys/dev/snc/dp83932.c
  projects/altix/sys/dev/sound/pcm/buffer.c
  projects/altix/sys/dev/sound/pcm/buffer.h
  projects/altix/sys/dev/sound/usb/uaudio.c
  projects/altix/sys/dev/sym/sym_hipd.c
  projects/altix/sys/dev/ti/if_ti.c
  projects/altix/sys/dev/uart/uart_dev_ns8250.c
  projects/altix/sys/dev/usb/controller/ehci.c
  projects/altix/sys/dev/usb/controller/uhci.c
  projects/altix/sys/dev/usb/controller/uss820dci.c
  projects/altix/sys/dev/usb/input/atp.c
  projects/altix/sys/dev/usb/input/uhid.c
  projects/altix/sys/dev/usb/input/ukbd.c
  projects/altix/sys/dev/usb/input/ums.c
  projects/altix/sys/dev/usb/misc/udbp.c
  projects/altix/sys/dev/usb/net/if_aue.c
  projects/altix/sys/dev/usb/net/if_axe.c
  projects/altix/sys/dev/usb/net/if_cdce.c
  projects/altix/sys/dev/usb/net/if_cue.c
  projects/altix/sys/dev/usb/net/if_kue.c
  projects/altix/sys/dev/usb/net/if_rue.c
  projects/altix/sys/dev/usb/net/if_udav.c
  projects/altix/sys/dev/usb/net/uhso.c
  projects/altix/sys/dev/usb/net/usb_ethernet.c
  projects/altix/sys/dev/usb/serial/u3g.c
  projects/altix/sys/dev/usb/serial/ubsa.c
  projects/altix/sys/dev/usb/serial/ubser.c
  projects/altix/sys/dev/usb/serial/uchcom.c
  projects/altix/sys/dev/usb/serial/uftdi.c
  projects/altix/sys/dev/usb/serial/ulpt.c
  projects/altix/sys/dev/usb/serial/umodem.c
  projects/altix/sys/dev/usb/serial/umoscom.c
  projects/altix/sys/dev/usb/serial/uplcom.c
  projects/altix/sys/dev/usb/serial/usb_serial.c
  projects/altix/sys/dev/usb/serial/uslcom.c
  projects/altix/sys/dev/usb/serial/uvisor.c
  projects/altix/sys/dev/usb/serial/uvscom.c
  projects/altix/sys/dev/usb/storage/umass.c
  projects/altix/sys/dev/usb/storage/urio.c
  projects/altix/sys/dev/usb/storage/ustorage_fs.c
  projects/altix/sys/dev/usb/usb_compat_linux.c
  projects/altix/sys/dev/usb/usb_debug.h
  projects/altix/sys/dev/usb/usb_dev.c
  projects/altix/sys/dev/usb/usb_device.c
  projects/altix/sys/dev/usb/usb_device.h
  projects/altix/sys/dev/usb/usb_freebsd.h
  projects/altix/sys/dev/usb/usb_generic.c
  projects/altix/sys/dev/usb/usb_hub.c
  projects/altix/sys/dev/usb/usb_request.c
  projects/altix/sys/dev/usb/usb_transfer.c
  projects/altix/sys/dev/usb/usb_transfer.h
  projects/altix/sys/dev/usb/usbdevs
  projects/altix/sys/dev/usb/wlan/if_rum.c
  projects/altix/sys/dev/usb/wlan/if_run.c
  projects/altix/sys/dev/usb/wlan/if_uath.c
  projects/altix/sys/dev/usb/wlan/if_upgt.c
  projects/altix/sys/dev/usb/wlan/if_ural.c
  projects/altix/sys/dev/usb/wlan/if_urtw.c
  projects/altix/sys/dev/usb/wlan/if_zyd.c
  projects/altix/sys/dev/vx/if_vx.c
  projects/altix/sys/dev/wi/if_wi.c
  projects/altix/sys/dev/wl/if_wl.c
  projects/altix/sys/dev/wpi/if_wpi.c
  projects/altix/sys/dev/xe/if_xe.c
  projects/altix/sys/dev/xen/netfront/netfront.c
  projects/altix/sys/fs/devfs/devfs_devs.c
  projects/altix/sys/fs/devfs/devfs_int.h
  projects/altix/sys/fs/ext2fs/ext2_readwrite.c
  projects/altix/sys/fs/ext2fs/ext2_vnops.c
  projects/altix/sys/fs/msdosfs/msdosfs_vnops.c
  projects/altix/sys/fs/nfs/nfs_commonkrpc.c
  projects/altix/sys/fs/nfs/nfs_commonport.c
  projects/altix/sys/fs/nfs/nfs_var.h
  projects/altix/sys/fs/nfs/nfsclstate.h
  projects/altix/sys/fs/nfs/nfskpiport.h
  projects/altix/sys/fs/nfs/nfsport.h
  projects/altix/sys/fs/nfsclient/nfs.h
  projects/altix/sys/fs/nfsclient/nfs_clbio.c
  projects/altix/sys/fs/nfsclient/nfs_clnfsiod.c
  projects/altix/sys/fs/nfsclient/nfs_clnode.c
  projects/altix/sys/fs/nfsclient/nfs_clport.c
  projects/altix/sys/fs/nfsclient/nfs_clrpcops.c
  projects/altix/sys/fs/nfsclient/nfs_clstate.c
  projects/altix/sys/fs/nfsclient/nfs_clvfsops.c
  projects/altix/sys/fs/nfsclient/nfs_clvnops.c
  projects/altix/sys/fs/nfsserver/nfs_nfsdstate.c
  projects/altix/sys/fs/nwfs/nwfs_io.c
  projects/altix/sys/fs/pseudofs/pseudofs_vnops.c
  projects/altix/sys/fs/smbfs/smbfs_io.c
  projects/altix/sys/fs/tmpfs/tmpfs_vnops.c
  projects/altix/sys/geom/eli/g_eli.c
  projects/altix/sys/geom/geom.h
  projects/altix/sys/geom/geom_io.c
  projects/altix/sys/geom/geom_subr.c
  projects/altix/sys/geom/part/g_part.c
  projects/altix/sys/geom/part/g_part_apm.c
  projects/altix/sys/geom/part/g_part_bsd.c
  projects/altix/sys/geom/part/g_part_gpt.c
  projects/altix/sys/geom/part/g_part_if.m
  projects/altix/sys/geom/part/g_part_mbr.c
  projects/altix/sys/geom/part/g_part_pc98.c
  projects/altix/sys/geom/part/g_part_vtoc8.c
  projects/altix/sys/geom/vinum/geom_vinum_var.h
  projects/altix/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c
  projects/altix/sys/i386/conf/GENERIC
  projects/altix/sys/i386/conf/XBOX
  projects/altix/sys/i386/i386/bpf_jit_machdep.c
  projects/altix/sys/i386/i386/bpf_jit_machdep.h
  projects/altix/sys/i386/i386/identcpu.c
  projects/altix/sys/i386/i386/io.c
  projects/altix/sys/i386/i386/local_apic.c
  projects/altix/sys/i386/i386/pmap.c
  projects/altix/sys/i386/include/iodev.h
  projects/altix/sys/i386/include/pmap.h
  projects/altix/sys/i386/include/proc.h
  projects/altix/sys/i386/include/specialreg.h
  projects/altix/sys/i386/include/xen/xenfunc.h
  projects/altix/sys/i386/include/xen/xenvar.h
  projects/altix/sys/i386/xen/pmap.c
  projects/altix/sys/ia64/conf/GENERIC
  projects/altix/sys/ia64/ia64/iodev_machdep.c
  projects/altix/sys/ia64/ia64/pmap.c
  projects/altix/sys/ia64/include/iodev.h
  projects/altix/sys/ia64/include/pmap.h
  projects/altix/sys/ia64/include/proc.h
  projects/altix/sys/kern/imgact_elf.c
  projects/altix/sys/kern/kern_alq.c
  projects/altix/sys/kern/kern_clock.c
  projects/altix/sys/kern/kern_conf.c
  projects/altix/sys/kern/kern_descrip.c
  projects/altix/sys/kern/kern_exec.c
  projects/altix/sys/kern/kern_gzio.c
  projects/altix/sys/kern/kern_ktr.c
  projects/altix/sys/kern/kern_ntptime.c
  projects/altix/sys/kern/kern_proc.c
  projects/altix/sys/kern/kern_resource.c
  projects/altix/sys/kern/kern_shutdown.c
  projects/altix/sys/kern/kern_sig.c
  projects/altix/sys/kern/kern_thread.c
  projects/altix/sys/kern/subr_bufring.c
  projects/altix/sys/kern/subr_bus.c
  projects/altix/sys/kern/subr_taskqueue.c
  projects/altix/sys/kern/subr_uio.c
  projects/altix/sys/kern/subr_witness.c
  projects/altix/sys/kern/sys_pipe.c
  projects/altix/sys/kern/sys_process.c
  projects/altix/sys/kern/uipc_cow.c
  projects/altix/sys/kern/uipc_mbuf.c
  projects/altix/sys/kern/uipc_syscalls.c
  projects/altix/sys/kern/vfs_bio.c
  projects/altix/sys/kern/vfs_cache.c
  projects/altix/sys/kern/vfs_subr.c
  projects/altix/sys/kern/vfs_vnops.c
  projects/altix/sys/mips/adm5120/if_admsw.c
  projects/altix/sys/mips/atheros/if_arge.c
  projects/altix/sys/mips/cavium/asm_octeon.S
  projects/altix/sys/mips/cavium/dev/rgmii/octeon_fau.h
  projects/altix/sys/mips/cavium/dev/rgmii/octeon_rgmx.c
  projects/altix/sys/mips/cavium/files.octeon1
  projects/altix/sys/mips/cavium/octeon_machdep.c
  projects/altix/sys/mips/cavium/octeon_pcmap_regs.h
  projects/altix/sys/mips/cavium/uart_dev_oct16550.c
  projects/altix/sys/mips/conf/AR71XX
  projects/altix/sys/mips/conf/SENTRY5
  projects/altix/sys/mips/conf/SWARM
  projects/altix/sys/mips/conf/XLR
  projects/altix/sys/mips/include/_inttypes.h
  projects/altix/sys/mips/include/_limits.h
  projects/altix/sys/mips/include/asm.h
  projects/altix/sys/mips/include/cpu.h
  projects/altix/sys/mips/include/cpufunc.h
  projects/altix/sys/mips/include/cpuregs.h
  projects/altix/sys/mips/include/db_machdep.h
  projects/altix/sys/mips/include/param.h
  projects/altix/sys/mips/include/pcb.h
  projects/altix/sys/mips/include/pmap.h
  projects/altix/sys/mips/include/proc.h
  projects/altix/sys/mips/include/profile.h
  projects/altix/sys/mips/include/pte.h
  projects/altix/sys/mips/include/regnum.h
  projects/altix/sys/mips/include/sf_buf.h
  projects/altix/sys/mips/include/trap.h
  projects/altix/sys/mips/include/vmparam.h
  projects/altix/sys/mips/malta/gt_pci.c
  projects/altix/sys/mips/mips/autoconf.c
  projects/altix/sys/mips/mips/db_trace.c
  projects/altix/sys/mips/mips/exception.S
  projects/altix/sys/mips/mips/fp.S
  projects/altix/sys/mips/mips/genassym.c
  projects/altix/sys/mips/mips/locore.S
  projects/altix/sys/mips/mips/machdep.c
  projects/altix/sys/mips/mips/mem.c
  projects/altix/sys/mips/mips/mp_machdep.c
  projects/altix/sys/mips/mips/mpboot.S
  projects/altix/sys/mips/mips/nexus.c
  projects/altix/sys/mips/mips/pmap.c
  projects/altix/sys/mips/mips/psraccess.S
  projects/altix/sys/mips/mips/support.S
  projects/altix/sys/mips/mips/swtch.S
  projects/altix/sys/mips/mips/tick.c
  projects/altix/sys/mips/mips/tlb.S
  projects/altix/sys/mips/mips/trap.c
  projects/altix/sys/mips/mips/uio_machdep.c
  projects/altix/sys/mips/mips/vm_machdep.c
  projects/altix/sys/mips/rmi/clock.c
  projects/altix/sys/mips/sibyte/sb_machdep.c
  projects/altix/sys/modules/Makefile
  projects/altix/sys/modules/acpi/acpi/Makefile
  projects/altix/sys/modules/cyclic/Makefile
  projects/altix/sys/modules/usb/usb/Makefile
  projects/altix/sys/net/bpf.c
  projects/altix/sys/net/bpf_zerocopy.c
  projects/altix/sys/net/bpfdesc.h
  projects/altix/sys/net/flowtable.c
  projects/altix/sys/net/if.c
  projects/altix/sys/net/if_ef.c
  projects/altix/sys/net/if_gif.c
  projects/altix/sys/net/if_gif.h
  projects/altix/sys/net/if_gre.c
  projects/altix/sys/net/if_stf.c
  projects/altix/sys/net/route.c
  projects/altix/sys/net/rtsock.c
  projects/altix/sys/net/vnet.c
  projects/altix/sys/net/vnet.h
  projects/altix/sys/net80211/ieee80211.c
  projects/altix/sys/net80211/ieee80211_amrr.c
  projects/altix/sys/net80211/ieee80211_freebsd.h
  projects/altix/sys/net80211/ieee80211_ht.h
  projects/altix/sys/net80211/ieee80211_node.c
  projects/altix/sys/net80211/ieee80211_rssadapt.c
  projects/altix/sys/net80211/ieee80211_scan_sta.c
  projects/altix/sys/net80211/ieee80211_var.h
  projects/altix/sys/netgraph/ng_base.c
  projects/altix/sys/netgraph/ng_bridge.c
  projects/altix/sys/netgraph/ng_bridge.h
  projects/altix/sys/netgraph/ng_eiface.c
  projects/altix/sys/netgraph/ng_fec.c
  projects/altix/sys/netgraph/ng_hub.c
  projects/altix/sys/netgraph/ng_hub.h
  projects/altix/sys/netgraph/ng_iface.c
  projects/altix/sys/netgraph/ng_ksocket.c
  projects/altix/sys/netgraph/ng_pipe.c
  projects/altix/sys/netgraph/ng_tty.c
  projects/altix/sys/netinet/icmp6.h
  projects/altix/sys/netinet/if_ether.c
  projects/altix/sys/netinet/igmp.c
  projects/altix/sys/netinet/in.c
  projects/altix/sys/netinet/in_gif.c
  projects/altix/sys/netinet/in_proto.c
  projects/altix/sys/netinet/in_rmx.c
  projects/altix/sys/netinet/ip_dummynet.h
  projects/altix/sys/netinet/ip_icmp.c
  projects/altix/sys/netinet/ip_icmp.h
  projects/altix/sys/netinet/ip_input.c
  projects/altix/sys/netinet/ip_var.h
  projects/altix/sys/netinet/ipfw/dn_sched.h
  projects/altix/sys/netinet/ipfw/dn_sched_rr.c
  projects/altix/sys/netinet/ipfw/dn_sched_wf2q.c
  projects/altix/sys/netinet/ipfw/ip_dn_private.h
  projects/altix/sys/netinet/ipfw/ip_dummynet.c
  projects/altix/sys/netinet/ipfw/ip_fw_pfil.c
  projects/altix/sys/netinet/ipfw/ip_fw_private.h
  projects/altix/sys/netinet/raw_ip.c
  projects/altix/sys/netinet/sctp_asconf.c
  projects/altix/sys/netinet/sctp_indata.c
  projects/altix/sys/netinet/sctp_output.c
  projects/altix/sys/netinet/sctputil.c
  projects/altix/sys/netinet/tcp_hostcache.c
  projects/altix/sys/netinet/tcp_input.c
  projects/altix/sys/netinet/tcp_output.c
  projects/altix/sys/netinet/tcp_reass.c
  projects/altix/sys/netinet/tcp_sack.c
  projects/altix/sys/netinet/tcp_subr.c
  projects/altix/sys/netinet/tcp_syncache.c
  projects/altix/sys/netinet/tcp_timewait.c
  projects/altix/sys/netinet/tcp_var.h
  projects/altix/sys/netinet/udp_usrreq.c
  projects/altix/sys/netinet/udp_var.h
  projects/altix/sys/netinet6/frag6.c
  projects/altix/sys/netinet6/icmp6.c
  projects/altix/sys/netinet6/in6.c
  projects/altix/sys/netinet6/in6_gif.c
  projects/altix/sys/netinet6/in6_ifattach.c
  projects/altix/sys/netinet6/in6_proto.c
  projects/altix/sys/netinet6/in6_rmx.c
  projects/altix/sys/netinet6/in6_src.c
  projects/altix/sys/netinet6/in6_var.h
  projects/altix/sys/netinet6/ip6_input.c
  projects/altix/sys/netinet6/ip6_mroute.c
  projects/altix/sys/netinet6/ip6_var.h
  projects/altix/sys/netinet6/nd6.c
  projects/altix/sys/netinet6/nd6.h
  projects/altix/sys/netinet6/nd6_nbr.c
  projects/altix/sys/netinet6/nd6_rtr.c
  projects/altix/sys/netinet6/raw_ip6.c
  projects/altix/sys/netinet6/scope6.c
  projects/altix/sys/netipsec/ah_var.h
  projects/altix/sys/netipsec/esp_var.h
  projects/altix/sys/netipsec/ipcomp_var.h
  projects/altix/sys/netipsec/ipip_var.h
  projects/altix/sys/netipsec/ipsec.c
  projects/altix/sys/netipsec/ipsec.h
  projects/altix/sys/netipsec/ipsec6.h
  projects/altix/sys/netipsec/key.c
  projects/altix/sys/netipsec/xform_esp.c
  projects/altix/sys/nfsclient/nfs_bio.c
  projects/altix/sys/pc98/cbus/clock.c
  projects/altix/sys/pc98/conf/GENERIC
  projects/altix/sys/pc98/pc98/machdep.c
  projects/altix/sys/pci/if_rl.c
  projects/altix/sys/powerpc/aim/mmu_oea.c
  projects/altix/sys/powerpc/aim/mmu_oea64.c
  projects/altix/sys/powerpc/booke/pmap.c
  projects/altix/sys/powerpc/conf/GENERIC
  projects/altix/sys/powerpc/conf/MPC85XX
  projects/altix/sys/powerpc/include/pmap.h
  projects/altix/sys/powerpc/include/proc.h
  projects/altix/sys/powerpc/powerpc/mmu_if.m
  projects/altix/sys/powerpc/powerpc/pmap_dispatch.c
  projects/altix/sys/security/audit/audit_bsm.c
  projects/altix/sys/sparc64/conf/GENERIC
  projects/altix/sys/sparc64/include/asi.h
  projects/altix/sys/sparc64/include/cache.h
  projects/altix/sys/sparc64/include/ofw_machdep.h
  projects/altix/sys/sparc64/include/pmap.h
  projects/altix/sys/sparc64/include/proc.h
  projects/altix/sys/sparc64/isa/isa.c
  projects/altix/sys/sparc64/sparc64/cache.c
  projects/altix/sys/sparc64/sparc64/cheetah.c
  projects/altix/sys/sparc64/sparc64/identcpu.c
  projects/altix/sys/sparc64/sparc64/interrupt.S
  projects/altix/sys/sparc64/sparc64/locore.S
  projects/altix/sys/sparc64/sparc64/machdep.c
  projects/altix/sys/sparc64/sparc64/mp_locore.S
  projects/altix/sys/sparc64/sparc64/mp_machdep.c
  projects/altix/sys/sparc64/sparc64/nexus.c
  projects/altix/sys/sparc64/sparc64/ofw_machdep.c
  projects/altix/sys/sparc64/sparc64/pmap.c
  projects/altix/sys/sparc64/sparc64/tick.c
  projects/altix/sys/sun4v/conf/GENERIC
  projects/altix/sys/sun4v/include/ofw_machdep.h
  projects/altix/sys/sun4v/include/pmap.h
  projects/altix/sys/sun4v/include/proc.h
  projects/altix/sys/sun4v/sun4v/pmap.c
  projects/altix/sys/sys/_task.h
  projects/altix/sys/sys/alq.h
  projects/altix/sys/sys/buf.h
  projects/altix/sys/sys/buf_ring.h
  projects/altix/sys/sys/conf.h
  projects/altix/sys/sys/dtrace_bsd.h
  projects/altix/sys/sys/mbuf.h
  projects/altix/sys/sys/mount.h
  projects/altix/sys/sys/param.h
  projects/altix/sys/sys/proc.h
  projects/altix/sys/sys/resource.h
  projects/altix/sys/sys/resourcevar.h
  projects/altix/sys/sys/taskqueue.h
  projects/altix/sys/sys/thr.h
  projects/altix/sys/sys/user.h
  projects/altix/sys/sys/vmmeter.h
  projects/altix/sys/sys/vnode.h
  projects/altix/sys/ufs/ffs/ffs_alloc.c
  projects/altix/sys/ufs/ffs/ffs_balloc.c
  projects/altix/sys/ufs/ffs/ffs_extern.h
  projects/altix/sys/ufs/ffs/ffs_inode.c
  projects/altix/sys/ufs/ffs/ffs_snapshot.c
  projects/altix/sys/ufs/ffs/ffs_softdep.c
  projects/altix/sys/ufs/ffs/ffs_subr.c
  projects/altix/sys/ufs/ffs/ffs_vfsops.c
  projects/altix/sys/ufs/ffs/ffs_vnops.c
  projects/altix/sys/ufs/ffs/fs.h
  projects/altix/sys/ufs/ffs/softdep.h
  projects/altix/sys/ufs/ufs/dinode.h
  projects/altix/sys/ufs/ufs/inode.h
  projects/altix/sys/ufs/ufs/quota.h
  projects/altix/sys/ufs/ufs/ufs_dirhash.c
  projects/altix/sys/ufs/ufs/ufs_extern.h
  projects/altix/sys/ufs/ufs/ufs_lookup.c
  projects/altix/sys/ufs/ufs/ufs_quota.c
  projects/altix/sys/ufs/ufs/ufs_vfsops.c
  projects/altix/sys/ufs/ufs/ufs_vnops.c
  projects/altix/sys/ufs/ufs/ufsmount.h
  projects/altix/sys/vm/device_pager.c
  projects/altix/sys/vm/phys_pager.c
  projects/altix/sys/vm/pmap.h
  projects/altix/sys/vm/sg_pager.c
  projects/altix/sys/vm/swap_pager.c
  projects/altix/sys/vm/uma_core.c
  projects/altix/sys/vm/vm_contig.c
  projects/altix/sys/vm/vm_extern.h
  projects/altix/sys/vm/vm_fault.c
  projects/altix/sys/vm/vm_glue.c
  projects/altix/sys/vm/vm_kern.c
  projects/altix/sys/vm/vm_map.c
  projects/altix/sys/vm/vm_map.h
  projects/altix/sys/vm/vm_mmap.c
  projects/altix/sys/vm/vm_object.c
  projects/altix/sys/vm/vm_page.c
  projects/altix/sys/vm/vm_page.h
  projects/altix/sys/vm/vm_pageout.c
  projects/altix/sys/vm/vm_pageout.h
  projects/altix/sys/vm/vm_param.h
  projects/altix/sys/vm/vnode_pager.c
  projects/altix/sys/x86/isa/clock.c
Directory Properties:
  projects/altix/lib/libstand/   (props changed)
  projects/altix/sys/   (props changed)
  projects/altix/sys/amd64/include/xen/   (props changed)
  projects/altix/sys/cddl/contrib/opensolaris/   (props changed)
  projects/altix/sys/contrib/dev/acpica/   (props changed)
  projects/altix/sys/contrib/pf/   (props changed)
  projects/altix/sys/contrib/x86emu/   (props changed)
  projects/altix/sys/dev/xen/xenpci/   (props changed)
  projects/altix/sys/mips/rmi/debug.h   (props changed)
  projects/altix/sys/mips/rmi/dev/sec/desc.h   (props changed)
  projects/altix/sys/mips/rmi/msgring.h   (props changed)
  projects/altix/sys/mips/rmi/shared_structs.h   (props changed)
  projects/altix/sys/mips/rmi/shared_structs_func.h   (props changed)
  projects/altix/sys/mips/rmi/shared_structs_offsets.h   (props changed)

Modified: projects/altix/sys/amd64/amd64/bpf_jit_machdep.c
==============================================================================
--- projects/altix/sys/amd64/amd64/bpf_jit_machdep.c	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/bpf_jit_machdep.c	Sat May  8 20:08:01 2010	(r207795)
@@ -419,62 +419,77 @@ bpf_jit_compile(struct bpf_insn *prog, u
 				break;
 
 			case BPF_JMP|BPF_JA:
-				JMP(stream.refs[stream.bpf_pc + ins->k] -
-				    stream.refs[stream.bpf_pc]);
+				JUMP(ins->k);
 				break;
 
 			case BPF_JMP|BPF_JGT|BPF_K:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPid(ins->k, EAX);
 				JCC(JA, JBE);
 				break;
 
 			case BPF_JMP|BPF_JGE|BPF_K:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPid(ins->k, EAX);
 				JCC(JAE, JB);
 				break;
 
 			case BPF_JMP|BPF_JEQ|BPF_K:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPid(ins->k, EAX);
 				JCC(JE, JNE);
 				break;
 
 			case BPF_JMP|BPF_JSET|BPF_K:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				TESTid(ins->k, EAX);
 				JCC(JNE, JE);
 				break;
 
 			case BPF_JMP|BPF_JGT|BPF_X:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPrd(EDX, EAX);
 				JCC(JA, JBE);
 				break;
 
 			case BPF_JMP|BPF_JGE|BPF_X:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPrd(EDX, EAX);
 				JCC(JAE, JB);
 				break;
 
 			case BPF_JMP|BPF_JEQ|BPF_X:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				CMPrd(EDX, EAX);
 				JCC(JE, JNE);
 				break;
 
 			case BPF_JMP|BPF_JSET|BPF_X:
-				if (ins->jt == 0 && ins->jf == 0)
+				if (ins->jt == ins->jf) {
+					JUMP(ins->jt);
 					break;
+				}
 				TESTrd(EDX, EAX);
 				JCC(JNE, JE);
 				break;

Modified: projects/altix/sys/amd64/amd64/bpf_jit_machdep.h
==============================================================================
--- projects/altix/sys/amd64/amd64/bpf_jit_machdep.h	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/bpf_jit_machdep.h	Sat May  8 20:08:01 2010	(r207795)
@@ -473,4 +473,10 @@ typedef void (*emit_func)(bpf_bin_stream
 	}								\
 } while (0)
 
+#define	JUMP(off) do {							\
+	if ((off) != 0)							\
+		JMP(stream.refs[stream.bpf_pc + (off)] -		\
+		    stream.refs[stream.bpf_pc]);			\
+} while (0)
+
 #endif	/* _BPF_JIT_MACHDEP_H_ */

Modified: projects/altix/sys/amd64/amd64/exception.S
==============================================================================
--- projects/altix/sys/amd64/amd64/exception.S	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/exception.S	Sat May  8 20:08:01 2010	(r207795)
@@ -50,14 +50,14 @@
 	.bss
 	.globl	dtrace_invop_jump_addr
 	.align	8
-	.type	dtrace_invop_jump_addr, @object
-        .size	dtrace_invop_jump_addr, 8
+	.type	dtrace_invop_jump_addr, at object
+	.size	dtrace_invop_jump_addr,8
 dtrace_invop_jump_addr:
 	.zero	8
 	.globl	dtrace_invop_calltrap_addr
 	.align	8
-	.type	dtrace_invop_calltrap_addr, @object
-        .size	dtrace_invop_calltrap_addr, 8
+	.type	dtrace_invop_calltrap_addr, at object
+	.size	dtrace_invop_calltrap_addr,8
 dtrace_invop_calltrap_addr:
 	.zero	8
 #endif
@@ -157,7 +157,6 @@ IDTVEC(align)
 	 * kernel from userland.  Reenable interrupts if they were enabled
 	 * before the trap.  This approximates SDT_SYS386TGT on the i386 port.
 	 */
-
 	SUPERALIGN_TEXT
 	.globl	alltraps
 	.type	alltraps, at function
@@ -211,16 +210,16 @@ alltraps_pushregs_no_rdi:
 	 * Set our jump address for the jump back in the event that
 	 * the breakpoint wasn't caused by DTrace at all.
 	 */
-	movq	$calltrap, dtrace_invop_calltrap_addr(%rip)
+	movq	$calltrap,dtrace_invop_calltrap_addr(%rip)
 
 	/* Jump to the code hooked in by DTrace. */
-	movq	dtrace_invop_jump_addr, %rax
+	movq	dtrace_invop_jump_addr,%rax
 	jmpq	*dtrace_invop_jump_addr
 #endif
 	.globl	calltrap
 	.type	calltrap, at function
 calltrap:
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	MEXITCOUNT
 	jmp	doreti			/* Handle any pending ASTs */
@@ -274,9 +273,11 @@ IDTVEC(dblfault)
 	testb	$SEL_RPL_MASK,TF_CS(%rsp) /* Did we come from kernel? */
 	jz	1f			/* already running with kernel GS.base */
 	swapgs
-1:	movq	%rsp, %rdi
+1:
+	movq	%rsp,%rdi
 	call	dblfault_handler
-2:	hlt
+2:
+	hlt
 	jmp	2b
 
 IDTVEC(page)
@@ -369,7 +370,7 @@ IDTVEC(fast_syscall)
 	movq	%r15,TF_R15(%rsp)	/* C preserved */
 	movl	$TF_HASSEGS,TF_FLAGS(%rsp)
 	FAKE_MCOUNT(TF_RIP(%rsp))
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	syscall
 	movq	PCPU(CURPCB),%rax
 	andq	$~PCB_FULLCTX,PCB_FLAGS(%rax)
@@ -456,7 +457,7 @@ nmi_fromuserspace:
 /* Note: this label is also used by ddb and gdb: */
 nmi_calltrap:
 	FAKE_MCOUNT(TF_RIP(%rsp))
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	MEXITCOUNT
 #ifdef HWPMC_HOOKS
@@ -555,9 +556,9 @@ nmi_restoreregs:
 	iretq
 
 ENTRY(fork_trampoline)
-	movq	%r12, %rdi		/* function */
-	movq	%rbx, %rsi		/* arg1 */
-	movq	%rsp, %rdx		/* trapframe pointer */
+	movq	%r12,%rdi		/* function */
+	movq	%rbx,%rsi		/* arg1 */
+	movq	%rsp,%rdx		/* trapframe pointer */
 	call	fork_exit
 	MEXITCOUNT
 	jmp	doreti			/* Handle any ASTs */
@@ -628,7 +629,7 @@ doreti_ast:
 	testl	$TDF_ASTPENDING | TDF_NEEDRESCHED,TD_FLAGS(%rax)
 	je	doreti_exit
 	sti
-	movq	%rsp, %rdi			/* pass a pointer to the trapframe */
+	movq	%rsp,%rdi	/* pass a pointer to the trapframe */
 	call	ast
 	jmp	doreti_ast
 
@@ -648,8 +649,8 @@ doreti_exit:
 	 * Do not reload segment registers for kernel.
 	 * Since we do not reload segments registers with sane
 	 * values on kernel entry, descriptors referenced by
-	 * segments registers may be not valid. This is fatal
-	 * for the usermode, but is innocent for the kernel.
+	 * segments registers might be not valid.  This is fatal
+	 * for user mode, but is not a problem for the kernel.
 	 */
 	testb	$SEL_RPL_MASK,TF_CS(%rsp)
 	jz	ld_regs
@@ -662,14 +663,16 @@ do_segs:
 	/* Restore %fs and fsbase */
 	movw	TF_FS(%rsp),%ax
 	.globl	ld_fs
-ld_fs:	movw	%ax,%fs
+ld_fs:
+	movw	%ax,%fs
 	cmpw	$KUF32SEL,%ax
 	jne	1f
 	movl	$MSR_FSBASE,%ecx
 	movl	PCB_FSBASE(%r8),%eax
 	movl	PCB_FSBASE+4(%r8),%edx
 	.globl	ld_fsbase
-ld_fsbase: wrmsr
+ld_fsbase:
+	wrmsr
 1:
 	/* Restore %gs and gsbase */
 	movw	TF_GS(%rsp),%si
@@ -678,7 +681,8 @@ ld_fsbase: wrmsr
 	movl	$MSR_GSBASE,%ecx
 	rdmsr
 	.globl	ld_gs
-ld_gs:	movw	%si,%gs
+ld_gs:
+	movw	%si,%gs
 	wrmsr
 	popfq
 	cmpw	$KUG32SEL,%si
@@ -687,12 +691,17 @@ ld_gs:	movw	%si,%gs
 	movl	PCB_GSBASE(%r8),%eax
 	movl	PCB_GSBASE+4(%r8),%edx
 	.globl	ld_gsbase
-ld_gsbase: wrmsr
-1:	.globl	ld_es
-ld_es:	movw	TF_ES(%rsp),%es
+ld_gsbase:
+	wrmsr
+1:
+	.globl	ld_es
+ld_es:
+	movw	TF_ES(%rsp),%es
 	.globl	ld_ds
-ld_ds:	movw	TF_DS(%rsp),%ds
-ld_regs:movq	TF_RDI(%rsp),%rdi
+ld_ds:
+	movw	TF_DS(%rsp),%ds
+ld_regs:
+	movq	TF_RDI(%rsp),%rdi
 	movq	TF_RSI(%rsp),%rsi
 	movq	TF_RDX(%rsp),%rdx
 	movq	TF_RCX(%rsp),%rcx
@@ -711,7 +720,8 @@ ld_regs:movq	TF_RDI(%rsp),%rdi
 	jz	1f			/* keep running with kernel GS.base */
 	cli
 	swapgs
-1:	addq	$TF_RIP,%rsp		/* skip over tf_err, tf_trapno */
+1:
+	addq	$TF_RIP,%rsp		/* skip over tf_err, tf_trapno */
 	.globl	doreti_iret
 doreti_iret:
 	iretq
@@ -738,7 +748,8 @@ doreti_iret_fault:
 	testl	$PSL_I,TF_RFLAGS(%rsp)
 	jz	1f
 	sti
-1:	movw	%fs,TF_FS(%rsp)
+1:
+	movw	%fs,TF_FS(%rsp)
 	movw	%gs,TF_GS(%rsp)
 	movw	%es,TF_ES(%rsp)
 	movw	%ds,TF_DS(%rsp)
@@ -768,7 +779,7 @@ doreti_iret_fault:
 	.globl	ds_load_fault
 ds_load_fault:
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movw	$KUDSEL,TF_DS(%rsp)
 	jmp	doreti
@@ -777,7 +788,7 @@ ds_load_fault:
 	.globl	es_load_fault
 es_load_fault:
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movw	$KUDSEL,TF_ES(%rsp)
 	jmp	doreti
@@ -786,7 +797,7 @@ es_load_fault:
 	.globl	fs_load_fault
 fs_load_fault:
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movw	$KUF32SEL,TF_FS(%rsp)
 	jmp	doreti
@@ -796,7 +807,7 @@ fs_load_fault:
 gs_load_fault:
 	popfq
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movw	$KUG32SEL,TF_GS(%rsp)
 	jmp	doreti
@@ -805,7 +816,7 @@ gs_load_fault:
 	.globl	fsbase_load_fault
 fsbase_load_fault:
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movq	PCPU(CURTHREAD),%r8
 	movq	TD_PCB(%r8),%r8
@@ -815,9 +826,8 @@ fsbase_load_fault:
 	ALIGN_TEXT
 	.globl	gsbase_load_fault
 gsbase_load_fault:
-	popfq
 	movl	$T_PROTFLT,TF_TRAPNO(%rsp)
-	movq	%rsp, %rdi
+	movq	%rsp,%rdi
 	call	trap
 	movq	PCPU(CURTHREAD),%r8
 	movq	TD_PCB(%r8),%r8

Modified: projects/altix/sys/amd64/amd64/identcpu.c
==============================================================================
--- projects/altix/sys/amd64/amd64/identcpu.c	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/identcpu.c	Sat May  8 20:08:01 2010	(r207795)
@@ -240,7 +240,7 @@ printcpuinfo(void)
 				printf("\n  Features2=0x%b", cpu_feature2,
 				"\020"
 				"\001SSE3"	/* SSE3 */
-				"\002<b1>"
+				"\002PCLMULQDQ"	/* Carry-Less Mul Quadword */
 				"\003DTES64"	/* 64-bit Debug Trace */
 				"\004MON"	/* MONITOR/MWAIT Instructions */
 				"\005DS_CPL"	/* CPL Qualified Debug Store */
@@ -264,7 +264,7 @@ printcpuinfo(void)
 				"\027MOVBE"
 				"\030POPCNT"
 				"\031<b24>"
-				"\032<b25>"
+				"\032AESNI"	/* AES Crypto*/
 				"\033XSAVE"
 				"\034OSXSAVE"
 				"\035<b28>"

Modified: projects/altix/sys/amd64/amd64/io.c
==============================================================================
--- projects/altix/sys/amd64/amd64/io.c	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/io.c	Sat May  8 20:08:01 2010	(r207795)
@@ -28,60 +28,32 @@
 __FBSDID("$FreeBSD$");
 
 #include <sys/param.h>
-#include <sys/conf.h>
-#include <sys/fcntl.h>
-#include <sys/lock.h>
-#include <sys/malloc.h>
-#include <sys/mutex.h>
-#include <sys/priv.h>
 #include <sys/proc.h>
-#include <sys/signalvar.h>
-#include <sys/systm.h>
 
-#include <machine/db_machdep.h>
 #include <machine/frame.h>
-#include <machine/psl.h>
-#include <machine/specialreg.h>
-
-#include <vm/vm.h>
-#include <vm/pmap.h>
-
 #include <machine/iodev.h>
+#include <machine/psl.h>
 
-/* ARGSUSED */
 int
-ioopen(struct cdev *dev __unused, int flags __unused, int fmt __unused,
-    struct thread *td)
+iodev_open(struct thread *td)
 {
-	int error;
-
-	error = priv_check(td, PRIV_IO);
-	if (error != 0)
-		return (error);
-	error = securelevel_gt(td->td_ucred, 0);
-	if (error != 0)
-		return (error);
 
 	td->td_frame->tf_rflags |= PSL_IOPL;
-
 	return (0);
 }
 
-/* ARGSUSED */
 int
-ioclose(struct cdev *dev __unused, int flags __unused, int fmt __unused,
-    struct thread *td)
+iodev_close(struct thread *td)
 {
-	td->td_frame->tf_rflags &= ~PSL_IOPL;
 
+	td->td_frame->tf_rflags &= ~PSL_IOPL;
 	return (0);
 }
 
 /* ARGSUSED */
 int
-ioioctl(struct cdev *dev __unused, u_long cmd __unused, caddr_t data __unused,
-    int fflag __unused, struct thread *td __unused)
+iodev_ioctl(u_long cmd __unused, caddr_t data __unused)
 {
 
-	return (ENXIO);
+	return (ENOIOCTL);
 }

Modified: projects/altix/sys/amd64/amd64/local_apic.c
==============================================================================
--- projects/altix/sys/amd64/amd64/local_apic.c	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/local_apic.c	Sat May  8 20:08:01 2010	(r207795)
@@ -70,7 +70,7 @@ __FBSDID("$FreeBSD$");
 
 #ifdef KDTRACE_HOOKS
 #include <sys/dtrace_bsd.h>
-cyclic_clock_func_t	lapic_cyclic_clock_func[MAXCPU];
+cyclic_clock_func_t	cyclic_clock_func[MAXCPU];
 #endif
 
 /* Sanity checks on IDT vectors. */
@@ -778,8 +778,8 @@ lapic_handle_timer(struct trapframe *fra
 	 * timers.
 	 */
 	int cpu = PCPU_GET(cpuid);
-	if (lapic_cyclic_clock_func[cpu] != NULL)
-		(*lapic_cyclic_clock_func[cpu])(frame);
+	if (cyclic_clock_func[cpu] != NULL)
+		(*cyclic_clock_func[cpu])(frame);
 #endif
 
 	/* Fire hardclock at hz. */

Modified: projects/altix/sys/amd64/amd64/pmap.c
==============================================================================
--- projects/altix/sys/amd64/amd64/pmap.c	Sat May  8 20:02:39 2010	(r207794)
+++ projects/altix/sys/amd64/amd64/pmap.c	Sat May  8 20:08:01 2010	(r207795)
@@ -236,6 +236,7 @@ static void pmap_fill_ptp(pt_entry_t *fi
 static void pmap_insert_pt_page(pmap_t pmap, vm_page_t mpte);
 static void pmap_invalidate_cache_range(vm_offset_t sva, vm_offset_t eva);
 static boolean_t pmap_is_modified_pvh(struct md_page *pvh);
+static boolean_t pmap_is_referenced_pvh(struct md_page *pvh);
 static void pmap_kenter_attr(vm_offset_t va, vm_paddr_t pa, int mode);
 static vm_page_t pmap_lookup_pt_page(pmap_t pmap, vm_offset_t va);
 static void pmap_pde_attr(pd_entry_t *pde, int cache_bits);
@@ -283,7 +284,7 @@ pmap_kmem_choose(vm_offset_t addr)
 	vm_offset_t newaddr = addr;
 
 	newaddr = (addr + (NBPDR - 1)) & ~(NBPDR - 1);
-	return newaddr;
+	return (newaddr);
 }
 
 /********************/
@@ -294,7 +295,7 @@ pmap_kmem_choose(vm_offset_t addr)
 static __inline vm_pindex_t
 pmap_pde_pindex(vm_offset_t va)
 {
-	return va >> PDRSHIFT;
+	return (va >> PDRSHIFT);
 }
 
 
@@ -353,7 +354,7 @@ pmap_pdpe(pmap_t pmap, vm_offset_t va)
 
 	pml4e = pmap_pml4e(pmap, va);
 	if ((*pml4e & PG_V) == 0)
-		return NULL;
+		return (NULL);
 	return (pmap_pml4e_to_pdpe(pml4e, va));
 }
 
@@ -375,7 +376,7 @@ pmap_pde(pmap_t pmap, vm_offset_t va)
 
 	pdpe = pmap_pdpe(pmap, va);
 	if (pdpe == NULL || (*pdpe & PG_V) == 0)
-		 return NULL;
+		return (NULL);
 	return (pmap_pdpe_to_pde(pdpe, va));
 }
 
@@ -397,12 +398,27 @@ pmap_pte(pmap_t pmap, vm_offset_t va)
 
 	pde = pmap_pde(pmap, va);
 	if (pde == NULL || (*pde & PG_V) == 0)
-		return NULL;
+		return (NULL);
 	if ((*pde & PG_PS) != 0)	/* compat with i386 pmap_pte() */
 		return ((pt_entry_t *)pde);
 	return (pmap_pde_to_pte(pde, va));
 }
 
+static __inline void
+pmap_resident_count_inc(pmap_t pmap, int count)
+{
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	pmap->pm_stats.resident_count += count;
+}
+
+static __inline void
+pmap_resident_count_dec(pmap_t pmap, int count)
+{
+
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+	pmap->pm_stats.resident_count -= count;
+}
 
 PMAP_INLINE pt_entry_t *
 vtopte(vm_offset_t va)
@@ -777,7 +793,6 @@ static u_long pmap_pdpe_demotions;
 SYSCTL_ULONG(_vm_pmap_pdpe, OID_AUTO, demotions, CTLFLAG_RD,
     &pmap_pdpe_demotions, 0, "1GB page demotions");
 
-
 /***************************************************
  * Low level helper routines.....
  ***************************************************/
@@ -1184,15 +1199,20 @@ pmap_extract_and_hold(pmap_t pmap, vm_of
 {
 	pd_entry_t pde, *pdep;
 	pt_entry_t pte;
+	vm_paddr_t pa;
 	vm_page_t m;
 
+	pa = 0;
 	m = NULL;
-	vm_page_lock_queues();
 	PMAP_LOCK(pmap);
+retry:
 	pdep = pmap_pde(pmap, va);
 	if (pdep != NULL && (pde = *pdep)) {
 		if (pde & PG_PS) {
 			if ((pde & PG_RW) || (prot & VM_PROT_WRITE) == 0) {
+				if (vm_page_pa_tryrelock(pmap, (pde & PG_PS_FRAME) |
+				       (va & PDRMASK), &pa))
+					goto retry;
 				m = PHYS_TO_VM_PAGE((pde & PG_PS_FRAME) |
 				    (va & PDRMASK));
 				vm_page_hold(m);
@@ -1201,12 +1221,14 @@ pmap_extract_and_hold(pmap_t pmap, vm_of
 			pte = *pmap_pde_to_pte(pdep, va);
 			if ((pte & PG_V) &&
 			    ((pte & PG_RW) || (prot & VM_PROT_WRITE) == 0)) {
+				if (vm_page_pa_tryrelock(pmap, pte & PG_FRAME, &pa))
+					goto retry;
 				m = PHYS_TO_VM_PAGE(pte & PG_FRAME);
 				vm_page_hold(m);
 			}
 		}
 	}
-	vm_page_unlock_queues();
+	PA_UNLOCK_COND(pa);
 	PMAP_UNLOCK(pmap);
 	return (m);
 }
@@ -1236,7 +1258,7 @@ pmap_kextract(vm_offset_t va)
 			pa = (pa & PG_FRAME) | (va & PAGE_MASK);
 		}
 	}
-	return pa;
+	return (pa);
 }
 
 /***************************************************
@@ -1466,9 +1488,9 @@ pmap_unwire_pte_hold(pmap_t pmap, vm_off
 
 	--m->wire_count;
 	if (m->wire_count == 0)
-		return _pmap_unwire_pte_hold(pmap, va, m, free);
+		return (_pmap_unwire_pte_hold(pmap, va, m, free));
 	else
-		return 0;
+		return (0);
 }
 
 static int 
@@ -1476,6 +1498,7 @@ _pmap_unwire_pte_hold(pmap_t pmap, vm_of
     vm_page_t *free)
 {
 
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
 	/*
 	 * unmap the page table page
 	 */
@@ -1495,7 +1518,7 @@ _pmap_unwire_pte_hold(pmap_t pmap, vm_of
 		pd = pmap_pde(pmap, va);
 		*pd = 0;
 	}
-	--pmap->pm_stats.resident_count;
+	pmap_resident_count_dec(pmap, 1);
 	if (m->pindex < NUPDE) {
 		/* We just released a PT, unhold the matching PD */
 		vm_page_t pdpg;
@@ -1524,7 +1547,7 @@ _pmap_unwire_pte_hold(pmap_t pmap, vm_of
 	 */
 	pmap_add_delayed_free_list(m, free, TRUE);
 	
-	return 1;
+	return (1);
 }
 
 /*
@@ -1537,10 +1560,10 @@ pmap_unuse_pt(pmap_t pmap, vm_offset_t v
 	vm_page_t mpte;
 
 	if (va >= VM_MAXUSER_ADDRESS)
-		return 0;
+		return (0);
 	KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0"));
 	mpte = PHYS_TO_VM_PAGE(ptepde & PG_FRAME);
-	return pmap_unwire_pte_hold(pmap, va, mpte, free);
+	return (pmap_unwire_pte_hold(pmap, va, mpte, free));
 }
 
 void
@@ -1612,6 +1635,7 @@ _pmap_allocpte(pmap_t pmap, vm_pindex_t 
 	    (flags & (M_NOWAIT | M_WAITOK)) == M_WAITOK,
 	    ("_pmap_allocpte: flags is neither M_NOWAIT nor M_WAITOK"));
 
+	PMAP_LOCK_ASSERT(pmap, MA_OWNED);
 	/*
 	 * Allocate a page table page.
 	 */
@@ -1729,9 +1753,9 @@ _pmap_allocpte(pmap_t pmap, vm_pindex_t 
 		*pd = VM_PAGE_TO_PHYS(m) | PG_U | PG_RW | PG_V | PG_A | PG_M;
 	}
 
-	pmap->pm_stats.resident_count++;
+	pmap_resident_count_inc(pmap, 1);
 
-	return m;
+	return (m);
 }
 
 static vm_page_t
@@ -2036,7 +2060,7 @@ pmap_collect(pmap_t locked_pmap, struct 
 				PMAP_LOCK(pmap);
 			else if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap))
 				continue;
-			pmap->pm_stats.resident_count--;
+			pmap_resident_count_dec(pmap, 1);
 			pde = pmap_pde(pmap, va);
 			KASSERT((*pde & PG_PS) == 0, ("pmap_collect: found"
 			    " a 2mpage in page %p's pv list", m));
@@ -2437,7 +2461,7 @@ pmap_demote_pde(pmap_t pmap, pd_entry_t 
 			return (FALSE);
 		}
 		if (va < VM_MAXUSER_ADDRESS)
-			pmap->pm_stats.resident_count++;
+			pmap_resident_count_inc(pmap, 1);
 	}
 	mptepa = VM_PAGE_TO_PHYS(mpte);
 	firstpte = (pt_entry_t *)PHYS_TO_DMAP(mptepa);
@@ -2529,7 +2553,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t 
 	 */
 	if (oldpde & PG_G)
 		pmap_invalidate_page(kernel_pmap, sva);
-	pmap->pm_stats.resident_count -= NBPDR / PAGE_SIZE;
+	pmap_resident_count_dec(pmap, NBPDR / PAGE_SIZE);
 	if (oldpde & PG_MANAGED) {
 		pvh = pa_to_pvh(oldpde & PG_PS_FRAME);
 		pmap_pvh_free(pvh, pmap, sva);
@@ -2552,7 +2576,7 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t 
 		mpte = pmap_lookup_pt_page(pmap, sva);
 		if (mpte != NULL) {
 			pmap_remove_pt_page(pmap, mpte);
-			pmap->pm_stats.resident_count--;
+			pmap_resident_count_dec(pmap, 1);
 			KASSERT(mpte->wire_count == NPTEPG,
 			    ("pmap_remove_pde: pte page wire count error"));
 			mpte->wire_count = 0;
@@ -2583,7 +2607,7 @@ pmap_remove_pte(pmap_t pmap, pt_entry_t 
 	 */
 	if (oldpte & PG_G)
 		pmap_invalidate_page(kernel_pmap, va);
-	pmap->pm_stats.resident_count -= 1;
+	pmap_resident_count_dec(pmap, 1);
 	if (oldpte & PG_MANAGED) {
 		m = PHYS_TO_VM_PAGE(oldpte & PG_FRAME);
 		if ((oldpte & (PG_M | PG_RW)) == (PG_M | PG_RW))
@@ -2775,9 +2799,9 @@ pmap_remove_all(vm_page_t m)
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	while ((pv = TAILQ_FIRST(&pvh->pv_list)) != NULL) {
-		va = pv->pv_va;
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
+		va = pv->pv_va;
 		pde = pmap_pde(pmap, va);
 		(void)pmap_demote_pde(pmap, pde, va);
 		PMAP_UNLOCK(pmap);
@@ -2785,7 +2809,7 @@ pmap_remove_all(vm_page_t m)
 	while ((pv = TAILQ_FIRST(&m->md.pv_list)) != NULL) {
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
-		pmap->pm_stats.resident_count--;
+		pmap_resident_count_dec(pmap, 1);
 		pde = pmap_pde(pmap, pv->pv_va);
 		KASSERT((*pde & PG_PS) == 0, ("pmap_remove_all: found"
 		    " a 2mpage in page %p's pv list", m));
@@ -2832,18 +2856,9 @@ retry:
 	if (oldpde & PG_MANAGED) {
 		eva = sva + NBPDR;
 		for (va = sva, m = PHYS_TO_VM_PAGE(oldpde & PG_PS_FRAME);
-		    va < eva; va += PAGE_SIZE, m++) {
-			/*
-			 * In contrast to the analogous operation on a 4KB page
-			 * mapping, the mapping's PG_A flag is not cleared and
-			 * the page's PG_REFERENCED flag is not set.  The
-			 * reason is that pmap_demote_pde() expects that a 2MB
-			 * page mapping with a stored page table page has PG_A
-			 * set.
-			 */
+		    va < eva; va += PAGE_SIZE, m++)
 			if ((oldpde & (PG_M | PG_RW)) == (PG_M | PG_RW))
 				vm_page_dirty(m);
-		}
 	}
 	if ((prot & VM_PROT_WRITE) == 0)
 		newpde &= ~(PG_RW | PG_M);
@@ -2952,23 +2967,15 @@ retry:
 			obits = pbits = *pte;
 			if ((pbits & PG_V) == 0)
 				continue;
-			if (pbits & PG_MANAGED) {
-				m = NULL;
-				if (pbits & PG_A) {
+
+			if ((prot & VM_PROT_WRITE) == 0) {
+				if ((pbits & (PG_MANAGED | PG_M | PG_RW)) ==
+				    (PG_MANAGED | PG_M | PG_RW)) {
 					m = PHYS_TO_VM_PAGE(pbits & PG_FRAME);
-					vm_page_flag_set(m, PG_REFERENCED);
-					pbits &= ~PG_A;
-				}
-				if ((pbits & (PG_M | PG_RW)) == (PG_M | PG_RW)) {
-					if (m == NULL)
-						m = PHYS_TO_VM_PAGE(pbits &
-						    PG_FRAME);
 					vm_page_dirty(m);
 				}
-			}
-
-			if ((prot & VM_PROT_WRITE) == 0)
 				pbits &= ~(PG_RW | PG_M);
+			}
 			if ((prot & VM_PROT_EXECUTE) == 0)
 				pbits |= pg_nx;
 
@@ -3142,9 +3149,8 @@ pmap_enter(pmap_t pmap, vm_offset_t va, 
 	 * In the case that a page table page is not
 	 * resident, we are creating it here.
 	 */
-	if (va < VM_MAXUSER_ADDRESS) {
+	if (va < VM_MAXUSER_ADDRESS)
 		mpte = pmap_allocpte(pmap, va, M_WAITOK);
-	}
 
 	pde = pmap_pde(pmap, va);
 	if (pde != NULL && (*pde & PG_V) != 0) {
@@ -3208,7 +3214,7 @@ pmap_enter(pmap_t pmap, vm_offset_t va, 
 			     " va: 0x%lx", va));
 		}
 	} else
-		pmap->pm_stats.resident_count++;
+		pmap_resident_count_inc(pmap, 1);
 
 	/*
 	 * Enter on the PV list if part of our managed memory.
@@ -3342,7 +3348,7 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t 
 	/*
 	 * Increment counters.
 	 */
-	pmap->pm_stats.resident_count += NBPDR / PAGE_SIZE;
+	pmap_resident_count_inc(pmap, NBPDR / PAGE_SIZE);
 
 	/*
 	 * Map the superpage.
@@ -3392,7 +3398,7 @@ pmap_enter_object(pmap_t pmap, vm_offset
 			    mpte);
 		m = TAILQ_NEXT(m, listq);
 	}
- 	PMAP_UNLOCK(pmap);
+	PMAP_UNLOCK(pmap);
 }
 
 /*
@@ -3496,7 +3502,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_
 	/*
 	 * Increment counters
 	 */
-	pmap->pm_stats.resident_count++;
+	pmap_resident_count_inc(pmap, 1);
 
 	pa = VM_PAGE_TO_PHYS(m) | pmap_cache_bits(m->md.pat_mode, 0);
 	if ((prot & VM_PROT_EXECUTE) == 0)
@@ -3509,7 +3515,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_
 		pte_store(pte, pa | PG_V | PG_U);
 	else
 		pte_store(pte, pa | PG_V | PG_U | PG_MANAGED);
-	return mpte;
+	return (mpte);
 }
 
 /*
@@ -3601,8 +3607,7 @@ pmap_object_init_pt(pmap_t pmap, vm_offs
 			if ((*pde & PG_V) == 0) {
 				pde_store(pde, pa | PG_PS | PG_M | PG_A |
 				    PG_U | PG_RW | PG_V);
-				pmap->pm_stats.resident_count += NBPDR /
-				    PAGE_SIZE;
+				pmap_resident_count_inc(pmap, NBPDR / PAGE_SIZE);
 				pmap_pde_mappings++;
 			} else {
 				/* Continue on if the PDE is already valid. */
@@ -3669,8 +3674,6 @@ out:
 	PMAP_UNLOCK(pmap);
 }
 
-
-
 /*
  *	Copy the range specified by src_addr/len
  *	from the source map to the range dst_addr/len
@@ -3745,8 +3748,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pm
 			    pmap_pv_insert_pde(dst_pmap, addr, srcptepaddr &
 			    PG_PS_FRAME))) {
 				*pde = srcptepaddr & ~PG_W;
-				dst_pmap->pm_stats.resident_count +=
-				    NBPDR / PAGE_SIZE;
+				pmap_resident_count_inc(dst_pmap, NBPDR / PAGE_SIZE);
 			} else
 				dstmpde->wire_count--;
 			continue;
@@ -3789,7 +3791,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pm
 					 */
 					*dst_pte = ptetemp & ~(PG_W | PG_M |
 					    PG_A);
-					dst_pmap->pm_stats.resident_count++;
+					pmap_resident_count_inc(dst_pmap, 1);
 	 			} else {
 					free = NULL;
 					if (pmap_unwire_pte_hold(dst_pmap,
@@ -3886,12 +3888,12 @@ pmap_page_exists_quick(pmap_t pmap, vm_p
 	int loops = 0;
 
 	if (m->flags & PG_FICTITIOUS)
-		return FALSE;
+		return (FALSE);
 
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	TAILQ_FOREACH(pv, &m->md.pv_list, pv_list) {
 		if (PV_PMAP(pv) == pmap) {
-			return TRUE;
+			return (TRUE);
 		}
 		loops++;
 		if (loops >= 16)
@@ -3959,16 +3961,15 @@ pmap_pvh_wired_mappings(struct md_page *
 boolean_t
 pmap_page_is_mapped(vm_page_t m)
 {
-	struct md_page *pvh;
+	boolean_t rv;
 
 	if ((m->flags & (PG_FICTITIOUS | PG_UNMANAGED)) != 0)
 		return (FALSE);
-	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
-	if (TAILQ_EMPTY(&m->md.pv_list)) {
-		pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
-		return (!TAILQ_EMPTY(&pvh->pv_list));
-	} else
-		return (TRUE);
+	vm_page_lock_queues();
+	rv = !TAILQ_EMPTY(&m->md.pv_list) ||
+	    !TAILQ_EMPTY(&pa_to_pvh(VM_PAGE_TO_PHYS(m))->pv_list);
+	vm_page_unlock_queues();
+	return (rv);
 }
 
 /*
@@ -4062,7 +4063,7 @@ pmap_remove_pages(pmap_t pmap)
 				pv_entry_count--;
 				pc->pc_map[field] |= bitmask;
 				if ((tpte & PG_PS) != 0) {
-					pmap->pm_stats.resident_count -= NBPDR / PAGE_SIZE;
+					pmap_resident_count_dec(pmap, NBPDR / PAGE_SIZE);
 					pvh = pa_to_pvh(tpte & PG_PS_FRAME);
 					TAILQ_REMOVE(&pvh->pv_list, pv, pv_list);
 					if (TAILQ_EMPTY(&pvh->pv_list)) {
@@ -4073,7 +4074,7 @@ pmap_remove_pages(pmap_t pmap)
 					mpte = pmap_lookup_pt_page(pmap, pv->pv_va);
 					if (mpte != NULL) {
 						pmap_remove_pt_page(pmap, mpte);
-						pmap->pm_stats.resident_count--;
+						pmap_resident_count_dec(pmap, 1);
 						KASSERT(mpte->wire_count == NPTEPG,
 						    ("pmap_remove_pages: pte page wire count error"));
 						mpte->wire_count = 0;
@@ -4081,7 +4082,7 @@ pmap_remove_pages(pmap_t pmap)
 						atomic_subtract_int(&cnt.v_wire_count, 1);
 					}
 				} else {
-					pmap->pm_stats.resident_count--;
+					pmap_resident_count_dec(pmap, 1);
 					TAILQ_REMOVE(&m->md.pv_list, pv, pv_list);
 					if (TAILQ_EMPTY(&m->md.pv_list)) {
 						pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
@@ -4178,6 +4179,49 @@ pmap_is_prefaultable(pmap_t pmap, vm_off
 }
 
 /*
+ *	pmap_is_referenced:
+ *
+ *	Return whether or not the specified physical page was referenced
+ *	in any physical maps.
+ */
+boolean_t
+pmap_is_referenced(vm_page_t m)
+{
+
+	if (m->flags & PG_FICTITIOUS)
+		return (FALSE);
+	if (pmap_is_referenced_pvh(&m->md))
+		return (TRUE);
+	return (pmap_is_referenced_pvh(pa_to_pvh(VM_PAGE_TO_PHYS(m))));
+}
+
+/*
+ * Returns TRUE if any of the given mappings were referenced and FALSE
+ * otherwise.  Both page and 2mpage mappings are supported.
+ */
+static boolean_t
+pmap_is_referenced_pvh(struct md_page *pvh)
+{
+	pv_entry_t pv;
+	pt_entry_t *pte;
+	pmap_t pmap;
+	boolean_t rv;
+
+	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
+	rv = FALSE;
+	TAILQ_FOREACH(pv, &pvh->pv_list, pv_list) {
+		pmap = PV_PMAP(pv);
+		PMAP_LOCK(pmap);
+		pte = pmap_pte(pmap, pv->pv_va);
+		rv = (*pte & (PG_A | PG_V)) == (PG_A | PG_V);
+		PMAP_UNLOCK(pmap);
+		if (rv)
+			break;
+	}
+	return (rv);
+}
+
+/*
  * Clear the write and modified bits in each of the given page's mappings.
  */
 void
@@ -4196,9 +4240,9 @@ pmap_remove_write(vm_page_t m)
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, next_pv) {
-		va = pv->pv_va;
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
+		va = pv->pv_va;
 		pde = pmap_pde(pmap, va);
 		if ((*pde & PG_RW) != 0)
 			(void)pmap_demote_pde(pmap, pde, va);
@@ -4254,9 +4298,9 @@ pmap_ts_referenced(vm_page_t m)
 	mtx_assert(&vm_page_queue_mtx, MA_OWNED);
 	pvh = pa_to_pvh(VM_PAGE_TO_PHYS(m));
 	TAILQ_FOREACH_SAFE(pv, &pvh->pv_list, pv_list, pvn) {
-		va = pv->pv_va;
 		pmap = PV_PMAP(pv);
 		PMAP_LOCK(pmap);
+		va = pv->pv_va;
 		pde = pmap_pde(pmap, va);

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


More information about the svn-src-projects mailing list