PERFORCE change 157983 for review

John Baldwin jhb at FreeBSD.org
Fri Feb 20 07:12:02 PST 2009


http://perforce.freebsd.org/chv.cgi?CH=157983

Change 157983 by jhb at jhb_jhbbsd on 2009/02/20 15:11:39

	IFC @157982

Affected files ...

.. //depot/projects/smpng/sys/Makefile#22 integrate
.. //depot/projects/smpng/sys/amd64/amd64/pmap.c#87 integrate
.. //depot/projects/smpng/sys/amd64/conf/GENERIC#72 integrate
.. //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#31 integrate
.. //depot/projects/smpng/sys/arm/conf/AVILA#13 integrate
.. //depot/projects/smpng/sys/arm/conf/CAMBRIA#2 integrate
.. //depot/projects/smpng/sys/arm/mv/files.mv#4 integrate
.. //depot/projects/smpng/sys/boot/Makefile#31 integrate
.. //depot/projects/smpng/sys/boot/common/loader.8#48 integrate
.. //depot/projects/smpng/sys/boot/common/module.c#9 integrate
.. //depot/projects/smpng/sys/boot/ficl/mips/sysdep.c#1 branch
.. //depot/projects/smpng/sys/boot/ficl/mips/sysdep.h#1 branch
.. //depot/projects/smpng/sys/cam/cam_xpt.c#55 integrate
.. //depot/projects/smpng/sys/compat/linux/linux_stats.c#42 integrate
.. //depot/projects/smpng/sys/conf/files#228 integrate
.. //depot/projects/smpng/sys/conf/files.amd64#61 integrate
.. //depot/projects/smpng/sys/conf/files.i386#118 integrate
.. //depot/projects/smpng/sys/conf/files.ia64#62 integrate
.. //depot/projects/smpng/sys/conf/files.pc98#95 integrate
.. //depot/projects/smpng/sys/conf/files.sparc64#72 integrate
.. //depot/projects/smpng/sys/dev/aac/aac.c#63 integrate
.. //depot/projects/smpng/sys/dev/aac/aacreg.h#20 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_cpu.c#43 integrate
.. //depot/projects/smpng/sys/dev/arcmsr/arcmsr.c#20 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-all.c#93 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-all.h#59 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-card.c#32 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-cbus.c#19 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-dma.c#55 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-isa.c#25 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.c#71 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.h#61 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-queue.c#45 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-raid-ddf.h#1 branch
.. //depot/projects/smpng/sys/dev/ata/ata-raid.c#54 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-raid.h#31 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-usb.c#8 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-acard.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-acerlabs.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-ahci.c#3 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-highpoint.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-intel.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-jmicron.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-marvell.c#3 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-netcell.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-nvidia.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-promise.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-serverworks.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-siliconimage.c#2 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-sis.c#3 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-via.c#2 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.h#3 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_internal.h#5 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c#2 integrate
.. //depot/projects/smpng/sys/dev/ath/if_ath.c#68 integrate
.. //depot/projects/smpng/sys/dev/ath/if_athvar.h#41 integrate
.. //depot/projects/smpng/sys/dev/ce/if_ce.c#13 integrate
.. //depot/projects/smpng/sys/dev/cfi/cfi_bus_ixp4xx.c#2 integrate
.. //depot/projects/smpng/sys/dev/ciss/ciss.c#59 integrate
.. //depot/projects/smpng/sys/dev/cp/if_cp.c#24 integrate
.. //depot/projects/smpng/sys/dev/ctau/if_ct.c#26 integrate
.. //depot/projects/smpng/sys/dev/cx/if_cx.c#32 integrate
.. //depot/projects/smpng/sys/dev/firewire/firewire.c#47 integrate
.. //depot/projects/smpng/sys/dev/firewire/firewire.h#18 integrate
.. //depot/projects/smpng/sys/dev/firewire/sbp.c#47 integrate
.. //depot/projects/smpng/sys/dev/iscsi/initiator/isc_subr.c#3 integrate
.. //depot/projects/smpng/sys/dev/kbdmux/kbdmux.c#12 integrate
.. //depot/projects/smpng/sys/dev/mmc/mmcsd.c#9 integrate
.. //depot/projects/smpng/sys/dev/mxge/eth_z8e.h#5 integrate
.. //depot/projects/smpng/sys/dev/mxge/ethp_z8e.h#5 integrate
.. //depot/projects/smpng/sys/dev/mxge/if_mxge.c#26 integrate
.. //depot/projects/smpng/sys/dev/mxge/if_mxge_var.h#13 integrate
.. //depot/projects/smpng/sys/dev/mxge/mxge_mcp.h#8 integrate
.. //depot/projects/smpng/sys/dev/mxge/rss_eth_z8e.h#5 integrate
.. //depot/projects/smpng/sys/dev/mxge/rss_ethp_z8e.h#5 integrate
.. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#70 integrate
.. //depot/projects/smpng/sys/dev/pccbb/pccbb_pci.c#20 integrate
.. //depot/projects/smpng/sys/dev/pccbb/pccbbvar.h#23 integrate
.. //depot/projects/smpng/sys/dev/pci/pcireg.h#30 integrate
.. //depot/projects/smpng/sys/dev/sdhci/sdhci.c#7 integrate
.. //depot/projects/smpng/sys/dev/sound/pci/hda/hdac.c#27 integrate
.. //depot/projects/smpng/sys/dev/streams/streams.c#37 integrate
.. //depot/projects/smpng/sys/dev/tsec/if_tsec.c#3 integrate
.. //depot/projects/smpng/sys/dev/tsec/if_tsec.h#3 integrate
.. //depot/projects/smpng/sys/dev/tsec/if_tsec_ocp.c#2 integrate
.. //depot/projects/smpng/sys/dev/tsec/if_tsecreg.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb2/bluetooth/ng_ubt2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/bluetooth/ubtbcmfw2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_core.h#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_dev.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_device.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_generic.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_process.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_process.h#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_transfer.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/core/usb2_transfer.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_aue2.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_axe2.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_cdce2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_cue2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_kue2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_rue2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/ethernet/if_udav2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/image/uscanner2.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/include/Makefile#3 delete
.. //depot/projects/smpng/sys/dev/usb2/include/usb2_devid.h#6 delete
.. //depot/projects/smpng/sys/dev/usb2/include/usb2_devtable.h#6 delete
.. //depot/projects/smpng/sys/dev/usb2/include/usb2_ioctl.h#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/input/uhid2.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/input/ums2.c#3 integrate
.. //depot/projects/smpng/sys/dev/usb2/misc/udbp2.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/misc/ufm2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/quirk/usb2_quirk.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/u3g2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uark2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/ubsa2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uchcom2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/ucycom2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/ufoma2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uftdi2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/ugensa2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uipaq2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/ulpt2.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/umct2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/umodem2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/umoscom2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uplcom2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uslcom2.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uvisor2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/serial/uvscom2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/sound/uaudio2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/storage/ata-usb2.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/storage/umass2.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb2/storage/urio2.c#5 integrate
.. //depot/projects/smpng/sys/dev/usb2/storage/ustorage2_fs.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb2/wlan/if_rum2.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb2/wlan/if_ural2.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb2/wlan/if_zyd2.c#6 integrate
.. //depot/projects/smpng/sys/fs/procfs/procfs.c#17 integrate
.. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vnops.c#54 integrate
.. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#47 integrate
.. //depot/projects/smpng/sys/geom/geom_dev.c#51 integrate
.. //depot/projects/smpng/sys/geom/part/g_part.c#15 integrate
.. //depot/projects/smpng/sys/geom/part/g_part.h#8 integrate
.. //depot/projects/smpng/sys/geom/part/g_part_ebr.c#2 integrate
.. //depot/projects/smpng/sys/geom/part/g_part_if.m#3 integrate
.. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#38 integrate
.. //depot/projects/smpng/sys/i386/conf/GENERIC#104 integrate
.. //depot/projects/smpng/sys/i386/i386/pmap.c#128 integrate
.. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#50 integrate
.. //depot/projects/smpng/sys/i386/xen/clock.c#6 integrate
.. //depot/projects/smpng/sys/i386/xen/pmap.c#6 integrate
.. //depot/projects/smpng/sys/ia64/conf/GENERIC#64 integrate
.. //depot/projects/smpng/sys/kern/kern_descrip.c#122 integrate
.. //depot/projects/smpng/sys/kern/kern_proc.c#103 integrate
.. //depot/projects/smpng/sys/kern/tty_pts.c#15 integrate
.. //depot/projects/smpng/sys/kern/vfs_cache.c#49 integrate
.. //depot/projects/smpng/sys/kern/vfs_syscalls.c#143 integrate
.. //depot/projects/smpng/sys/libkern/crc32.c#5 integrate
.. //depot/projects/smpng/sys/mips/include/fpu.h#2 integrate
.. //depot/projects/smpng/sys/mips/include/frame.h#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/bluetooth_fw/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/bluetooth_ng/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/core/Makefile#3 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_aue/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_axe/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_cdce/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_cue/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_dav/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_kue/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/ethernet_rue/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/input_hid/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/input_kbd/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/input_ms/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/misc_dbp/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/misc_fm/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/quirk/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/scanner/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_3g/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_ark/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_bsa/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_bser/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_chcom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_cycom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_foma/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_ftdi/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_gensa/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_ipaq/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_lpt/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_mct/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_modem/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_moscom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_plcom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_slcom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_visor/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/serial_vscom/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/sound/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/storage_ata/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/storage_fs/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/storage_mass/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/storage_rio/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/template/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/wlan_ral/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/wlan_rum/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/usb2/wlan_zyd/Makefile#2 integrate
.. //depot/projects/smpng/sys/net/if.h#39 integrate
.. //depot/projects/smpng/sys/net/if_spppsubr.c#38 integrate
.. //depot/projects/smpng/sys/net/vnet.h#4 integrate
.. //depot/projects/smpng/sys/net80211/_ieee80211.h#15 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211.c#36 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#43 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_node.c#41 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_phy.c#3 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#30 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_regdomain.c#8 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_scan.c#5 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_scan_sta.c#8 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_tdma.c#5 integrate
.. //depot/projects/smpng/sys/netinet/if_ether.h#12 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw.h#45 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw2.c#103 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw_pfil.c#24 integrate
.. //depot/projects/smpng/sys/netinet/libalias/alias_sctp.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_constants.h#19 integrate
.. //depot/projects/smpng/sys/netinet/sctp_crc32.c#9 integrate
.. //depot/projects/smpng/sys/netinet/sctp_crc32.h#7 integrate
.. //depot/projects/smpng/sys/netinet/sctp_header.h#8 integrate
.. //depot/projects/smpng/sys/netinet/sctp_input.c#22 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.c#25 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.h#10 integrate
.. //depot/projects/smpng/sys/netinet/sctp_pcb.c#27 integrate
.. //depot/projects/smpng/sys/netinet/sctp_structs.h#13 integrate
.. //depot/projects/smpng/sys/netinet/sctp_uio.h#19 integrate
.. //depot/projects/smpng/sys/netinet/sctp_usrreq.c#24 integrate
.. //depot/projects/smpng/sys/netinet/sctputil.c#27 integrate
.. //depot/projects/smpng/sys/netinet/vinet.h#5 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#81 integrate
.. //depot/projects/smpng/sys/nfsclient/nfsnode.h#22 integrate
.. //depot/projects/smpng/sys/pc98/conf/GENERIC#80 integrate
.. //depot/projects/smpng/sys/pccard/cardinfo.h#9 delete
.. //depot/projects/smpng/sys/pccard/cis.h#3 delete
.. //depot/projects/smpng/sys/powerpc/conf/GENERIC#54 integrate
.. //depot/projects/smpng/sys/powerpc/conf/MPC85XX#4 integrate
.. //depot/projects/smpng/sys/sparc64/conf/GENERIC#88 integrate
.. //depot/projects/smpng/sys/sun4v/conf/GENERIC#13 integrate
.. //depot/projects/smpng/sys/sys/conf.h#58 integrate
.. //depot/projects/smpng/sys/sys/disk.h#16 integrate
.. //depot/projects/smpng/sys/sys/jail.h#23 integrate
.. //depot/projects/smpng/sys/sys/libkern.h#28 integrate
.. //depot/projects/smpng/sys/sys/param.h#134 integrate
.. //depot/projects/smpng/sys/sys/syscallsubr.h#58 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#95 integrate

