Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Jun 2011 20:19:18 +0000 (UTC)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r223022 - in projects/altix: lib/libstand sys sys/amd64/acpica sys/amd64/amd64 sys/amd64/conf sys/amd64/include sys/arm/arm sys/arm/include sys/boot/common sys/boot/forth sys/boot/i386/...
Message-ID:  <201106122019.p5CKJIdC039804@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marcel
Date: Sun Jun 12 20:19:17 2011
New Revision: 223022
URL: http://svn.freebsd.org/changeset/base/223022

Log:
  Sync with head@223020

Added:
  projects/altix/sys/boot/forth/beastie.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/beastie.4th.8
  projects/altix/sys/boot/forth/brand.4th
     - copied unchanged from r223020, head/sys/boot/forth/brand.4th
  projects/altix/sys/boot/forth/brand.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/brand.4th.8
  projects/altix/sys/boot/forth/check-password.4th
     - copied unchanged from r223020, head/sys/boot/forth/check-password.4th
  projects/altix/sys/boot/forth/check-password.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/check-password.4th.8
  projects/altix/sys/boot/forth/color.4th
     - copied unchanged from r223020, head/sys/boot/forth/color.4th
  projects/altix/sys/boot/forth/color.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/color.4th.8
  projects/altix/sys/boot/forth/delay.4th
     - copied unchanged from r223020, head/sys/boot/forth/delay.4th
  projects/altix/sys/boot/forth/delay.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/delay.4th.8
  projects/altix/sys/boot/forth/menu-commands.4th
     - copied unchanged from r223020, head/sys/boot/forth/menu-commands.4th
  projects/altix/sys/boot/forth/menu.4th
     - copied unchanged from r223020, head/sys/boot/forth/menu.4th
  projects/altix/sys/boot/forth/menu.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/menu.4th.8
  projects/altix/sys/boot/forth/menu.rc
     - copied unchanged from r223020, head/sys/boot/forth/menu.rc
  projects/altix/sys/boot/forth/shortcuts.4th
     - copied unchanged from r223020, head/sys/boot/forth/shortcuts.4th
  projects/altix/sys/boot/forth/version.4th
     - copied unchanged from r223020, head/sys/boot/forth/version.4th
  projects/altix/sys/boot/forth/version.4th.8
     - copied unchanged from r223020, head/sys/boot/forth/version.4th.8
  projects/altix/sys/boot/ia64/common/icache.c
     - copied unchanged from r223020, head/sys/boot/ia64/common/icache.c
  projects/altix/sys/dev/ath/ath_dfs/
     - copied from r223020, head/sys/dev/ath/ath_dfs/
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287.c
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287.h
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287.ini
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287.ini
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_cal.c
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_cal.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_cal.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_cal.h
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_olc.c
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_olc.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_olc.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_olc.h
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_reset.c
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_reset.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287_reset.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287_reset.h
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287an.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287an.h
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9287phy.h
     - copied unchanged from r223020, head/sys/dev/ath/ath_hal/ar9002/ar9287phy.h
  projects/altix/sys/dev/ath/if_athdfs.h
     - copied unchanged from r223020, head/sys/dev/ath/if_athdfs.h
  projects/altix/sys/dev/cxgbe/common/jhash.h
     - copied unchanged from r223020, head/sys/dev/cxgbe/common/jhash.h
  projects/altix/sys/dev/cxgbe/t4_l2t.c
     - copied unchanged from r223020, head/sys/dev/cxgbe/t4_l2t.c
  projects/altix/sys/dev/cxgbe/t4_l2t.h
     - copied unchanged from r223020, head/sys/dev/cxgbe/t4_l2t.h
  projects/altix/sys/dev/glxiic/
     - copied from r223020, head/sys/dev/glxiic/
  projects/altix/sys/dev/iicbus/ad7417.c
     - copied unchanged from r223020, head/sys/dev/iicbus/ad7417.c
  projects/altix/sys/dev/usb/serial/umcs.c
     - copied unchanged from r223020, head/sys/dev/usb/serial/umcs.c
  projects/altix/sys/dev/usb/serial/umcs.h
     - copied unchanged from r223020, head/sys/dev/usb/serial/umcs.h
  projects/altix/sys/modules/glxiic/
     - copied from r223020, head/sys/modules/glxiic/
  projects/altix/sys/modules/usb/umcs/
     - copied from r223020, head/sys/modules/usb/umcs/
  projects/altix/sys/netinet/in_pcbgroup.c
     - copied unchanged from r223020, head/sys/netinet/in_pcbgroup.c
  projects/altix/sys/netinet6/in6_pcbgroup.c
     - copied unchanged from r223020, head/sys/netinet6/in6_pcbgroup.c
  projects/altix/sys/powerpc/include/rtas.h
     - copied unchanged from r223020, head/sys/powerpc/include/rtas.h
  projects/altix/sys/powerpc/ofw/ofwcall32.S
     - copied unchanged from r223020, head/sys/powerpc/ofw/ofwcall32.S
  projects/altix/sys/powerpc/ofw/ofwcall64.S
     - copied unchanged from r223020, head/sys/powerpc/ofw/ofwcall64.S
  projects/altix/sys/powerpc/ofw/ofwmagic.S
     - copied unchanged from r223020, head/sys/powerpc/ofw/ofwmagic.S
  projects/altix/sys/powerpc/ofw/rtas.c
     - copied unchanged from r223020, head/sys/powerpc/ofw/rtas.c
  projects/altix/sys/powerpc/powermac/powermac_thermal.c
     - copied unchanged from r223020, head/sys/powerpc/powermac/powermac_thermal.c
  projects/altix/sys/powerpc/powermac/powermac_thermal.h
     - copied unchanged from r223020, head/sys/powerpc/powermac/powermac_thermal.h
  projects/altix/sys/powerpc/powermac/windtunnel.c
     - copied unchanged from r223020, head/sys/powerpc/powermac/windtunnel.c
  projects/altix/sys/sys/_cpuset.h
     - copied unchanged from r223020, head/sys/sys/_cpuset.h
Replaced:
  projects/altix/sys/nfs/nfs_kdtrace.h
     - copied unchanged from r223020, head/sys/nfs/nfs_kdtrace.h
  projects/altix/sys/sys/_stdint.h
     - copied unchanged from r223020, head/sys/sys/_stdint.h
Deleted:
  projects/altix/sys/powerpc/aim/ofwmagic.S
