PERFORCE change 162205 for review

Edward Tomasz Napierala trasz at FreeBSD.org
Sun May 17 12:22:30 UTC 2009


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

Change 162205 by trasz at trasz_victim on 2009/05/17 12:21:46

	IFC.

Affected files ...

.. //depot/projects/soc2009/trasz_limits/bin/pkill/pkill.1#2 integrate
.. //depot/projects/soc2009/trasz_limits/bin/pkill/pkill.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/bin/ps/print.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/bin/ps/ps.1#2 integrate
.. //depot/projects/soc2009/trasz_limits/bin/ps/ps.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/bin/ps/ps.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/etc/defaults/rc.conf#2 integrate
.. //depot/projects/soc2009/trasz_limits/etc/devd.conf#2 integrate
.. //depot/projects/soc2009/trasz_limits/etc/namedb/named.conf#2 integrate
.. //depot/projects/soc2009/trasz_limits/etc/rc.d/named#2 integrate
.. //depot/projects/soc2009/trasz_limits/etc/rc.d/tmp#2 integrate
.. //depot/projects/soc2009/trasz_limits/lib/libarchive/archive_read_disk_entry_from_file.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/lib/libbluetooth/hci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/lib/libc/gen/getcap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/lib/libmemstat/memstat_malloc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/lib/libthr/thread/thr_fork.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/release/doc/en_US.ISO8859-1/hardware/article.sgml#2 integrate
.. //depot/projects/soc2009/trasz_limits/release/doc/en_US.ISO8859-1/relnotes/article.sgml#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/Makefile#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/ath.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/bwi.4#1 branch
.. //depot/projects/soc2009/trasz_limits/share/man/man4/hifn.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/iwn.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/iwnfw.4#1 branch
.. //depot/projects/soc2009/trasz_limits/share/man/man4/smp.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/ubsec.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/uchcom.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/urtw.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man4/wlan.4#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man5/fstab.5#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man5/rc.conf.5#2 integrate
.. //depot/projects/soc2009/trasz_limits/share/man/man9/bus_dma.9#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/mca.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/mp_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/pmap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/amd64/trap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/conf/DEFAULTS#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/conf/GENERIC#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/conf/GENERIC.hints#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/conf/XENHVM#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/include/mca.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/amd64/include/smp.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/include/specialreg.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/include/vmparam.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/linux32/linux.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/amd64/linux32/linux32_sysvec.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/at91/at91.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/at91/at91_cfata.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/at91/at91_spi.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/at91/if_ate.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/AVILA#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/BWCT#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/CAMBRIA#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/CRB#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/DB-78XXX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/DB-88F5XXX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/DB-88F6XXX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/EP80219#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/GUMSTIX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/HL200#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/IQ31244#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/KB920X#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/NSLU#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/SIMICS#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/arm/conf/SKYEYE#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/boot/forth/loader.conf#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/boot/i386/zfsboot/zfsboot.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/boot/zfs/zfsimpl.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cam/cam_periph.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cam/scsi/scsi_pass.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cam/scsi/scsi_sg.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/boot/zfs/README#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/boot/zfs/zfsimpl.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/boot/zfs/zfssubr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/compat/opensolaris/kern/opensolaris_lookup.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/compat/opensolaris/sys/mutex.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/compat/opensolaris/sys/rwlock.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_array.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_mem.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr.c#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr_array.c#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/cddl/contrib/opensolaris/uts/common/rpc/xdr_mem.c#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_mib.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_mib.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_misc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_misc.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_socket.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/linux/linux_socket.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/ndis/kern_windrv.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/compat/ndis/subr_ndis.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/files#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/files.amd64#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/files.i386#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/files.pc98#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/conf/files.powerpc#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/acpi_support/acpi_ibm.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/acpi_support/acpi_sony.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/aic/aic.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ata/ata-pci.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ata/atapi-cam.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ata/chipsets/ata-acard.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ata/chipsets/ata-promise.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ath/if_ath_pci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/bge/if_bge.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/bwi/bwimac.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/bwi/bwiphy.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/bwi/if_bwi_pci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/cxgb/cxgb_multiq.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/e1000/if_em.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ed/if_ed.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ep/if_ep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/flash/at45d.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/iir/iir_pci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ipw/if_ipw.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/isp/isp_freebsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/iwi/if_iwi.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/iwi/if_iwivar.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/iwn/if_iwn.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/ixgb/if_ixgb.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/lge/if_lge.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/lmc/if_lmc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/malo/if_malo_pci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/snp/snp.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/spibus/spibus.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/syscons/syscons.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/controller/ehci.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/storage/umass.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/storage/ustorage_fs.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_core.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_dev.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_hid.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usb_transfer.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/usbdevs#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/wlan/if_upgt.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/dev/usb/wlan/if_upgtvar.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/dev/vge/if_vge.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/wpi/if_wpi.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/xen/console/console.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/xen/console/xencons_ring.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/dev/xen/console/xencons_ring.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/cd9660/cd9660_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/coda/coda_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/devfs/devfs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/devfs/devfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/devfs/devfs_vnops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/fdescfs/fdesc.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/fdescfs/fdesc_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/fdescfs/fdesc_vnops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/hpfs/hpfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/msdosfs/msdosfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfs_commonkrpc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfs_commonsubs.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfs_var.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfsdport.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfsport.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfs/nfsproto.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsclient/nfs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsclient/nfs_clbio.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsclient/nfs_clkrpc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsclient/nfs_clvfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdkrpc.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdport.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdserv.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdsocket.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdstate.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nfsserver/nfs_nfsdsubs.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/ntfs/ntfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nullfs/null_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/nwfs/nwfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/portalfs/portal_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/pseudofs/pseudofs.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/pseudofs/pseudofs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/smbfs/smbfs_io.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/smbfs/smbfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/tmpfs/tmpfs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/tmpfs/tmpfs_subr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/tmpfs/tmpfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/tmpfs/tmpfs_vnops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/udf/udf_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/fs/unionfs/union_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/geom/concat/g_concat.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/geom/journal/g_journal.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/gnu/fs/ext2fs/ext2_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/gnu/fs/xfs/FreeBSD/support/debug.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/gnu/fs/xfs/FreeBSD/xfs_mountops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/DEFAULTS#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/GENERIC#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/GENERIC.hints#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/PAE#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/XBOX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/conf/XEN#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/cpufreq/hwpstate.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/i386/machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/i386/mca.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/i386/i386/mp_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/i386/pmap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/i386/trap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/include/mca.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/i386/include/smp.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/include/specialreg.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/linux/linux.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/linux/linux_sysvec.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/i386/xen/mp_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ia64/conf/DEFAULTS#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ia64/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_acct.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_descrip.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_lock.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_sysctl.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/sys_generic.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/tty.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/uipc_mqueue.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/uipc_syscalls.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_bio.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_default.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_export.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_extattr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_lookup.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_mount.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_subr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_syscalls.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/kern/vfs_vnops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/legacy/dev/usb/if_upgt.c#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/legacy/dev/usb/if_upgtvar.h#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/legacy/dev/usb/usb_ethersubr.c#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/legacy/dev/usb/usb_ethersubr.h#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/mips/conf/ADM5120#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/mips/conf/IDT#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/mips/conf/MALTA#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/mips/conf/QEMU#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/mips/conf/SENTRY5#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/mips/mips/pm_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/modules/sound/sound/Makefile#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/modules/usb/Makefile#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/modules/usb/upgt/Makefile#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/modules/zfs/Makefile#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/net/netisr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/net/netisr.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/net80211/ieee80211_freebsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/net80211/ieee80211_node.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/net80211/ieee80211_proto.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/netgraph/netflow/ng_netflow.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/netinet/in.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/netinet/in_pcb.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/netinet/in_pcb.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/nfs4client/nfs4_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/nfsclient/nfs.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/nfsclient/nfs_bio.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/nfsclient/nfs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/nfsserver/nfs_serv.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/pc98/conf/DEFAULTS#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/pc98/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/pc98/include/mca.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/pc98/pc98/machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/clock.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/mmu_oea.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/mmu_oea64.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/mp_cpudep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/ofw_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/platform_chrp.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/aim/vm_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/booke/clock.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/booke/machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/booke/platform_bare.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/booke/pmap.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/booke/vm_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/conf/GENERIC#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/conf/MPC85XX#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/conf/NOTES#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/cpufunc.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/md_var.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/ofw_machdep.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/platform.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/platformvar.h#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/pmap.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/powerpc.h#2 delete
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/smp.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/include/spr.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/mp_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/platform.c#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/platform_if.m#1 branch
.. //depot/projects/soc2009/trasz_limits/sys/powerpc/powerpc/pmap_dispatch.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/security/audit/audit_worker.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sparc64/conf/GENERIC#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sparc64/sparc64/vm_machdep.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sys/_null.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sys/filedesc.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sys/mount.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/sys/param.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ufs/ffs/ffs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ufs/ufs/extattr.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ufs/ufs/ufs_extattr.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/ufs/ufs/ufs_vfsops.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/vm/vm_contig.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/vm/vm_page.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/vm/vm_page.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/sys/vm/vnode_pager.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/amd64-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/amd64-fbsd32.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/amd64-linux32.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/i386-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/i386-linux.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/ia64-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/main.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/mips-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/powerpc-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/sparc64-fbsd.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/syscall.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/syscalls.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/truss.1#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.bin/truss/truss.h#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_fs_tbl.c#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.sbin/mergemaster/mergemaster.sh#2 integrate
.. //depot/projects/soc2009/trasz_limits/usr.sbin/sysinstall/tcpip.c#2 integrate