Differences ...

==== //depot/projects/smpng/sys/Makefile#22 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/Makefile,v 1.53 2008/08/15 14:11:30 philip Exp $
+# $FreeBSD: src/sys/Makefile,v 1.54 2009/02/15 18:19:24 imp Exp $
 
 .include <bsd.own.mk>
 
@@ -12,7 +12,7 @@
 		geom gnu isa kern libkern modules net net80211 netatalk \
 		netgraph netinet netinet6 netipsec netipx netnatm netncp \
 		netsmb nfs nfs4client nfsclient nfsserver nlm opencrypto \
-		pccard pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR}
+		pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR}
 .if defined(ALL_ARCH)
 CSCOPE_ARCHDIR ?= amd64 arm i386 ia64 mips pc98 powerpc sparc64 sun4v
 .else

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

@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.646 2008/12/06 19:37:52 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.647 2009/02/14 18:23:52 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -3400,9 +3400,7 @@
 			}
 
 			p = vm_page_lookup(object, pindex);
-			vm_page_lock_queues();
 			vm_page_wakeup(p);
-			vm_page_unlock_queues();
 		}
 
 		ptepa = VM_PAGE_TO_PHYS(p);
@@ -3416,15 +3414,11 @@
 			while ((pdpg =
 			    pmap_allocpde(pmap, va, M_NOWAIT)) == NULL) {
 				PMAP_UNLOCK(pmap);
-				vm_page_lock_queues();
 				vm_page_busy(p);
-				vm_page_unlock_queues();
 				VM_OBJECT_UNLOCK(object);
 				VM_WAIT;
 				VM_OBJECT_LOCK(object);
-				vm_page_lock_queues();
 				vm_page_wakeup(p);
-				vm_page_unlock_queues();
 				PMAP_LOCK(pmap);
 			}
 			pde = (pd_entry_t *)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(pdpg));

