Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2007 19:07:38 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 116272 for review
Message-ID:  <200703211907.l2LJ7c89088389@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=116272

Change 116272 by jhb@jhb_mutex on 2007/03/21 19:07:08

	IFC @116266

Affected files ...

.. //depot/projects/smpng/sys/amd64/amd64/identcpu.c#22 integrate
.. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#20 integrate
.. //depot/projects/smpng/sys/amd64/amd64/legacy.c#8 integrate
.. //depot/projects/smpng/sys/amd64/amd64/local_apic.c#28 integrate
.. //depot/projects/smpng/sys/amd64/amd64/nexus.c#24 integrate
.. //depot/projects/smpng/sys/amd64/amd64/pmap.c#73 integrate
.. //depot/projects/smpng/sys/amd64/include/apicvar.h#17 integrate
.. //depot/projects/smpng/sys/amd64/include/pcpu.h#6 integrate
.. //depot/projects/smpng/sys/amd64/include/specialreg.h#12 integrate
.. //depot/projects/smpng/sys/arm/arm/cpufunc_asm_arm9.S#5 integrate
.. //depot/projects/smpng/sys/arm/include/bootconfig.h#3 integrate
.. //depot/projects/smpng/sys/arm/include/cpufunc.h#11 integrate
.. //depot/projects/smpng/sys/arm/include/pcpu.h#4 integrate
.. //depot/projects/smpng/sys/arm/include/undefined.h#3 integrate
.. //depot/projects/smpng/sys/arm/xscale/ixp425/avila_ata.c#3 integrate
.. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425.c#4 integrate
.. //depot/projects/smpng/sys/arm/xscale/ixp425/ixp425reg.h#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/bootspi/loader_prompt.c#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/Makefile#6 integrate
.. //depot/projects/smpng/sys/boot/pc98/boot0.5/boot.s#2 integrate
.. //depot/projects/smpng/sys/boot/pc98/boot0.5/boot0.5.s#2 integrate
.. //depot/projects/smpng/sys/boot/pc98/boot0.5/disk.s#2 integrate
.. //depot/projects/smpng/sys/cam/cam_xpt.c#42 integrate
.. //depot/projects/smpng/sys/coda/coda_vnops.c#28 integrate
.. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#55 integrate
.. //depot/projects/smpng/sys/compat/linsysfs/linsysfs.c#3 integrate
.. //depot/projects/smpng/sys/conf/NOTES#138 integrate
.. //depot/projects/smpng/sys/conf/files#201 integrate
.. //depot/projects/smpng/sys/conf/kmod.mk#64 integrate
.. //depot/projects/smpng/sys/conf/options#137 integrate
.. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.c#25 integrate
.. //depot/projects/smpng/sys/contrib/pf/net/if_pfsync.h#6 integrate
.. //depot/projects/smpng/sys/crypto/via/padlock.c#8 integrate
.. //depot/projects/smpng/sys/dev/acpica/Osd/OsdDebug.c#11 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi.c#98 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_ec.c#42 integrate
.. //depot/projects/smpng/sys/dev/ar/if_ar.c#22 integrate
.. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.c#14 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#80 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-queue.c#40 integrate
.. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#31 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bge.c#91 integrate
.. //depot/projects/smpng/sys/dev/ce/if_ce.c#7 integrate
.. //depot/projects/smpng/sys/dev/cm/smc90cx6.c#14 integrate
.. //depot/projects/smpng/sys/dev/cp/if_cp.c#20 integrate
.. //depot/projects/smpng/sys/dev/ctau/if_ct.c#22 integrate
.. //depot/projects/smpng/sys/dev/cx/if_cx.c#29 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_ael1002.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_common.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_firmware_exports.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_mc5.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_regs.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_sge_defs.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_t3_cpl.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_t3_hw.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_tcb.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_version.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_vsc8211.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_xgmac.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_adapter.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_config.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_ioctl.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_lro.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_main.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_osdep.h#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_sge.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/t3fw-3.2.bin.gz.uu#1 branch
.. //depot/projects/smpng/sys/dev/ed/if_ed.c#39 integrate
.. //depot/projects/smpng/sys/dev/firewire/firewire.c#39 integrate
.. //depot/projects/smpng/sys/dev/firewire/firewirereg.h#20 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwdev.c#23 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwmem.c#20 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwohci.c#37 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwohci_pci.c#39 integrate
.. //depot/projects/smpng/sys/dev/firewire/fwohcivar.h#12 integrate
.. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#30 integrate
.. //depot/projects/smpng/sys/dev/firewire/if_fwip.c#10 integrate
.. //depot/projects/smpng/sys/dev/firewire/sbp.c#41 integrate
.. //depot/projects/smpng/sys/dev/firewire/sbp_targ.c#8 integrate
.. //depot/projects/smpng/sys/dev/hifn/hifn7751.c#25 integrate
.. //depot/projects/smpng/sys/dev/hifn/hifn7751reg.h#7 integrate
.. //depot/projects/smpng/sys/dev/hifn/hifn7751var.h#9 integrate
.. //depot/projects/smpng/sys/dev/ichwd/ichwd.c#6 integrate
.. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#43 integrate
.. //depot/projects/smpng/sys/dev/ipw/if_ipw.c#14 integrate
.. //depot/projects/smpng/sys/dev/isp/isp.c#55 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#53 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#39 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_ioctl.h#18 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_library.c#9 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_library.h#5 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_pci.c#52 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_sbus.c#23 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_stds.h#4 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_target.c#24 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_target.h#16 integrate
.. //depot/projects/smpng/sys/dev/isp/isp_tpublic.h#13 integrate
.. //depot/projects/smpng/sys/dev/isp/ispmbox.h#27 integrate
.. //depot/projects/smpng/sys/dev/isp/ispreg.h#11 integrate
.. //depot/projects/smpng/sys/dev/isp/ispvar.h#36 integrate
.. //depot/projects/smpng/sys/dev/iwi/if_iwi.c#26 integrate
.. //depot/projects/smpng/sys/dev/mii/brgphy.c#40 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt.h#21 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt_cam.c#22 integrate
.. //depot/projects/smpng/sys/dev/my/if_my.c#27 integrate
.. //depot/projects/smpng/sys/dev/pcf/envctrl.c#6 integrate
.. //depot/projects/smpng/sys/dev/pcf/pcf_ebus.c#6 integrate
.. //depot/projects/smpng/sys/dev/pcf/pcf_isa.c#5 integrate
.. //depot/projects/smpng/sys/dev/ppc/ppc.c#17 integrate
.. //depot/projects/smpng/sys/dev/ral/rt2560.c#8 integrate
.. //depot/projects/smpng/sys/dev/ral/rt2661.c#6 integrate
.. //depot/projects/smpng/sys/dev/safe/safe.c#11 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/ad1816.c#24 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/mss.c#30 integrate
.. //depot/projects/smpng/sys/dev/sound/isa/sbc.c#18 integrate
.. //depot/projects/smpng/sys/dev/sound/midi/midi.c#14 integrate
.. //depot/projects/smpng/sys/dev/sound/midi/sequencer.c#18 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/als4000.c#20 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/atiixp.c#10 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/cmi.c#33 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/csa.c#18 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/ds1.c#24 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/emu10k1.c#32 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/emu10kx-pcm.c#5 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/envy24.c#9 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/envy24ht.c#6 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/es137x.c#24 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac.c#11 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac_private.h#4 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/ich.c#49 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/maestro.c#22 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/maestro3.c#25 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/solo.c#19 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/t4dwave.c#23 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/via8233.c#25 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/via82c686.c#25 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#36 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/buffer.c#19 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/channel.c#39 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/channel_if.m#4 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/dsp.c#41 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/fake.c#9 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/feeder.c#18 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/feeder.h#9 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/feeder_fmt.c#17 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/feeder_rate.c#14 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/feeder_volume.c#4 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/sndstat.c#20 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/sound.c#39 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/sound.h#29 integrate
.. //depot/projects/smpng/sys/dev/sound/pcm/vchan.c#20 integrate
.. //depot/projects/smpng/sys/dev/sound/sbus/cs4231.c#6 integrate
.. //depot/projects/smpng/sys/dev/sound/usb/uaudio.c#17 integrate
.. //depot/projects/smpng/sys/dev/sound/usb/uaudio.h#6 integrate
.. //depot/projects/smpng/sys/dev/sound/usb/uaudio_pcm.c#16 integrate
.. //depot/projects/smpng/sys/dev/sr/if_sr.c#23 integrate
.. //depot/projects/smpng/sys/dev/ubsec/ubsec.c#25 integrate
.. //depot/projects/smpng/sys/dev/usb/if_ural.c#22 integrate
.. //depot/projects/smpng/sys/dev/wl/if_wl.c#31 integrate
.. //depot/projects/smpng/sys/fs/cd9660/cd9660_vfsops.c#2 integrate
.. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#61 integrate
.. //depot/projects/smpng/sys/fs/fdescfs/fdesc_vnops.c#25 integrate
.. //depot/projects/smpng/sys/fs/hpfs/hpfs_vfsops.c#33 integrate
.. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_denode.c#28 integrate
.. //depot/projects/smpng/sys/fs/ntfs/ntfs_vfsops.c#35 integrate
.. //depot/projects/smpng/sys/fs/nullfs/null_subr.c#16 integrate
.. //depot/projects/smpng/sys/fs/nwfs/nwfs_node.c#19 integrate
.. //depot/projects/smpng/sys/fs/portalfs/portal_vfsops.c#21 integrate
.. //depot/projects/smpng/sys/fs/portalfs/portal_vnops.c#27 integrate
.. //depot/projects/smpng/sys/fs/procfs/procfs.c#14 integrate
.. //depot/projects/smpng/sys/fs/pseudofs/pseudofs.c#23 integrate
.. //depot/projects/smpng/sys/fs/pseudofs/pseudofs.h#24 integrate
.. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vncache.c#25 integrate
.. //depot/projects/smpng/sys/fs/smbfs/smbfs_node.c#25 integrate
.. //depot/projects/smpng/sys/fs/udf/udf_vfsops.c#34 integrate
.. //depot/projects/smpng/sys/fs/umapfs/umap_subr.c#10 integrate
.. //depot/projects/smpng/sys/fs/unionfs/union_subr.c#28 integrate
.. //depot/projects/smpng/sys/geom/eli/g_eli.c#20 integrate
.. //depot/projects/smpng/sys/geom/eli/g_eli_crypto.c#4 integrate
.. //depot/projects/smpng/sys/gnu/fs/ext2fs/ext2_vfsops.c#11 integrate
.. //depot/projects/smpng/sys/gnu/fs/reiserfs/reiserfs_inode.c#3 integrate
.. //depot/projects/smpng/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#2 integrate
.. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#36 integrate
.. //depot/projects/smpng/sys/i386/bios/smapi.c#8 integrate
.. //depot/projects/smpng/sys/i386/bios/smbios.c#6 integrate
.. //depot/projects/smpng/sys/i386/bios/vpd.c#6 integrate
.. //depot/projects/smpng/sys/i386/i386/identcpu.c#51 integrate
.. //depot/projects/smpng/sys/i386/i386/io_apic.c#22 integrate
.. //depot/projects/smpng/sys/i386/i386/legacy.c#11 integrate
.. //depot/projects/smpng/sys/i386/i386/local_apic.c#49 integrate
.. //depot/projects/smpng/sys/i386/i386/machdep.c#126 integrate
.. //depot/projects/smpng/sys/i386/i386/nexus.c#26 integrate
.. //depot/projects/smpng/sys/i386/i386/pmap.c#115 integrate
.. //depot/projects/smpng/sys/i386/include/apicvar.h#26 integrate
.. //depot/projects/smpng/sys/i386/include/pcpu.h#17 integrate
.. //depot/projects/smpng/sys/i386/include/pmap.h#34 integrate
.. //depot/projects/smpng/sys/i386/include/specialreg.h#14 integrate
.. //depot/projects/smpng/sys/ia64/ia64/nexus.c#15 integrate
.. //depot/projects/smpng/sys/ia64/include/pcpu.h#7 integrate
.. //depot/projects/smpng/sys/kern/kern_acct.c#50 integrate
.. //depot/projects/smpng/sys/kern/kern_descrip.c#103 integrate
.. //depot/projects/smpng/sys/kern/kern_rwlock.c#12 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#76 integrate
.. //depot/projects/smpng/sys/kern/uipc_mqueue.c#12 integrate
.. //depot/projects/smpng/sys/kern/uipc_sockbuf.c#5 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket.c#102 integrate
.. //depot/projects/smpng/sys/kern/uipc_usrreq.c#75 integrate
.. //depot/projects/smpng/sys/kern/vfs_hash.c#6 integrate
.. //depot/projects/smpng/sys/kern/vfs_mount.c#70 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#137 integrate
.. //depot/projects/smpng/sys/kern/vfs_syscalls.c#125 integrate
.. //depot/projects/smpng/sys/modules/Makefile#136 integrate
.. //depot/projects/smpng/sys/modules/crypto/Makefile#5 integrate
.. //depot/projects/smpng/sys/modules/cxgb/Makefile#1 branch
.. //depot/projects/smpng/sys/modules/hifn/Makefile#6 integrate
.. //depot/projects/smpng/sys/modules/if_vlan/Makefile#5 integrate
.. //depot/projects/smpng/sys/modules/my/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/padlock/Makefile#3 integrate
.. //depot/projects/smpng/sys/modules/safe/Makefile#4 integrate
.. //depot/projects/smpng/sys/modules/ubsec/Makefile#6 integrate
.. //depot/projects/smpng/sys/net/bridgestp.c#20 integrate
.. //depot/projects/smpng/sys/net/if.c#91 integrate
.. //depot/projects/smpng/sys/net/if_bridge.c#45 integrate
.. //depot/projects/smpng/sys/net/if_ethersubr.c#80 integrate
.. //depot/projects/smpng/sys/net/if_tap.c#45 integrate
.. //depot/projects/smpng/sys/net/if_var.h#47 integrate
.. //depot/projects/smpng/sys/net/if_vlan.c#56 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211.c#27 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_crypto.c#10 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_crypto.h#8 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_input.c#37 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#32 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_node.c#32 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_node.h#18 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_output.c#30 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#24 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_proto.h#15 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_radiotap.h#7 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_var.h#26 integrate
.. //depot/projects/smpng/sys/netgraph/ng_base.c#47 integrate
.. //depot/projects/smpng/sys/netgraph/ng_ether.c#34 integrate
.. //depot/projects/smpng/sys/netinet/in.c#36 integrate
.. //depot/projects/smpng/sys/netinet/in_var.h#17 integrate
.. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#28 integrate
.. //depot/projects/smpng/sys/netinet/ip_input.c#82 integrate
.. //depot/projects/smpng/sys/netinet/ip_mroute.c#56 integrate
.. //depot/projects/smpng/sys/netinet/raw_ip.c#64 integrate
.. //depot/projects/smpng/sys/netinet/sctp.h#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_asconf.c#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_asconf.h#4 integrate
.. //depot/projects/smpng/sys/netinet/sctp_auth.c#5 integrate
.. //depot/projects/smpng/sys/netinet/sctp_auth.h#3 integrate
.. //depot/projects/smpng/sys/netinet/sctp_bsd_addr.c#4 integrate
.. //depot/projects/smpng/sys/netinet/sctp_bsd_addr.h#3 integrate
.. //depot/projects/smpng/sys/netinet/sctp_constants.h#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_header.h#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_indata.c#7 integrate
.. //depot/projects/smpng/sys/netinet/sctp_input.c#7 integrate
.. //depot/projects/smpng/sys/netinet/sctp_lock_bsd.h#3 integrate
.. //depot/projects/smpng/sys/netinet/sctp_os.h#5 integrate
.. //depot/projects/smpng/sys/netinet/sctp_os_bsd.h#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.c#7 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.h#3 integrate
.. //depot/projects/smpng/sys/netinet/sctp_pcb.c#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_pcb.h#5 integrate
.. //depot/projects/smpng/sys/netinet/sctp_peeloff.c#5 integrate
.. //depot/projects/smpng/sys/netinet/sctp_structs.h#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_sysctl.c#1 branch
.. //depot/projects/smpng/sys/netinet/sctp_sysctl.h#1 branch
.. //depot/projects/smpng/sys/netinet/sctp_timer.c#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_uio.h#6 integrate
.. //depot/projects/smpng/sys/netinet/sctp_usrreq.c#7 integrate
.. //depot/projects/smpng/sys/netinet/sctp_var.h#5 integrate
.. //depot/projects/smpng/sys/netinet/sctputil.c#8 integrate
.. //depot/projects/smpng/sys/netinet/sctputil.h#6 integrate
.. //depot/projects/smpng/sys/netinet/tcp.h#16 integrate
.. //depot/projects/smpng/sys/netinet/tcp_input.c#98 integrate
.. //depot/projects/smpng/sys/netinet/tcp_output.c#44 integrate
.. //depot/projects/smpng/sys/netinet/tcp_sack.c#18 integrate
.. //depot/projects/smpng/sys/netinet/tcp_subr.c#88 integrate
.. //depot/projects/smpng/sys/netinet/tcp_syncache.c#56 integrate
.. //depot/projects/smpng/sys/netinet/tcp_timer.c#33 integrate
.. //depot/projects/smpng/sys/netinet/tcp_usrreq.c#58 integrate
.. //depot/projects/smpng/sys/netinet/tcp_var.h#48 integrate
.. //depot/projects/smpng/sys/netinet6/mld6.c#20 integrate
.. //depot/projects/smpng/sys/netinet6/sctp6_usrreq.c#6 integrate
.. //depot/projects/smpng/sys/netinet6/sctp6_var.h#3 integrate
.. //depot/projects/smpng/sys/netipsec/ipsec.c#19 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_node.c#27 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs.h#20 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_serv.c#51 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_srvcache.c#14 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_srvsock.c#30 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_srvsubs.c#37 integrate
.. //depot/projects/smpng/sys/nfsserver/nfs_syscalls.c#33 integrate
.. //depot/projects/smpng/sys/nfsserver/nfsm_subs.h#11 integrate
.. //depot/projects/smpng/sys/opencrypto/crypto.c#16 integrate
.. //depot/projects/smpng/sys/opencrypto/crypto_if.m#3 delete
.. //depot/projects/smpng/sys/opencrypto/cryptodev.c#21 integrate
.. //depot/projects/smpng/sys/opencrypto/cryptodev.h#10 integrate
.. //depot/projects/smpng/sys/opencrypto/cryptodev_if.m#1 branch
.. //depot/projects/smpng/sys/opencrypto/cryptosoft.c#12 integrate
.. //depot/projects/smpng/sys/opencrypto/cryptosoft.h#4 integrate
.. //depot/projects/smpng/sys/pc98/cbus/fdc.c#9 integrate
.. //depot/projects/smpng/sys/pc98/pc98/machdep.c#22 integrate
.. //depot/projects/smpng/sys/pci/if_ste.c#47 integrate
.. //depot/projects/smpng/sys/pci/if_stereg.h#12 integrate
.. //depot/projects/smpng/sys/powerpc/include/pcpu.h#7 integrate
.. //depot/projects/smpng/sys/sparc64/include/pcpu.h#10 integrate
.. //depot/projects/smpng/sys/sun4v/include/pcpu.h#4 integrate
.. //depot/projects/smpng/sys/sys/acl.h#12 integrate
.. //depot/projects/smpng/sys/sys/extattr.h#11 integrate
.. //depot/projects/smpng/sys/sys/param.h#113 integrate
.. //depot/projects/smpng/sys/sys/pcpu.h#19 integrate
.. //depot/projects/smpng/sys/sys/socketvar.h#56 integrate
.. //depot/projects/smpng/sys/sys/ucred.h#28 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#78 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_softdep.c#61 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#93 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#51 integrate
.. //depot/projects/smpng/sys/ufs/ufs/quota.h#13 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_lookup.c#27 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#38 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#63 integrate