Modified:
  projects/altix/lib/libstand/bswap.c
  projects/altix/sys/Makefile
  projects/altix/sys/amd64/acpica/acpi_wakeup.c
  projects/altix/sys/amd64/amd64/identcpu.c
  projects/altix/sys/amd64/amd64/intr_machdep.c
  projects/altix/sys/amd64/amd64/legacy.c
  projects/altix/sys/amd64/amd64/machdep.c
  projects/altix/sys/amd64/amd64/mp_machdep.c
  projects/altix/sys/amd64/amd64/pmap.c
  projects/altix/sys/amd64/amd64/vm_machdep.c
  projects/altix/sys/amd64/conf/GENERIC
  projects/altix/sys/amd64/include/_types.h
  projects/altix/sys/amd64/include/pmap.h
  projects/altix/sys/amd64/include/smp.h
  projects/altix/sys/amd64/include/specialreg.h
  projects/altix/sys/arm/arm/pmap.c
  projects/altix/sys/arm/include/_types.h
  projects/altix/sys/arm/include/pmap.h
  projects/altix/sys/boot/common/Makefile.inc
  projects/altix/sys/boot/forth/beastie.4th
  projects/altix/sys/boot/forth/loader.4th
  projects/altix/sys/boot/forth/loader.conf.5
  projects/altix/sys/boot/forth/loader.rc
  projects/altix/sys/boot/forth/support.4th
  projects/altix/sys/boot/i386/loader/Makefile
  projects/altix/sys/boot/i386/zfsboot/Makefile
  projects/altix/sys/boot/ia64/common/Makefile
  projects/altix/sys/boot/ia64/common/exec.c
  projects/altix/sys/boot/ia64/common/libia64.h
  projects/altix/sys/boot/ia64/efi/efimd.c
  projects/altix/sys/boot/ia64/efi/main.c
  projects/altix/sys/boot/ia64/efi/version
  projects/altix/sys/boot/pc98/loader/Makefile
  projects/altix/sys/boot/powerpc/ofw/Makefile
  projects/altix/sys/boot/powerpc/ps3/Makefile
  projects/altix/sys/boot/sparc64/loader/Makefile
  projects/altix/sys/cam/ata/ata_all.c
  projects/altix/sys/cam/ata/ata_da.c
  projects/altix/sys/cam/ata/ata_xpt.c
  projects/altix/sys/cam/scsi/scsi_ses.h
  projects/altix/sys/cddl/compat/opensolaris/kern/opensolaris.c
  projects/altix/sys/cddl/compat/opensolaris/kern/opensolaris_sysevent.c
  projects/altix/sys/cddl/compat/opensolaris/kern/opensolaris_taskq.c
  projects/altix/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c
  projects/altix/sys/cddl/compat/opensolaris/sys/atomic.h
  projects/altix/sys/cddl/compat/opensolaris/sys/kstat.h
  projects/altix/sys/cddl/compat/opensolaris/sys/taskq.h
  projects/altix/sys/cddl/compat/opensolaris/sys/time.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_history.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/ddt.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
  projects/altix/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.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/zio.c
  projects/altix/sys/cddl/dev/cyclic/cyclic.c
  projects/altix/sys/cddl/dev/cyclic/i386/cyclic_machdep.c
  projects/altix/sys/cddl/dev/dtrace/amd64/dtrace_subr.c
  projects/altix/sys/cddl/dev/dtrace/i386/dtrace_subr.c
  projects/altix/sys/conf/Makefile.powerpc
  projects/altix/sys/conf/NOTES
  projects/altix/sys/conf/files
  projects/altix/sys/conf/files.i386
  projects/altix/sys/conf/files.powerpc
  projects/altix/sys/conf/kern.mk
  projects/altix/sys/conf/kern.post.mk
  projects/altix/sys/conf/kmod.mk
  projects/altix/sys/conf/newvers.sh
  projects/altix/sys/conf/options
  projects/altix/sys/contrib/dev/acpica/changes.txt
  projects/altix/sys/contrib/dev/acpica/debugger/dbexec.c
  projects/altix/sys/contrib/dev/acpica/debugger/dbinput.c
  projects/altix/sys/contrib/dev/acpica/debugger/dbutils.c
  projects/altix/sys/contrib/dev/acpica/debugger/dbxface.c
  projects/altix/sys/contrib/dev/acpica/include/acconfig.h
  projects/altix/sys/contrib/dev/acpica/include/acdebug.h
  projects/altix/sys/contrib/dev/acpica/include/acglobal.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/acpredef.h
  projects/altix/sys/contrib/dev/acpica/osunixxf.c
  projects/altix/sys/contrib/dev/acpica/tables/tbinstal.c
  projects/altix/sys/contrib/pf/net/pf.c
  projects/altix/sys/contrib/pf/net/pf_ioctl.c
  projects/altix/sys/contrib/pf/net/pf_norm.c
  projects/altix/sys/ddb/db_command.c
  projects/altix/sys/dev/aac/aac.c
  projects/altix/sys/dev/aac/aacvar.h
  projects/altix/sys/dev/acpica/Osd/OsdDebug.c
  projects/altix/sys/dev/acpica/acpi.c
  projects/altix/sys/dev/acpica/acpi_hpet.c
  projects/altix/sys/dev/acpica/acpi_timer.c
  projects/altix/sys/dev/ahci/ahci.c
  projects/altix/sys/dev/ahci/ahci.h
  projects/altix/sys/dev/alc/if_alcreg.h
  projects/altix/sys/dev/ale/if_alereg.h
  projects/altix/sys/dev/amdsbwd/amdsbwd.c
  projects/altix/sys/dev/ata/ata-sata.c
  projects/altix/sys/dev/ath/ah_osdep.c
  projects/altix/sys/dev/ath/ath_hal/ah.c
  projects/altix/sys/dev/ath/ath_hal/ah.h
  projects/altix/sys/dev/ath/ath_hal/ah_desc.h
  projects/altix/sys/dev/ath/ath_hal/ah_devid.h
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom.h
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom_9287.c
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom_v1.c
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom_v14.c
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom_v3.c
  projects/altix/sys/dev/ath/ath_hal/ah_eeprom_v4k.c
  projects/altix/sys/dev/ath/ath_hal/ah_internal.h
  projects/altix/sys/dev/ath/ath_hal/ar5212/ar5212.h
  projects/altix/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c
  projects/altix/sys/dev/ath/ath_hal/ar5212/ar5212reg.h
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416.h
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416desc.h
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416phy.h
  projects/altix/sys/dev/ath/ath_hal/ar5416/ar5416reg.h
  projects/altix/sys/dev/ath/ath_hal/ar9001/ar9130_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar9001/ar9160_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9280_attach.c
  projects/altix/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c
  projects/altix/sys/dev/ath/ath_rate/sample/sample.c
  projects/altix/sys/dev/ath/if_ath.c
  projects/altix/sys/dev/ath/if_ath_sysctl.c
  projects/altix/sys/dev/ath/if_ath_tx_ht.c
  projects/altix/sys/dev/ath/if_athioctl.h
  projects/altix/sys/dev/ath/if_athvar.h
  projects/altix/sys/dev/atkbdc/atkbd.c
  projects/altix/sys/dev/bge/if_bge.c
  projects/altix/sys/dev/bxe/bxe_debug.h
  projects/altix/sys/dev/bxe/bxe_link.c
  projects/altix/sys/dev/bxe/if_bxe.c
  projects/altix/sys/dev/bxe/if_bxe.h
  projects/altix/sys/dev/cardbus/cardbus_cis.c
  projects/altix/sys/dev/cfi/cfi_dev.c
  projects/altix/sys/dev/cxgbe/adapter.h
  projects/altix/sys/dev/cxgbe/common/common.h
  projects/altix/sys/dev/cxgbe/common/t4fw_interface.h
  projects/altix/sys/dev/cxgbe/offload.h
  projects/altix/sys/dev/cxgbe/osdep.h
  projects/altix/sys/dev/cxgbe/t4_ioctl.h
  projects/altix/sys/dev/cxgbe/t4_main.c
  projects/altix/sys/dev/cxgbe/t4_sge.c
  projects/altix/sys/dev/gem/if_gem.c
  projects/altix/sys/dev/hwpmc/hwpmc_mod.c
  projects/altix/sys/dev/iicbus/ds1775.c
  projects/altix/sys/dev/iicbus/max6690.c
  projects/altix/sys/dev/ipw/if_ipw.c
  projects/altix/sys/dev/iwi/if_iwi.c
  projects/altix/sys/dev/iwn/if_iwn.c
  projects/altix/sys/dev/ixgbe/LICENSE
  projects/altix/sys/dev/ixgbe/README
  projects/altix/sys/dev/ixgbe/ixgbe.c
  projects/altix/sys/dev/ixgbe/ixv.c
  projects/altix/sys/dev/mfi/mfi.c
  projects/altix/sys/dev/mfi/mfireg.h
  projects/altix/sys/dev/mii/mii.c
  projects/altix/sys/dev/mk48txx/mk48txx.c
  projects/altix/sys/dev/mk48txx/mk48txxreg.h
  projects/altix/sys/dev/mmc/mmc.c
  projects/altix/sys/dev/mmc/mmcvar.h
  projects/altix/sys/dev/msk/if_msk.c
  projects/altix/sys/dev/msk/if_mskreg.h
  projects/altix/sys/dev/mvs/mvs.c
  projects/altix/sys/dev/nfe/if_nfe.c
  projects/altix/sys/dev/pccard/pccard.c
  projects/altix/sys/dev/pci/pci.c
  projects/altix/sys/dev/pci/pci_pci.c
  projects/altix/sys/dev/pci/pcireg.h
  projects/altix/sys/dev/puc/pucdata.c
  projects/altix/sys/dev/scc/scc_bfe_ebus.c
  projects/altix/sys/dev/sdhci/sdhci.c
  projects/altix/sys/dev/siis/siis.c
  projects/altix/sys/dev/sound/pci/hda/hdac.c
  projects/altix/sys/dev/sound/pcm/sound.c
  projects/altix/sys/dev/sound/usb/uaudio.c
  projects/altix/sys/dev/uart/uart_cpu_sparc64.c
  projects/altix/sys/dev/uart/uart_dev_ns8250.c
  projects/altix/sys/dev/usb/controller/xhci_pci.c
  projects/altix/sys/dev/usb/controller/xhcireg.h
  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/net/if_axe.c
  projects/altix/sys/dev/usb/storage/umass.c
  projects/altix/sys/dev/usb/storage/ustorage_fs.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_process.c
  projects/altix/sys/dev/usb/usb_request.c
  projects/altix/sys/dev/usb/usb_request.h
  projects/altix/sys/dev/usb/usb_transfer.c
  projects/altix/sys/dev/usb/usbdevs
  projects/altix/sys/dev/usb/usbdi.h
  projects/altix/sys/dev/vge/if_vge.c
  projects/altix/sys/dev/wpi/if_wpi.c
  projects/altix/sys/dev/xen/blkback/blkback.c
  projects/altix/sys/dev/xen/blkfront/blkfront.c
  projects/altix/sys/dev/xen/control/control.c
  projects/altix/sys/dev/xen/netfront/netfront.c
  projects/altix/sys/fs/cd9660/cd9660_vfsops.c
  projects/altix/sys/fs/ext2fs/ext2_vfsops.c
  projects/altix/sys/fs/hpfs/hpfs_vfsops.c
  projects/altix/sys/fs/msdosfs/msdosfs_vfsops.c
  projects/altix/sys/fs/nfs/nfs_commonkrpc.c
  projects/altix/sys/fs/nfs/nfs_commonport.c
  projects/altix/sys/fs/nfs/nfs_commonsubs.c
  projects/altix/sys/fs/nfs/nfs_var.h
  projects/altix/sys/fs/nfsclient/nfs_clbio.c
  projects/altix/sys/fs/nfsclient/nfs_clcomsubs.c
  projects/altix/sys/fs/nfsclient/nfs_clkrpc.c
  projects/altix/sys/fs/nfsclient/nfs_clnfsiod.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_clsubs.c
  projects/altix/sys/fs/nfsclient/nfs_clvfsops.c
  projects/altix/sys/fs/nfsclient/nfs_clvnops.c
  projects/altix/sys/fs/nfsserver/nfs_nfsdport.c
  projects/altix/sys/fs/nfsserver/nfs_nfsdsocket.c
  projects/altix/sys/fs/nfsserver/nfs_nfsdstate.c
  projects/altix/sys/fs/ntfs/ntfs_vfsops.c
  projects/altix/sys/fs/nullfs/null_vfsops.c
  projects/altix/sys/fs/nwfs/nwfs_io.c
  projects/altix/sys/fs/smbfs/smbfs_io.c
  projects/altix/sys/fs/tmpfs/tmpfs_vfsops.c
  projects/altix/sys/fs/udf/udf_vfsops.c
  projects/altix/sys/fs/unionfs/union_vfsops.c
  projects/altix/sys/geom/eli/g_eli.c
  projects/altix/sys/geom/eli/g_eli_key_cache.c
  projects/altix/sys/geom/gate/g_gate.c
  projects/altix/sys/geom/geom_disk.c
  projects/altix/sys/geom/geom_dump.c
  projects/altix/sys/geom/part/g_part.c
  projects/altix/sys/geom/part/g_part_ebr.c
  projects/altix/sys/geom/part/g_part_mbr.c
  projects/altix/sys/geom/part/g_part_pc98.c
  projects/altix/sys/geom/vinum/geom_vinum_drive.c
  projects/altix/sys/geom/vinum/geom_vinum_events.c
  projects/altix/sys/gnu/fs/reiserfs/reiserfs_vfsops.c
  projects/altix/sys/gnu/fs/xfs/FreeBSD/support/kdb.c
  projects/altix/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c
  projects/altix/sys/i386/conf/GENERIC
  projects/altix/sys/i386/conf/NOTES
  projects/altix/sys/i386/i386/identcpu.c
  projects/altix/sys/i386/i386/intr_machdep.c
  projects/altix/sys/i386/i386/legacy.c
  projects/altix/sys/i386/i386/machdep.c
  projects/altix/sys/i386/i386/mp_machdep.c
  projects/altix/sys/i386/i386/pmap.c
  projects/altix/sys/i386/i386/vm_machdep.c
  projects/altix/sys/i386/include/_types.h
  projects/altix/sys/i386/include/pmap.h
  projects/altix/sys/i386/include/sf_buf.h
  projects/altix/sys/i386/include/smp.h
  projects/altix/sys/i386/include/specialreg.h
  projects/altix/sys/i386/include/xen/xenvar.h
  projects/altix/sys/i386/pci/pci_cfgreg.c
  projects/altix/sys/i386/xen/mp_machdep.c
  projects/altix/sys/i386/xen/pmap.c
  projects/altix/sys/ia64/acpica/acpi_machdep.c
  projects/altix/sys/ia64/ia64/machdep.c
  projects/altix/sys/ia64/ia64/mp_machdep.c
  projects/altix/sys/ia64/ia64/pal.S
  projects/altix/sys/ia64/ia64/pmap.c
  projects/altix/sys/ia64/include/_types.h
  projects/altix/sys/ia64/include/smp.h
  projects/altix/sys/kern/device_if.m
  projects/altix/sys/kern/kern_clocksource.c
  projects/altix/sys/kern/kern_conf.c
  projects/altix/sys/kern/kern_cpuset.c
  projects/altix/sys/kern/kern_environment.c
  projects/altix/sys/kern/kern_idle.c
  projects/altix/sys/kern/kern_ktr.c
  projects/altix/sys/kern/kern_pmc.c
  projects/altix/sys/kern/kern_racct.c
  projects/altix/sys/kern/kern_rctl.c
  projects/altix/sys/kern/kern_rmlock.c
  projects/altix/sys/kern/kern_shutdown.c
  projects/altix/sys/kern/kern_sig.c
  projects/altix/sys/kern/kern_synch.c
  projects/altix/sys/kern/ksched.c
  projects/altix/sys/kern/sched_4bsd.c
  projects/altix/sys/kern/sched_ule.c
  projects/altix/sys/kern/subr_kdb.c
  projects/altix/sys/kern/subr_msgbuf.c
  projects/altix/sys/kern/subr_pcpu.c
  projects/altix/sys/kern/subr_prf.c
  projects/altix/sys/kern/subr_rman.c
  projects/altix/sys/kern/subr_sbuf.c
  projects/altix/sys/kern/subr_smp.c
  projects/altix/sys/kern/uipc_socket.c
  projects/altix/sys/kern/uipc_syscalls.c
  projects/altix/sys/kern/vfs_bio.c
  projects/altix/sys/kern/vfs_default.c
  projects/altix/sys/kern/vfs_syscalls.c
  projects/altix/sys/mips/cavium/octeon_ebt3000_cf.c
  projects/altix/sys/mips/cavium/octeon_mp.c
  projects/altix/sys/mips/include/_types.h
  projects/altix/sys/mips/include/atomic.h
  projects/altix/sys/mips/include/hwfunc.h
  projects/altix/sys/mips/include/pmap.h
  projects/altix/sys/mips/include/smp.h
  projects/altix/sys/mips/mips/mp_machdep.c
  projects/altix/sys/mips/mips/pmap.c
  projects/altix/sys/mips/rmi/xlr_machdep.c
  projects/altix/sys/mips/sibyte/sb_scd.c
  projects/altix/sys/modules/Makefile
  projects/altix/sys/modules/ath/Makefile
  projects/altix/sys/modules/cxgbe/if_cxgbe/Makefile
  projects/altix/sys/modules/usb/Makefile
  projects/altix/sys/modules/wlan/Makefile
  projects/altix/sys/net/bridgestp.c
  projects/altix/sys/net/bridgestp.h
  projects/altix/sys/net/if_epair.c
  projects/altix/sys/net/if_ethersubr.c
  projects/altix/sys/net/if_llatbl.c
  projects/altix/sys/net/if_llatbl.h
  projects/altix/sys/net/if_media.h
  projects/altix/sys/net/if_tun.c
  projects/altix/sys/net/netisr.c
  projects/altix/sys/net/netisr.h
  projects/altix/sys/net/netisr_internal.h
  projects/altix/sys/net80211/ieee80211_ht.c
  projects/altix/sys/net80211/ieee80211_output.c
  projects/altix/sys/net80211/ieee80211_var.h
  projects/altix/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
  projects/altix/sys/netgraph/ng_eiface.c
  projects/altix/sys/netgraph/ng_nat.c
  projects/altix/sys/netgraph/ng_pipe.c
  projects/altix/sys/netinet/icmp6.h
  projects/altix/sys/netinet/in.c
  projects/altix/sys/netinet/in_pcb.c
  projects/altix/sys/netinet/in_pcb.h
  projects/altix/sys/netinet/in_proto.c
  projects/altix/sys/netinet/in_var.h
  projects/altix/sys/netinet/ip_divert.c
  projects/altix/sys/netinet/ip_input.c
  projects/altix/sys/netinet/ip_ipsec.c
  projects/altix/sys/netinet/ipfw/ip_dummynet.c
  projects/altix/sys/netinet/ipfw/ip_fw2.c
  projects/altix/sys/netinet/ipfw/ip_fw_dynamic.c
  projects/altix/sys/netinet/ipfw/ip_fw_nat.c
  projects/altix/sys/netinet/ipfw/ip_fw_sockopt.c
  projects/altix/sys/netinet/libalias/alias_sctp.h
  projects/altix/sys/netinet/raw_ip.c
  projects/altix/sys/netinet/sctp_indata.c
  projects/altix/sys/netinet/sctp_indata.h
  projects/altix/sys/netinet/sctp_output.c
  projects/altix/sys/netinet/sctp_output.h
  projects/altix/sys/netinet/sctp_usrreq.c
  projects/altix/sys/netinet/sctputil.c
  projects/altix/sys/netinet/sctputil.h
  projects/altix/sys/netinet/siftr.c
  projects/altix/sys/netinet/tcp_input.c
  projects/altix/sys/netinet/tcp_subr.c
  projects/altix/sys/netinet/tcp_syncache.c
  projects/altix/sys/netinet/tcp_timer.c
  projects/altix/sys/netinet/tcp_usrreq.c
  projects/altix/sys/netinet/udp_usrreq.c
  projects/altix/sys/netinet6/in6.c
  projects/altix/sys/netinet6/in6.h
  projects/altix/sys/netinet6/in6_pcb.c
  projects/altix/sys/netinet6/in6_pcb.h
  projects/altix/sys/netinet6/in6_proto.c
  projects/altix/sys/netinet6/in6_src.c
  projects/altix/sys/netinet6/ip6_input.c
  projects/altix/sys/netinet6/ip6_ipsec.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/send.h
  projects/altix/sys/netinet6/udp6_usrreq.c
  projects/altix/sys/nfs/nfs_common.c
  projects/altix/sys/nfsclient/nfs.h
  projects/altix/sys/nfsclient/nfs_bio.c
  projects/altix/sys/nfsclient/nfs_krpc.c
  projects/altix/sys/nfsclient/nfs_nfsiod.c
  projects/altix/sys/nfsclient/nfs_subs.c
  projects/altix/sys/nfsclient/nfs_vfsops.c
  projects/altix/sys/nfsclient/nfs_vnops.c
  projects/altix/sys/nfsserver/nfs_srvsubs.c
  projects/altix/sys/nlm/nlm_prot_impl.c
  projects/altix/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_cm.c
  projects/altix/sys/ofed/include/linux/list.h
  projects/altix/sys/pc98/pc98/machdep.c
  projects/altix/sys/powerpc/aim/interrupt.c
  projects/altix/sys/powerpc/aim/locore32.S
  projects/altix/sys/powerpc/aim/locore64.S
  projects/altix/sys/powerpc/aim/machdep.c
  projects/altix/sys/powerpc/aim/mmu_oea.c
  projects/altix/sys/powerpc/aim/mmu_oea64.c
  projects/altix/sys/powerpc/aim/moea64_native.c
  projects/altix/sys/powerpc/aim/mp_cpudep.c
  projects/altix/sys/powerpc/aim/slb.c
  projects/altix/sys/powerpc/aim/trap_subr64.S
  projects/altix/sys/powerpc/booke/locore.S
  projects/altix/sys/powerpc/booke/machdep.c
  projects/altix/sys/powerpc/booke/platform_bare.c
  projects/altix/sys/powerpc/booke/pmap.c
  projects/altix/sys/powerpc/conf/GENERIC
  projects/altix/sys/powerpc/conf/GENERIC64
  projects/altix/sys/powerpc/conf/NOTES
  projects/altix/sys/powerpc/include/_types.h
  projects/altix/sys/powerpc/include/atomic.h
  projects/altix/sys/powerpc/include/openpicvar.h
  projects/altix/sys/powerpc/include/param.h
  projects/altix/sys/powerpc/include/pmap.h
  projects/altix/sys/powerpc/include/slb.h
  projects/altix/sys/powerpc/include/smp.h
  projects/altix/sys/powerpc/include/spr.h
  projects/altix/sys/powerpc/mpc85xx/mpc85xx.c
  projects/altix/sys/powerpc/mpc85xx/mpc85xx.h
  projects/altix/sys/powerpc/mpc85xx/openpic_fdt.c
  projects/altix/sys/powerpc/ofw/ofw_machdep.c
  projects/altix/sys/powerpc/ofw/ofw_real.c
  projects/altix/sys/powerpc/powermac/fcu.c
  projects/altix/sys/powerpc/powermac/smu.c
  projects/altix/sys/powerpc/powermac/smusat.c
  projects/altix/sys/powerpc/powerpc/intr_machdep.c
  projects/altix/sys/powerpc/powerpc/mp_machdep.c
  projects/altix/sys/powerpc/powerpc/openpic.c
  projects/altix/sys/powerpc/powerpc/pic_if.m
  projects/altix/sys/powerpc/powerpc/platform.c
  projects/altix/sys/powerpc/ps3/ps3bus.c
  projects/altix/sys/sparc64/include/_types.h
  projects/altix/sys/sparc64/include/ktr.h
  projects/altix/sys/sparc64/include/pmap.h
  projects/altix/sys/sparc64/include/smp.h
  projects/altix/sys/sparc64/sparc64/eeprom.c
  projects/altix/sys/sparc64/sparc64/exception.S
  projects/altix/sys/sparc64/sparc64/genassym.c
  projects/altix/sys/sparc64/sparc64/intr_machdep.c
  projects/altix/sys/sparc64/sparc64/mp_exception.S
  projects/altix/sys/sparc64/sparc64/mp_locore.S
  projects/altix/sys/sparc64/sparc64/mp_machdep.c
  projects/altix/sys/sparc64/sparc64/pmap.c
  projects/altix/sys/sparc64/sparc64/swtch.S
  projects/altix/sys/sparc64/sparc64/tlb.c
  projects/altix/sys/sys/_rmlock.h
  projects/altix/sys/sys/conf.h
  projects/altix/sys/sys/cpuset.h
  projects/altix/sys/sys/dtrace_bsd.h
  projects/altix/sys/sys/ktr.h
  projects/altix/sys/sys/mbuf.h
  projects/altix/sys/sys/mount.h
  projects/altix/sys/sys/msgbuf.h
  projects/altix/sys/sys/param.h
  projects/altix/sys/sys/pcpu.h
  projects/altix/sys/sys/pmckern.h
  projects/altix/sys/sys/proc.h
  projects/altix/sys/sys/racct.h
  projects/altix/sys/sys/sbuf.h
  projects/altix/sys/sys/smp.h
  projects/altix/sys/sys/soundcard.h
  projects/altix/sys/sys/types.h
  projects/altix/sys/sys/vnode.h
  projects/altix/sys/teken/libteken/teken.3
  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_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/inode.h
  projects/altix/sys/ufs/ufs/quota.h
  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/uma_core.c
  projects/altix/sys/vm/uma_int.h
  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/vnode_pager.c
  projects/altix/sys/vm/vnode_pager.h
  projects/altix/sys/x86/x86/local_apic.c
  projects/altix/sys/x86/x86/tsc.c
  projects/altix/sys/xen/interface/io/xenbus.h
  projects/altix/sys/xen/xenbus/xenbus.c
  projects/altix/sys/xen/xenbus/xenbus_if.m
  projects/altix/sys/xen/xenbus/xenbusb.c
  projects/altix/sys/xen/xenbus/xenbusb.h
  projects/altix/sys/xen/xenbus/xenbusb_back.c
  projects/altix/sys/xen/xenbus/xenbusb_front.c
  projects/altix/sys/xen/xenbus/xenbusb_if.m
  projects/altix/sys/xen/xenbus/xenbusvar.h
  projects/altix/sys/xen/xenstore/xenstorevar.h
