Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 23 Dec 2009 15:41:47 GMT
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 172141 for review
Message-ID:  <200912231541.nBNFflxX023885@repoman.freebsd.org>

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

Change 172141 by jhb@jhb_jhbbsd on 2009/12/23 15:41:08

	IFC @172136

Affected files ...

.. //depot/projects/smpng/share/man/man9/Makefile#13 integrate
.. //depot/projects/smpng/share/man/man9/usbdi.9#3 integrate
.. //depot/projects/smpng/sys/amd64/conf/NOTES#57 integrate
.. //depot/projects/smpng/sys/boot/i386/Makefile#11 integrate
.. //depot/projects/smpng/sys/boot/i386/libi386/biosdisk.c#24 integrate
.. //depot/projects/smpng/sys/boot/pc98/kgzldr/crt.s#5 integrate
.. //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#17 integrate
.. //depot/projects/smpng/sys/boot/uboot/lib/glue.c#6 integrate
.. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#41 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c#3 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c#4 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c#4 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h#5 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h#3 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c#4 integrate
.. //depot/projects/smpng/sys/compat/linux/linux_signal.c#27 integrate
.. //depot/projects/smpng/sys/conf/NOTES#180 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_via.c#5 integrate
.. //depot/projects/smpng/sys/dev/ahci/ahci.c#5 integrate
.. //depot/projects/smpng/sys/dev/ata/ata-pci.h#69 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-amd.c#4 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-intel.c#8 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-ite.c#4 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-serverworks.c#6 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-via.c#7 integrate
.. //depot/projects/smpng/sys/dev/atkbdc/psm.c#18 integrate
.. //depot/projects/smpng/sys/dev/auxio/auxio.c#6 integrate
.. //depot/projects/smpng/sys/dev/ciss/ciss.c#65 integrate
.. //depot/projects/smpng/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c#5 integrate
.. //depot/projects/smpng/sys/dev/e1000/if_igb.c#16 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_intel.c#6 integrate
.. //depot/projects/smpng/sys/dev/if_ndis/if_ndis_usb.c#14 integrate
.. //depot/projects/smpng/sys/dev/ipmi/ipmi.c#11 integrate
.. //depot/projects/smpng/sys/dev/ips/ips_pci.c#15 integrate
.. //depot/projects/smpng/sys/dev/mii/ip1000phy.c#5 integrate
.. //depot/projects/smpng/sys/dev/mxge/if_mxge.c#36 integrate
.. //depot/projects/smpng/sys/dev/sound/usb/uaudio.c#35 integrate
.. //depot/projects/smpng/sys/dev/ste/if_ste.c#5 integrate
.. //depot/projects/smpng/sys/dev/ste/if_stereg.h#3 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_bus_acpi.c#4 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_pci.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci_pci.c#9 integrate
.. //depot/projects/smpng/sys/dev/usb/quirk/usb_quirk.c#8 integrate
.. //depot/projects/smpng/sys/dev/usb/quirk/usb_quirk.h#5 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/u3g.c#14 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/uftdi.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/storage/umass.c#17 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_device.c#18 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_dynamic.c#8 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_dynamic.h#7 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#148 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdi.h#29 integrate
.. //depot/projects/smpng/sys/dev/vge/if_vge.c#28 integrate
.. //depot/projects/smpng/sys/dev/vge/if_vgereg.h#4 integrate
.. //depot/projects/smpng/sys/dev/vge/if_vgevar.h#5 integrate
.. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#84 integrate
.. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#41 integrate
.. //depot/projects/smpng/sys/geom/raid3/g_raid3.h#15 integrate
.. //depot/projects/smpng/sys/i386/conf/NOTES#149 integrate
.. //depot/projects/smpng/sys/ia64/ia64/clock.c#23 integrate
.. //depot/projects/smpng/sys/ia64/ia64/machdep.c#121 integrate
.. //depot/projects/smpng/sys/ia64/include/clock.h#9 integrate
.. //depot/projects/smpng/sys/ia64/include/mca.h#6 integrate
.. //depot/projects/smpng/sys/ia64/include/md_var.h#27 integrate
.. //depot/projects/smpng/sys/kern/kern_exit.c#147 integrate
.. //depot/projects/smpng/sys/kern/kern_proc.c#110 integrate
.. //depot/projects/smpng/sys/kern/subr_acl_nfs4.c#3 integrate
.. //depot/projects/smpng/sys/kern/subr_eventhandler.c#24 integrate
.. //depot/projects/smpng/sys/kern/subr_turnstile.c#43 integrate
.. //depot/projects/smpng/sys/kern/tty_pts.c#25 integrate
.. //depot/projects/smpng/sys/kern/uipc_syscalls.c#124 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#174 integrate
.. //depot/projects/smpng/sys/modules/ipfw/Makefile#14 integrate
.. //depot/projects/smpng/sys/net/if_bridge.c#65 integrate
.. //depot/projects/smpng/sys/net/if_ethersubr.c#105 integrate
.. //depot/projects/smpng/sys/net/if_var.h#73 integrate
.. //depot/projects/smpng/sys/net/netisr.c#21 integrate
.. //depot/projects/smpng/sys/netgraph/ng_ipfw.c#9 integrate
.. //depot/projects/smpng/sys/netgraph/ng_ipfw.h#4 integrate
.. //depot/projects/smpng/sys/netinet/ip_dummynet.h#28 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw.h#54 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_dummynet.c#6 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw2.c#10 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_log.c#2 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_nat.c#6 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_pfil.c#8 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_private.h#2 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_sockopt.c#2 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_table.c#2 integrate
.. //depot/projects/smpng/sys/netinet/tcp.h#21 integrate
.. //depot/projects/smpng/sys/netinet/tcp_usrreq.c#84 integrate
.. //depot/projects/smpng/sys/netinet6/mld6.c#36 integrate
.. //depot/projects/smpng/sys/netinet6/mld6_var.h#8 integrate
.. //depot/projects/smpng/sys/pc98/conf/NOTES#72 integrate
.. //depot/projects/smpng/sys/powerpc/booke/clock.c#6 integrate
.. //depot/projects/smpng/sys/sparc64/central/central.c#11 integrate
.. //depot/projects/smpng/sys/sparc64/ebus/ebus.c#27 integrate
.. //depot/projects/smpng/sys/sparc64/fhc/fhc.c#14 integrate
.. //depot/projects/smpng/sys/sparc64/include/bus_common.h#8 integrate
.. //depot/projects/smpng/sys/sparc64/isa/ofw_isa.c#12 integrate
.. //depot/projects/smpng/sys/sparc64/pci/apb.c#17 integrate
.. //depot/projects/smpng/sys/sparc64/pci/ofw_pcib.c#12 integrate
.. //depot/projects/smpng/sys/sparc64/pci/ofw_pcibus.c#16 integrate
.. //depot/projects/smpng/sys/sparc64/sbus/dma_sbus.c#9 integrate
.. //depot/projects/smpng/sys/sparc64/sbus/sbus.c#34 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/identcpu.c#19 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/nexus.c#21 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/upa.c#11 integrate
.. //depot/projects/smpng/sys/sys/acl.h#16 integrate
.. //depot/projects/smpng/sys/sys/mount.h#78 integrate
.. //depot/projects/smpng/sys/sys/proc.h#203 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#105 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_rawread.c#23 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#116 integrate
.. //depot/projects/smpng/sys/ufs/ffs/fs.h#22 integrate
.. //depot/projects/smpng/sys/ufs/ufs/acl.h#6 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_acl.c#20 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_lookup.c#37 integrate
.. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#81 integrate
.. //depot/projects/smpng/sys/vm/vm_object.c#114 integrate
.. //depot/projects/smpng/sys/vm/vm_object.h#42 integrate

