From owner-p4-projects@FreeBSD.ORG Thu Jun 7 11:35:33 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EE9FB16A475; Thu, 7 Jun 2007 11:35:32 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id BE5B916A46E for ; Thu, 7 Jun 2007 11:35:32 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id ACB7913C465 for ; Thu, 7 Jun 2007 11:35:32 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.8/8.13.8) with ESMTP id l57BZWwV039626 for ; Thu, 7 Jun 2007 11:35:32 GMT (envelope-from rpaulo@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.8/8.13.8/Submit) id l57BZPID039530 for perforce@freebsd.org; Thu, 7 Jun 2007 11:35:25 GMT (envelope-from rpaulo@FreeBSD.org) Date: Thu, 7 Jun 2007 11:35:25 GMT Message-Id: <200706071135.l57BZPID039530@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rpaulo@FreeBSD.org using -f From: Rui Paulo To: Perforce Change Reviews Cc: Subject: PERFORCE change 121150 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jun 2007 11:35:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=121150 Change 121150 by rpaulo@rpaulo_epsilon on 2007/06/07 11:35:08 IFC Affected files ... .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/cpu_switch.S#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/genassym.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/intr_machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/io_apic.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_watchdog.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/pmap.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/tsc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/vm_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/ia32/ia32_syscall.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/include/vmparam.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/isa/clock.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/amd64/linux32/linux32_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/intr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/pmap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/trap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/undefined.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/arm/vm_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/at91/uart_cpu_at91rm9200usart.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/arm/include/vmparam.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/cam/cam_xpt.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/cam/scsi/scsi_all.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/linprocfs/linprocfs.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/linux/linux_misc.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/ndis/subr_ntoskrnl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/opensolaris/kern/opensolaris_kstat.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/opensolaris/kern/opensolaris_vfs.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/opensolaris/sys/vfs.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/compat/svr4/svr4_misc.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/Makefile.ia64#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/NOTES#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/files#11 integrate .. //depot/projects/soc2007/rpaulo-macbook/conf/options#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/fil.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_auth.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_auth.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_compat.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_fil.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_frag.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_frag.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_ftp_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_htable.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_htable.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_ipsec_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_irc_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_log.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_lookup.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_lookup.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_nat.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_nat.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_pool.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_pool.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_pptp_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_proxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_proxy.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_raudio_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_rcmd_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_rpcb_pxy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_scan.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_scan.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_state.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_state.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_sync.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ip_sync.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/ipl.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/ipfilter/netinet/mlfk_ipl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpi_support/acpi_asus.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpi_support/acpi_panasonic.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpica/acpi_cpu.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpica/acpi_ec.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/acpica/acpi_timer.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/ah_osdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/ah_osdep.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/ath_rate/onoe/onoe.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/ath_rate/onoe/onoe.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/if_ath.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/if_athioctl.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/if_athrate.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ath/if_athvar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/bce/if_bce.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/bce/if_bcereg.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/bge/if_bge.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/ciss/ciss.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/cxgb/cxgb_main.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/de/if_de.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/em/if_em.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/firewire.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/firewirereg.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwdev.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwdma.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwmem.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwohci.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwohci_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/fwohcivar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/if_fwe.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/if_fwevar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/if_fwip.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/if_fwipvar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/sbp.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/firewire/sbp_targ.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/gem/if_gem.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/gem/if_gemreg.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/gem/if_gemvar.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/hwpmc/hwpmc_mod.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/md/md.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mfi/mfi.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mfi/mfivar.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/brgphy.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/brgphyreg.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/ciphy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/ciphyreg.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/miidevs#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mii/rlphy.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mmc/mmc.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_cnfg.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_init.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_ioc.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_log_fc.h#2 delete .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_log_sas.h#2 delete .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_raid.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_sas.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpilib/mpi_targ.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpt.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpt.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mpt/mpt_cam.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/mxge/if_mxge.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/pccard/pccard.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/pccard/pccardvarp.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/pccbb/pccbb.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/pccbb/pccbbvar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/puc/puc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/puc/pucdata.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/clone.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/clone.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/atiixp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/emu10kx.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/envy24ht.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/es137x.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/hda/hdac.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pci/via8233.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/ac97.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/ac97_patch.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/buffer.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/channel.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/channel.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/dsp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/dsp.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/feeder.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/feeder_fmt.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/feeder_rate.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/feeder_volume.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/mixer.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/sndstat.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/sound.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/sound.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/vchan.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/pcm/vchan.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/unit.c#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/unit.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/usb/uaudio.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/usb/uaudio_pcm.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/sound/version.h#1 branch .. //depot/projects/soc2007/rpaulo-macbook/dev/speaker/spkr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/syscons/syscons.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ubsa.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ucom.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/udbp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ufm.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uftdi.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uhid.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ulpt.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ums.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uplcom.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/urio.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usbdevs#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uscanner.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/dev/usb/uvscom.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/procfs/procfs_ctl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/procfs/procfs_ioctl.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/procfs/procfs_status.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/fs/smbfs/smbfs_io.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/cache/g_cache.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/eli/g_eli.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/geom_kern.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/journal/g_journal.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part_apm.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/part/g_part_gpt.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/geom/stripe/g_stripe.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/gnu/fs/ext2fs/ext2_bmap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/elan-mmcr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/genassym.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/intr_machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/io_apic.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/mp_clock.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/mp_machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/mp_watchdog.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/pmap.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/swtch.s#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/tsc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/i386/vm_machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/include/vmparam.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/isa/clock.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/isa/npx.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia32/ia32_trap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/interrupt.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/mp_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/pmap.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/ia64/vm_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ia64/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/init_main.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_acct.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_alq.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_clock.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_condvar.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_cpu.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_exit.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_fork.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_idle.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_intr.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_kse.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_kthread.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_lockf.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_malloc.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mbuf.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mib.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_mutex.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_poll.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_proc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_resource.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_rwlock.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_shutdown.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_sig.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_subr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_switch.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_synch.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_sysctl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_tc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_thr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_thread.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_time.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/kern_umtx.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/ksched.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sched_4bsd.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sched_core.c#2 delete .. //depot/projects/soc2007/rpaulo-macbook/kern/sched_ule.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_lock.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_prof.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_sleepqueue.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_smp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_taskqueue.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_turnstile.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/subr_witness.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sys_generic.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/sys_process.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/tty.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/uipc_socket.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_aio.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_bio.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_cluster.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/kern/vfs_subr.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/dcons/Makefile#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/modules/sound/sound/Makefile#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_fwsubr.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/net/if_media.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/_ieee80211.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_acl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto_ccmp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto_none.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto_tkip.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_crypto_wep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_freebsd.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_freebsd.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_input.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_ioctl.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_ioctl.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_node.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_node.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_output.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_proto.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_proto.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/net80211/ieee80211_xauth.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/bluetooth/common/ng_bluetooth.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_base.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netgraph/ng_ppp.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/ip_carp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_constants.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_indata.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_input.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_input.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_os_bsd.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_output.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_output.h#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_pcb.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_pcb.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_structs.h#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_sysctl.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_timer.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctp_usrreq.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctputil.c#8 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/sctputil.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_syncache.c#6 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet/tcp_timewait.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/frag6.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_ifattach.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/in6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/ip6_var.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netinet6/sctp6_usrreq.c#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/netncp/ncp_sock.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/netsmb/smb_trantcp.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/nfs4client/nfs4_vnops.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/nfsclient/nfs_bio.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/nfsclient/nfs_vnops.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/pc98/cbus/clock.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/pc98/pc98/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/intr_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/trap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_arg.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_bsm.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_bsm_klib.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_pipe.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_private.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_syscalls.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/audit/audit_worker.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/security/mac_lomac/mac_lomac.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/fhc/fhc.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/include/vmparam.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/pci/psycho.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sbus/sbus.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/intr_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/mp_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/pmap.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/tsb.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sparc64/sparc64/vm_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/include/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/include/vmparam.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/intr_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/machdep.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/mp_machdep.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/pmap.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/trap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/tsb.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/tte_hash.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/sun4v/sun4v/vm_machdep.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/mutex.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/param.h#7 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/pcpu.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/proc.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/resource.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/resourcevar.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/sched.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/sysctl.h#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/turnstile.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/umtx.h#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/sys/vmmeter.h#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/ufs/ffs/ffs_inode.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ufs/ufs/ufs_bmap.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/ufs/ufs/ufs_extattr.c#2 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/swap_pager.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/uma_core.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_contig.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_fault.c#4 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_glue.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_map.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_meter.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_mmap.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_object.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_page.c#5 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_pageout.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_pageq.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vm_zeroidle.c#3 integrate .. //depot/projects/soc2007/rpaulo-macbook/vm/vnode_pager.c#3 integrate Differences ... ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/cpu_switch.S#2 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.156 2007/03/30 00:06:20 jkim Exp $ + * $FreeBSD: src/sys/amd64/amd64/cpu_switch.S,v 1.158 2007/06/06 07:35:07 davidxu Exp $ */ #include @@ -73,19 +73,16 @@ movq TD_PCB(%rsi),%rdx /* newtd->td_proc */ movq PCB_CR3(%rdx),%rdx movq %rdx,%cr3 /* new address space */ - /* set bit in new pm_active */ - movq TD_PROC(%rsi),%rdx - movq P_VMSPACE(%rdx), %rdx - LK btsl %eax, VM_PMAP+PM_ACTIVE(%rdx) /* set new */ - jmp sw1 + jmp swact /* - * cpu_switch(old, new) + * cpu_switch(old, new, mtx) * * Save the current thread state, then select the next thread to run * and load its state. * %rdi = oldtd * %rsi = newtd + * %rdx = mtx */ ENTRY(cpu_switch) /* Switch to new thread. First, save context. */ @@ -147,17 +144,33 @@ movq TD_PCB(%rsi),%r8 /* switch address space */ - movq PCB_CR3(%r8),%rdx + movq PCB_CR3(%r8),%rcx movq %cr3,%rax - cmpq %rdx,%rax /* Same address space? */ - je sw1 - movq %rdx,%cr3 /* new address space */ - + cmpq %rcx,%rax /* Same address space? */ + jne swinact + movq %rdx, TD_LOCK(%rdi) /* Release the old thread */ + /* Wait for the new thread to become unblocked */ + movq $blocked_lock, %rdx +1: + movq TD_LOCK(%rsi),%rcx + cmpq %rcx, %rdx + je 1b + jmp sw1 +swinact: + movq %rcx,%cr3 /* new address space */ movl PCPU(CPUID), %eax /* Release bit from old pmap->pm_active */ - movq TD_PROC(%rdi), %rdx /* oldproc */ - movq P_VMSPACE(%rdx), %rdx - LK btrl %eax, VM_PMAP+PM_ACTIVE(%rdx) /* clear old */ + movq TD_PROC(%rdi), %rcx /* oldproc */ + movq P_VMSPACE(%rcx), %rcx + LK btrl %eax, VM_PMAP+PM_ACTIVE(%rcx) /* clear old */ + movq %rdx, TD_LOCK(%rdi) /* Release the old thread */ +swact: + /* Wait for the new thread to become unblocked */ + movq $blocked_lock, %rdx +1: + movq TD_LOCK(%rsi),%rcx + cmpq %rcx, %rdx + je 1b /* Set bit in new pmap->pm_active */ movq TD_PROC(%rsi),%rdx /* newproc */ @@ -190,9 +203,7 @@ movq %rbx, (%rax) movq %rbx, PCPU(RSP0) - movl TD_TID(%rsi), %eax movq %r8, PCPU(CURPCB) - movl %eax, PCPU(CURTID) movq %rsi, PCPU(CURTHREAD) /* into next thread */ testl $PCB_32BIT,PCB_FLAGS(%r8) ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/genassym.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.161 2007/03/30 00:06:20 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.163 2007/06/06 07:35:07 davidxu Exp $"); #include "opt_compat.h" #include "opt_kstack_pages.h" @@ -76,6 +76,7 @@ ASSYM(PM_ACTIVE, offsetof(struct pmap, pm_active)); ASSYM(P_SFLAG, offsetof(struct proc, p_sflag)); +ASSYM(TD_LOCK, offsetof(struct thread, td_lock)); ASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); ASSYM(TD_PCB, offsetof(struct thread, td_pcb)); ASSYM(TD_PROC, offsetof(struct thread, td_proc)); @@ -193,7 +194,6 @@ ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap)); ASSYM(PC_TSSP, offsetof(struct pcpu, pc_tssp)); ASSYM(PC_RSP0, offsetof(struct pcpu, pc_rsp0)); -ASSYM(PC_CURTID, offsetof(struct pcpu, pc_curtid)); ASSYM(LA_VER, offsetof(struct LAPIC, version)); ASSYM(LA_TPR, offsetof(struct LAPIC, tpr)); ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/intr_machdep.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.32 2007/05/08 21:29:12 jhb Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.34 2007/06/04 21:38:44 attilio Exp $ */ /* @@ -250,7 +250,7 @@ * processed too. */ (*isrc->is_count)++; - PCPU_LAZY_INC(cnt.v_intr); + PCPU_INC(cnt.v_intr); ie = isrc->is_event; @@ -310,7 +310,7 @@ struct thread *td; struct intr_event *ie; struct intr_handler *ih; - int error, vector, thread; + int error, vector, thread, ret; td = curthread; @@ -321,7 +321,7 @@ * processed too. */ (*isrc->is_count)++; - PCPU_LAZY_INC(cnt.v_intr); + PCPU_INC(cnt.v_intr); ie = isrc->is_event; @@ -356,6 +356,7 @@ * a trapframe as its argument. */ td->td_intr_nesting_level++; + ret = 0; thread = 0; critical_enter(); TAILQ_FOREACH(ih, &ie->ie_handlers, ih_next) { @@ -367,9 +368,17 @@ ih->ih_filter, ih->ih_argument == NULL ? frame : ih->ih_argument, ih->ih_name); if (ih->ih_argument == NULL) - ih->ih_filter(frame); + ret = ih->ih_filter(frame); else - ih->ih_filter(ih->ih_argument); + ret = ih->ih_filter(ih->ih_argument); + /* + * Wrapper handler special case: see + * i386/intr_machdep.c::intr_execute_handlers() + */ + if (!thread) { + if (ret == FILTER_SCHEDULE_THREAD) + thread = 1; + } } /* ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/io_apic.c#3 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.30 2007/05/08 21:29:12 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.31 2007/06/05 18:57:48 jhb Exp $"); #include "opt_isa.h" @@ -492,7 +492,7 @@ intbase = next_ioapic_base; printf("ioapic%u: Assuming intbase of %d\n", io->io_id, intbase); - } else if (intbase != next_ioapic_base) + } else if (intbase != next_ioapic_base && bootverbose) printf("ioapic%u: WARNING: intbase %d != expected base %d\n", io->io_id, intbase, next_ioapic_base); io->io_intbase = intbase; ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/machdep.c#3 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.671 2007/05/18 07:10:42 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.675 2007/06/06 07:35:07 davidxu Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -163,7 +163,13 @@ long Maxmem = 0; long realmem = 0; -#define PHYSMAP_SIZE (2 * 30) +/* + * The number of PHYSMAP entries must be one less than the number of + * PHYSSEG entries because the PHYSMAP entry that spans the largest + * physical address that is accessible by ISA DMA is split into two + * PHYSSEG entries. + */ +#define PHYSMAP_SIZE (2 * (VM_PHYSSEG_MAX - 1)) vm_paddr_t phys_avail[PHYSMAP_SIZE + 2]; vm_paddr_t dump_avail[PHYSMAP_SIZE + 2]; @@ -221,8 +227,8 @@ vm_ksubmap_init(&kmi); printf("avail memory = %ju (%ju MB)\n", - ptoa((uintmax_t)VMCNT_GET(free_count)), - ptoa((uintmax_t)VMCNT_GET(free_count)) / 1048576); + ptoa((uintmax_t)cnt.v_free_count), + ptoa((uintmax_t)cnt.v_free_count) / 1048576); /* * Set up buffers, so they can be used to read disk labels. @@ -460,9 +466,9 @@ #ifdef SMP /* Schedule ourselves on the indicated cpu. */ - mtx_lock_spin(&sched_lock); + thread_lock(curthread); sched_bind(curthread, cpu_id); - mtx_unlock_spin(&sched_lock); + thread_unlock(curthread); #endif /* Calibrate by measuring a short delay. */ @@ -473,9 +479,9 @@ intr_restore(reg); #ifdef SMP - mtx_lock_spin(&sched_lock); + thread_lock(curthread); sched_unbind(curthread); - mtx_unlock_spin(&sched_lock); + thread_unlock(curthread); #endif /* @@ -1173,7 +1179,6 @@ PCPU_SET(prvspace, pc); PCPU_SET(curthread, &thread0); PCPU_SET(curpcb, thread0.td_pcb); - PCPU_SET(curtid, thread0.td_tid); PCPU_SET(tssp, &common_tss[0]); /* ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_machdep.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.285 2007/05/19 05:03:59 kan Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.286 2007/06/04 23:56:07 jeff Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -590,26 +591,8 @@ while (smp_started == 0) ia32_pause(); - /* ok, now grab sched_lock and enter the scheduler */ - mtx_lock_spin(&sched_lock); + sched_throw(NULL); - /* - * Correct spinlock nesting. The idle thread context that we are - * borrowing was created so that it would start out with a single - * spin lock (sched_lock) held in fork_trampoline(). Since we've - * explicitly acquired locks in this function, the nesting count - * is now 2 rather than 1. Since we are nested, calling - * spinlock_exit() will simply adjust the counts without allowing - * spin lock using code to interrupt us. - */ - spinlock_exit(); - KASSERT(curthread->td_md.md_spinlock_count == 1, ("invalid count")); - - PCPU_SET(switchtime, cpu_ticks()); - PCPU_SET(switchticks, ticks); - - cpu_throw(NULL, choosethread()); /* doesn't return */ - panic("scheduler returned us to %s", __func__); /* NOTREACHED */ } @@ -988,12 +971,12 @@ if (ipi_bitmap & (1 << IPI_PREEMPT)) { struct thread *running_thread = curthread; - mtx_lock_spin(&sched_lock); + thread_lock(running_thread); if (running_thread->td_critnest > 1) running_thread->td_owepreempt = 1; else mi_switch(SW_INVOL | SW_PREEMPT, NULL); - mtx_unlock_spin(&sched_lock); + thread_unlock(running_thread); } /* Nothing to do for AST */ @@ -1177,11 +1160,9 @@ if (mp_ncpus == 1) return; - mtx_lock_spin(&sched_lock); atomic_store_rel_int(&aps_ready, 1); while (smp_started == 0) ia32_pause(); - mtx_unlock_spin(&sched_lock); } SYSINIT(start_aps, SI_SUB_SMP, SI_ORDER_FIRST, release_aps, NULL); ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/mp_watchdog.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.4 2005/02/28 08:55:53 pjd Exp $ + * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.5 2007/06/04 23:56:33 jeff Exp $ */ #include "opt_mp_watchdog.h" @@ -105,9 +105,7 @@ * locks to make sure. Then reset the timer. */ mtx_lock(&Giant); - mtx_lock_spin(&sched_lock); watchdog_timer = WATCHDOG_THRESHOLD; - mtx_unlock_spin(&sched_lock); mtx_unlock(&Giant); callout_reset(&watchdog_callout, 1 * hz, watchdog_function, NULL); } @@ -156,34 +154,6 @@ sysctl_watchdog, "I", ""); /* - * A badly behaved sysctl that leaks the sched lock when written to. Then - * spin holding it just to make matters worse. This can be used to test the - * effectiveness of the watchdog by generating a fairly hard and nast hang. - * Note that Giant is also held in the current world order when we get here. - */ -static int -sysctl_leak_schedlock(SYSCTL_HANDLER_ARGS) -{ - int error, temp; - - temp = 0; - error = sysctl_handle_int(oidp, &temp, 0, req); - if (error) - return (error); - - if (req->newptr != NULL) { - if (temp) { - printf("Leaking the sched lock...\n"); - mtx_lock_spin(&sched_lock); - while (1); - } - } - return (0); -} -SYSCTL_PROC(_debug, OID_AUTO, leak_schedlock, CTLTYPE_INT|CTLFLAG_RW, 0, 0, - sysctl_leak_schedlock, "IU", ""); - -/* * Drop into the debugger by sending an IPI NMI to the boot processor. */ static void ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/pmap.c#5 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.586 2007/05/20 22:33:41 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.587 2007/05/31 22:52:10 attilio Exp $"); /* * Manages physical address maps. @@ -620,7 +620,7 @@ * numbers of pv entries. */ TUNABLE_INT_FETCH("vm.pmap.shpgperproc", &shpgperproc); - pv_entry_max = shpgperproc * maxproc + VMCNT_GET(page_count); + pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; TUNABLE_INT_FETCH("vm.pmap.pv_entries", &pv_entry_max); pv_entry_high_water = 9 * (pv_entry_max / 10); } @@ -633,7 +633,7 @@ error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req); if (error == 0 && req->newptr) { - shpgperproc = (pv_entry_max - VMCNT_GET(page_count)) / maxproc; + shpgperproc = (pv_entry_max - cnt.v_page_count) / maxproc; pv_entry_high_water = 9 * (pv_entry_max / 10); } return (error); @@ -648,7 +648,7 @@ error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2, req); if (error == 0 && req->newptr) { - pv_entry_max = shpgperproc * maxproc + VMCNT_GET(page_count); + pv_entry_max = shpgperproc * maxproc + cnt.v_page_count; pv_entry_high_water = 9 * (pv_entry_max / 10); } return (error); @@ -1149,7 +1149,8 @@ */ m->right = *free; *free = m; - VMCNT_SUB(wire_count, 1); + + atomic_subtract_int(&cnt.v_wire_count, 1); return 1; } @@ -1459,7 +1460,7 @@ pmap->pm_pml4[PML4PML4I] = 0; /* Recursive Mapping */ m->wire_count--; - VMCNT_SUB(wire_count, 1); + atomic_subtract_int(&cnt.v_wire_count, 1); vm_page_free_zero(m); PMAP_LOCK_DESTROY(pmap); } ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/trap.c#3 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.316 2007/05/27 19:16:45 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.317 2007/06/04 21:38:44 attilio Exp $"); /* * AMD64 Trap and System call handling @@ -163,7 +163,7 @@ register_t addr = 0; ksiginfo_t ksi; - PCPU_LAZY_INC(cnt.v_trap); + PCPU_INC(cnt.v_trap); type = frame->tf_trapno; #ifdef SMP @@ -737,10 +737,10 @@ ksiginfo_t ksi; /* - * note: PCPU_LAZY_INC() can only be used if we can afford + * note: PCPU_INC() can only be used if we can afford * occassional inaccuracy in the count. */ - PCPU_LAZY_INC(cnt.v_syscall); + PCPU_INC(cnt.v_syscall); #ifdef DIAGNOSTIC if (ISPL(frame->tf_cs) != SEL_UPL) { ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/tsc.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/tsc.c,v 1.207 2007/03/26 18:03:29 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/tsc.c,v 1.208 2007/06/04 18:25:01 dwmalone Exp $"); #include "opt_clock.h" @@ -204,7 +204,7 @@ if (tsc_timecounter.tc_frequency == 0) return (EOPNOTSUPP); freq = tsc_freq; - error = sysctl_handle_int(oidp, &freq, sizeof(freq), req); + error = sysctl_handle_quad(oidp, &freq, 0, req); if (error == 0 && req->newptr != NULL) { tsc_freq = freq; tsc_timecounter.tc_frequency = tsc_freq; @@ -212,8 +212,8 @@ return (error); } -SYSCTL_PROC(_machdep, OID_AUTO, tsc_freq, CTLTYPE_LONG | CTLFLAG_RW, - 0, sizeof(u_int), sysctl_machdep_tsc_freq, "IU", ""); +SYSCTL_PROC(_machdep, OID_AUTO, tsc_freq, CTLTYPE_QUAD | CTLFLAG_RW, + 0, sizeof(u_int), sysctl_machdep_tsc_freq, "QU", ""); static unsigned tsc_get_timecount(struct timecounter *tc) ==== //depot/projects/soc2007/rpaulo-macbook/amd64/amd64/vm_machdep.c#3 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.254 2007/04/24 21:17:45 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.255 2007/06/04 23:57:29 jeff Exp $"); #include "opt_isa.h" #include "opt_cpu.h" @@ -170,7 +170,7 @@ * pcb2->pcb_[fg]sbase: cloned above */ - /* Setup to release sched_lock in fork_exit(). */ + /* Setup to release spin count in fork_exit(). */ td2->td_md.md_spinlock_count = 1; td2->td_md.md_saved_flags = PSL_KERNEL | PSL_I; @@ -304,7 +304,7 @@ * pcb2->pcb_[fg]sbase: cloned above */ - /* Setup to release sched_lock in fork_exit(). */ + /* Setup to release spin count in fork_exit(). */ td->td_md.md_spinlock_count = 1; td->td_md.md_saved_flags = PSL_KERNEL | PSL_I; } ==== //depot/projects/soc2007/rpaulo-macbook/amd64/ia32/ia32_syscall.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_syscall.c,v 1.17 2006/12/17 06:48:39 kmacy Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_syscall.c,v 1.18 2007/06/04 21:38:45 attilio Exp $"); /* * 386 Trap and System call handling @@ -105,10 +105,10 @@ ksiginfo_t ksi; /* - * note: PCPU_LAZY_INC() can only be used if we can afford + * note: PCPU_INC() can only be used if we can afford * occassional inaccuracy in the count. */ - PCPU_LAZY_INC(cnt.v_syscall); + PCPU_INC(cnt.v_syscall); >>> TRUNCATED FOR MAIL (1000 lines) <<<