Differences ...

==== //depot/projects/smpng/sys/amd64/amd64/identcpu.c#22 (text+ko) ====

@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.149 2007/01/09 19:23:21 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.152 2007/03/20 20:22:45 jkim Exp $");
 
 #include "opt_cpu.h"
 
@@ -225,7 +225,7 @@
 				"\004MON"	/* MONITOR/MWAIT Instructions */
 				"\005DS_CPL"	/* CPL Qualified Debug Store */
 				"\006VMX"	/* Virtual Machine Extensions */
-				"\007<b6>"
+				"\007SMX"	/* Safer Mode Extensions */
 				"\010EST"	/* Enhanced SpeedStep */
 				"\011TM2"	/* Thermal Monitor 2 */
 				"\012SSSE3"	/* SSSE3 */
@@ -233,11 +233,11 @@
 				"\014<b11>"
 				"\015<b12>"
 				"\016CX16"	/* CMPXCHG16B Instruction */
-				"\017XTPR"	/* Send Task Priority Messages*/
+				"\017xTPR"	/* Send Task Priority Messages*/
 				"\020<b15>"
 				"\021<b16>"
 				"\022<b17>"
-				"\023<b18>"
+				"\023DCA"	/* Direct Cache Access */
 				"\024<b19>"
 				"\025<b20>"
 				"\026<b21>"