Differences ...

==== //depot/projects/smpng/share/man/man9/Makefile#13 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/man/man9/Makefile,v 1.364 2009/10/27 14:37:25 emaste Exp $
+# $FreeBSD: src/share/man/man9/Makefile,v 1.366 2009/12/22 16:05:28 ru Exp $
 
 MAN=	accept_filter.9 \
 	accf_data.9 \
@@ -394,14 +394,14 @@
 	atomic.9 atomic_set.9 \
 	atomic.9 atomic_store.9 \
 	atomic.9 atomic_subtract.9
-MLINKS+=bpf.9 bpf_filter.9 \
+MLINKS+=bpf.9 bpfattach.9 \
+	bpf.9 bpfattach2.9 \
+	bpf.9 bpfdetach.9 \
+	bpf.9 bpf_filter.9 \
 	bpf.9 bpf_mtap.9 \
 	bpf.9 bpf_mtap2.9 \
 	bpf.9 bpf_tap.9 \
-	bpf.9 bpf_validate.9 \
-	bpf.9 bpfattach.9 \
-	bpf.9 bpfattach2.9 \
-	bpf.9 bpfdetach.9
+	bpf.9 bpf_validate.9
 MLINKS+=buf.9 bp.9
 MLINKS+=bus_activate_resource.9 bus_deactivate_resource.9
 MLINKS+=bus_alloc_resource.9 bus_alloc_resource_any.9
@@ -563,11 +563,11 @@
 	crypto.9 crypto_unblock.9 \
 	crypto.9 crypto_unregister.9 \
 	crypto.9 crypto_unregister_all.9
-MLINKS+=DB_COMMAND.9 DB_SHOW_COMMAND.9 \
-	DB_COMMAND.9 DB_SHOW_ALL_COMMAND.9
+MLINKS+=DB_COMMAND.9 DB_SHOW_ALL_COMMAND.9 \
+	DB_COMMAND.9 DB_SHOW_COMMAND.9
 MLINKS+=dev_clone.9 drain_dev_clone_events.9
-MLINKS+=devfs_set_cdevpriv.9 devfs_get_cdevpriv.9 \
-	devfs_set_cdevpriv.9 devfs_clear_cdevpriv.9
+MLINKS+=devfs_set_cdevpriv.9 devfs_clear_cdevpriv.9 \
+	devfs_set_cdevpriv.9 devfs_get_cdevpriv.9
 MLINKS+=device_add_child.9 device_add_child_ordered.9
 MLINKS+=device_enable.9 device_disable.9 \
 	device_enable.9 device_is_enabled.9
@@ -591,8 +591,8 @@
 	devstat.9 devstat_start_transaction.9
 MLINKS+=disk.9 disk_alloc.9 \
 	disk.9 disk_create.9 \
-	disk.9 disk_gone.9 \
-	disk.9 disk_destroy.9
+	disk.9 disk_destroy.9 \
+	disk.9 disk_gone.9
 MLINKS+=domain.9 DOMAIN_SET.9 \
 	domain.9 net_add_domain.9 \
 	domain.9 pfctlinput.9 \
@@ -642,60 +642,60 @@
 	hashinit.9 phashinit.9
 MLINKS+=ieee80211.9 ieee80211_ifattach.9 \
 	ieee80211.9 ieee80211_ifdetach.9
-MLINKS+=ieee80211_amrr.9 ieee80211_amrr_init.9 \
-	ieee80211_amrr.9 ieee80211_amrr_cleanup.9 \
+MLINKS+=ieee80211_amrr.9 ieee80211_amrr_cleanup.9 \
+	ieee80211_amrr.9 ieee80211_amrr_init.9 \
+	ieee80211_amrr.9 ieee80211_amrr_node_init.9 \
 	ieee80211_amrr.9 ieee80211_amrr_setinterval.9 \