Directory Properties:
  projects/altix/lib/libstand/   (props changed)
  projects/altix/sys/   (props changed)
  projects/altix/sys/amd64/include/xen/   (props changed)
  projects/altix/sys/boot/   (props changed)
  projects/altix/sys/boot/i386/efi/   (props changed)
  projects/altix/sys/boot/ia64/efi/   (props changed)
  projects/altix/sys/boot/ia64/ski/   (props changed)
  projects/altix/sys/boot/powerpc/boot1.chrp/   (props changed)
  projects/altix/sys/boot/powerpc/ofw/   (props changed)
  projects/altix/sys/cddl/contrib/opensolaris/   (props changed)
  projects/altix/sys/conf/   (props changed)
  projects/altix/sys/contrib/dev/acpica/   (props changed)
  projects/altix/sys/contrib/octeon-sdk/   (props changed)
  projects/altix/sys/contrib/pf/   (props changed)
  projects/altix/sys/contrib/x86emu/   (props changed)
  projects/altix/sys/kern/subr_busdma.c   (props changed)

Modified: projects/altix/lib/libstand/bswap.c
==============================================================================
--- projects/altix/lib/libstand/bswap.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/lib/libstand/bswap.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -8,7 +8,7 @@ __FBSDID("$FreeBSD$");
 
 #if defined(LIBC_SCCS) && !defined(lint)
 static char *rcsid = "$NetBSD: bswap32.c,v 1.1 1997/10/09 15:42:33 bouyer Exp $";