@@ -312,7 +312,7 @@
 				"\006<b5>"
 				"\007<b6>"
 				"\010<b7>"
-				"\011<b8>"
+				"\011Prefetch"	/* 3DNow! Prefetch/PrefetchW */
 				"\012<b9>"
 				"\013<b10>"
 				"\014<b11>"

==== //depot/projects/smpng/sys/amd64/amd64/io_apic.c#20 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.28 2007/03/05 20:35:16 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.29 2007/03/20 21:53:30 jhb Exp $");
 
 #include "opt_isa.h"
 
@@ -52,6 +52,7 @@
 #include <machine/frame.h>
 #include <machine/intr_machdep.h>
 #include <machine/apicvar.h>
+#include <machine/resource.h>
 #include <machine/segments.h>
 
 #define IOAPIC_ISA_INTS		16
@@ -100,6 +101,7 @@
 	u_int io_intbase:8;		/* System Interrupt base */
 	u_int io_numintr:8;
 	volatile ioapic_t *io_addr;	/* XXX: should use bus_space */
+	vm_paddr_t io_paddr;
 	STAILQ_ENTRY(ioapic) io_next;
 	struct ioapic_intsrc io_pins[0];
 };
@@ -479,6 +481,7 @@
 	next_ioapic_base = intbase + numintr;
 	io->io_numintr = numintr;
 	io->io_addr = apic;