-	ieee80211_amrr.9 ieee80211_amrr_node_init.9 \
 	ieee80211_amrr.9 ieee80211_amrr_tx_complete.9 \
 	ieee80211_amrr.9 ieee80211_amrr_tx_update.9
 MLINKS+=ieee80211_beacon.9 ieee80211_beacon_alloc.9 \
-	ieee80211_beacon.9 ieee80211_beacon_update.9 \
-	ieee80211_beacon.9 ieee80211_beacon_notify.9
+	ieee80211_beacon.9 ieee80211_beacon_notify.9 \
+	ieee80211_beacon.9 ieee80211_beacon_update.9
 MLINKS+=ieee80211_bmiss.9 ieee80211_beacon_miss.9
-MLINKS+=ieee80211_crypto.9 ieee80211_key_update_begin.9 \
-	ieee80211_crypto.9 ieee80211_key_update_end.9 \
-	ieee80211_crypto.9 ieee80211_crypto_newkey.9 \
-	ieee80211_crypto.9 ieee80211_crypto_setkey.9 \
+MLINKS+=ieee80211_crypto.9 ieee80211_crypto_available.9 \
+	ieee80211_crypto.9 ieee80211_crypto_decap.9 \
 	ieee80211_crypto.9 ieee80211_crypto_delglobalkeys.9 \
-	ieee80211_crypto.9 ieee80211_crypto_reload_keys.9 \
-	ieee80211_crypto.9 ieee80211_crypto_decap.9 \
+	ieee80211_crypto.9 ieee80211_crypto_demic.9 \
 	ieee80211_crypto.9 ieee80211_crypto_encap.9 \
-	ieee80211_crypto.9 ieee80211_crypto_demic.9 \
 	ieee80211_crypto.9 ieee80211_crypto_enmic.9 \
-	ieee80211_crypto.9 ieee80211_notify_michael_failure.9 \
-	ieee80211_crypto.9 ieee80211_notify_replay_failure.9 \
+	ieee80211_crypto.9 ieee80211_crypto_newkey.9 \
 	ieee80211_crypto.9 ieee80211_crypto_register.9 \
+	ieee80211_crypto.9 ieee80211_crypto_reload_keys.9 \
+	ieee80211_crypto.9 ieee80211_crypto_setkey.9 \
 	ieee80211_crypto.9 ieee80211_crypto_unregister.9 \
-	ieee80211_crypto.9 ieee80211_crypto_available.9
+	ieee80211_crypto.9 ieee80211_key_update_begin.9 \
+	ieee80211_crypto.9 ieee80211_key_update_end.9 \
+	ieee80211_crypto.9 ieee80211_notify_michael_failure.9 \
+	ieee80211_crypto.9 ieee80211_notify_replay_failure.9
 MLINKS+=ieee80211_input.9 ieee80211_input_all.9
-MLINKS+=ieee80211_node.9 ieee80211_find_rxnode.9 \
+MLINKS+=ieee80211_node.9 ieee80211_dump_node.9 \
+	ieee80211_node.9 ieee80211_dump_nodes.9 \
+	ieee80211_node.9 ieee80211_find_rxnode.9 \
 	ieee80211_node.9 ieee80211_find_rxnode_withkey.9 \
-	ieee80211_node.9 ieee80211_ref_node.9 \
-	ieee80211_node.9 ieee80211_unref_node.9 \
 	ieee80211_node.9 ieee80211_free_node.9 \
 	ieee80211_node.9 ieee80211_iterate_nodes.9 \
-	ieee80211_node.9 ieee80211_dump_node.9 \
-	ieee80211_node.9 ieee80211_dump_nodes.9
-MLINKS+=ieee80211_output.9 M_WME_GETAC.9 \
+	ieee80211_node.9 ieee80211_ref_node.9 \
+	ieee80211_node.9 ieee80211_unref_node.9
+MLINKS+=ieee80211_output.9 ieee80211_process_callback.9 \
 	ieee80211_output.9 M_SEQNO_GET.9 \
-	ieee80211_output.9 ieee80211_process_callback.9
+	ieee80211_output.9 M_WME_GETAC.9
 MLINKS+=ieee80211_proto.9 ieee80211_new_state.9 \
+	ieee80211_proto.9 ieee80211_resume_all.9 \
 	ieee80211_proto.9 ieee80211_start_all.9 \
 	ieee80211_proto.9 ieee80211_stop_all.9 \
 	ieee80211_proto.9 ieee80211_suspend_all.9 \
-	ieee80211_proto.9 ieee80211_resume_all.9 \
 	ieee80211_proto.9 ieee80211_waitfor_parent.9
-MLINKS+=ieee80211_radiotap.9 radiotap.9 \
+MLINKS+=ieee80211_radiotap.9 ieee80211_radiotap_active.9 \
+	ieee80211_radiotap.9 ieee80211_radiotap_active_vap.9 \
 	ieee80211_radiotap.9 ieee80211_radiotap_attach.9 \
-	ieee80211_radiotap.9 ieee80211_radiotap_active_vap.9 \
-	ieee80211_radiotap.9 ieee80211_radiotap_active.9 \
-	ieee80211_radiotap.9 ieee80211_radiotap_tx.9
-MLINKS+=ieee80211_regdomain.9 ieee80211_init_channels.9 \
-	ieee80211_regdomain.9 ieee80211_sort_channels.9 \
-	ieee80211_regdomain.9 ieee80211_alloc_countryie.9
-MLINKS+=ieee80211_vap.9 ieee80211_vap_setup.9 \
-	ieee80211_vap.9 ieee80211_vap_attach.9 \
-	ieee80211_vap.9 ieee80211_vap_detach.9
+	ieee80211_radiotap.9 ieee80211_radiotap_tx.9 \
+	ieee80211_radiotap.9 radiotap.9
+MLINKS+=ieee80211_regdomain.9 ieee80211_alloc_countryie.9 \
+	ieee80211_regdomain.9 ieee80211_init_channels.9 \
+	ieee80211_regdomain.9 ieee80211_sort_channels.9
+MLINKS+=ieee80211_vap.9 ieee80211_vap_attach.9 \
+	ieee80211_vap.9 ieee80211_vap_detach.9 \
+	ieee80211_vap.9 ieee80211_vap_setup.9
 MLINKS+=ifnet.9 ifaddr.9 \
 	ifnet.9 if_data.9 \
 	ifnet.9 ifqueue.9