Differences ...

==== //depot/projects/soc2009/trasz_limits/bin/pkill/pkill.1#2 (text+ko) ====

@@ -1,6 +1,6 @@
 .\"	$NetBSD: pkill.1,v 1.8 2003/02/14 15:59:18 grant Exp $
 .\"
-.\" $FreeBSD: src/bin/pkill/pkill.1,v 1.3 2008/09/30 17:30:39 ed Exp $
+.\" $FreeBSD: src/bin/pkill/pkill.1,v 1.4 2009/05/17 04:34:14 brian Exp $
 .\"
 .\" Copyright (c) 2002 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -36,7 +36,7 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 .\" POSSIBILITY OF SUCH DAMAGE.
 .\"
-.Dd November 23, 2006
+.Dd May 16, 2009
 .Dt PKILL 1
 .Os
 .Sh NAME
@@ -44,7 +44,7 @@
 .Nd find or signal processes by name
 .Sh SYNOPSIS
 .Nm pgrep
-.Op Fl LSfilnovx
+.Op Fl LSafilnovx
 .Op Fl F Ar pidfile
 .Op Fl G Ar gid
 .Op Fl M Ar core
@@ -60,7 +60,7 @@
 .Ar pattern ...
 .Nm pkill
 .Op Fl Ar signal