+	io->io_paddr = addr;
 
 	/*
 	 * Initialize pins.  Start off with interrupts disabled.  Default
@@ -774,3 +777,73 @@
 
 static devclass_t ioapic_devclass;
 DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0);
+
+/*
+ * A new-bus driver to consume the memory resources associated with
+ * the APICs in the system.  On some systems ACPI or PnPBIOS system
+ * resource devices may already claim these resources.  To keep from
+ * breaking those devices, we attach ourself to the nexus device after
+ * legacy0 and acpi0 and ignore any allocation failures.
+ */
+static void
+apic_identify(driver_t *driver, device_t parent)
+{
+
+	/*
+	 * Add at order 12.  acpi0 is probed at order 10 and legacy0
+	 * is probed at order 11.
+	 */
+	if (lapic_paddr != 0)
+		BUS_ADD_CHILD(parent, 12, "apic", 0);
+}
+
+static int
+apic_probe(device_t dev)
+{
+
+	device_set_desc(dev, "APIC resources");
+	device_quiet(dev);
+	return (0);
+}
+
+static void
+apic_add_resource(device_t dev, int rid, vm_paddr_t base, size_t length)
+{
+	int error;
+
+	error = bus_set_resource(dev, SYS_RES_MEMORY, rid, base, length);
+	if (error)
+		panic("apic_add_resource: resource %d failed set with %d", rid,
+		    error);
+	bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, 0);
+}
+
+static int
+apic_attach(device_t dev)
+{
+	struct ioapic *io;
+	int i;
+
+	/* Reserve the local APIC. */
+	apic_add_resource(dev, 0, lapic_paddr, sizeof(lapic_t));
+	i = 1;
+	STAILQ_FOREACH(io, &ioapic_list, io_next) {
+		apic_add_resource(dev, i, io->io_paddr, IOAPIC_MEM_REGION);
+		i++;
+	}
+	return (0);
+}
+
+static device_method_t apic_methods[] = {
+	/* Device interface */
+	DEVMETHOD(device_identify,	apic_identify),
+	DEVMETHOD(device_probe,		apic_probe),
+	DEVMETHOD(device_attach,	apic_attach),
+
+	{ 0, 0 }
+};
+
+DEFINE_CLASS_0(apic, apic_driver, apic_methods, 0);
+
+static devclass_t apic_devclass;
+DRIVER_MODULE(apic, nexus, apic_driver, apic_devclass, 0, 0);