@@ -720,13 +720,13 @@
 	kobj.9 kobj_delete.9 \
 	kobj.9 kobj_init.9
 MLINKS+=kproc.9 kproc_create.9 \
-	kproc.9 kthread_create.9 \
 	kproc.9 kproc_exit.9 \
 	kproc.9 kproc_resume.9 \
 	kproc.9 kproc_shutdown.9 \
 	kproc.9 kproc_start.9 \
 	kproc.9 kproc_suspend.9 \
-	kproc.9 kproc_suspend_check.9
+	kproc.9 kproc_suspend_check.9 \
+	kproc.9 kthread_create.9
 MLINKS+=kqueue.9 knlist_add.9 \
 	kqueue.9 knlist_clear.9 \
 	kqueue.9 knlist_delete.9 \
@@ -1237,23 +1237,7 @@
 	uidinfo.9 uihashinit.9 \
 	uidinfo.9 uihold.9
 MLINKS+=uio.9 uiomove.9
-MLINKS+=usbdi.9 usb_fifo_alloc_buffer.9 \
-	usbdi.9 usb_fifo_attach.9 \
-	usbdi.9 usb_fifo_detach.9 \
-	usbdi.9 usb_fifo_free_buffer.9 \
-	usbdi.9 usb_fifo_get_data.9 \
-	usbdi.9 usb_fifo_get_data_buffer.9 \
-	usbdi.9 usb_fifo_get_data_error.9 \
-	usbdi.9 usb_fifo_get_data_linear.9 \
-	usbdi.9 usb_fifo_put_bytes_max.9 \
-	usbdi.9 usb_fifo_put_data.9 \
-	usbdi.9 usb_fifo_put_data_buffer.9 \
-	usbdi.9 usb_fifo_put_data_error.9 \
-	usbdi.9 usb_fifo_put_data_linear.9 \
-	usbdi.9 usb_fifo_reset.9 \
-	usbdi.9 usb_fifo_softc.9 \
-	usbdi.9 usb_fifo_wakeup.9 \
-	usbdi.9 usbd_do_request.9 \
+MLINKS+=usbdi.9 usbd_do_request.9 \
 	usbdi.9 usbd_do_request_flags.9 \
 	usbdi.9 usbd_errstr.9 \
 	usbdi.9 usbd_lookup_id_by_info.9 \
@@ -1287,8 +1271,23 @@
 	usbdi.9 usbd_xfer_set_timeout.9 \
 	usbdi.9 usbd_xfer_softc.9 \
 	usbdi.9 usbd_xfer_state.9 \
-	usbdi.9 usbd_xfer_state.9 \
-	usbdi.9 usbd_xfer_status.9
+	usbdi.9 usbd_xfer_status.9 \
+	usbdi.9 usb_fifo_alloc_buffer.9 \
+	usbdi.9 usb_fifo_attach.9 \
+	usbdi.9 usb_fifo_detach.9 \
+	usbdi.9 usb_fifo_free_buffer.9 \
+	usbdi.9 usb_fifo_get_data.9 \
+	usbdi.9 usb_fifo_get_data_buffer.9 \
+	usbdi.9 usb_fifo_get_data_error.9 \
+	usbdi.9 usb_fifo_get_data_linear.9 \
+	usbdi.9 usb_fifo_put_bytes_max.9 \
+	usbdi.9 usb_fifo_put_data.9 \
+	usbdi.9 usb_fifo_put_data_buffer.9 \
+	usbdi.9 usb_fifo_put_data_error.9 \
+	usbdi.9 usb_fifo_put_data_linear.9 \
+	usbdi.9 usb_fifo_reset.9 \
+	usbdi.9 usb_fifo_softc.9 \
+	usbdi.9 usb_fifo_wakeup.9
 MLINKS+=vcount.9 count_dev.9
 MLINKS+=vfsconf.9 vfs_modevent.9 \
 	vfsconf.9 vfs_register.9 \
@@ -1304,8 +1303,8 @@
 MLINKS+=VFS_LOCK_GIANT.9 VFS_UNLOCK_GIANT.9
 MLINKS+=vgone.9 vgonel.9
 MLINKS+=vhold.9 vdrop.9 \
-	vhold.9	vholdl.9 \
-	vhold.9 vdropl.9
+	vhold.9 vdropl.9 \
+	vhold.9 vholdl.9
 MLINKS+=vm_map_lock.9 vm_map_lock_downgrade.9 \
 	vm_map_lock.9 vm_map_lock_read.9 \
 	vm_map_lock.9 vm_map_lock_upgrade.9 \

==== //depot/projects/smpng/share/man/man9/usbdi.9#3 (text+ko) ====

@@ -23,7 +23,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\"	$FreeBSD: src/share/man/man9/usbdi.9,v 1.3 2009/06/24 17:01:17 thompsa Exp $
+.\"	$FreeBSD: src/share/man/man9/usbdi.9,v 1.4 2009/12/22 16:05:28 ru Exp $
 .Dd June 24, 2009
 .Os
 .Dt USBDI 9