==== //depot/projects/smpng/sys/amd64/conf/GENERIC#72 (text+ko) ====

@@ -16,7 +16,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first
 # in NOTES.
 #
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.518 2009/01/19 15:33:06 sobomax Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.520 2009/02/15 23:40:37 svn Exp $
 
 cpu		HAMMER
 ident		GENERIC
@@ -281,40 +281,97 @@
 # Note that 'bpf' is required for DHCP.
 device		bpf		# Berkeley packet filter
 
-# USB support
-device		uhci		# UHCI PCI->USB interface
-device		ohci		# OHCI PCI->USB interface
-device		ehci		# EHCI PCI->USB interface (USB 2.0)
-device		usb		# USB Bus (required)
+# USB core support
+device          usb2_core
+# USB controller support
+device		usb2_controller
+device		usb2_controller_ehci
+device		usb2_controller_ohci
+device		usb2_controller_uhci
+# USB mass storage support
+device		usb2_storage
+device		usb2_storage_mass
+# USB ethernet support, requires miibus
+device		usb2_ethernet
+device		usb2_ethernet_aue
+device		usb2_ethernet_axe
+device		usb2_ethernet_cdce
+device		usb2_ethernet_cue
+device		usb2_ethernet_kue
+device		usb2_ethernet_rue
+device		usb2_ethernet_dav
+# USB wireless LAN support
+device		usb2_wlan
+device		usb2_wlan_rum
+device		usb2_wlan_ral
+device		usb2_wlan_zyd
+# USB serial device support
+device		usb2_serial
+device		usb2_serial_ark
+device		usb2_serial_bsa
+device		usb2_serial_bser
+device		usb2_serial_chcom
+device		usb2_serial_cycom
+device		usb2_serial_foma
+device		usb2_serial_ftdi
+device		usb2_serial_gensa
+device		usb2_serial_ipaq
+device		usb2_serial_lpt
+device		usb2_serial_mct
+device		usb2_serial_modem
+device		usb2_serial_moscom
+device		usb2_serial_plcom
+device		usb2_serial_slcom
+device		usb2_serial_visor
+device		usb2_serial_vscom
+# USB bluetooth support
+#device		usb2_bluetooth
+#device		usb2_bluetooth_ng
+# USB input device support
+device		usb2_input
+device		usb2_input_hid
+device		usb2_input_kbd
+device		usb2_input_ms
+# USB sound and MIDI device support
+#device		usb2_sound
+# USB scanner support
+device		usb2_image
+device		usb2_scanner
+
+# USB support (deprecated)
+#device		uhci		# UHCI PCI->USB interface
+#device		ohci		# OHCI PCI->USB interface
+#device		ehci		# EHCI PCI->USB interface (USB 2.0)
+#device		usb		# USB Bus (required)
 #device		udbp		# USB Double Bulk Pipe devices