==== //depot/projects/smpng/sys/amd64/amd64/legacy.c#8 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/legacy.c,v 1.59 2005/02/15 07:26:28 njl Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/legacy.c,v 1.60 2007/03/20 20:21:44 jhb Exp $");
 
 /*
  * This code implements a system driver for legacy systems that do not
@@ -105,10 +105,10 @@
 {
 
 	/*
-	 * Add child device with order of 1 so it gets probed
-	 * after ACPI (which is at order 0.
+	 * Add child device with order of 11 so it gets probed
+	 * after ACPI (which is at order 10).
 	 */
-	if (BUS_ADD_CHILD(parent, 1, "legacy", 0) == NULL)
+	if (BUS_ADD_CHILD(parent, 11, "legacy", 0) == NULL)
 		panic("legacy: could not attach");
 }
 

==== //depot/projects/smpng/sys/amd64/amd64/local_apic.c#28 (text+ko) ====

@@ -32,7 +32,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.36 2007/03/06 17:16:46 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.37 2007/03/20 21:53:30 jhb Exp $");
 
 #include "opt_hwpmc_hooks.h"
 
@@ -148,6 +148,7 @@
 };
 
 volatile lapic_t *lapic;
+vm_paddr_t lapic_paddr;
 static u_long lapic_timer_divisor, lapic_timer_period, lapic_timer_hz;
 
 static void	lapic_enable(void);
@@ -212,6 +213,7 @@
 	KASSERT(trunc_page(addr) == addr,
 	    ("local APIC not aligned on a page boundary"));
 	lapic = pmap_mapdev(addr, sizeof(lapic_t));
+	lapic_paddr = addr;
 	setidt(APIC_SPURIOUS_INT, IDTVEC(spuriousint), SDT_SYSIGT, SEL_KPL, 0);
 
 	/* Perform basic initialization of the BSP's local APIC. */

==== //depot/projects/smpng/sys/amd64/amd64/nexus.c#24 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.73 2007/02/23 12:18:25 piso Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.75 2007/03/21 15:36:38 jhb Exp $");
 
 /*
  * This code implements a `root nexus' for Intel Architecture
@@ -47,6 +47,7 @@
 #include <sys/systm.h>
 #include <sys/bus.h>
 #include <sys/kernel.h>
+#include <sys/linker.h>
 #include <sys/malloc.h>
 #include <sys/module.h>
 #include <machine/bus.h>
@@ -59,7 +60,9 @@
 #include <vm/pmap.h>
 #include <machine/pmap.h>
 
+#include <machine/metadata.h>
 #include <machine/resource.h>
+#include <machine/pc/bios.h>
 
 #include "pcib_if.h"
 
@@ -348,12 +351,6 @@
 	if (rv == 0)
 		return 0;
 	rman_set_rid(rv, *rid);
-	if (type == SYS_RES_MEMORY) {
-		rman_set_bustag(rv, AMD64_BUS_SPACE_MEM);
-	} else if (type == SYS_RES_IOPORT) {
-		rman_set_bustag(rv, AMD64_BUS_SPACE_IO);
-		rman_set_bushandle(rv, rman_get_start(rv));
-	}
 
 	if (needactivate) {
 		if (bus_activate_resource(child, type, *rid, rv)) {
@@ -373,12 +370,16 @@
 	/*
 	 * If this is a memory resource, map it into the kernel.
 	 */