@@ -78,7 +78,6 @@
 .Nm usbd_xfer_set_timeout ,
 .Nm usbd_xfer_softc ,
 .Nm usbd_xfer_state ,
-.Nm usbd_xfer_state ,
 .Nm usbd_xfer_status
 .Nd Universal Serial Bus driver programming interface
 .Sh SYNOPSIS

==== //depot/projects/smpng/sys/amd64/conf/NOTES#57 (text+ko) ====

@@ -4,7 +4,7 @@
 # This file contains machine dependent kernel configuration notes.  For
 # machine independent notes, look in /sys/conf/NOTES.
 #
-# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.98 2009/11/30 11:44:03 avg Exp $
+# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.99 2009/12/18 16:13:21 jhb Exp $
 #
 
 #
@@ -277,7 +277,6 @@
 # iwn:	Intel Wireless WiFi Link 4965AGN 802.11 network adapters
 # nfe:	nVidia nForce MCP on-board Ethernet Networking (BSD open source)
 # nve:	nVidia nForce MCP on-board Ethernet Networking
-# ral:	Ralink Technology IEEE 802.11 wireless adapter
 # wpi:	Intel 3945ABG Wireless LAN controller
 
 device		ed
@@ -289,16 +288,8 @@
 device		ipw
 device		nfe
 device		nve
-device		ral
 device		wpi
 
-device		ath			# Atheros pci/cardbus NIC's
-device		ath_hal			# pci/cardbus chip support
-options 	AH_SUPPORT_AR5416	# enable AR5416 tx/rx descriptors
-device		ath_rate_sample		# SampleRate tx rate control for ath
-#device		ath_rate_amrr		# AMRR rate control for ath driver
-#device		ath_rate_onoe		# Onoe rate control for ath driver
-
 #
 #XXX this stores pointers in a 32bit field that is defined by the hardware
 #device	pst

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

@@ -1,9 +1,15 @@
-# $FreeBSD: src/sys/boot/i386/Makefile,v 1.27 2009/11/23 16:00:16 rnoland Exp $
+# $FreeBSD: src/sys/boot/i386/Makefile,v 1.28 2009/12/22 20:56:33 jhb Exp $
+
+.include <bsd.own.mk>
 
-SUBDIR=		mbr pmbr boot0 boot0sio btx boot2 cdboot gptboot zfsboot \
-		gptzfsboot kgzldr libi386 libfirewire loader zfsloader
+SUBDIR=		mbr pmbr boot0 boot0sio btx boot2 cdboot gptboot kgzldr \
+		libi386 libfirewire loader
 
 # special boot programs, 'self-extracting boot2+loader'
 SUBDIR+=	pxeldr
 
+.if ${MK_ZFS} != "no"
+SUBDIR+=	zfsboot gptzfsboot zfsloader
+.endif
+
 .include <bsd.subdir.mk>

==== //depot/projects/smpng/sys/boot/i386/libi386/biosdisk.c#24 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.62 2009/06/26 09:32:31 rpaulo Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.63 2009/12/17 13:14:11 nyan Exp $");
 
 /*
  * BIOS disk device handling.
@@ -1266,11 +1266,11 @@
 	}
 
 	if (write)
-	    DEBUG("%d sectors from %lld to %p (0x%x) %s", x, dblk, p, VTOP(p),
-		result ? "failed" : "ok");
+	    DEBUG("Write %d sector(s) from %p (0x%x) to %lld %s", x,
+		p, VTOP(p), dblk, result ? "failed" : "ok");
 	else
-	    DEBUG("%d sectors from %p (0x%x) to %lld %s", x, p, VTOP(p), dblk,
-		result ? "failed" : "ok");
+	    DEBUG("Read %d sector(s) from %lld to %p (0x%x) %s", x,
+		dblk, p, VTOP(p), result ? "failed" : "ok");
 	if (result) {
 	    return(-1);
 	}

==== //depot/projects/smpng/sys/boot/pc98/kgzldr/crt.s#5 (text+ko) ====

@@ -24,7 +24,7 @@
 # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
 #	From: btx.s 1.10 1999/02/25 16:27:41 rnordier
-# $FreeBSD: src/sys/boot/pc98/kgzldr/crt.s,v 1.5 2005/05/08 14:17:28 nyan Exp $
+# $FreeBSD: src/sys/boot/pc98/kgzldr/crt.s,v 1.6 2009/12/21 14:59:23 nyan Exp $
 #
 
 # Screen defaults and assumptions.
@@ -75,5 +75,15 @@
 		stosw				#  line
 		movw $(SCR_ROW-1)*SCR_COL*2,%dx
 crt_putchr.4:	movw %dx,(%ebx) 		# Update position
+		shrw $1,%dx
+crt_putchr.5:	inb $0x60,%al			# Move cursor
+		testb $0x04,%al
+		jz crt_putchr.5
+		movb $0x49,%al
+		outb %al,$0x62
+		movb %dl,%al
+		outb %al,$0x60
+		movb %dh,%al
+		outb %al,$0x60
 		popa				# Restore
 		ret				# To caller

==== //depot/projects/smpng/sys/boot/pc98/libpc98/biosdisk.c#17 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.41 2009/03/20 05:33:58 nyan Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.42 2009/12/17 13:14:11 nyan Exp $");
 
 /*
  * BIOS disk device handling.
@@ -906,11 +906,11 @@
 	}
 
 	if (write)
-	    DEBUG("%d sectors from %lld to %p (0x%x) %s", x, dblk, p, VTOP(p),
-		result ? "failed" : "ok");
+	    DEBUG("Write %d sector(s) from %p (0x%x) to %lld %s", x,
+		p, VTOP(p), dblk, result ? "failed" : "ok");
 	else
-	    DEBUG("%d sectors from %p (0x%x) to %lld %s", x, p, VTOP(p), dblk,
-		result ? "failed" : "ok");
+	    DEBUG("Read %d sector(s) from %lld to %p (0x%x) %s", x,
+		dblk, p, VTOP(p), result ? "failed" : "ok");
 	if (result) {
 	    return(-1);
 	}

==== //depot/projects/smpng/sys/boot/uboot/lib/glue.c#6 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/uboot/lib/glue.c,v 1.10 2009/11/11 19:39:45 antoine Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/uboot/lib/glue.c,v 1.11 2009/12/18 21:12:37 marcel Exp $");
 
 #include <stand.h>
 #include "api_public.h"
@@ -568,17 +568,16 @@
 	const char *env, *str;
 	int i;
 
-	env = NULL;
-
 	/*
 	 * It's OK to pass only the name piece as last (and not the whole
 	 * 'name=val' string), since the API_ENUM_ENV call uses envmatch()
 	 * internally, which handles such case
 	 */