-device		ugen		# Generic
-device		uhid		# "Human Interface Devices"
-device		ukbd		# Keyboard
-device		ulpt		# Printer
-device		umass		# Disks/Mass storage - Requires scbus and da
-device		ums		# Mouse
-device		ural		# Ralink Technology RT2500USB wireless NICs
-device		rum		# Ralink Technology RT2501USB wireless NICs
-device		urio		# Diamond Rio 500 MP3 player
-device		uscanner	# Scanners
+#device		ugen		# Generic
+#device		uhid		# "Human Interface Devices"
+#device		ukbd		# Keyboard
+#device		ulpt		# Printer
+#device		umass		# Disks/Mass storage - Requires scbus and da
+#device		ums		# Mouse
+#device		ural		# Ralink Technology RT2500USB wireless NICs
+#device		rum		# Ralink Technology RT2501USB wireless NICs
+#device		urio		# Diamond Rio 500 MP3 player
+#device		uscanner	# Scanners
 # USB Serial devices
-device		ucom		# Generic com ttys
-device		uark		# Technologies ARK3116 based serial adapters
-device		ubsa		# Belkin F5U103 and compatible serial adapters
-device		uftdi		# For FTDI usb serial adapters
-device		uipaq		# Some WinCE based devices
-device		uplcom		# Prolific PL-2303 serial adapters
-device		uslcom		# SI Labs CP2101/CP2102 serial adapters
-device		uvisor		# Visor and Palm devices
-device		uvscom		# USB serial support for DDI pocket's PHS
+#device		ucom		# Generic com ttys
+#device		uark		# Technologies ARK3116 based serial adapters
+#device		ubsa		# Belkin F5U103 and compatible serial adapters
+#device		uftdi		# For FTDI usb serial adapters
+#device		uipaq		# Some WinCE based devices
+#device		uplcom		# Prolific PL-2303 serial adapters
+#device		uslcom		# SI Labs CP2101/CP2102 serial adapters
+#device		uvisor		# Visor and Palm devices
+#device		uvscom		# USB serial support for DDI pocket's PHS
 # USB Ethernet, requires miibus
-device		aue		# ADMtek USB Ethernet
-device		axe		# ASIX Electronics USB Ethernet
-device		cdce		# Generic USB over Ethernet
-device		cue		# CATC USB Ethernet
-device		kue		# Kawasaki LSI USB Ethernet
-device		rue		# RealTek RTL8150 USB Ethernet
-device		udav		# Davicom DM9601E USB
+#device		aue		# ADMtek USB Ethernet
+#device		axe		# ASIX Electronics USB Ethernet
+#device		cdce		# Generic USB over Ethernet
+#device		cue		# CATC USB Ethernet
+#device		kue		# Kawasaki LSI USB Ethernet
+#device		rue		# RealTek RTL8150 USB Ethernet
+#device		udav		# Davicom DM9601E USB
 
 # FireWire support
 device		firewire	# FireWire bus code

==== //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#31 (text+ko) ====

@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.51 2008/11/29 14:55:24 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.52 2009/02/18 16:11:39 kib Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -560,7 +560,7 @@
 	/* wait for the children to exit, ie. emulate vfork */
 	PROC_LOCK(p2);
 	while (p2->p_flag & P_PPWAIT)