-	if (rman_get_bustag(r) == AMD64_BUS_SPACE_MEM) {
+	if (type == SYS_RES_MEMORY) {
 		void *vaddr;
 
 		vaddr = pmap_mapdev(rman_get_start(r), rman_get_size(r));
 		rman_set_virtual(r, vaddr);
+		rman_set_bustag(r, AMD64_BUS_SPACE_MEM);
 		rman_set_bushandle(r, (bus_space_handle_t) vaddr);
+	} else if (type == SYS_RES_IOPORT) {
+		rman_set_bustag(r, AMD64_BUS_SPACE_IO);
+		rman_set_bushandle(r, rman_get_start(r));
 	}
 	return (rman_activate_resource(r));
 }
@@ -390,7 +391,7 @@
 	/*
 	 * If this is a memory resource, unmap it.
 	 */
-	if (rman_get_bustag(r) == AMD64_BUS_SPACE_MEM) {
+	if (type == SYS_RES_MEMORY) {
 		pmap_unmapdev((vm_offset_t)rman_get_virtual(r),
 		    rman_get_size(r));
 	}
@@ -550,6 +551,79 @@
 	return (msi_release(irqs, count));
 }
 
+/* Placeholder for system RAM. */
+static void
+ram_identify(driver_t *driver, device_t parent)
+{
+
+	if (resource_disabled("ram", 0))
+		return;	
+	if (BUS_ADD_CHILD(parent, 0, "ram", 0) == NULL)
+		panic("ram_identify");
+}
+
+static int
+ram_probe(device_t dev)
+{
+
+	device_quiet(dev);
+	device_set_desc(dev, "System RAM");
+	return (0);
+}
+
+static int
+ram_attach(device_t dev)
+{
+	struct bios_smap *smapbase, *smap, *smapend;
+	struct resource *res;
+	caddr_t kmdp;
+	uint32_t smapsize;
+	int error, rid;
+
+	/* Retrieve the system memory map from the loader. */
+	kmdp = preload_search_by_type("elf kernel");
+	if (kmdp == NULL)
+		kmdp = preload_search_by_type("elf64 kernel");	
+	smapbase = (struct bios_smap *)preload_search_info(kmdp,
+	    MODINFO_METADATA | MODINFOMD_SMAP);
+	smapsize = *((u_int32_t *)smapbase - 1);
+	smapend = (struct bios_smap *)((uintptr_t)smapbase + smapsize);
+
+	rid = 0;
+	for (smap = smapbase; smap < smapend; smap++) {
+		if (smap->type != 0x01 || smap->length == 0)
+			continue;
+		error = bus_set_resource(dev, SYS_RES_MEMORY, rid, smap->base,
+		    smap->length);
+		if (error)
+			panic("ram_attach: resource %d failed set with %d", rid,
+			    error);
+		res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, 0);
+		if (res == NULL)
+			panic("ram_attach: resource %d failed to attach", rid);
+		rid++;
+	}
+	return (0);
+}
+
+static device_method_t ram_methods[] = {
+	/* Device interface */
+	DEVMETHOD(device_identify,	ram_identify),
+	DEVMETHOD(device_probe,		ram_probe),
+	DEVMETHOD(device_attach,	ram_attach),
+	{ 0, 0 }
+};
+
+static driver_t ram_driver = {
+	"ram",
+	ram_methods,
+	1,		/* no softc */
+};
+
+static devclass_t ram_devclass;
+
+DRIVER_MODULE(ram, nexus, ram_driver, ram_devclass, 0, 0);
+
 #ifdef DEV_ISA
 /*
  * Placeholder which claims PnP 'devices' which describe system 

==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#73 (text+ko) ====

@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.580 2007/03/05 21:40:10 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.581 2007/03/10 20:26:43 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -168,7 +168,6 @@
 
 struct pmap kernel_pmap_store;
 
-static vm_paddr_t avail_start;	/* PA of first available physical page */
 vm_offset_t virtual_avail;	/* VA of first avail page (after kernel bss) */
 vm_offset_t virtual_end;	/* VA of last avail page (end of kernel AS) */
 
@@ -396,38 +395,38 @@
 }
 
 static u_int64_t
-allocpages(int n)
+allocpages(vm_paddr_t *firstaddr, int n)
 {
 	u_int64_t ret;
 
-	ret = avail_start;
+	ret = *firstaddr;
 	bzero((void *)ret, n * PAGE_SIZE);
-	avail_start += n * PAGE_SIZE;
+	*firstaddr += n * PAGE_SIZE;
 	return (ret);
 }
 
 static void