-static char *rcsid = "$NetBSD: bswap64.c,v 1.1 1997/10/09 15:42:33 bouyer Exp $";
+static char *rcsid = "$NetBSD: bswap64.c,v 1.3 2009/03/16 05:59:21 cegger Exp $";
 #endif
 
 #include <sys/types.h>
@@ -30,12 +30,28 @@ bswap32(u_int32_t x)
 
 u_int64_t
 bswap64(u_int64_t x)
-{  
-	u_int32_t *p = (u_int32_t*)&x;
-	u_int32_t t;
-	t = bswap32(p[0]);
-	p[0] = bswap32(p[1]);
-	p[1] = t;
-	return x;
-}   
-
+{
+#ifdef _LP64
+	/*
+	 * Assume we have wide enough registers to do it without touching
+	 * memory.
+	 */
+	return  ( (x << 56) & 0xff00000000000000UL ) |
+		( (x << 40) & 0x00ff000000000000UL ) |
+		( (x << 24) & 0x0000ff0000000000UL ) |
+		( (x <<  8) & 0x000000ff00000000UL ) |
+		( (x >>  8) & 0x00000000ff000000UL ) |
+		( (x >> 24) & 0x0000000000ff0000UL ) |
+		( (x >> 40) & 0x000000000000ff00UL ) |
+		( (x >> 56) & 0x00000000000000ffUL );
+#else
+	/*
+	 * Split the operation in two 32bit steps.
+	 */
+	u_int32_t tl, th;
+
+	th = bswap32((u_int32_t)(x & 0x00000000ffffffffULL));
+	tl = bswap32((u_int32_t)((x >> 32) & 0x00000000ffffffffULL));
+	return ((u_int64_t)th << 32) | tl;
+#endif
+}

Modified: projects/altix/sys/Makefile
==============================================================================
--- projects/altix/sys/Makefile	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/Makefile	Sun Jun 12 20:19:17 2011	(r223022)
@@ -12,7 +12,7 @@ CSCOPEDIRS=	boot bsm cam cddl compat con
 		geom gnu isa kern libkern modules net net80211 netatalk \
 		netgraph netinet netinet6 netipsec netipx netnatm netncp \
 		netsmb nfs nfsclient nfsserver nlm opencrypto \
-		pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR}
+		pci rpc security sys ufs vm xdr xen ${CSCOPE_ARCHDIR}
 .if defined(ALL_ARCH)
 CSCOPE_ARCHDIR ?= amd64 arm i386 ia64 mips pc98 powerpc sparc64 x86
 .else

Modified: projects/altix/sys/amd64/acpica/acpi_wakeup.c
==============================================================================
--- projects/altix/sys/amd64/acpica/acpi_wakeup.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/acpica/acpi_wakeup.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -78,7 +78,7 @@ static void		acpi_stop_beep(void *);
 
 #ifdef SMP
 static int		acpi_wakeup_ap(struct acpi_softc *, int);
-static void		acpi_wakeup_cpus(struct acpi_softc *, cpumask_t);
+static void		acpi_wakeup_cpus(struct acpi_softc *, const cpuset_t *);
 #endif
 
 #define	WAKECODE_VADDR(sc)	((sc)->acpi_wakeaddr + (3 * PAGE_SIZE))