-	   	msleep(td->td_proc, &p2->p_mtx, PWAIT, "ppwait", 0);
+		cv_wait(&p2->p_pwait, &p2->p_mtx);
 	PROC_UNLOCK(p2);
 
 	return (0);
@@ -749,7 +749,7 @@
 		/* wait for the children to exit, ie. emulate vfork */
 		PROC_LOCK(p2);
 		while (p2->p_flag & P_PPWAIT)
-			msleep(td->td_proc, &p2->p_mtx, PWAIT, "ppwait", 0);
+			cv_wait(&p2->p_pwait, &p2->p_mtx);
 		PROC_UNLOCK(p2);
 	}
 

==== //depot/projects/smpng/sys/arm/conf/AVILA#13 (text+ko) ====

@@ -16,7 +16,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first 
 # in NOTES.
 #
-# $FreeBSD: src/sys/arm/conf/AVILA,v 1.22 2009/02/03 19:16:04 sam Exp $
+# $FreeBSD: src/sys/arm/conf/AVILA,v 1.23 2009/02/18 01:37:57 sam Exp $
 
 ident		AVILA
 
@@ -88,7 +88,7 @@
 device		npe_fw
 device		firmware
 device		qmgr		# Q Manager (required by npe)
-device		miibus		# NB: required by npe
+device		mii		# NB: required by npe
 device		ether
 device		bpf
 

==== //depot/projects/smpng/sys/arm/conf/CAMBRIA#2 (text+ko) ====

@@ -16,7 +16,7 @@
 # If you are in doubt as to the purpose or necessity of a line, check first 
 # in NOTES.
 #
-# $FreeBSD: src/sys/arm/conf/CAMBRIA,v 1.2 2008/12/27 19:02:01 sam Exp $
+# $FreeBSD: src/sys/arm/conf/CAMBRIA,v 1.3 2009/02/18 01:37:57 sam Exp $
 
 ident		CAMBRIA
 
@@ -87,7 +87,7 @@
 device		npe_fw
 device		firmware
 device		qmgr		# Q Manager (required by npe)
-device		miibus		# NB: required by npe
+device		mii		# NB: required by npe
 device		ether
 device		bpf
 

==== //depot/projects/smpng/sys/arm/mv/files.mv#4 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/arm/mv/files.mv,v 1.3 2009/01/09 10:55:33 raj Exp $
+# $FreeBSD: src/sys/arm/mv/files.mv,v 1.4 2009/02/16 21:42:41 marcel Exp $
 #
 # The Marvell CPU cores
 # - Compliant with V5TE architecture
@@ -33,3 +33,4 @@
 dev/uart/uart_cpu_mv.c		optional	uart
 dev/uart/uart_dev_ns8250.c	optional	uart
 dev/usb/ehci_mbus.c		optional	ehci
+dev/usb2/controller/ehci2_mbus.c optional usb2_core usb2_controller usb2_controller_ehci

==== //depot/projects/smpng/sys/boot/Makefile#31 (text+ko) ====

@@ -1,11 +1,7 @@
-# $FreeBSD: src/sys/boot/Makefile,v 1.38 2008/12/14 02:57:41 nyan Exp $
+# $FreeBSD: src/sys/boot/Makefile,v 1.39 2009/02/19 18:53:08 imp Exp $
 
 .include <bsd.own.mk>
 
-.if ${MACHINE_ARCH} == "mips"
-MK_FORTH=no	# not yet
-.endif
-
 .if ${MK_FORTH} != "no"
 # Build the add-in FORTH interpreter.
 SUBDIR+=		ficl

==== //depot/projects/smpng/sys/boot/common/loader.8#48 (text+ko) ====

@@ -22,9 +22,9 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.95 2008/12/06 11:21:10 danger Exp $
+.\" $FreeBSD: src/sys/boot/common/loader.8,v 1.96 2009/02/16 02:42:17 thompsa Exp $
 .\"
-.Dd November 8, 2007
+.Dd February 15, 2009
 .Dt LOADER 8
 .Os
 .Sh NAME
@@ -215,6 +215,17 @@
 will be passed as arguments to that file.
 Currently, argument passing does not work for the kernel.
 .Pp
+.It Ic load_geli Xo
+.Op Fl n Ar keyno
+.Ar prov Ar file
+.Xc
+Loads a
+.Xr geli 8
+encryption keyfile for the given provider name.
+The key index can be specified via
+.Ar keyno 
+or will default to zero.
+.Pp
 .It Ic ls Xo
 .Op Fl l
 .Op Ar path