-create_pagetables(void)
+create_pagetables(vm_paddr_t *firstaddr)
 {
 	int i;
 
 	/* Allocate pages */
-	KPTphys = allocpages(NKPT);
-	KPML4phys = allocpages(1);
-	KPDPphys = allocpages(NKPML4E);
-	KPDphys = allocpages(NKPDPE);
+	KPTphys = allocpages(firstaddr, NKPT);
+	KPML4phys = allocpages(firstaddr, 1);
+	KPDPphys = allocpages(firstaddr, NKPML4E);
+	KPDphys = allocpages(firstaddr, NKPDPE);
 
 	ndmpdp = (ptoa(Maxmem) + NBPDP - 1) >> PDPSHIFT;
 	if (ndmpdp < 4)		/* Minimum 4GB of dirmap */
 		ndmpdp = 4;
-	DMPDPphys = allocpages(NDMPML4E);
-	DMPDphys = allocpages(ndmpdp);
+	DMPDPphys = allocpages(firstaddr, NDMPML4E);
+	DMPDphys = allocpages(firstaddr, ndmpdp);
 	dmaplimit = (vm_paddr_t)ndmpdp << PDPSHIFT;
 
 	/* Fill in the underlying page table pages */
 	/* Read-only from zero to physfree */
 	/* XXX not fully used, underneath 2M pages */
-	for (i = 0; (i << PAGE_SHIFT) < avail_start; i++) {
+	for (i = 0; (i << PAGE_SHIFT) < *firstaddr; i++) {
 		((pt_entry_t *)KPTphys)[i] = i << PAGE_SHIFT;
 		((pt_entry_t *)KPTphys)[i] |= PG_RW | PG_V | PG_G;
 	}
@@ -440,7 +439,7 @@
 
 	/* Map from zero to end of allocations under 2M pages */
 	/* This replaces some of the KPTphys entries above */
-	for (i = 0; (i << PDRSHIFT) < avail_start; i++) {
+	for (i = 0; (i << PDRSHIFT) < *firstaddr; i++) {
 		((pd_entry_t *)KPDphys)[i] = i << PDRSHIFT;
 		((pd_entry_t *)KPDphys)[i] |= PG_RW | PG_V | PG_PS | PG_G;
 	}
@@ -493,15 +492,12 @@
 	vm_offset_t va;
 	pt_entry_t *pte, *unused;
 
-	avail_start = *firstaddr;
-
 	/*
 	 * Create an initial set of page tables to run the kernel in.
 	 */
-	create_pagetables();
-	*firstaddr = avail_start;
+	create_pagetables(firstaddr);
 
-	virtual_avail = (vm_offset_t) KERNBASE + avail_start;
+	virtual_avail = (vm_offset_t) KERNBASE + *firstaddr;
 	virtual_avail = pmap_kmem_choose(virtual_avail);
 
 	virtual_end = VM_MAX_KERNEL_ADDRESS;

==== //depot/projects/smpng/sys/amd64/include/apicvar.h#17 (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/include/apicvar.h,v 1.22 2007/03/05 20:35:16 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/apicvar.h,v 1.23 2007/03/20 21:53:31 jhb Exp $
  */
 
 #ifndef _MACHINE_APICVAR_H_
@@ -174,6 +174,8 @@
 	IDTVEC(apic_isr4), IDTVEC(apic_isr5), IDTVEC(apic_isr6),
 	IDTVEC(apic_isr7), IDTVEC(spuriousint), IDTVEC(timerint);
 
+extern vm_paddr_t lapic_paddr;
+
 u_int	apic_alloc_vector(u_int irq);
 u_int	apic_alloc_vectors(u_int *irqs, u_int count, u_int align);
 void	apic_enable_vector(u_int vector);

==== //depot/projects/smpng/sys/amd64/include/pcpu.h#6 (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/include/pcpu.h,v 1.46 2007/02/06 18:04:02 bde Exp $
+ * $FreeBSD: src/sys/amd64/include/pcpu.h,v 1.47 2007/03/11 05:54:28 alc Exp $
  */
 
 #ifndef _MACHINE_PCPU_H_
@@ -56,6 +56,7 @@
 extern struct pcpu *pcpup;
 
 #define	PCPU_GET(member)	(pcpup->pc_ ## member)
+#define	PCPU_LAZY_INC(member)	(++pcpup->pc_ ## member)
 #define	PCPU_PTR(member)	(&pcpup->pc_ ## member)
 #define	PCPU_SET(member, val)	(pcpup->pc_ ## member = (val))
 
@@ -109,6 +110,34 @@
 })
 
 /*
+ * Increments the value of the per-cpu counter name.  The implementation
+ * must be atomic with respect to interrupts.
+ */
+#define	__PCPU_LAZY_INC(name) do {					\
+	CTASSERT(sizeof(__pcpu_type(name)) == 1 ||			\
+	    sizeof(__pcpu_type(name)) == 2 ||				\
+	    sizeof(__pcpu_type(name)) == 4 ||				\
+	    sizeof(__pcpu_type(name)) == 8);				\
+	if (sizeof(__pcpu_type(name)) == 1) {				\
+		__asm __volatile("incb %%gs:%0"				\
+		    : "=m" (*(__pcpu_type(name) *)(__pcpu_offset(name)))\
+		    : "m" (*(__pcpu_type(name) *)(__pcpu_offset(name))));\
+	} else if (sizeof(__pcpu_type(name)) == 2) {			\
+		__asm __volatile("incw %%gs:%0"				\
+		    : "=m" (*(__pcpu_type(name) *)(__pcpu_offset(name)))\
+		    : "m" (*(__pcpu_type(name) *)(__pcpu_offset(name))));\
+	} else if (sizeof(__pcpu_type(name)) == 4) {			\
+		__asm __volatile("incl %%gs:%0"				\
+		    : "=m" (*(__pcpu_type(name) *)(__pcpu_offset(name)))\
+		    : "m" (*(__pcpu_type(name) *)(__pcpu_offset(name))));\
+	} else if (sizeof(__pcpu_type(name)) == 8) {			\
+		__asm __volatile("incq %%gs:%0"				\
+		    : "=m" (*(__pcpu_type(name) *)(__pcpu_offset(name)))\
+		    : "m" (*(__pcpu_type(name) *)(__pcpu_offset(name))));\
+	}								\
+} while (0)
+
+/*
  * Sets the value of the per-cpu variable name to value val.
  */
 #define	__PCPU_SET(name, val) {						\
@@ -130,6 +159,7 @@
 }
 
 #define	PCPU_GET(member)	__PCPU_GET(pc_ ## member)
+#define	PCPU_LAZY_INC(member)	__PCPU_LAZY_INC(pc_ ## member)
 #define	PCPU_PTR(member)	__PCPU_PTR(pc_ ## member)
 #define	PCPU_SET(member, val)	__PCPU_SET(pc_ ## member, val)
 

==== //depot/projects/smpng/sys/amd64/include/specialreg.h#12 (text+ko) ====