-.Op Fl ILfinovx
+.Op Fl ILafinovx
 .Op Fl F Ar pidfile
 .Op Fl G Ar gid
 .Op Fl M Ar core
@@ -128,6 +128,15 @@
 This option can only be used with the
 .Nm pgrep
 command.
+.It Fl a
+Include process ancestors in the match list.
+By default, the current
+.Nm pgrep
+or
+.Nm pkill
+process and all of its ancestors are excluded (unless
+.Fl v
+is used).
 .It Fl f
 Match against full argument lists.
 The default is to match against process names.

==== //depot/projects/soc2009/trasz_limits/bin/pkill/pkill.c#2 (text+ko) ====

@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/pkill/pkill.c,v 1.3 2008/09/30 17:30:39 ed Exp $");
+__FBSDID("$FreeBSD: src/bin/pkill/pkill.c,v 1.4 2009/05/17 04:34:14 brian Exp $");
 
 #include <sys/types.h>
 #include <sys/param.h>
@@ -133,7 +133,7 @@
 {
 	char buf[_POSIX2_LINE_MAX], *mstr, **pargv, *p, *q, *pidfile;
 	const char *execf, *coref;
-	int debug_opt;
+	int ancestors, debug_opt;
 	int i, ch, bestidx, rv, criteria, pidfromfile, pidfilelock;
 	size_t jsz;
 	int (*action)(const struct kinfo_proc *);
@@ -142,6 +142,7 @@
 	struct timeval best_tval;
 	regex_t reg;
 	regmatch_t regmatch;
+	pid_t pid;
 
 	setlocale(LC_ALL, "");
 
@@ -174,13 +175,14 @@
 		}
 	}
 
+	ancestors = 0;
 	criteria = 0;
 	debug_opt = 0;
 	pidfile = NULL;
 	pidfilelock = 0;
 	execf = coref = _PATH_DEVNULL;
 