@@ -173,7 +173,7 @@ acpi_wakeup_ap(struct acpi_softc *sc, in
 #define	BIOS_WARM		(0x0a)
 
 static void
-acpi_wakeup_cpus(struct acpi_softc *sc, cpumask_t wakeup_cpus)
+acpi_wakeup_cpus(struct acpi_softc *sc, const cpuset_t *wakeup_cpus)
 {
 	uint32_t	mpbioswarmvec;
 	int		cpu;
@@ -192,7 +192,7 @@ acpi_wakeup_cpus(struct acpi_softc *sc, 
 
 	/* Wake up each AP. */
 	for (cpu = 1; cpu < mp_ncpus; cpu++) {
-		if ((wakeup_cpus & (1 << cpu)) == 0)
+		if (!CPU_ISSET(cpu, wakeup_cpus))
 			continue;
 		if (acpi_wakeup_ap(sc, cpu) == 0) {
 			/* restore the warmstart vector */
@@ -214,7 +214,7 @@ int
 acpi_sleep_machdep(struct acpi_softc *sc, int state)
 {
 #ifdef SMP
-	cpumask_t	wakeup_cpus;
+	cpuset_t	wakeup_cpus;
 #endif
 	register_t	cr3, rf;
 	ACPI_STATUS	status;
@@ -244,10 +244,9 @@ acpi_sleep_machdep(struct acpi_softc *sc
 
 	if (savectx(susppcbs[0])) {
 #ifdef SMP
-		if (wakeup_cpus != 0 && suspend_cpus(wakeup_cpus) == 0) {
-			device_printf(sc->acpi_dev,
-			    "Failed to suspend APs: CPU mask = 0x%jx\n",
-			    (uintmax_t)(wakeup_cpus & ~stopped_cpus));
+		if (!CPU_EMPTY(&wakeup_cpus) &&
+		    suspend_cpus(wakeup_cpus) == 0) {
+			device_printf(sc->acpi_dev, "Failed to suspend APs\n");
 			goto out;
 		}
 #endif
@@ -282,8 +281,8 @@ acpi_sleep_machdep(struct acpi_softc *sc
 		PCPU_SET(switchtime, 0);
 		PCPU_SET(switchticks, ticks);
 #ifdef SMP
-		if (wakeup_cpus != 0)
-			acpi_wakeup_cpus(sc, wakeup_cpus);
+		if (!CPU_EMPTY(&wakeup_cpus))
+			acpi_wakeup_cpus(sc, &wakeup_cpus);
 #endif
 		acpi_resync_clock(sc);
 		ret = 0;
@@ -291,7 +290,7 @@ acpi_sleep_machdep(struct acpi_softc *sc
 
 out:
 #ifdef SMP
-	if (wakeup_cpus != 0)
+	if (!CPU_EMPTY(&wakeup_cpus))
 		restart_cpus(wakeup_cpus);
 #endif
 

Modified: projects/altix/sys/amd64/amd64/identcpu.c
==============================================================================
--- projects/altix/sys/amd64/amd64/identcpu.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/identcpu.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -216,6 +216,14 @@ printcpuinfo(void)
 		printf("  Family = %x", CPUID_TO_FAMILY(cpu_id));
 		printf("  Model = %x", CPUID_TO_MODEL(cpu_id));
 		printf("  Stepping = %u", cpu_id & CPUID_STEPPING);
+
+		/*
+		 * AMD CPUID Specification
+		 * http://support.amd.com/us/Embedded_TechDocs/25481.pdf
+		 *
+		 * Intel Processor Identification and CPUID Instruction
+		 * http://www.intel.com/assets/pdf/appnote/241618.pdf
+		 */
 		if (cpu_high > 0) {
 
 			/*
@@ -277,38 +285,29 @@ printcpuinfo(void)
 				"\012SSSE3"	/* SSSE3 */
 				"\013CNXT-ID"	/* L1 context ID available */
 				"\014<b11>"
-				"\015<b12>"
+				"\015FMA"	/* Fused Multiply Add */
 				"\016CX16"	/* CMPXCHG16B Instruction */
 				"\017xTPR"	/* Send Task Priority Messages*/
 				"\020PDCM"	/* Perf/Debug Capability MSR */
 				"\021<b16>"
-				"\022PCID"	/* Process-context Identifiers */
+				"\022PCID"	/* Process-context Identifiers*/
 				"\023DCA"	/* Direct Cache Access */
-				"\024SSE4.1"
-				"\025SSE4.2"
+				"\024SSE4.1"	/* SSE 4.1 */
+				"\025SSE4.2"	/* SSE 4.2 */
 				"\026x2APIC"	/* xAPIC Extensions */
-				"\027MOVBE"
-				"\030POPCNT"
-				"\031<b24>"
-				"\032AESNI"	/* AES Crypto*/
-				"\033XSAVE"
-				"\034OSXSAVE"
-				"\035<b28>"
-				"\036<b29>"
+				"\027MOVBE"	/* MOVBE Instruction */
+				"\030POPCNT"	/* POPCNT Instruction */
+				"\031TSCDLT"	/* TSC-Deadline Timer */
+				"\032AESNI"	/* AES Crypto */
+				"\033XSAVE"	/* XSAVE/XRSTOR States */
+				"\034OSXSAVE"	/* OS-Enabled State Management*/
+				"\035AVX"	/* Advanced Vector Extensions */
+				"\036F16C"	/* Half-precision conversions */
 				"\037<b30>"
 				"\040HV"	/* Hypervisor */
 				);
 			}
 
-			/*
-			 * AMD64 Architecture Programmer's Manual Volume 3:
-			 * General-Purpose and System Instructions
-			 * http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/24594.pdf
-			 *
-			 * IA-32 Intel Architecture Software Developer's Manual,
-			 * Volume 2A: Instruction Set Reference, A-M
-			 * ftp://download.intel.com/design/Pentium4/manuals/25366617.pdf
-			 */
 			if (amd_feature != 0) {
 				printf("\n  AMD Features=0x%b", amd_feature,
 				"\020"		/* in hex */
@@ -361,18 +360,18 @@ printcpuinfo(void)
 				"\011Prefetch"	/* 3DNow! Prefetch/PrefetchW */
 				"\012OSVW"	/* OS visible workaround */
 				"\013IBS"	/* Instruction based sampling */
-				"\014SSE5"	/* SSE5 */
+				"\014XOP"	/* XOP extended instructions */
 				"\015SKINIT"	/* SKINIT/STGI */
 				"\016WDT"	/* Watchdog timer */
 				"\017<b14>"
-				"\020<b15>"
-				"\021<b16>"
+				"\020LWP"	/* Lightweight Profiling */
+				"\021FMA4"	/* 4-operand FMA instructions */
 				"\022<b17>"
 				"\023<b18>"
-				"\024<b19>"
+				"\024NodeId"	/* NodeId MSR support */
 				"\025<b20>"
-				"\026<b21>"
-				"\027<b22>"
+				"\026TBM"	/* Trailing Bit Manipulation */
+				"\027Topology"	/* Topology Extensions */
 				"\030<b23>"
 				"\031<b24>"
 				"\032<b25>"

Modified: projects/altix/sys/amd64/amd64/intr_machdep.c
==============================================================================
--- projects/altix/sys/amd64/amd64/intr_machdep.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/intr_machdep.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -443,8 +443,7 @@ DB_SHOW_COMMAND(irqs, db_show_irqs)
  * allocate CPUs round-robin.
  */
 
-/* The BSP is always a valid target. */
-static cpumask_t intr_cpus = (1 << 0);
+static cpuset_t intr_cpus;
 static int current_cpu;
 
 /*
@@ -466,7 +465,7 @@ intr_next_cpu(void)
 		current_cpu++;
 		if (current_cpu > mp_maxid)
 			current_cpu = 0;
-	} while (!(intr_cpus & (1 << current_cpu)));
+	} while (!CPU_ISSET(current_cpu, &intr_cpus));
 	mtx_unlock_spin(&icu_lock);
 	return (apic_id);
 }
@@ -497,7 +496,7 @@ intr_add_cpu(u_int cpu)
 		printf("INTR: Adding local APIC %d as a target\n",
 		    cpu_apic_ids[cpu]);
 
-	intr_cpus |= (1 << cpu);
+	CPU_SET(cpu, &intr_cpus);
 }
 
 /*
@@ -510,6 +509,9 @@ intr_shuffle_irqs(void *arg __unused)
 	struct intsrc *isrc;
 	int i;
 
+	/* The BSP is always a valid target. */
+	CPU_SETOF(0, &intr_cpus);
+
 	/* Don't bother on UP. */
 	if (mp_ncpus == 1)
 		return;

Modified: projects/altix/sys/amd64/amd64/legacy.c
==============================================================================
--- projects/altix/sys/amd64/amd64/legacy.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/legacy.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -81,6 +81,7 @@ static device_method_t legacy_methods[] 
 	DEVMETHOD(bus_read_ivar,	legacy_read_ivar),
 	DEVMETHOD(bus_write_ivar,	legacy_write_ivar),
 	DEVMETHOD(bus_alloc_resource,	bus_generic_alloc_resource),
+	DEVMETHOD(bus_adjust_resource,	bus_generic_adjust_resource),
 	DEVMETHOD(bus_release_resource,	bus_generic_release_resource),
 	DEVMETHOD(bus_activate_resource, bus_generic_activate_resource),
 	DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource),

Modified: projects/altix/sys/amd64/amd64/machdep.c
==============================================================================
--- projects/altix/sys/amd64/amd64/machdep.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/machdep.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$");
 #include "opt_isa.h"
 #include "opt_kstack_pages.h"
 #include "opt_maxmem.h"
+#include "opt_mp_watchdog.h"
 #include "opt_perfmon.h"
 #include "opt_sched.h"
 #include "opt_kdtrace.h"
@@ -116,6 +117,7 @@ __FBSDID("$FreeBSD$");
 #include <x86/mca.h>
 #include <machine/md_var.h>
 #include <machine/metadata.h>
+#include <machine/mp_watchdog.h>
 #include <machine/pc/bios.h>
 #include <machine/pcb.h>
 #include <machine/proc.h>
@@ -734,9 +736,8 @@ cpu_idle(int busy)
 
 	CTR2(KTR_SPARE2, "cpu_idle(%d) at %d",
 	    busy, curcpu);
-#ifdef SMP
-	if (mp_grab_cpu_hlt())
-		return;
+#ifdef MP_WATCHDOG
+	ap_watchdog(PCPU_GET(cpuid));
 #endif
 	/* If we are busy - try to use fast methods. */
 	if (busy) {

Modified: projects/altix/sys/amd64/amd64/mp_machdep.c
==============================================================================
--- projects/altix/sys/amd64/amd64/mp_machdep.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/mp_machdep.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -29,13 +29,13 @@ __FBSDID("$FreeBSD$");
 
 #include "opt_cpu.h"
 #include "opt_kstack_pages.h"
-#include "opt_mp_watchdog.h"
 #include "opt_sched.h"
 #include "opt_smp.h"
 
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/bus.h>
+#include <sys/cpuset.h>
 #ifdef GPROF 
 #include <sys/gmon.h>
 #endif
@@ -63,7 +63,6 @@ __FBSDID("$FreeBSD$");
 #include <machine/cpufunc.h>
 #include <x86/mca.h>
 #include <machine/md_var.h>
-#include <machine/mp_watchdog.h>
 #include <machine/pcb.h>
 #include <machine/psl.h>
 #include <machine/smp.h>
@@ -125,7 +124,7 @@ extern inthand_t IDTVEC(fast_syscall), I
  * Local data and functions.
  */
 
-static volatile cpumask_t ipi_nmi_pending;
+static volatile cpuset_t ipi_nmi_pending;
 
 /* used to hold the AP's until we are ready to release them */
 static struct mtx ap_boot_mtx;
@@ -159,11 +158,8 @@ static int	start_all_aps(void);
 static int	start_ap(int apic_id);
 static void	release_aps(void *dummy);
 
-static int	hlt_logical_cpus;
 static u_int	hyperthreading_cpus;	/* logical cpus sharing L1 cache */
-static cpumask_t	hyperthreading_cpus_mask;
 static int	hyperthreading_allowed = 1;
-static struct	sysctl_ctx_list logical_cpu_clist;
 static u_int	bootMP_size;
 
 static void
@@ -241,8 +237,11 @@ topo_probe_0x4(void)
 	 * logical processors that belong to the same core
 	 * as BSP thus deducing number of threads per core.
 	 */
-	cpuid_count(0x04, 0, p);
-	max_cores = ((p[0] >> 26) & 0x3f) + 1;
+	if (cpu_high >= 0x4) {
+		cpuid_count(0x04, 0, p);
+		max_cores = ((p[0] >> 26) & 0x3f) + 1;
+	} else
+		max_cores = 1;
 	core_id_bits = mask_width(max_logical/max_cores);
 	if (core_id_bits < 0)
 		return;
@@ -334,7 +333,7 @@ topo_probe(void)
 	if (cpu_topo_probed)
 		return;
 
-	logical_cpus_mask = 0;
+	CPU_ZERO(&logical_cpus_mask);
 	if (mp_ncpus <= 1)
 		cpu_cores = cpu_logical = 1;
 	else if (cpu_vendor_id == CPU_VENDOR_AMD)
@@ -478,7 +477,7 @@ cpu_mp_probe(void)
 	 * Always record BSP in CPU map so that the mbuf init code works
 	 * correctly.
 	 */
-	all_cpus = 1;
+	CPU_SETOF(0, &all_cpus);
 	if (mp_ncpus == 0) {
 		/*
 		 * No CPUs were found, so this must be a UP system.  Setup
@@ -605,6 +604,7 @@ cpu_mp_announce(void)
 void
 init_secondary(void)
 {
+	cpuset_t tcpuset, tallcpus;
 	struct pcpu *pc;
 	struct nmi_pcpu *np;
 	u_int64_t msr, cr0;
@@ -736,19 +736,17 @@ init_secondary(void)
 
 	CTR1(KTR_SMP, "SMP: AP CPU #%d Launched", PCPU_GET(cpuid));
 	printf("SMP: AP CPU #%d Launched!\n", PCPU_GET(cpuid));
+	tcpuset = PCPU_GET(cpumask);
 
 	/* Determine if we are a logical CPU. */
 	/* XXX Calculation depends on cpu_logical being a power of 2, e.g. 2 */
 	if (cpu_logical > 1 && PCPU_GET(apic_id) % cpu_logical != 0)
-		logical_cpus_mask |= PCPU_GET(cpumask);
-	
-	/* Determine if we are a hyperthread. */
-	if (hyperthreading_cpus > 1 &&
-	    PCPU_GET(apic_id) % hyperthreading_cpus != 0)
-		hyperthreading_cpus_mask |= PCPU_GET(cpumask);
+		CPU_OR(&logical_cpus_mask, &tcpuset);
 
 	/* Build our map of 'other' CPUs. */
-	PCPU_SET(other_cpus, all_cpus & ~PCPU_GET(cpumask));
+	tallcpus = all_cpus;
+	CPU_NAND(&tallcpus, &tcpuset);
+	PCPU_SET(other_cpus, tallcpus);
 
 	if (bootverbose)
 		lapic_dump("AP");
@@ -835,7 +833,7 @@ assign_cpu_ids(void)
 
 		if (hyperthreading_cpus > 1 && i % hyperthreading_cpus != 0) {
 			cpu_info[i].cpu_hyperthread = 1;
-#if defined(SCHED_ULE)
+
 			/*
 			 * Don't use HT CPU if it has been disabled by a
 			 * tunable.
@@ -844,7 +842,6 @@ assign_cpu_ids(void)
 				cpu_info[i].cpu_disabled = 1;
 				continue;
 			}
-#endif
 		}
 
 		/* Don't use this CPU if it has been disabled by a tunable. */
@@ -854,6 +851,11 @@ assign_cpu_ids(void)
 		}
 	}
 
+	if (hyperthreading_allowed == 0 && hyperthreading_cpus > 1) {
+		hyperthreading_cpus = 0;
+		cpu_logical = 1;
+	}
+
 	/*
 	 * Assign CPU IDs to local APIC IDs and disable any CPUs
 	 * beyond MAXCPU.  CPU 0 is always assigned to the BSP.
@@ -891,6 +893,7 @@ assign_cpu_ids(void)
 static int
 start_all_aps(void)
 {
+	cpuset_t tallcpus, tcpuset;
 	vm_offset_t va = boot_address + KERNBASE;
 	u_int64_t *pt4, *pt3, *pt2;
 	u_int32_t mpbioswarmvec;
@@ -955,11 +958,14 @@ start_all_aps(void)
 			panic("AP #%d (PHY# %d) failed!", cpu, apic_id);
 		}
 
-		all_cpus |= (1 << cpu);		/* record AP in CPU map */
+		CPU_SET(cpu, &all_cpus);	/* record AP in CPU map */
 	}
 
 	/* build our map of 'other' CPUs */
-	PCPU_SET(other_cpus, all_cpus & ~PCPU_GET(cpumask));
+	tallcpus = all_cpus;
+	tcpuset = PCPU_GET(cpumask);
+	CPU_NAND(&tallcpus, &tcpuset);
+	PCPU_SET(other_cpus, tallcpus);
 
 	/* restore the warmstart vector */
 	*(u_int32_t *) WARMBOOT_OFF = mpbioswarmvec;
@@ -1088,6 +1094,30 @@ SYSCTL_UINT(_debug_xhits, OID_AUTO, ipi_
 #endif /* COUNT_XINVLTLB_HITS */
 
 /*
+ * Send an IPI to specified CPU handling the bitmap logic.
+ */
+static void
+ipi_send_cpu(int cpu, u_int ipi)
+{
+	u_int bitmap, old_pending, new_pending;
+
+	KASSERT(cpu_apic_ids[cpu] != -1, ("IPI to non-existent CPU %d", cpu));
+
+	if (IPI_IS_BITMAPED(ipi)) {
+		bitmap = 1 << ipi;
+		ipi = IPI_BITMAP_VECTOR;
+		do {
+			old_pending = cpu_ipi_pending[cpu];
+			new_pending = old_pending | bitmap;
+		} while  (!atomic_cmpset_int(&cpu_ipi_pending[cpu],
+		    old_pending, new_pending)); 
+		if (old_pending)
+			return;
+	}
+	lapic_ipi_vectored(ipi, cpu_apic_ids[cpu]);
+}
+
+/*
  * Flush the TLB on all other CPU's
  */
 static void
@@ -1111,28 +1141,19 @@ smp_tlb_shootdown(u_int vector, vm_offse
 }
 
 static void
-smp_targeted_tlb_shootdown(cpumask_t mask, u_int vector, vm_offset_t addr1, vm_offset_t addr2)
+smp_targeted_tlb_shootdown(cpuset_t mask, u_int vector, vm_offset_t addr1, vm_offset_t addr2)
 {
-	int ncpu, othercpus;
+	int cpu, ncpu, othercpus;
 
 	othercpus = mp_ncpus - 1;
-	if (mask == (cpumask_t)-1) {
-		ncpu = othercpus;
-		if (ncpu < 1)
+	if (CPU_ISFULLSET(&mask)) {
+		if (othercpus < 1)
 			return;
 	} else {
-		mask &= ~PCPU_GET(cpumask);
-		if (mask == 0)
-			return;
-		ncpu = bitcount32(mask);
-		if (ncpu > othercpus) {
-			/* XXX this should be a panic offence */
-			printf("SMP: tlb shootdown to %d other cpus (only have %d)\n",
-			    ncpu, othercpus);
-			ncpu = othercpus;
-		}
-		/* XXX should be a panic, implied by mask == 0 above */
-		if (ncpu < 1)
+		sched_pin();
+		CPU_NAND(&mask, PCPU_PTR(cpumask));
+		sched_unpin();
+		if (CPU_EMPTY(&mask))
 			return;
 	}
 	if (!(read_rflags() & PSL_I))
@@ -1141,39 +1162,25 @@ smp_targeted_tlb_shootdown(cpumask_t mas
 	smp_tlb_addr1 = addr1;
 	smp_tlb_addr2 = addr2;
 	atomic_store_rel_int(&smp_tlb_wait, 0);
-	if (mask == (cpumask_t)-1)
+	if (CPU_ISFULLSET(&mask)) {
+		ncpu = othercpus;
 		ipi_all_but_self(vector);
-	else
-		ipi_selected(mask, vector);
+	} else {
+		ncpu = 0;
+		while ((cpu = cpusetobj_ffs(&mask)) != 0) {
+			cpu--;
+			CPU_CLR(cpu, &mask);
+			CTR3(KTR_SMP, "%s: cpu: %d ipi: %x", __func__,
+			    cpu, vector);
+			ipi_send_cpu(cpu, vector);
+			ncpu++;
+		}
+	}
 	while (smp_tlb_wait < ncpu)
 		ia32_pause();
 	mtx_unlock_spin(&smp_ipi_mtx);
 }
 
-/*
- * Send an IPI to specified CPU handling the bitmap logic.
- */
-static void
-ipi_send_cpu(int cpu, u_int ipi)
-{
-	u_int bitmap, old_pending, new_pending;
-
-	KASSERT(cpu_apic_ids[cpu] != -1, ("IPI to non-existent CPU %d", cpu));
-
-	if (IPI_IS_BITMAPED(ipi)) {
-		bitmap = 1 << ipi;
-		ipi = IPI_BITMAP_VECTOR;
-		do {
-			old_pending = cpu_ipi_pending[cpu];
-			new_pending = old_pending | bitmap;
-		} while  (!atomic_cmpset_int(&cpu_ipi_pending[cpu],
-		    old_pending, new_pending)); 
-		if (old_pending)
-			return;
-	}
-	lapic_ipi_vectored(ipi, cpu_apic_ids[cpu]);
-}
-
 void
 smp_cache_flush(void)
 {
@@ -1220,7 +1227,7 @@ smp_invlpg_range(vm_offset_t addr1, vm_o
 }
 
 void
-smp_masked_invltlb(cpumask_t mask)
+smp_masked_invltlb(cpuset_t mask)
 {
 
 	if (smp_started) {
@@ -1232,7 +1239,7 @@ smp_masked_invltlb(cpumask_t mask)
 }
 
 void
-smp_masked_invlpg(cpumask_t mask, vm_offset_t addr)
+smp_masked_invlpg(cpuset_t mask, vm_offset_t addr)
 {
 
 	if (smp_started) {
@@ -1244,7 +1251,7 @@ smp_masked_invlpg(cpumask_t mask, vm_off
 }
 
 void
-smp_masked_invlpg_range(cpumask_t mask, vm_offset_t addr1, vm_offset_t addr2)
+smp_masked_invlpg_range(cpuset_t mask, vm_offset_t addr1, vm_offset_t addr2)
 {
 
 	if (smp_started) {
@@ -1297,7 +1304,7 @@ ipi_bitmap_handler(struct trapframe fram
  * send an IPI to a set of cpus.
  */
 void
-ipi_selected(cpumask_t cpus, u_int ipi)
+ipi_selected(cpuset_t cpus, u_int ipi)
 {
 	int cpu;
 
@@ -1307,12 +1314,12 @@ ipi_selected(cpumask_t cpus, u_int ipi)
 	 * Set the mask of receiving CPUs for this purpose.
 	 */
 	if (ipi == IPI_STOP_HARD)
-		atomic_set_int(&ipi_nmi_pending, cpus);
+		CPU_OR_ATOMIC(&ipi_nmi_pending, &cpus);
 
-	CTR3(KTR_SMP, "%s: cpus: %x ipi: %x", __func__, cpus, ipi);
-	while ((cpu = ffs(cpus)) != 0) {
+	while ((cpu = cpusetobj_ffs(&cpus)) != 0) {
 		cpu--;
-		cpus &= ~(1 << cpu);
+		CPU_CLR(cpu, &cpus);
+		CTR3(KTR_SMP, "%s: cpu: %d ipi: %x", __func__, cpu, ipi);
 		ipi_send_cpu(cpu, ipi);
 	}
 }
@@ -1330,7 +1337,7 @@ ipi_cpu(int cpu, u_int ipi)
 	 * Set the mask of receiving CPUs for this purpose.
 	 */
 	if (ipi == IPI_STOP_HARD)
-		atomic_set_int(&ipi_nmi_pending, 1 << cpu);
+		CPU_SET_ATOMIC(cpu, &ipi_nmi_pending);
 
 	CTR3(KTR_SMP, "%s: cpu: %d ipi: %x", __func__, cpu, ipi);
 	ipi_send_cpu(cpu, ipi);
@@ -1343,8 +1350,10 @@ void
 ipi_all_but_self(u_int ipi)
 {
 
+	sched_pin();
 	if (IPI_IS_BITMAPED(ipi)) {
 		ipi_selected(PCPU_GET(other_cpus), ipi);
+		sched_unpin();
 		return;
 	}
 
@@ -1354,7 +1363,8 @@ ipi_all_but_self(u_int ipi)
 	 * Set the mask of receiving CPUs for this purpose.
 	 */
 	if (ipi == IPI_STOP_HARD)
-		atomic_set_int(&ipi_nmi_pending, PCPU_GET(other_cpus));
+		CPU_OR_ATOMIC(&ipi_nmi_pending, PCPU_PTR(other_cpus));
+	sched_unpin();
 
 	CTR2(KTR_SMP, "%s: ipi: %x", __func__, ipi);
 	lapic_ipi_vectored(ipi, APIC_IPI_DEST_OTHERS);
@@ -1363,7 +1373,7 @@ ipi_all_but_self(u_int ipi)
 int
 ipi_nmi_handler()
 {
-	cpumask_t cpumask;
+	cpuset_t cpumask;
 
 	/*
 	 * As long as there is not a simple way to know about a NMI's
@@ -1371,11 +1381,13 @@ ipi_nmi_handler()
 	 * the global pending bitword an IPI_STOP_HARD has been issued
 	 * and should be handled.
 	 */
+	sched_pin();
 	cpumask = PCPU_GET(cpumask);
-	if ((ipi_nmi_pending & cpumask) == 0)
+	sched_unpin();
+	if (!CPU_OVERLAP(&ipi_nmi_pending, &cpumask))
 		return (1);
 
-	atomic_clear_int(&ipi_nmi_pending, cpumask);
+	CPU_NAND_ATOMIC(&ipi_nmi_pending, &cpumask);
 	cpustop_handler();
 	return (0);
 }
@@ -1387,23 +1399,25 @@ ipi_nmi_handler()
 void
 cpustop_handler(void)
 {
-	cpumask_t cpumask;
+	cpuset_t cpumask;
 	u_int cpu;
 
+	sched_pin();
 	cpu = PCPU_GET(cpuid);
 	cpumask = PCPU_GET(cpumask);
+	sched_unpin();
 
 	savectx(&stoppcbs[cpu]);
 
 	/* Indicate that we are stopped */
-	atomic_set_int(&stopped_cpus, cpumask);
+	CPU_OR_ATOMIC(&stopped_cpus, &cpumask);
 
 	/* Wait for restart */
-	while (!(started_cpus & cpumask))
+	while (!CPU_OVERLAP(&started_cpus, &cpumask))
 	    ia32_pause();
 
-	atomic_clear_int(&started_cpus, cpumask);
-	atomic_clear_int(&stopped_cpus, cpumask);
+	CPU_NAND_ATOMIC(&started_cpus, &cpumask);
+	CPU_NAND_ATOMIC(&stopped_cpus, &cpumask);
 
 	if (cpu == 0 && cpustop_restartfunc != NULL) {
 		cpustop_restartfunc();
@@ -1418,7 +1432,7 @@ cpustop_handler(void)
 void
 cpususpend_handler(void)
 {
-	cpumask_t cpumask;
+	cpuset_t cpumask;
 	register_t cr3, rf;
 	u_int cpu;
 
@@ -1430,7 +1444,7 @@ cpususpend_handler(void)
 
 	if (savectx(susppcbs[cpu])) {
 		wbinvd();
-		atomic_set_int(&stopped_cpus, cpumask);
+		CPU_OR_ATOMIC(&stopped_cpus, &cpumask);
 	} else {
 		pmap_init_pat();
 		PCPU_SET(switchtime, 0);
@@ -1438,11 +1452,11 @@ cpususpend_handler(void)
 	}
 
 	/* Wait for resume */
-	while (!(started_cpus & cpumask))
+	while (!CPU_OVERLAP(&started_cpus, &cpumask))
 		ia32_pause();
 
-	atomic_clear_int(&started_cpus, cpumask);
-	atomic_clear_int(&stopped_cpus, cpumask);
+	CPU_NAND_ATOMIC(&started_cpus, &cpumask);
+	CPU_NAND_ATOMIC(&stopped_cpus, &cpumask);
 
 	/* Restore CR3 and enable interrupts */
 	load_cr3(cr3);
@@ -1467,158 +1481,6 @@ release_aps(void *dummy __unused)
 }
 SYSINIT(start_aps, SI_SUB_SMP, SI_ORDER_FIRST, release_aps, NULL);
 
-static int
-sysctl_hlt_cpus(SYSCTL_HANDLER_ARGS)
-{
-	cpumask_t mask;
-	int error;
-
-	mask = hlt_cpus_mask;
-	error = sysctl_handle_int(oidp, &mask, 0, req);
-	if (error || !req->newptr)
-		return (error);
-
-	if (logical_cpus_mask != 0 &&
-	    (mask & logical_cpus_mask) == logical_cpus_mask)
-		hlt_logical_cpus = 1;
-	else
-		hlt_logical_cpus = 0;
-
-	if (! hyperthreading_allowed)
-		mask |= hyperthreading_cpus_mask;
-
-	if ((mask & all_cpus) == all_cpus)
-		mask &= ~(1<<0);
-	hlt_cpus_mask = mask;
-	return (error);
-}
-SYSCTL_PROC(_machdep, OID_AUTO, hlt_cpus, CTLTYPE_INT|CTLFLAG_RW,
-    0, 0, sysctl_hlt_cpus, "IU",
-    "Bitmap of CPUs to halt.  101 (binary) will halt CPUs 0 and 2.");
-
-static int
-sysctl_hlt_logical_cpus(SYSCTL_HANDLER_ARGS)
-{
-	int disable, error;
-
-	disable = hlt_logical_cpus;
-	error = sysctl_handle_int(oidp, &disable, 0, req);
-	if (error || !req->newptr)
-		return (error);
-
-	if (disable)
-		hlt_cpus_mask |= logical_cpus_mask;
-	else
-		hlt_cpus_mask &= ~logical_cpus_mask;
-
-	if (! hyperthreading_allowed)
-		hlt_cpus_mask |= hyperthreading_cpus_mask;
-
-	if ((hlt_cpus_mask & all_cpus) == all_cpus)
-		hlt_cpus_mask &= ~(1<<0);
-
-	hlt_logical_cpus = disable;
-	return (error);
-}
-
-static int
-sysctl_hyperthreading_allowed(SYSCTL_HANDLER_ARGS)
-{
-	int allowed, error;
-
-	allowed = hyperthreading_allowed;
-	error = sysctl_handle_int(oidp, &allowed, 0, req);
-	if (error || !req->newptr)
-		return (error);
-
-#ifdef SCHED_ULE
-	/*
-	 * SCHED_ULE doesn't allow enabling/disabling HT cores at
-	 * run-time.
-	 */
-	if (allowed != hyperthreading_allowed)
-		return (ENOTSUP);
-	return (error);
-#endif
-
-	if (allowed)
-		hlt_cpus_mask &= ~hyperthreading_cpus_mask;
-	else
-		hlt_cpus_mask |= hyperthreading_cpus_mask;
-
-	if (logical_cpus_mask != 0 &&
-	    (hlt_cpus_mask & logical_cpus_mask) == logical_cpus_mask)
-		hlt_logical_cpus = 1;
-	else
-		hlt_logical_cpus = 0;
-
-	if ((hlt_cpus_mask & all_cpus) == all_cpus)
-		hlt_cpus_mask &= ~(1<<0);
-
-	hyperthreading_allowed = allowed;
-	return (error);
-}
-
-static void
-cpu_hlt_setup(void *dummy __unused)
-{
-
-	if (logical_cpus_mask != 0) {
-		TUNABLE_INT_FETCH("machdep.hlt_logical_cpus",
-		    &hlt_logical_cpus);
-		sysctl_ctx_init(&logical_cpu_clist);
-		SYSCTL_ADD_PROC(&logical_cpu_clist,
-		    SYSCTL_STATIC_CHILDREN(_machdep), OID_AUTO,
-		    "hlt_logical_cpus", CTLTYPE_INT|CTLFLAG_RW, 0, 0,
-		    sysctl_hlt_logical_cpus, "IU", "");
-		SYSCTL_ADD_UINT(&logical_cpu_clist,
-		    SYSCTL_STATIC_CHILDREN(_machdep), OID_AUTO,
-		    "logical_cpus_mask", CTLTYPE_INT|CTLFLAG_RD,
-		    &logical_cpus_mask, 0, "");
-
-		if (hlt_logical_cpus)
-			hlt_cpus_mask |= logical_cpus_mask;
-
-		/*
-		 * If necessary for security purposes, force
-		 * hyperthreading off, regardless of the value
-		 * of hlt_logical_cpus.
-		 */
-		if (hyperthreading_cpus_mask) {
-			SYSCTL_ADD_PROC(&logical_cpu_clist,
-			    SYSCTL_STATIC_CHILDREN(_machdep), OID_AUTO,
-			    "hyperthreading_allowed", CTLTYPE_INT|CTLFLAG_RW,
-			    0, 0, sysctl_hyperthreading_allowed, "IU", "");
-			if (! hyperthreading_allowed)
-				hlt_cpus_mask |= hyperthreading_cpus_mask;
-		}
-	}
-}
-SYSINIT(cpu_hlt, SI_SUB_SMP, SI_ORDER_ANY, cpu_hlt_setup, NULL);
-
-int
-mp_grab_cpu_hlt(void)
-{
-	cpumask_t mask;
-#ifdef MP_WATCHDOG
-	u_int cpuid;
-#endif
-	int retval;
-
-	mask = PCPU_GET(cpumask);
-#ifdef MP_WATCHDOG
-	cpuid = PCPU_GET(cpuid);
-	ap_watchdog(cpuid);
-#endif
-
-	retval = 0;
-	while (mask & hlt_cpus_mask) {
-		retval = 1;
-		__asm __volatile("sti; hlt" : : : "memory");
-	}
-	return (retval);
-}
-
 #ifdef COUNT_IPIS
 /*
  * Setup interrupt counters for IPI handlers.

Modified: projects/altix/sys/amd64/amd64/pmap.c
==============================================================================
--- projects/altix/sys/amd64/amd64/pmap.c	Sun Jun 12 20:12:01 2011	(r223021)
+++ projects/altix/sys/amd64/amd64/pmap.c	Sun Jun 12 20:19:17 2011	(r223022)
@@ -123,6 +123,8 @@ __FBSDID("$FreeBSD$");
 #include <sys/sysctl.h>
 #ifdef SMP
 #include <sys/smp.h>
+#else
+#include <sys/cpuset.h>
 #endif
 
 #include <vm/vm.h>
@@ -581,7 +583,7 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
 	PMAP_LOCK_INIT(kernel_pmap);
 	kernel_pmap->pm_pml4 = (pdp_entry_t *)PHYS_TO_DMAP(KPML4phys);
 	kernel_pmap->pm_root = NULL;
-	kernel_pmap->pm_active = -1;	/* don't allow deactivation */
+	CPU_FILL(&kernel_pmap->pm_active);	/* don't allow deactivation */
 	TAILQ_INIT(&kernel_pmap->pm_pvchunk);
 
 	/*
@@ -923,19 +925,20 @@ pmap_update_pde_invalidate(vm_offset_t v
 void
 pmap_invalidate_page(pmap_t pmap, vm_offset_t va)
 {
-	cpumask_t cpumask, other_cpus;
+	cpuset_t cpumask, other_cpus;
 
 	sched_pin();
-	if (pmap == kernel_pmap || pmap->pm_active == all_cpus) {
+	if (pmap == kernel_pmap || !CPU_CMP(&pmap->pm_active, &all_cpus)) {
 		invlpg(va);
 		smp_invlpg(va);
 	} else {
 		cpumask = PCPU_GET(cpumask);
 		other_cpus = PCPU_GET(other_cpus);
-		if (pmap->pm_active & cpumask)
+		if (CPU_OVERLAP(&pmap->pm_active, &cpumask))
 			invlpg(va);
-		if (pmap->pm_active & other_cpus)
-			smp_masked_invlpg(pmap->pm_active & other_cpus, va);
+		CPU_AND(&other_cpus, &pmap->pm_active);
+		if (!CPU_EMPTY(&other_cpus))
+			smp_masked_invlpg(other_cpus, va);
 	}
 	sched_unpin();
 }
@@ -943,23 +946,23 @@ pmap_invalidate_page(pmap_t pmap, vm_off
 void
 pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
 {
-	cpumask_t cpumask, other_cpus;
+	cpuset_t cpumask, other_cpus;
 	vm_offset_t addr;
 
 	sched_pin();
-	if (pmap == kernel_pmap || pmap->pm_active == all_cpus) {
+	if (pmap == kernel_pmap || !CPU_CMP(&pmap->pm_active, &all_cpus)) {
 		for (addr = sva; addr < eva; addr += PAGE_SIZE)
 			invlpg(addr);
 		smp_invlpg_range(sva, eva);
 	} else {
 		cpumask = PCPU_GET(cpumask);
 		other_cpus = PCPU_GET(other_cpus);
-		if (pmap->pm_active & cpumask)
+		if (CPU_OVERLAP(&pmap->pm_active, &cpumask))
 			for (addr = sva; addr < eva; addr += PAGE_SIZE)
 				invlpg(addr);
-		if (pmap->pm_active & other_cpus)
-			smp_masked_invlpg_range(pmap->pm_active & other_cpus,
-			    sva, eva);
+		CPU_AND(&other_cpus, &pmap->pm_active);
+		if (!CPU_EMPTY(&other_cpus))
+			smp_masked_invlpg_range(other_cpus, sva, eva);
 	}
 	sched_unpin();
 }
@@ -967,19 +970,20 @@ pmap_invalidate_range(pmap_t pmap, vm_of
 void

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



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