==== //depot/projects/smpng/sys/boot/common/module.c#9 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/common/module.c,v 1.27 2007/10/04 18:29:52 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/common/module.c,v 1.28 2009/02/16 02:42:17 thompsa Exp $");
 
 /*
  * file/module function dispatcher, support, etc.
@@ -154,6 +154,44 @@
     return (error == 0 ? CMD_OK : CMD_ERROR);
 }
 
+COMMAND_SET(load_geli, "load_geli", "load a geli key", command_load_geli);
+
+static int
+command_load_geli(int argc, char *argv[])
+{
+    char	typestr[80];
+    char	*cp;
+    int		ch, num;
+
+    if (argc < 3) {
+	    command_errmsg = "usage is [-n key#] <prov> <file>";
+	    return(CMD_ERROR);
+    }
+
+    num = 0;
+    optind = 1;
+    optreset = 1;
+    while ((ch = getopt(argc, argv, "n:")) != -1) {
+	switch(ch) {
+	case 'n':
+	    num = strtol(optarg, &cp, 0);
+	    if (cp == optarg) {
+		    sprintf(command_errbuf, "bad key index '%s'", optarg);
+		    return(CMD_ERROR);
+	    }
+	    break;
+	case '?':
+	default:
+	    /* getopt has already reported an error */
+	    return(CMD_OK);
+	}
+    }
+    argv += (optind - 1);
+    argc -= (optind - 1);
+    sprintf(typestr, "%s:geli_keyfile%d", argv[1], num);
+    return(file_loadraw(typestr, argv[2]));
+}
+
 COMMAND_SET(unload, "unload", "unload all modules", command_unload);
 
 static int

==== //depot/projects/smpng/sys/cam/cam_xpt.c#55 (text+ko) ====

@@ -28,7 +28,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.210 2009/02/13 10:04:59 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.213 2009/02/16 18:02:32 scottl Exp $");
 
 #include <sys/param.h>
 #include <sys/bus.h>
@@ -5419,9 +5419,34 @@
 	PROBE_TUR_FOR_NEGOTIATION,
 	PROBE_INQUIRY_BASIC_DV1,
 	PROBE_INQUIRY_BASIC_DV2,
-	PROBE_DV_EXIT
+	PROBE_DV_EXIT,
+	PROBE_INVALID
 } probe_action;
 
+static char *probe_action_text[] = {
+	"PROBE_TUR",
+	"PROBE_INQUIRY",
+	"PROBE_FULL_INQUIRY",
+	"PROBE_MODE_SENSE",
+	"PROBE_SERIAL_NUM_0",
+	"PROBE_SERIAL_NUM_1",
+	"PROBE_TUR_FOR_NEGOTIATION",
+	"PROBE_INQUIRY_BASIC_DV1",
+	"PROBE_INQUIRY_BASIC_DV2",
+	"PROBE_DV_EXIT",
+	"PROBE_INVALID"
+};
+
+#define PROBE_SET_ACTION(softc, newaction)	\
+do {									\
+	char **text;							\
+	text = probe_action_text;					\
+	CAM_DEBUG((softc)->periph->path, CAM_DEBUG_INFO,		\
+	    ("Probe %s to %s\n", text[(softc)->action],			\
+	    text[(newaction)]));					\
+	(softc)->action = (newaction);					\
+} while(0)
+
 typedef enum {
 	PROBE_INQUIRY_CKSUM	= 0x01,
 	PROBE_SERIAL_CKSUM	= 0x02,
@@ -5435,6 +5460,7 @@
 	probe_flags	flags;
 	MD5_CTX		context;
 	u_int8_t	digest[16];
+	struct cam_periph *periph;
 } probe_softc;
 
 static void
@@ -5566,6 +5592,8 @@
 			  periph_links.tqe);
 	softc->flags = 0;
 	periph->softc = softc;
+	softc->periph = periph;
+	softc->action = PROBE_INVALID;
 	status = cam_periph_acquire(periph);
 	if (status != CAM_REQ_CMP) {
 		return (status);
@@ -5617,13 +5645,13 @@
 	 */
 	if (((ccb->ccb_h.path->device->flags & CAM_DEV_UNCONFIGURED) == 0)
 	 && (ccb->ccb_h.target_lun == 0)) {
-		softc->action = PROBE_TUR;
+		PROBE_SET_ACTION(softc, PROBE_TUR);
 	} else if ((cpi.hba_inquiry & (PI_WIDE_32|PI_WIDE_16|PI_SDTR_ABLE)) != 0
 	      && (cpi.hba_misc & PIM_NOBUSRESET) != 0) {
 		proberequestdefaultnegotiation(periph);
-		softc->action = PROBE_INQUIRY;
+		PROBE_SET_ACTION(softc, PROBE_INQUIRY);
 	} else {
-		softc->action = PROBE_INQUIRY;
+		PROBE_SET_ACTION(softc, PROBE_INQUIRY);
 	}
 
 	if (ccb->crcn.flags & CAM_EXPECT_INQ_CHANGE)
@@ -5712,7 +5740,7 @@
 		if (inq_buf == NULL) {
 			xpt_print(periph->path, "malloc failure- skipping Basic"
 			    "Domain Validation\n");
-			softc->action = PROBE_DV_EXIT;
+			PROBE_SET_ACTION(softc, PROBE_DV_EXIT);
 			scsi_test_unit_ready(csio,
 					     /*retries*/4,
 					     probedone,
@@ -5758,7 +5786,7 @@
 		}
 		xpt_print(periph->path, "Unable to mode sense control page - "
 		    "malloc failure\n");
-		softc->action = PROBE_SERIAL_NUM_0;
+		PROBE_SET_ACTION(softc, PROBE_SERIAL_NUM_0);
 	}
 	/* FALLTHROUGH */
 	case PROBE_SERIAL_NUM_0:
@@ -5827,6 +5855,11 @@
 		probedone(periph, start_ccb);
 		return;
 	}