-	while ((ch = getopt(argc, argv, "DF:G:ILM:N:P:SU:d:fg:ij:lnos:t:u:vx")) != -1)
+	while ((ch = getopt(argc, argv, "DF:G:ILM:N:P:SU:ad:fg:ij:lnos:t:u:vx")) != -1)
 		switch (ch) {
 		case 'D':
 			debug_opt++;
@@ -220,6 +222,9 @@
 			makelist(&ruidlist, LT_USER, optarg);
 			criteria = 1;
 			break;
+		case 'a':
+			ancestors++;
+			break;
 		case 'd':
 			if (!pgrep)
 				usage();
@@ -468,6 +473,27 @@
 			selected[i] = 1;
 	}
 
+	if (!ancestors) {
+		pid = mypid;
+		while (pid) {
+			for (i = 0, kp = plist; i < nproc; i++, kp++) {
+				if (PSKIP(kp))
+					continue;
+				if (kp->ki_pid == pid) {
+					selected[i] = 0;
+					pid = kp->ki_ppid;
+					break;
+				}
+			}
+			if (i == nproc) {
+				if (pid == mypid)
+					pid = getppid();
+				else
+					break;	/* Maybe we're in a jail ? */
+			}
+		}
+	}
+
 	if (newest || oldest) {
 		best_tval.tv_sec = 0;
 		best_tval.tv_usec = 0;

==== //depot/projects/soc2009/trasz_limits/bin/ps/print.c#2 (text+ko) ====

@@ -34,7 +34,7 @@
 #endif
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.98 2009/02/26 18:01:07 attilio Exp $");
+__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.99 2009/05/17 04:00:43 brian Exp $");
 
 #include <sys/param.h>
 #include <sys/time.h>
@@ -130,9 +130,11 @@
 	if (cflag) {
 		/* If it is the last field, then don't pad */
 		if (STAILQ_NEXT(ve, next_ve) == NULL) {
+			if (k->ki_d.prefix)
+				(void)printf("%s", k->ki_d.prefix);
 			(void)printf("%s", k->ki_p->ki_comm);
 			if (showthreads && k->ki_p->ki_numthreads > 1)
-				printf("/%s", k->ki_p->ki_ocomm);
+				(void)printf("/%s", k->ki_p->ki_ocomm);
 		} else
 			(void)printf("%-*s", v->width, k->ki_p->ki_comm);
 		return;
@@ -140,16 +142,22 @@
 	if ((vis_args = malloc(strlen(k->ki_args) * 4 + 1)) == NULL)
 		errx(1, "malloc failed");
 	strvis(vis_args, k->ki_args, VIS_TAB | VIS_NL | VIS_NOSLASH);
-	if (k->ki_env) {
-		if ((vis_env = malloc(strlen(k->ki_env) * 4 + 1)) == NULL)
-			errx(1, "malloc failed");
-		strvis(vis_env, k->ki_env, VIS_TAB | VIS_NL | VIS_NOSLASH);
-	} else
-		vis_env = NULL;
 
 	if (STAILQ_NEXT(ve, next_ve) == NULL) {
 		/* last field */
+
+		if (k->ki_env) {
+			if ((vis_env = malloc(strlen(k->ki_env) * 4 + 1))
+			    == NULL)
+				errx(1, "malloc failed");
+			strvis(vis_env, k->ki_env,
+			    VIS_TAB | VIS_NL | VIS_NOSLASH);
+		} else
+			vis_env = NULL;
+
 		if (termwidth == UNLIMITED) {
+			if (k->ki_d.prefix)
+				(void)printf("%s", k->ki_d.prefix);
 			if (vis_env)
 				(void)printf("%s ", vis_env);
 			(void)printf("%s", vis_args);
@@ -157,6 +165,9 @@
 			left = termwidth - (totwidth - v->width);
 			if (left < 1) /* already wrapped, just use std width */
 				left = v->width;
+			if ((cp = k->ki_d.prefix) != NULL)
+				while (--left >= 0 && *cp)
+					(void)putchar(*cp++);
 			if ((cp = vis_env) != NULL) {
 				while (--left >= 0 && *cp)
 					(void)putchar(*cp++);
@@ -166,12 +177,12 @@
 			for (cp = vis_args; --left >= 0 && *cp != '\0';)
 				(void)putchar(*cp++);
 		}
+		if (vis_env != NULL)
+			free(vis_env);
 	} else
-		/* XXX env? */
+		/* ki_d.prefix & ki_env aren't shown for interim fields */
 		(void)printf("%-*.*s", v->width, v->width, vis_args);
 	free(vis_args);
-	if (vis_env != NULL)
-		free(vis_env);
 }
 
 void
@@ -182,6 +193,8 @@
 
 	v = ve->var;
 	if (STAILQ_NEXT(ve, next_ve) == NULL) {	/* last field, don't pad */
+		if (k->ki_d.prefix)
+			(void)printf("%s", k->ki_d.prefix);
 		(void)printf("%s", k->ki_p->ki_comm);
 		if (showthreads && k->ki_p->ki_numthreads > 1)
 			printf("/%s", k->ki_p->ki_ocomm);

==== //depot/projects/soc2009/trasz_limits/bin/ps/ps.1#2 (text+ko) ====

@@ -27,9 +27,9 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)ps.1	8.3 (Berkeley) 4/18/94
-.\" $FreeBSD: src/bin/ps/ps.1,v 1.90 2008/03/12 10:01:34 jeff Exp $
+.\" $FreeBSD: src/bin/ps/ps.1,v 1.91 2009/05/17 04:00:43 brian Exp $
 .\"
-.Dd August 21, 2006
+.Dd May 16, 2009
 .Dt PS 1
 .Os
 .Sh NAME
@@ -37,7 +37,7 @@
 .Nd process status
 .Sh SYNOPSIS
 .Nm
-.Op Fl aCcefHhjlmrSTuvwXxZ
+.Op Fl aCcdefHhjlmrSTuvwXxZ
 .Op Fl O Ar fmt | Fl o Ar fmt
 .Op Fl G Ar gid Ns Op , Ns Ar gid Ns Ar ...
 .Op Fl M Ar core
@@ -122,6 +122,15 @@
 .Dq resident
 time (this normally has
 no effect).
+.It Fl d
+Arrange processes into descendancy order and prefix each command with
+indentation text showing sibling and parent/child relationships.
+If either of the
+.Fl m
+and
+.Fl r
+options are also used, they control how sibling processes are sorted
+relative to eachother.
 .It Fl e
 Display the environment as well.
 .It Fl f

==== //depot/projects/soc2009/trasz_limits/bin/ps/ps.c#2 (text+ko) ====

@@ -47,7 +47,7 @@
 #endif
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ps/ps.c,v 1.114 2008/07/18 14:55:22 kevlo Exp $");
+__FBSDID("$FreeBSD: src/bin/ps/ps.c,v 1.115 2009/05/17 04:00:43 brian Exp $");
 
 #include <sys/param.h>
 #include <sys/proc.h>
@@ -138,6 +138,7 @@
 static int	 addelem_tty(struct listinfo *, const char *);
 static int	 addelem_uid(struct listinfo *, const char *);
 static void	 add_list(struct listinfo *, const char *);
+static void	 descendant_sort(KINFO *, int);
 static void	 dynsizevars(KINFO *);
 static void	*expand_list(struct listinfo *);
 static const char *
@@ -163,7 +164,7 @@
 			"%cpu,%mem,command";
 static char Zfmt[] = "label";
 
-#define	PS_ARGS	"AaCce" OPT_LAZY_f "G:gHhjLlM:mN:O:o:p:rSTt:U:uvwXxZ"
+#define	PS_ARGS	"AaCcde" OPT_LAZY_f "G:gHhjLlM:mN:O:o:p:rSTt:U:uvwXxZ"
 
 int
 main(int argc, char *argv[])
@@ -177,7 +178,7 @@
 	const char *nlistf, *memf;
 	char *cols;
 	int all, ch, elem, flag, _fmt, i, lineno;
-	int nentries, nkept, nselectors;
+	int descendancy, nentries, nkept, nselectors;
 	int prtheader, wflag, what, xkeep, xkeep_implied;
 	char errbuf[_POSIX2_LINE_MAX];
 
@@ -201,7 +202,7 @@
 	if (argc > 1)
 		argv[1] = kludge_oldps_options(PS_ARGS, argv[1], argv[2]);
 
-	all = _fmt = nselectors = optfatal = 0;
+	all = descendancy = _fmt = nselectors = optfatal = 0;
 	prtheader = showthreads = wflag = xkeep_implied = 0;
 	xkeep = -1;			/* Neither -x nor -X. */
 	init_list(&gidlist, addelem_gid, sizeof(gid_t), "group");
@@ -233,6 +234,9 @@
 		case 'c':
 			cflag = 1;
 			break;
+		case 'd':
+			descendancy = 1;
+			break;
 		case 'e':			/* XXX set ufmt */
 			needenv = 1;
 			break;
@@ -575,6 +579,8 @@
 		keepit:
 			next_KINFO = &kinfo[nkept];
 			next_KINFO->ki_p = kp;
+			next_KINFO->ki_d.level = 0;
+			next_KINFO->ki_d.prefix = NULL;
 			next_KINFO->ki_pcpu = getpcpu(next_KINFO);
 			if (sortby == SORTMEM)
 				next_KINFO->ki_memsize = kp->ki_tsize +
@@ -599,6 +605,13 @@
 	 * sort proc list
 	 */
 	qsort(kinfo, nkept, sizeof(KINFO), pscomp);
+
+	/*
+	 * We want things in descendant order
+	 */
+	if (descendancy)
+		descendant_sort(kinfo, nkept);
+
 	/*
 	 * For each process, call each variable output function.
 	 */
@@ -622,6 +635,9 @@
 	free_list(&sesslist);
 	free_list(&ttylist);
 	free_list(&uidlist);
+	for (i = 0; i < nkept; i++)
+		free(kinfo[i].ki_d.prefix);
+	free(kinfo);
 
 	exit(eval);
 }
@@ -890,6 +906,116 @@
 	}
 }
 