-	if (!syscall(API_ENV_ENUM, NULL, (uint32_t)last, (uint32_t)&env))
+	env = NULL;
+	if (syscall(API_ENV_ENUM, NULL, (uint32_t)last, (uint32_t)&env) != 0)
 		return (NULL);
 
-	if (!env)
+	if (env == NULL)
 		/* no more env. variables to enumerate */
 		return (NULL);
 

==== //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#41 (text+ko) ====

@@ -46,7 +46,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.115 2009/12/09 14:21:21 mav Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.116 2009/12/18 14:41:30 mav Exp $");
 
 #include "opt_cd.h"
 
@@ -1464,8 +1464,6 @@
 		} else {
 			bioq_remove(&softc->bio_queue, bp);
 
-			devstat_start_transaction_bio(softc->disk->d_devstat, bp);
-
 			scsi_read_write(&start_ccb->csio,
 					/*retries*/cd_retry_count,
 					/* cbfcnp */ cddone,

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c#3 (text+ko) ====

@@ -19,12 +19,10 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
-
 #include <sys/dmu.h>
 #include <sys/dmu_objset.h>
 #include <sys/dmu_tx.h>
@@ -108,19 +106,51 @@
 
 int
 dmu_object_reclaim(objset_t *os, uint64_t object, dmu_object_type_t ot,
-    int blocksize, dmu_object_type_t bonustype, int bonuslen, dmu_tx_t *tx)
+    int blocksize, dmu_object_type_t bonustype, int bonuslen)
 {
 	dnode_t *dn;
+	dmu_tx_t *tx;
+	int nblkptr;
 	int err;
 
-	if (object == DMU_META_DNODE_OBJECT && !dmu_tx_private_ok(tx))
+	if (object == DMU_META_DNODE_OBJECT)
 		return (EBADF);
 
 	err = dnode_hold_impl(os->os, object, DNODE_MUST_BE_ALLOCATED,
 	    FTAG, &dn);
 	if (err)
 		return (err);
+
+	if (dn->dn_type == ot && dn->dn_datablksz == blocksize &&
+	    dn->dn_bonustype == bonustype && dn->dn_bonuslen == bonuslen) {
+		/* nothing is changing, this is a noop */
+		dnode_rele(dn, FTAG);
+		return (0);
+	}
+
+	tx = dmu_tx_create(os);
+	dmu_tx_hold_bonus(tx, object);
+	err = dmu_tx_assign(tx, TXG_WAIT);
+	if (err) {
+		dmu_tx_abort(tx);
+		dnode_rele(dn, FTAG);
+		return (err);
+	}
+
+	nblkptr = 1 + ((DN_MAX_BONUSLEN - bonuslen) >> SPA_BLKPTRSHIFT);
+
+	/*
+	 * If we are losing blkptrs or changing the block size this must
+	 * be a new file instance.   We must clear out the previous file
+	 * contents before we can change this type of metadata in the dnode.
+	 */
+	if (dn->dn_nblkptr > nblkptr || dn->dn_datablksz != blocksize)
+		dmu_free_long_range(os, object, 0, DMU_OBJECT_END);
+
 	dnode_reallocate(dn, ot, blocksize, bonustype, bonuslen, tx);
+
+	dmu_tx_commit(tx);
+
 	dnode_rele(dn, FTAG);
 
 	return (0);

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c#4 (text+ko) ====

@@ -828,12 +828,8 @@
 {
 	int err;
 	dmu_tx_t *tx;
-
-	err = dmu_object_info(os, drro->drr_object, NULL);
+	void *data = NULL;
 
-	if (err != 0 && err != ENOENT)
-		return (EINVAL);
-
 	if (drro->drr_type == DMU_OT_NONE ||
 	    drro->drr_type >= DMU_OT_NUMTYPES ||
 	    drro->drr_bonustype >= DMU_OT_NUMTYPES ||
@@ -846,12 +842,15 @@
 		return (EINVAL);
 	}
 
-	tx = dmu_tx_create(os);
+	err = dmu_object_info(os, drro->drr_object, NULL);
+
+	if (err != 0 && err != ENOENT)
+		return (EINVAL);
 
 	if (err == ENOENT) {
 		/* currently free, want to be allocated */
+		tx = dmu_tx_create(os);
 		dmu_tx_hold_bonus(tx, DMU_NEW_OBJECT);
-		dmu_tx_hold_write(tx, DMU_NEW_OBJECT, 0, 1);
 		err = dmu_tx_assign(tx, TXG_WAIT);
 		if (err) {
 			dmu_tx_abort(tx);
@@ -860,45 +859,41 @@
 		err = dmu_object_claim(os, drro->drr_object,
 		    drro->drr_type, drro->drr_blksz,
 		    drro->drr_bonustype, drro->drr_bonuslen, tx);
+		dmu_tx_commit(tx);
 	} else {
 		/* currently allocated, want to be allocated */
-		dmu_tx_hold_bonus(tx, drro->drr_object);
-		/*
-		 * We may change blocksize and delete old content,
-		 * so need to hold_write and hold_free.
-		 */
-		dmu_tx_hold_write(tx, drro->drr_object, 0, 1);
-		dmu_tx_hold_free(tx, drro->drr_object, 0, DMU_OBJECT_END);
-		err = dmu_tx_assign(tx, TXG_WAIT);
-		if (err) {
-			dmu_tx_abort(tx);
-			return (err);
-		}
 
 		err = dmu_object_reclaim(os, drro->drr_object,
 		    drro->drr_type, drro->drr_blksz,
-		    drro->drr_bonustype, drro->drr_bonuslen, tx);
+		    drro->drr_bonustype, drro->drr_bonuslen);
+	}
+	if (err)
+		return (EINVAL);
+
+	if (drro->drr_bonuslen) {
+		data = restore_read(ra, P2ROUNDUP(drro->drr_bonuslen, 8));
+		if (ra->err)
+			return (ra->err);
 	}
+
+	tx = dmu_tx_create(os);
+	dmu_tx_hold_bonus(tx, drro->drr_object);
+	err = dmu_tx_assign(tx, TXG_WAIT);
 	if (err) {
-		dmu_tx_commit(tx);
-		return (EINVAL);
+		dmu_tx_abort(tx);
+		return (err);
 	}
 
 	dmu_object_set_checksum(os, drro->drr_object, drro->drr_checksum, tx);
 	dmu_object_set_compress(os, drro->drr_object, drro->drr_compress, tx);
 
-	if (drro->drr_bonuslen) {
+	if (data != NULL) {
 		dmu_buf_t *db;
-		void *data;
+
 		VERIFY(0 == dmu_bonus_hold(os, drro->drr_object, FTAG, &db));
 		dmu_buf_will_dirty(db, tx);
 
 		ASSERT3U(db->db_size, >=, drro->drr_bonuslen);
-		data = restore_read(ra, P2ROUNDUP(drro->drr_bonuslen, 8));
-		if (data == NULL) {
-			dmu_tx_commit(tx);
-			return (ra->err);
-		}
 		bcopy(data, db->db_data, drro->drr_bonuslen);
 		if (ra->byteswap) {
 			dmu_ot[drro->drr_bonustype].ot_byteswap(db->db_data,

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c#4 (text+ko) ====

@@ -415,8 +415,7 @@
 dnode_reallocate(dnode_t *dn, dmu_object_type_t ot, int blocksize,
     dmu_object_type_t bonustype, int bonuslen, dmu_tx_t *tx)
 {
-	int i, nblkptr;
-	dmu_buf_impl_t *db = NULL;
+	int nblkptr;
 
 	ASSERT3U(blocksize, >=, SPA_MINBLOCKSIZE);
 	ASSERT3U(blocksize, <=, SPA_MAXBLOCKSIZE);
@@ -428,42 +427,25 @@
 	ASSERT3U(bonustype, <, DMU_OT_NUMTYPES);
 	ASSERT3U(bonuslen, <=, DN_MAX_BONUSLEN);
 
-	for (i = 0; i < TXG_SIZE; i++)
-		ASSERT(!list_link_active(&dn->dn_dirty_link[i]));
-
 	/* clean up any unreferenced dbufs */
 	dnode_evict_dbufs(dn);
-	ASSERT3P(list_head(&dn->dn_dbufs), ==, NULL);
 
-	/*
-	 * XXX I should really have a generation number to tell if we
-	 * need to do this...
-	 */
-	if (blocksize != dn->dn_datablksz ||
-	    dn->dn_bonustype != bonustype || dn->dn_bonuslen != bonuslen) {
-		/* free all old data */
-		dnode_free_range(dn, 0, -1ULL, tx);
+	rw_enter(&dn->dn_struct_rwlock, RW_WRITER);
+	dnode_setdirty(dn, tx);
+	if (dn->dn_datablksz != blocksize) {
+		/* change blocksize */
+		ASSERT(dn->dn_maxblkid == 0 &&
+		    (BP_IS_HOLE(&dn->dn_phys->dn_blkptr[0]) ||
+		    dnode_block_freed(dn, 0)));
+		dnode_setdblksz(dn, blocksize);
+		dn->dn_next_blksz[tx->tx_txg&TXG_MASK] = blocksize;
 	}
-
+	if (dn->dn_bonuslen != bonuslen)
+		dn->dn_next_bonuslen[tx->tx_txg&TXG_MASK] = bonuslen;
 	nblkptr = 1 + ((DN_MAX_BONUSLEN - bonuslen) >> SPA_BLKPTRSHIFT);
-
-	/* change blocksize */
-	rw_enter(&dn->dn_struct_rwlock, RW_WRITER);
-	if (blocksize != dn->dn_datablksz &&
-	    (!BP_IS_HOLE(&dn->dn_phys->dn_blkptr[0]) ||
-	    list_head(&dn->dn_dbufs) != NULL)) {
-		db = dbuf_hold(dn, 0, FTAG);
-		dbuf_new_size(db, blocksize, tx);
-	}
-	dnode_setdblksz(dn, blocksize);
-	dnode_setdirty(dn, tx);
-	dn->dn_next_bonuslen[tx->tx_txg&TXG_MASK] = bonuslen;
-	dn->dn_next_blksz[tx->tx_txg&TXG_MASK] = blocksize;
 	if (dn->dn_nblkptr != nblkptr)
 		dn->dn_next_nblkptr[tx->tx_txg&TXG_MASK] = nblkptr;
 	rw_exit(&dn->dn_struct_rwlock);
-	if (db)
-		dbuf_rele(db, FTAG);
 
 	/* change type */
 	dn->dn_type = ot;
@@ -1187,11 +1169,6 @@
 	if (dn->dn_free_txg)
 		return (TRUE);
 
-	/*
-	 * If dn_datablkshift is not set, then there's only a single
-	 * block, in which case there will never be a free range so it
-	 * won't matter.
-	 */
 	range_tofind.fr_blkid = blkid;
 	mutex_enter(&dn->dn_mtx);
 	for (i = 0; i < TXG_SIZE; i++) {

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h#5 (text+ko) ====

@@ -19,7 +19,7 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -237,7 +237,7 @@
 int dmu_object_claim(objset_t *os, uint64_t object, dmu_object_type_t ot,
     int blocksize, dmu_object_type_t bonus_type, int bonus_len, dmu_tx_t *tx);
 int dmu_object_reclaim(objset_t *os, uint64_t object, dmu_object_type_t ot,
-    int blocksize, dmu_object_type_t bonustype, int bonuslen, dmu_tx_t *tx);
+    int blocksize, dmu_object_type_t bonustype, int bonuslen);
 
 /*
  * Free an object from this objset.

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h#3 (text+ko) ====

@@ -19,7 +19,7 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -56,10 +56,16 @@
 	uint64_t zh_replay_seq;	/* highest replayed sequence number */
 	blkptr_t zh_log;	/* log chain */
 	uint64_t zh_claim_seq;	/* highest claimed sequence number */
-	uint64_t zh_pad[5];
+	uint64_t zh_flags;	/* header flags */
+	uint64_t zh_pad[4];
 } zil_header_t;
 
 /*
+ * zh_flags bit settings
+ */
+#define	ZIL_REPLAY_NEEDED 0x1	/* replay needed - internal only */
+
+/*
  * Log block trailer - structure at the end of the header and each log block
  *
  * The zit_bt contains a zbt_cksum which for the intent log is

==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c#4 (text+ko) ====

@@ -502,6 +502,25 @@
 	    tx, zh->zh_claim_txg);
 }
 
+/*
+ * return true if the initial log block is not valid
+ */
+static boolean_t
+zil_empty(zilog_t *zilog)
+{
+	const zil_header_t *zh = zilog->zl_header;
+	arc_buf_t *abuf = NULL;
+
+	if (BP_IS_HOLE(&zh->zh_log))
+		return (B_TRUE);
+
+	if (zil_read_log_block(zilog, &zh->zh_log, &abuf) != 0)
+		return (B_TRUE);
+
+	VERIFY(arc_buf_remove_ref(abuf, &abuf) == 1);
+	return (B_FALSE);
+}
+
 int
 zil_claim(char *osname, void *txarg)
 {
@@ -522,6 +541,21 @@
 	zh = zil_header_in_syncing_context(zilog);
 
 	/*
+	 * Record here whether the zil has any records to replay.
+	 * If the header block pointer is null or the block points
+	 * to the stubby then we know there are no valid log records.
+	 * We use the header to store this state as the the zilog gets
+	 * freed later in dmu_objset_close().
+	 * The flags (and the rest of the header fields) are cleared in
+	 * zil_sync() as a result of a zil_destroy(), after replaying the log.
+	 *
+	 * Note, the intent log can be empty but still need the
+	 * stubby to be claimed.
+	 */
+	if (!zil_empty(zilog))
+		zh->zh_flags |= ZIL_REPLAY_NEEDED;
+
+	/*
 	 * Claim all log blocks if we haven't already done so, and remember
 	 * the highest claimed sequence number.  This ensures that if we can
 	 * read only part of the log now (e.g. due to a missing device),
@@ -1345,25 +1379,6 @@
 }
 
 /*
- * return true if the initial log block is not valid
- */
-static boolean_t
-zil_empty(zilog_t *zilog)
-{
-	const zil_header_t *zh = zilog->zl_header;
-	arc_buf_t *abuf = NULL;
-
-	if (BP_IS_HOLE(&zh->zh_log))
-		return (B_TRUE);
-
-	if (zil_read_log_block(zilog, &zh->zh_log, &abuf) != 0)
-		return (B_TRUE);
-
-	VERIFY(arc_buf_remove_ref(abuf, &abuf) == 1);
-	return (B_FALSE);
-}
-
-/*
  * Open an intent log.
  */
 zilog_t *
@@ -1418,7 +1433,7 @@
 	const zil_header_t *zh = zilog->zl_header;
 
 	mutex_enter(&zilog->zl_lock);
-	if (zh->zh_claim_txg != 0) {		/* unplayed log */
+	if (zh->zh_flags & ZIL_REPLAY_NEEDED) {		/* unplayed log */
 		mutex_exit(&zilog->zl_lock);
 		return (EBUSY);
 	}
@@ -1645,7 +1660,7 @@
 	const zil_header_t *zh = zilog->zl_header;
 	zil_replay_arg_t zr;
 
-	if (zil_empty(zilog)) {
+	if ((zh->zh_flags & ZIL_REPLAY_NEEDED) == 0) {
 		zil_destroy(zilog, B_TRUE);
 		return;
 	}

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

@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.67 2009/06/27 13:58:44 rwatson Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/linux/linux_signal.c,v 1.68 2009/12/18 14:27:18 kib Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -565,7 +565,7 @@
 
 	AUDIT_ARG_PROCESS(p);
 	error = p_cansignal(td, p, signum);
-	if (error)
+	if (error != 0 || signum == 0)
 		goto out;
 
 	error = ESRCH;

==== //depot/projects/smpng/sys/conf/NOTES#180 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1567 2009/12/16 16:24:32 jhb Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1568 2009/12/18 16:13:21 jhb Exp $
 #
 # NOTES -- Lines that can be cut/pasted into kernel and hints configs.
 #
@@ -1862,6 +1862,7 @@

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



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