+	case PROBE_INVALID:
+		CAM_DEBUG(start_ccb->ccb_h.path, CAM_DEBUG_INFO,
+		    ("probestart: invalid action state\n"));
+	default:
+		break;
 	}
 	xpt_action(start_ccb);
 }
@@ -5980,7 +6013,7 @@
 						 /*count*/1,
 						 /*run_queue*/TRUE);
 		}
-		softc->action = PROBE_INQUIRY;
+		PROBE_SET_ACTION(softc, PROBE_INQUIRY);
 		xpt_release_ccb(done_ccb);
 		xpt_schedule(periph, priority);
 		return;
@@ -6017,7 +6050,7 @@
                                                additional_length) + 1;
 				if (softc->action == PROBE_INQUIRY
 				    && len > SHORT_INQUIRY_LENGTH) {
-					softc->action = PROBE_FULL_INQUIRY;
+					PROBE_SET_ACTION(softc, PROBE_FULL_INQUIRY);
 					xpt_release_ccb(done_ccb);
 					xpt_schedule(periph, priority);
 					return;
@@ -6027,9 +6060,9 @@
 
 				xpt_devise_transport(path);
 				if (INQ_DATA_TQ_ENABLED(inq_buf))
-					softc->action = PROBE_MODE_SENSE;
+					PROBE_SET_ACTION(softc, PROBE_MODE_SENSE);
 				else
-					softc->action = PROBE_SERIAL_NUM_0;
+					PROBE_SET_ACTION(softc, PROBE_SERIAL_NUM_0);
 
 				path->device->flags &= ~CAM_DEV_UNCONFIGURED;
 
@@ -6094,7 +6127,7 @@
 		}
 		xpt_release_ccb(done_ccb);
 		free(mode_hdr, M_CAMXPT);
-		softc->action = PROBE_SERIAL_NUM_0;
+		PROBE_SET_ACTION(softc, PROBE_SERIAL_NUM_0);
 		xpt_schedule(periph, priority);
 		return;
 	}
@@ -6139,7 +6172,7 @@
 
 		if (serialnum_supported) {
 			xpt_release_ccb(done_ccb);
-			softc->action = PROBE_SERIAL_NUM_1;
+			PROBE_SET_ACTION(softc, PROBE_SERIAL_NUM_1);
 			xpt_schedule(periph, priority);
 			return;
 		}
@@ -6250,7 +6283,7 @@
 			 * Perform a TUR to allow the controller to
 			 * perform any necessary transfer negotiation.
 			 */
-			softc->action = PROBE_TUR_FOR_NEGOTIATION;
+			PROBE_SET_ACTION(softc, PROBE_TUR_FOR_NEGOTIATION);
 			xpt_schedule(periph, priority);
 			return;
 		}
@@ -6283,7 +6316,7 @@
 			    ("Begin Domain Validation\n"));
 			path->device->flags |= CAM_DEV_IN_DV;
 			xpt_release_ccb(done_ccb);
-			softc->action = PROBE_INQUIRY_BASIC_DV1;
+			PROBE_SET_ACTION(softc, PROBE_INQUIRY_BASIC_DV1);
 			xpt_schedule(periph, priority);
 			return;
 		}
@@ -6321,10 +6354,10 @@
 			    softc->action == PROBE_INQUIRY_BASIC_DV1 ? 1 : 2);
 			if (proberequestbackoff(periph, path->device)) {
 				path->device->flags &= ~CAM_DEV_IN_DV;
-				softc->action = PROBE_TUR_FOR_NEGOTIATION;
+				PROBE_SET_ACTION(softc, PROBE_TUR_FOR_NEGOTIATION);
 			} else {
 				/* give up */
-				softc->action = PROBE_DV_EXIT;
+				PROBE_SET_ACTION(softc, PROBE_DV_EXIT);
 			}
 			free(nbuf, M_CAMXPT);
 			xpt_release_ccb(done_ccb);
@@ -6333,12 +6366,12 @@
 		}
 		free(nbuf, M_CAMXPT);
 		if (softc->action == PROBE_INQUIRY_BASIC_DV1) {
-			softc->action = PROBE_INQUIRY_BASIC_DV2;
+			PROBE_SET_ACTION(softc, PROBE_INQUIRY_BASIC_DV2);
 			xpt_release_ccb(done_ccb);
 			xpt_schedule(periph, priority);
 			return;
 		}
-		if (softc->action == PROBE_DV_EXIT) {
+		if (softc->action == PROBE_INQUIRY_BASIC_DV2) {
 			CAM_DEBUG(periph->path, CAM_DEBUG_INFO,
 			    ("Leave Domain Validation Successfully\n"));
 		}
@@ -6354,6 +6387,11 @@
 		xpt_release_ccb(done_ccb);
 		break;
 	}
+	case PROBE_INVALID:
+		CAM_DEBUG(done_ccb->ccb_h.path, CAM_DEBUG_INFO,
+		    ("probedone: invalid action state\n"));
+	default:
+		break;
 	}
 	done_ccb = (union ccb *)TAILQ_FIRST(&softc->request_ccbs);
 	TAILQ_REMOVE(&softc->request_ccbs, &done_ccb->ccb_h, periph_links.tqe);