+static void
+descendant_sort(KINFO *ki, int items)
+{
+	int dst, lvl, maxlvl, n, ndst, nsrc, siblings, src;
+	unsigned char *path;
+	KINFO kn;
+
+	/*
+	 * First, sort the entries by descendancy, tracking the descendancy
+	 * depth in the ki_d.level field.
+	 */
+	src = 0;
+	maxlvl = 0;
+	while (src < items) {
+		if (ki[src].ki_d.level) {
+			src++;
+			continue;
+		}
+		for (nsrc = 1; src + nsrc < items; nsrc++)
+			if (!ki[src + nsrc].ki_d.level)
+				break;
+
+		for (dst = 0; dst < items; dst++) {
+			if (ki[dst].ki_p->ki_pid == ki[src].ki_p->ki_pid)
+				continue;
+			if (ki[dst].ki_p->ki_pid == ki[src].ki_p->ki_ppid)
+				break;
+		}
+
+		if (dst == items) {
+			src += nsrc;
+			continue;
+		}
+
+		for (ndst = 1; dst + ndst < items; ndst++)
+			if (ki[dst + ndst].ki_d.level <= ki[dst].ki_d.level)
+				break;
+
+		for (n = src; n < src + nsrc; n++) {
+			ki[n].ki_d.level += ki[dst].ki_d.level + 1;
+			if (maxlvl < ki[n].ki_d.level)
+				maxlvl = ki[n].ki_d.level;
+		}
+
+		while (nsrc) {
+			if (src < dst) {
+				kn = ki[src];
+				memmove(ki + src, ki + src + 1,
+				    (dst - src + ndst - 1) * sizeof *ki);
+				ki[dst + ndst - 1] = kn;
+				nsrc--;
+				dst--;
+				ndst++;
+			} else if (src != dst + ndst) {
+				kn = ki[src];
+				memmove(ki + dst + ndst + 1, ki + dst + ndst,
+				    (src - dst - ndst) * sizeof *ki);
+				ki[dst + ndst] = kn;
+				ndst++;
+				nsrc--;
+				src++;
+			} else {
+				ndst += nsrc;
+				src += nsrc;
+				nsrc = 0;
+			}
+		}
+	}
+
+	/*
+	 * Now populate ki_d.prefix (instead of ki_d.level) with the command
+	 * prefix used to show descendancies.
+	 */
+	path = malloc((maxlvl + 7) / 8);
+	memset(path, '\0', (maxlvl + 7) / 8);
+	for (src = 0; src < items; src++) {
+		if ((lvl = ki[src].ki_d.level) == 0) {
+			ki[src].ki_d.prefix = NULL;
+			continue;
+		}
+		if ((ki[src].ki_d.prefix = malloc(lvl * 2 + 1)) == NULL)
+			errx(1, "malloc failed");
+		for (n = 0; n < lvl - 2; n++) {
+			ki[src].ki_d.prefix[n * 2] =
+			    path[n / 8] & 1 << (n % 8) ? '|' : ' ';
+			ki[src].ki_d.prefix[n * 2 + 1] = ' ';
+				
+		}
+		if (n == lvl - 2) {
+			/* Have I any more siblings? */
+			for (siblings = 0, dst = src + 1; dst < items; dst++) {
+				if (ki[dst].ki_d.level > lvl)
+					continue;
+				if (ki[dst].ki_d.level == lvl)
+					siblings = 1;
+				break;
+			}
+			if (siblings)
+				path[n / 8] |= 1 << (n % 8);
+			else
+				path[n / 8] &= ~(1 << (n % 8));
+			ki[src].ki_d.prefix[n * 2] = siblings ? '|' : '`';
+			ki[src].ki_d.prefix[n * 2 + 1] = '-';
+			n++;
+		}
+		strcpy(ki[src].ki_d.prefix + n * 2, "- ");
+	}
+	free(path);
+}
+
 static void *
 expand_list(struct listinfo *inf)
 {

==== //depot/projects/soc2009/trasz_limits/bin/ps/ps.h#2 (text+ko) ====

@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)ps.h	8.1 (Berkeley) 5/31/93
- * $FreeBSD: src/bin/ps/ps.h,v 1.19 2004/06/23 23:48:09 gad Exp $
+ * $FreeBSD: src/bin/ps/ps.h,v 1.20 2009/05/17 04:00:43 brian Exp $
  */
 
 #include <sys/queue.h>