@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)specialreg.h	7.1 (Berkeley) 5/9/91
- * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.36 2007/01/09 19:23:21 jkim Exp $
+ * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.38 2007/03/20 20:22:45 jkim Exp $
  */
 
 #ifndef _MACHINE_SPECIALREG_H_
@@ -112,35 +112,38 @@
 #define	CPUID_IA64	0x40000000
 #define	CPUID_PBE	0x80000000
 
-#define CPUID2_SSE3	0x00000001
-#define CPUID2_MON	0x00000008
-#define CPUID2_DS_CPL	0x00000010
-#define CPUID2_VMX	0x00000020
-#define CPUID2_EST	0x00000080
-#define CPUID2_TM2	0x00000100
-#define CPUID2_SSSE3	0x00000200
-#define CPUID2_CNXTID	0x00000400
-#define CPUID2_CX16	0x00002000
-#define CPUID2_XTPR	0x00004000
+#define	CPUID2_SSE3	0x00000001
+#define	CPUID2_MON	0x00000008
+#define	CPUID2_DS_CPL	0x00000010
+#define	CPUID2_VMX	0x00000020
+#define	CPUID2_SMX	0x00000040
+#define	CPUID2_EST	0x00000080
+#define	CPUID2_TM2	0x00000100
+#define	CPUID2_SSSE3	0x00000200
+#define	CPUID2_CNXTID	0x00000400
+#define	CPUID2_CX16	0x00002000
+#define	CPUID2_XTPR	0x00004000
+#define	CPUID2_DCA	0x00040000
 
 /*
  * Important bits in the AMD extended cpuid flags
  */
-#define AMDID_SYSCALL	0x00000800
-#define AMDID_MP	0x00080000
-#define AMDID_NX	0x00100000
-#define AMDID_EXT_MMX	0x00400000
-#define AMDID_FFXSR	0x01000000
-#define AMDID_RDTSCP	0x08000000
-#define AMDID_LM	0x20000000
-#define AMDID_EXT_3DNOW	0x40000000
-#define AMDID_3DNOW	0x80000000
+#define	AMDID_SYSCALL	0x00000800
+#define	AMDID_MP	0x00080000
+#define	AMDID_NX	0x00100000
+#define	AMDID_EXT_MMX	0x00400000
+#define	AMDID_FFXSR	0x01000000
+#define	AMDID_RDTSCP	0x08000000
+#define	AMDID_LM	0x20000000
+#define	AMDID_EXT_3DNOW	0x40000000
+#define	AMDID_3DNOW	0x80000000
 
-#define AMDID2_LAHF	0x00000001
-#define AMDID2_CMP	0x00000002
-#define AMDID2_SVM	0x00000004
-#define AMDID2_EXT_APIC	0x00000008
-#define AMDID2_CR8	0x00000010
+#define	AMDID2_LAHF	0x00000001
+#define	AMDID2_CMP	0x00000002
+#define	AMDID2_SVM	0x00000004
+#define	AMDID2_EXT_APIC	0x00000008
+#define	AMDID2_CR8	0x00000010
+#define	AMDID2_PREFETCH	0x00000100
 
 /*
  * CPUID instruction 1 ebx info
@@ -153,29 +156,29 @@
 /*
  * AMD extended function 8000_0008h ecx info
  */
-#define AMDID_CMP_CORES		0x000000ff
+#define	AMDID_CMP_CORES		0x000000ff
 
 /*
  * Model-specific registers for the i386 family
  */
-#define MSR_P5_MC_ADDR		0x000
-#define MSR_P5_MC_TYPE		0x001
-#define MSR_TSC			0x010
+#define	MSR_P5_MC_ADDR		0x000
+#define	MSR_P5_MC_TYPE		0x001
+#define	MSR_TSC			0x010
 #define	MSR_P5_CESR		0x011
 #define	MSR_P5_CTR0		0x012
 #define	MSR_P5_CTR1		0x013
 #define	MSR_IA32_PLATFORM_ID	0x017
-#define MSR_APICBASE		0x01b
-#define MSR_EBL_CR_POWERON	0x02a
+#define	MSR_APICBASE		0x01b
+#define	MSR_EBL_CR_POWERON	0x02a
 #define	MSR_TEST_CTL		0x033
-#define MSR_BIOS_UPDT_TRIG	0x079
+#define	MSR_BIOS_UPDT_TRIG	0x079
 #define	MSR_BBL_CR_D0		0x088
 #define	MSR_BBL_CR_D1		0x089
 #define	MSR_BBL_CR_D2		0x08a
-#define MSR_BIOS_SIGN		0x08b
-#define MSR_PERFCTR0		0x0c1
-#define MSR_PERFCTR1		0x0c2
-#define MSR_MTRRcap		0x0fe
+#define	MSR_BIOS_SIGN		0x08b
+#define	MSR_PERFCTR0		0x0c1
+#define	MSR_PERFCTR1		0x0c2
+#define	MSR_MTRRcap		0x0fe
 #define	MSR_BBL_CR_ADDR		0x116
 #define	MSR_BBL_CR_DECC		0x118
 #define	MSR_BBL_CR_CTL		0x119
@@ -185,47 +188,47 @@
 #define	MSR_SYSENTER_CS_MSR	0x174
 #define	MSR_SYSENTER_ESP_MSR	0x175
 #define	MSR_SYSENTER_EIP_MSR	0x176
-#define MSR_MCG_CAP		0x179
-#define MSR_MCG_STATUS		0x17a
-#define MSR_MCG_CTL		0x17b
-#define MSR_EVNTSEL0		0x186
-#define MSR_EVNTSEL1		0x187
-#define MSR_THERM_CONTROL	0x19a
-#define MSR_THERM_INTERRUPT	0x19b
-#define MSR_THERM_STATUS	0x19c

>>> TRUNCATED FOR MAIL (1000 lines) <<<



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