@@ -6642,9 +6680,7 @@
 		if (((device->flags & CAM_DEV_INQUIRY_DATA_VALID) != 0
 		  && (inq_data->flags & SID_Sync) == 0
 		  && cts->type == CTS_TYPE_CURRENT_SETTINGS)
-		 || ((cpi.hba_inquiry & PI_SDTR_ABLE) == 0)
-		 || (spi->sync_offset == 0)
-		 || (spi->sync_period == 0)) {
+		 || ((cpi.hba_inquiry & PI_SDTR_ABLE) == 0)) {
 			/* Force async */
 			spi->sync_period = 0;
 			spi->sync_offset = 0;
@@ -6692,7 +6728,8 @@
 		if (spi->bus_width == 0)
 			spi->ppr_options = 0;
 
-		if ((spi->flags & CTS_SPI_FLAGS_DISC_ENB) == 0) {
+		if ((spi->valid & CTS_SPI_VALID_DISC)
+		 && ((spi->flags & CTS_SPI_FLAGS_DISC_ENB) == 0)) {
 			/*
 			 * Can't tag queue without disconnection.
 			 */

==== //depot/projects/smpng/sys/compat/linux/linux_stats.c#42 (text+ko) ====

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.94 2009/01/28 17:57:16 ed Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.95 2009/02/20 13:05:29 ed Exp $");
 
 #include "opt_compat.h"
 #include "opt_mac.h"
@@ -62,6 +62,44 @@
 
 #include <security/mac/mac_framework.h>
 
+static void
+translate_vnhook_major_minor(struct vnode *vp, struct stat *sb)
+{
+	int major, minor;
+
+	if (vp->v_type == VCHR && vp->v_rdev != NULL &&
+	    linux_driver_get_major_minor(vp->v_rdev->si_name,
+	    &major, &minor) == 0) {
+		sb->st_rdev = (major << 8 | minor);
+	}
+}
+
+static int
+linux_kern_statat(struct thread *td, int flag, int fd, char *path,
+    enum uio_seg pathseg, struct stat *sbp)
+{
+
+	return (kern_statat_vnhook(td, flag, fd, path, pathseg, sbp,
+	    translate_vnhook_major_minor));
+}
+
+static int
+linux_kern_stat(struct thread *td, char *path, enum uio_seg pathseg,
+    struct stat *sbp)
+{
+
+	return (linux_kern_statat(td, 0, AT_FDCWD, path, pathseg, sbp));
+}
+
+static int
+linux_kern_lstat(struct thread *td, char *path, enum uio_seg pathseg,
+    struct stat *sbp)
+{
+
+	return (linux_kern_statat(td, AT_SYMLINK_NOFOLLOW, AT_FDCWD, path,
+	    pathseg, sbp));
+}
+
 /*
  * XXX: This was removed from newstat_copyout(), and almost identical
  * XXX: code was in stat64_copyout().  findcdev() needs to be replaced
@@ -102,14 +140,15 @@
 translate_fd_major_minor(struct thread *td, int fd, struct stat *buf)
 {
 	struct file *fp;
+	struct vnode *vp;
 	int major, minor;
 
 	if ((!S_ISCHR(buf->st_mode) && !S_ISBLK(buf->st_mode)) ||
 	    fget(td, fd, &fp) != 0)
 		return;
-	if (fp->f_vnode != NULL &&
-	    fp->f_vnode->v_un.vu_cdev != NULL &&
-	    linux_driver_get_major_minor(fp->f_vnode->v_un.vu_cdev->si_name,
+	vp = fp->f_vnode;
+	if (vp != NULL && vp->v_rdev != NULL &&
+	    linux_driver_get_major_minor(vp->v_rdev->si_name,
 					 &major, &minor) == 0) {
 		buf->st_rdev = (major << 8 | minor);
 	} else if (fp->f_type == DTYPE_PTS) {
@@ -124,32 +163,6 @@
 	fdrop(fp, td);
 }
 
-static void
-translate_path_major_minor_at(struct thread *td, char *path,
-    struct stat *buf, int dfd)
-{
-	struct proc *p = td->td_proc;
-	struct filedesc *fdp = p->p_fd;
-	int fd;
-	int temp;
-
-	if (!S_ISCHR(buf->st_mode) && !S_ISBLK(buf->st_mode))
-		return;
-	temp = td->td_retval[0];
-	if (kern_openat(td, dfd, path, UIO_SYSSPACE, O_RDONLY, 0) != 0)
-		return;
-	fd = td->td_retval[0];
-	td->td_retval[0] = temp;
-	translate_fd_major_minor(td, fd, buf);
-	fdclose(fdp, fdp->fd_ofiles[fd], fd, td);
-}
-
-static inline void
-translate_path_major_minor(struct thread *td, char *path, struct stat *buf)
-{
-	translate_path_major_minor_at(td, path, buf, AT_FDCWD);
-}
-
 static int
 newstat_copyout(struct stat *buf, void *ubuf)
 {
@@ -187,9 +200,7 @@
 		printf(ARGS(newstat, "%s, *"), path);

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


More information about the p4-projects mailing list