@@ -42,6 +42,10 @@
 	int ki_valid;		/* 1 => uarea stuff valid */
 	double	 ki_pcpu;	/* calculated in main() */
 	segsz_t	 ki_memsize;	/* calculated in main() */
+	union {
+		int level;	/* used in decendant_sort() */
+		char *prefix;	/* calculated in decendant_sort() */
+	} ki_d;
 } KINFO;
 
 /* Variables. */

==== //depot/projects/soc2009/trasz_limits/etc/defaults/rc.conf#2 (text+ko) ====

@@ -15,7 +15,7 @@
 # For a more detailed explanation of all the rc.conf variables, please
 # refer to the rc.conf(5) manual page.
 #
-# $FreeBSD: src/etc/defaults/rc.conf,v 1.353 2009/03/19 12:48:00 des Exp $
+# $FreeBSD: src/etc/defaults/rc.conf,v 1.355 2009/05/16 20:55:28 dougb Exp $
 
 ##############################################################
 ###  Important initial Boot-time options  ####################
@@ -247,6 +247,7 @@
 #
 named_enable="NO"		# Run named, the DNS server (or NO).
 named_program="/usr/sbin/named" # Path to named, if you want a different one.
+named_conf="/etc/namedb/named.conf" 	# Path to the configuration file
 #named_flags="-c /etc/namedb/named.conf" # Uncomment for named not in /usr/sbin
 named_pidfile="/var/run/named/pid" # Must set this in named.conf as well
 named_uid="bind" 		# User to run named as
@@ -254,6 +255,10 @@
 named_chroot_autoupdate="YES"	# Automatically install/update chrooted
 				# components of named. See /etc/rc.d/named.
 named_symlink_enable="YES"	# Symlink the chrooted pid file
+named_wait="NO" 		# Wait for working name service before exiting
+named_wait_host="localhost" 	# Hostname to check if named_wait is enabled
+named_auto_forward="NO" 	# Set up forwarders from /etc/resolv.conf
+named_auto_forward_only="NO" 	# Do "forward only" instead of "forward first"
 
 #
 # kerberos. Do not run the admin daemons on slave servers
@@ -543,7 +548,7 @@
 dumpdev="AUTO"		# Device to crashdump to (device name, AUTO, or NO).
 dumpdir="/var/crash"	# Directory where crash dumps are to be stored
 savecore_flags=""	# Used if dumpdev is enabled above, and present.
-crashinfo_enable="NO"	# Automatically generate crash dump summary.
+crashinfo_enable="YES"	# Automatically generate crash dump summary.
 crashinfo_program="/usr/sbin/crashinfo"	# Script to generate crash dump summary.
 quota_enable="NO"	# turn on quotas on startup (or NO).
 check_quotas="YES"	# Check quotas on startup (or NO).

==== //depot/projects/soc2009/trasz_limits/etc/devd.conf#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/etc/devd.conf,v 1.48 2009/01/26 23:05:50 sam Exp $
+# $FreeBSD: src/etc/devd.conf,v 1.49 2009/05/16 15:12:56 maxim Exp $
 #
 # Refer to devd.conf(5) and devd(8) man pages for the details on how to
 # run and configure devd.
@@ -132,7 +132,7 @@
 	match "vendor"	"0x1645";
 	match "product"	"0x8001";
 	match "release"	"0x0101";
-	action "if ! kldstat -n usio > /dev/null 2>&1 ; then kldload usio; fi /usr/sbin/ezdownload -v -f /usr/share/usb/firmware/1645.8001.0101 /dev/$device-name";
+	action "if ! kldstat -n usio > /dev/null 2>&1 ; then kldload usio; fi; /usr/sbin/ezdownload -v -f /usr/share/usb/firmware/1645.8001.0101 /dev/$device-name";
 };
 
 # This entry starts the ColdSync tool in daemon mode. Make sure you have an up

==== //depot/projects/soc2009/trasz_limits/etc/namedb/named.conf#2 (text+ko) ====

@@ -1,4 +1,4 @@
-// $FreeBSD: src/etc/namedb/named.conf,v 1.28 2008/07/12 10:00:36 dougb Exp $
+// $FreeBSD: src/etc/namedb/named.conf,v 1.29 2009/05/16 20:55:28 dougb Exp $
 //
 // Refer to the named.conf(5) and named(8) man pages, and the documentation
 // in /usr/share/doc/bind9 for more details.
@@ -31,12 +31,6 @@
 	disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";
 	disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";
 
-// In addition to the "forwarders" clause, you can force your name
-// server to never initiate queries of its own, but always ask its
-// forwarders only, by enabling the following line:
-//
-//	forward only;
-
 // If you've got a DNS server around at your upstream provider, enter
 // its IP address here, and enable the line below.  This will make you
 // benefit from its cache, thus reduce overall DNS traffic in the Internet.
@@ -45,6 +39,20 @@
 		127.0.0.1;
 	};
 */
+
+// If the 'forwarders' clause is not empty the default is to 'forward first'
+// which will fall back to sending a query from your local server if the name
+// servers in 'forwarders' do not have the answer.  Alternatively you can
+// force your name server to never initiate queries of its own by enabling the
+// following line:
+//	forward only;
+
+// If you wish to have forwarding configured automatically based on
+// the entries in /etc/resolv.conf, uncomment the following line and
+// set named_auto_forward=yes in /etc/rc.conf.  You can also enable
+// named_auto_forward_only (the effect of which is described above).
+//	include "/etc/namedb/auto_forward.conf";
+
 	/*
 	   Modern versions of BIND use a random UDP port for each outgoing
 	   query by default in order to dramatically reduce the possibility

==== //depot/projects/soc2009/trasz_limits/etc/rc.d/named#2 (text+ko) ====

@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $FreeBSD: src/etc/rc.d/named,v 1.29 2009/02/07 16:37:02 bz Exp $
+# $FreeBSD: src/etc/rc.d/named,v 1.31 2009/05/16 20:55:28 dougb Exp $
 #
 
 # PROVIDE: named
@@ -16,7 +16,7 @@
 extra_commands="reload"
 
 start_precmd="named_precmd"
-start_postcmd="make_symlinks"
+start_postcmd="named_poststart"
 reload_cmd="named_reload"
 stop_cmd="named_stop"
 stop_postcmd="named_poststop"
@@ -79,7 +79,7 @@
 		fi
 	fi
 
-	# Copy and/or update key files to the chroot /etc 
+	# Copy and/or update key files to the chroot /etc
 	#
 	for file in localtime protocols services; do
 		if [ -r /etc/$file ]; then
@@ -97,6 +97,17 @@
 	    ln -fs "${named_chrootdir}${pidfile}" ${pidfile}
 }
 
+named_poststart () {
+	make_symlinks
+
+	if checkyesno named_wait; then
+		until ${command%/sbin/named}/bin/host $named_wait_host >/dev/null 2>&1; do
+			echo "	Waiting for nameserver to resolve $named_wait_host"
+			sleep 1
+		done
+	fi
+}
+
 named_reload()
 {
 	${command%/named}/rndc reload
@@ -135,8 +146,19 @@
 	fi
 }
 
+create_file () {
+	if [ -e "$1" ]; then
+		unlink $1
+	fi
+	> $1
+	chown root:wheel $1
+	chmod 644 $1
+}
+
 named_precmd()
 {
+	local line nsip firstns
+
 	# Is the user using a sandbox?
 	#

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


More information about the p4-projects mailing list