svn commit: r257177 - in projects/ifnet: . contrib/gperf/src contrib/llvm/tools/clang/tools/driver contrib/subversion/subversion/libsvn_subr etc etc/keys etc/mtree etc/pkg lib/libcrypt lib/libcrypt...

Gleb Smirnoff glebius at FreeBSD.org
Sat Oct 26 18:03:42 UTC 2013


Author: glebius
Date: Sat Oct 26 18:03:36 2013
New Revision: 257177
URL: http://svnweb.freebsd.org/changeset/base/257177

Log:
  Merge head r256150 through r257176.

Added:
  projects/ifnet/etc/keys/
     - copied from r257176, head/etc/keys/
  projects/ifnet/etc/mtree/BSD.tests.dist
     - copied unchanged from r257176, head/etc/mtree/BSD.tests.dist
  projects/ifnet/etc/pkg/
     - copied from r257176, head/etc/pkg/
  projects/ifnet/share/man/man7/tests.7
     - copied unchanged from r257176, head/share/man/man7/tests.7
  projects/ifnet/share/mk/plain.test.mk
     - copied unchanged from r257176, head/share/mk/plain.test.mk
  projects/ifnet/sys/arm/broadcom/bcm2835/bcm2835_spi.c
     - copied unchanged from r257176, head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
  projects/ifnet/sys/arm/broadcom/bcm2835/bcm2835_spireg.h
     - copied unchanged from r257176, head/sys/arm/broadcom/bcm2835/bcm2835_spireg.h
  projects/ifnet/sys/arm/broadcom/bcm2835/bcm2835_spivar.h
     - copied unchanged from r257176, head/sys/arm/broadcom/bcm2835/bcm2835_spivar.h
  projects/ifnet/sys/dev/spibus/ofw_spibus.c
     - copied unchanged from r257176, head/sys/dev/spibus/ofw_spibus.c
  projects/ifnet/sys/mips/conf/ALFA_HORNET_UB
     - copied unchanged from r257176, head/sys/mips/conf/ALFA_HORNET_UB
  projects/ifnet/sys/mips/conf/ALFA_HORNET_UB.hints
     - copied unchanged from r257176, head/sys/mips/conf/ALFA_HORNET_UB.hints
  projects/ifnet/sys/powerpc/mpc85xx/pci_mpc85xx.c
     - copied unchanged from r257176, head/sys/powerpc/mpc85xx/pci_mpc85xx.c
  projects/ifnet/tests/
     - copied from r257176, head/tests/
  projects/ifnet/tools/build/options/WITHOUT_NMTREE
     - copied unchanged from r257176, head/tools/build/options/WITHOUT_NMTREE
  projects/ifnet/tools/build/options/WITHOUT_TESTS
     - copied unchanged from r257176, head/tools/build/options/WITHOUT_TESTS
Deleted:
  projects/ifnet/sys/powerpc/include/trap_aim.h
  projects/ifnet/sys/powerpc/include/trap_booke.h
  projects/ifnet/sys/powerpc/mpc85xx/pci_fdt.c
  projects/ifnet/tools/build/options/WITH_NMTREE
Modified:
  projects/ifnet/Makefile.inc1
  projects/ifnet/ObsoleteFiles.inc
  projects/ifnet/UPDATING
  projects/ifnet/contrib/gperf/src/options.cc
  projects/ifnet/contrib/gperf/src/search.cc
  projects/ifnet/contrib/llvm/tools/clang/tools/driver/driver.cpp
  projects/ifnet/contrib/subversion/subversion/libsvn_subr/opt.c
  projects/ifnet/contrib/subversion/subversion/libsvn_subr/version.c
  projects/ifnet/etc/Makefile
  projects/ifnet/etc/mtree/BSD.root.dist
  projects/ifnet/etc/mtree/BSD.usr.dist
  projects/ifnet/lib/libcrypt/Makefile
  projects/ifnet/lib/libcrypt/tests/Makefile
  projects/ifnet/sbin/hastctl/hastctl.c
  projects/ifnet/sbin/hastd/control.c
  projects/ifnet/sbin/hastd/hast.h
  projects/ifnet/sbin/hastd/primary.c
  projects/ifnet/sbin/hastd/secondary.c
  projects/ifnet/sbin/mdconfig/mdconfig.8
  projects/ifnet/share/man/man5/src.conf.5
  projects/ifnet/share/man/man7/Makefile
  projects/ifnet/share/man/man7/hier.7
  projects/ifnet/share/mk/bsd.files.mk
  projects/ifnet/share/mk/bsd.own.mk
  projects/ifnet/share/mk/bsd.test.mk
  projects/ifnet/sys/arm/broadcom/bcm2835/bcm2835_gpio.c
  projects/ifnet/sys/arm/broadcom/bcm2835/files.bcm2835
  projects/ifnet/sys/arm/conf/RPI-B
  projects/ifnet/sys/arm/lpc/if_lpe.c
  projects/ifnet/sys/arm/lpc/lpc_mmc.c
  projects/ifnet/sys/arm/mv/mv_sata.c
  projects/ifnet/sys/boot/fdt/dts/bcm2835.dtsi
  projects/ifnet/sys/boot/fdt/dts/db78460.dts
  projects/ifnet/sys/boot/uboot/lib/disk.c
  projects/ifnet/sys/boot/uboot/lib/glue.c
  projects/ifnet/sys/cam/ata/ata_da.c
  projects/ifnet/sys/cam/scsi/scsi_da.c
  projects/ifnet/sys/cddl/contrib/opensolaris/uts/intel/dtrace/fasttrap_isa.c
  projects/ifnet/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c
  projects/ifnet/sys/cddl/dev/sdt/sdt.c
  projects/ifnet/sys/compat/linprocfs/linprocfs.c
  projects/ifnet/sys/compat/linux/linux_ioctl.c
  projects/ifnet/sys/compat/ndis/kern_ndis.c
  projects/ifnet/sys/compat/ndis/subr_ndis.c
  projects/ifnet/sys/compat/ndis/subr_usbd.c
  projects/ifnet/sys/conf/NOTES
  projects/ifnet/sys/conf/files
  projects/ifnet/sys/conf/files.powerpc
  projects/ifnet/sys/dev/ae/if_ae.c
  projects/ifnet/sys/dev/age/if_age.c
  projects/ifnet/sys/dev/alc/if_alc.c
  projects/ifnet/sys/dev/ale/if_ale.c
  projects/ifnet/sys/dev/an/if_an.c
  projects/ifnet/sys/dev/ath/ath_dfs/null/dfs_null.c
  projects/ifnet/sys/dev/ath/ath_rate/sample/sample.c
  projects/ifnet/sys/dev/ath/if_ath.c
  projects/ifnet/sys/dev/ath/if_ath_beacon.c
  projects/ifnet/sys/dev/ath/if_ath_btcoex.c
  projects/ifnet/sys/dev/ath/if_ath_keycache.c
  projects/ifnet/sys/dev/ath/if_ath_lna_div.c
  projects/ifnet/sys/dev/ath/if_ath_rx.c
  projects/ifnet/sys/dev/ath/if_ath_rx_edma.c
  projects/ifnet/sys/dev/ath/if_ath_spectral.c
  projects/ifnet/sys/dev/ath/if_ath_sysctl.c
  projects/ifnet/sys/dev/ath/if_ath_tdma.c
  projects/ifnet/sys/dev/ath/if_ath_tx.c
  projects/ifnet/sys/dev/ath/if_ath_tx_edma.c
  projects/ifnet/sys/dev/bce/if_bce.c
  projects/ifnet/sys/dev/bce/if_bcereg.h
  projects/ifnet/sys/dev/bfe/if_bfe.c
  projects/ifnet/sys/dev/bge/if_bge.c
  projects/ifnet/sys/dev/bm/if_bm.c
  projects/ifnet/sys/dev/bwi/bwimac.c
  projects/ifnet/sys/dev/bwi/bwiphy.c
  projects/ifnet/sys/dev/bwi/bwirf.c
  projects/ifnet/sys/dev/bwi/if_bwi.c
  projects/ifnet/sys/dev/bwi/if_bwi_pci.c
  projects/ifnet/sys/dev/bwn/if_bwn.c
  projects/ifnet/sys/dev/cadence/if_cgem.c
  projects/ifnet/sys/dev/cas/if_cas.c
  projects/ifnet/sys/dev/ce/if_ce.c
  projects/ifnet/sys/dev/cesa/cesa.c
  projects/ifnet/sys/dev/cm/smc90cx6.c
  projects/ifnet/sys/dev/cp/if_cp.c
  projects/ifnet/sys/dev/cs/if_cs.c
  projects/ifnet/sys/dev/ctau/if_ct.c
  projects/ifnet/sys/dev/cx/if_cx.c
  projects/ifnet/sys/dev/cxgb/cxgb_adapter.h
  projects/ifnet/sys/dev/cxgb/cxgb_main.c
  projects/ifnet/sys/dev/cxgbe/adapter.h
  projects/ifnet/sys/dev/dc/dcphy.c
  projects/ifnet/sys/dev/dc/if_dc.c
  projects/ifnet/sys/dev/dc/pnphy.c
  projects/ifnet/sys/dev/de/if_de.c
  projects/ifnet/sys/dev/e1000/if_em.c
  projects/ifnet/sys/dev/e1000/if_igb.c
  projects/ifnet/sys/dev/e1000/if_lem.c
  projects/ifnet/sys/dev/ed/if_ed.c
  projects/ifnet/sys/dev/ed/if_ed_3c503.c
  projects/ifnet/sys/dev/ed/if_ed_hpp.c
  projects/ifnet/sys/dev/ed/if_ed_pccard.c
  projects/ifnet/sys/dev/ed/if_ed_rtl80x9.c
  projects/ifnet/sys/dev/en/if_en_pci.c
  projects/ifnet/sys/dev/en/midway.c
  projects/ifnet/sys/dev/ep/if_ep.c
  projects/ifnet/sys/dev/et/if_et.c
  projects/ifnet/sys/dev/ex/if_ex.c
  projects/ifnet/sys/dev/fatm/if_fatm.c
  projects/ifnet/sys/dev/fdt/fdt_common.c
  projects/ifnet/sys/dev/fdt/fdt_slicer.c
  projects/ifnet/sys/dev/fdt/fdtbus.c
  projects/ifnet/sys/dev/fe/if_fe.c
  projects/ifnet/sys/dev/fe/if_fe_pccard.c
  projects/ifnet/sys/dev/ffec/if_ffec.c
  projects/ifnet/sys/dev/firewire/if_fwe.c
  projects/ifnet/sys/dev/firewire/if_fwip.c
  projects/ifnet/sys/dev/fxp/if_fxp.c
  projects/ifnet/sys/dev/fxp/inphy.c
  projects/ifnet/sys/dev/gem/if_gem.c
  projects/ifnet/sys/dev/hatm/if_hatm.c
  projects/ifnet/sys/dev/hatm/if_hatm_intr.c
  projects/ifnet/sys/dev/hatm/if_hatm_ioctl.c
  projects/ifnet/sys/dev/hatm/if_hatm_rx.c
  projects/ifnet/sys/dev/hatm/if_hatm_tx.c
  projects/ifnet/sys/dev/hme/if_hme.c
  projects/ifnet/sys/dev/hme/if_hme_pci.c
  projects/ifnet/sys/dev/ic/ns16550.h
  projects/ifnet/sys/dev/ie/if_ie.c
  projects/ifnet/sys/dev/if_ndis/if_ndis.c
  projects/ifnet/sys/dev/if_ndis/if_ndis_pccard.c
  projects/ifnet/sys/dev/if_ndis/if_ndis_pci.c
  projects/ifnet/sys/dev/if_ndis/if_ndis_usb.c
  projects/ifnet/sys/dev/iicbus/if_ic.c
  projects/ifnet/sys/dev/ipw/if_ipw.c
  projects/ifnet/sys/dev/iscsi/icl.c
  projects/ifnet/sys/dev/iwi/if_iwi.c
  projects/ifnet/sys/dev/iwn/if_iwn.c
  projects/ifnet/sys/dev/iwn/if_iwnreg.h
  projects/ifnet/sys/dev/iwn/if_iwnvar.h
  projects/ifnet/sys/dev/ixgb/if_ixgb.h
  projects/ifnet/sys/dev/ixgbe/ixgbe.h
  projects/ifnet/sys/dev/ixgbe/ixv.h
  projects/ifnet/sys/dev/jme/if_jme.c
  projects/ifnet/sys/dev/le/lance.c
  projects/ifnet/sys/dev/lge/if_lge.c
  projects/ifnet/sys/dev/lmc/if_lmc.c
  projects/ifnet/sys/dev/malo/if_malo.c
  projects/ifnet/sys/dev/malo/if_malo_pci.c
  projects/ifnet/sys/dev/malo/if_malohal.c
  projects/ifnet/sys/dev/mge/if_mge.c
  projects/ifnet/sys/dev/mii/mii.c
  projects/ifnet/sys/dev/msk/if_msk.c
  projects/ifnet/sys/dev/mwl/if_mwl.c
  projects/ifnet/sys/dev/mwl/if_mwl_pci.c
  projects/ifnet/sys/dev/mxge/if_mxge.c
  projects/ifnet/sys/dev/my/if_my.c
  projects/ifnet/sys/dev/netmap/netmap.c
  projects/ifnet/sys/dev/nfe/if_nfe.c
  projects/ifnet/sys/dev/nge/if_nge.c
  projects/ifnet/sys/dev/nve/if_nve.c
  projects/ifnet/sys/dev/nxge/if_nxge.c
  projects/ifnet/sys/dev/oce/oce_if.h
  projects/ifnet/sys/dev/ofw/ofw_bus_subr.c
  projects/ifnet/sys/dev/ofw/ofw_bus_subr.h
  projects/ifnet/sys/dev/ofw/ofw_nexus.c
  projects/ifnet/sys/dev/patm/if_patm.c
  projects/ifnet/sys/dev/patm/if_patm_attach.c
  projects/ifnet/sys/dev/patm/if_patm_intr.c
  projects/ifnet/sys/dev/patm/if_patm_ioctl.c
  projects/ifnet/sys/dev/patm/if_patm_rx.c
  projects/ifnet/sys/dev/patm/if_patm_tx.c
  projects/ifnet/sys/dev/pci/pci.c
  projects/ifnet/sys/dev/pci/pci_private.h
  projects/ifnet/sys/dev/pci/pcireg.h
  projects/ifnet/sys/dev/pci/pcivar.h
  projects/ifnet/sys/dev/pcn/if_pcn.c
  projects/ifnet/sys/dev/pdq/if_fpa.c
  projects/ifnet/sys/dev/pdq/pdq_freebsd.h
  projects/ifnet/sys/dev/pdq/pdq_ifsubr.c
  projects/ifnet/sys/dev/ppbus/if_plip.c
  projects/ifnet/sys/dev/ral/rt2560.c
  projects/ifnet/sys/dev/ral/rt2661.c
  projects/ifnet/sys/dev/ral/rt2860.c
  projects/ifnet/sys/dev/re/if_re.c
  projects/ifnet/sys/dev/rt/if_rt.c
  projects/ifnet/sys/dev/sbni/if_sbni.c
  projects/ifnet/sys/dev/sf/if_sf.c
  projects/ifnet/sys/dev/sfxge/sfxge.c
  projects/ifnet/sys/dev/sfxge/sfxge.h
  projects/ifnet/sys/dev/sge/if_sge.c
  projects/ifnet/sys/dev/sis/if_sis.c
  projects/ifnet/sys/dev/sk/if_sk.c
  projects/ifnet/sys/dev/smc/if_smc.c
  projects/ifnet/sys/dev/sn/if_sn.c
  projects/ifnet/sys/dev/spibus/spibus.c
  projects/ifnet/sys/dev/spibus/spibusvar.h
  projects/ifnet/sys/dev/ste/if_ste.c
  projects/ifnet/sys/dev/stge/if_stge.c
  projects/ifnet/sys/dev/ti/if_ti.c
  projects/ifnet/sys/dev/tl/if_tl.c
  projects/ifnet/sys/dev/tsec/if_tsec.c
  projects/ifnet/sys/dev/tx/if_tx.c
  projects/ifnet/sys/dev/txp/if_txp.c
  projects/ifnet/sys/dev/uart/uart_cpu_fdt.c
  projects/ifnet/sys/dev/uart/uart_dev_ns8250.c
  projects/ifnet/sys/dev/usb/net/if_aue.c
  projects/ifnet/sys/dev/usb/net/if_axe.c
  projects/ifnet/sys/dev/usb/net/if_cdce.c
  projects/ifnet/sys/dev/usb/net/if_cue.c
  projects/ifnet/sys/dev/usb/net/if_kue.c
  projects/ifnet/sys/dev/usb/net/if_mos.c
  projects/ifnet/sys/dev/usb/net/if_rue.c
  projects/ifnet/sys/dev/usb/net/if_udav.c
  projects/ifnet/sys/dev/usb/net/if_usie.c
  projects/ifnet/sys/dev/usb/net/uhso.c
  projects/ifnet/sys/dev/usb/net/usb_ethernet.c
  projects/ifnet/sys/dev/usb/serial/u3g.c
  projects/ifnet/sys/dev/usb/usb_pf.c
  projects/ifnet/sys/dev/usb/usbdevs
  projects/ifnet/sys/dev/usb/wlan/if_rsu.c
  projects/ifnet/sys/dev/usb/wlan/if_rum.c
  projects/ifnet/sys/dev/usb/wlan/if_run.c
  projects/ifnet/sys/dev/usb/wlan/if_uath.c
  projects/ifnet/sys/dev/usb/wlan/if_upgt.c
  projects/ifnet/sys/dev/usb/wlan/if_ural.c
  projects/ifnet/sys/dev/usb/wlan/if_urtw.c
  projects/ifnet/sys/dev/usb/wlan/if_urtwn.c
  projects/ifnet/sys/dev/usb/wlan/if_zyd.c
  projects/ifnet/sys/dev/vge/if_vge.c
  projects/ifnet/sys/dev/virtio/network/if_vtnet.c
  projects/ifnet/sys/dev/vmware/vmxnet3/if_vmx.c
  projects/ifnet/sys/dev/vr/if_vr.c
  projects/ifnet/sys/dev/vte/if_vte.c
  projects/ifnet/sys/dev/vx/if_vx.c
  projects/ifnet/sys/dev/vx/if_vx_pci.c
  projects/ifnet/sys/dev/wb/if_wb.c
  projects/ifnet/sys/dev/wi/if_wi.c
  projects/ifnet/sys/dev/wi/if_wi_pccard.c
  projects/ifnet/sys/dev/wi/if_wi_pci.c
  projects/ifnet/sys/dev/wl/if_wl.c
  projects/ifnet/sys/dev/wpi/if_wpi.c
  projects/ifnet/sys/dev/xe/if_xe.c
  projects/ifnet/sys/dev/xl/if_xl.c
  projects/ifnet/sys/fs/nfs/nfsport.h
  projects/ifnet/sys/geom/geom_disk.c
  projects/ifnet/sys/geom/geom_disk.h
  projects/ifnet/sys/kern/kern_jail.c
  projects/ifnet/sys/kern/kern_poll.c
  projects/ifnet/sys/kern/sys_socket.c
  projects/ifnet/sys/net/bpf.c
  projects/ifnet/sys/net/bridgestp.c
  projects/ifnet/sys/net/ieee8023ad_lacp.c
  projects/ifnet/sys/net/if_arcsubr.c
  projects/ifnet/sys/net/if_atmsubr.c
  projects/ifnet/sys/net/if_clone.c
  projects/ifnet/sys/net/if_disc.c
  projects/ifnet/sys/net/if_edsc.c
  projects/ifnet/sys/net/if_ef.c
  projects/ifnet/sys/net/if_enc.c
  projects/ifnet/sys/net/if_epair.c
  projects/ifnet/sys/net/if_ethersubr.c
  projects/ifnet/sys/net/if_faith.c
  projects/ifnet/sys/net/if_fddisubr.c
  projects/ifnet/sys/net/if_fwsubr.c
  projects/ifnet/sys/net/if_gif.c
  projects/ifnet/sys/net/if_gre.c
  projects/ifnet/sys/net/if_iso88025subr.c
  projects/ifnet/sys/net/if_loop.c
  projects/ifnet/sys/net/if_mib.c
  projects/ifnet/sys/net/if_spppfr.c
  projects/ifnet/sys/net/if_spppsubr.c
  projects/ifnet/sys/net/if_stf.c
  projects/ifnet/sys/net/if_tap.c
  projects/ifnet/sys/net/if_tun.c
  projects/ifnet/sys/net/if_vlan.c
  projects/ifnet/sys/net/pfil.c
  projects/ifnet/sys/net/raw_cb.c
  projects/ifnet/sys/net/raw_usrreq.c
  projects/ifnet/sys/net/route.c
  projects/ifnet/sys/net/rtsock.c
  projects/ifnet/sys/net80211/ieee80211.c
  projects/ifnet/sys/net80211/ieee80211_action.c
  projects/ifnet/sys/net80211/ieee80211_adhoc.c
  projects/ifnet/sys/net80211/ieee80211_ageq.c
  projects/ifnet/sys/net80211/ieee80211_amrr.c
  projects/ifnet/sys/net80211/ieee80211_ddb.c
  projects/ifnet/sys/net80211/ieee80211_dfs.c
  projects/ifnet/sys/net80211/ieee80211_freebsd.c
  projects/ifnet/sys/net80211/ieee80211_hostap.c
  projects/ifnet/sys/net80211/ieee80211_ht.c
  projects/ifnet/sys/net80211/ieee80211_input.c
  projects/ifnet/sys/net80211/ieee80211_ioctl.c
  projects/ifnet/sys/net80211/ieee80211_mesh.c
  projects/ifnet/sys/net80211/ieee80211_monitor.c
  projects/ifnet/sys/net80211/ieee80211_node.c
  projects/ifnet/sys/net80211/ieee80211_output.c
  projects/ifnet/sys/net80211/ieee80211_power.c
  projects/ifnet/sys/net80211/ieee80211_proto.c
  projects/ifnet/sys/net80211/ieee80211_proto.h
  projects/ifnet/sys/net80211/ieee80211_radiotap.c
  projects/ifnet/sys/net80211/ieee80211_regdomain.c
  projects/ifnet/sys/net80211/ieee80211_scan.c
  projects/ifnet/sys/net80211/ieee80211_scan_sta.c
  projects/ifnet/sys/net80211/ieee80211_wds.c
  projects/ifnet/sys/netatalk/aarp.c
  projects/ifnet/sys/netatalk/at_control.c
  projects/ifnet/sys/netatalk/ddp_input.c
  projects/ifnet/sys/netatalk/ddp_output.c
  projects/ifnet/sys/netatalk/ddp_pcb.c
  projects/ifnet/sys/netatalk/ddp_usrreq.c
  projects/ifnet/sys/netgraph/netflow/netflow.c
  projects/ifnet/sys/netgraph/ng_bridge.c
  projects/ifnet/sys/netgraph/ng_cisco.c
  projects/ifnet/sys/netgraph/ng_eiface.c
  projects/ifnet/sys/netgraph/ng_fec.c
  projects/ifnet/sys/netgraph/ng_iface.c
  projects/ifnet/sys/netgraph/ng_ipfw.c
  projects/ifnet/sys/netgraph/ng_one2many.c
  projects/ifnet/sys/netgraph/ng_sppp.c
  projects/ifnet/sys/netinet/if_atm.c
  projects/ifnet/sys/netinet/if_ether.c
  projects/ifnet/sys/netinet/igmp.c
  projects/ifnet/sys/netinet/in_gif.c
  projects/ifnet/sys/netinet/in_mcast.c
  projects/ifnet/sys/netinet/in_pcb.c
  projects/ifnet/sys/netinet/in_proto.c
  projects/ifnet/sys/netinet/in_rmx.c
  projects/ifnet/sys/netinet/ip_carp.c
  projects/ifnet/sys/netinet/ip_divert.c
  projects/ifnet/sys/netinet/ip_gre.c
  projects/ifnet/sys/netinet/ip_icmp.c
  projects/ifnet/sys/netinet/ip_ipsec.c
  projects/ifnet/sys/netinet/ip_mroute.c
  projects/ifnet/sys/netinet/ip_output.c
  projects/ifnet/sys/netinet/raw_ip.c
  projects/ifnet/sys/netinet/tcp_hostcache.c
  projects/ifnet/sys/netinet/tcp_input.c
  projects/ifnet/sys/netinet/tcp_offload.c
  projects/ifnet/sys/netinet/tcp_reass.c
  projects/ifnet/sys/netinet/tcp_sack.c
  projects/ifnet/sys/netinet/tcp_subr.c
  projects/ifnet/sys/netinet/tcp_syncache.c
  projects/ifnet/sys/netinet/tcp_timewait.c
  projects/ifnet/sys/netinet/tcp_usrreq.c
  projects/ifnet/sys/netinet/udp_usrreq.c
  projects/ifnet/sys/netinet6/dest6.c
  projects/ifnet/sys/netinet6/frag6.c
  projects/ifnet/sys/netinet6/icmp6.c
  projects/ifnet/sys/netinet6/in6_gif.c
  projects/ifnet/sys/netinet6/in6_ifattach.c
  projects/ifnet/sys/netinet6/in6_mcast.c
  projects/ifnet/sys/netinet6/in6_pcb.c
  projects/ifnet/sys/netinet6/in6_proto.c
  projects/ifnet/sys/netinet6/in6_rmx.c
  projects/ifnet/sys/netinet6/in6_src.c
  projects/ifnet/sys/netinet6/ip6_forward.c
  projects/ifnet/sys/netinet6/ip6_input.c
  projects/ifnet/sys/netinet6/ip6_ipsec.c
  projects/ifnet/sys/netinet6/ip6_mroute.c
  projects/ifnet/sys/netinet6/ip6_output.c
  projects/ifnet/sys/netinet6/mld6.c
  projects/ifnet/sys/netinet6/nd6.c
  projects/ifnet/sys/netinet6/nd6_rtr.c
  projects/ifnet/sys/netinet6/raw_ip6.c
  projects/ifnet/sys/netinet6/route6.c
  projects/ifnet/sys/netinet6/scope6.c
  projects/ifnet/sys/netinet6/udp6_usrreq.c
  projects/ifnet/sys/netipsec/ipsec.c
  projects/ifnet/sys/netipsec/ipsec_input.c
  projects/ifnet/sys/netipsec/ipsec_output.c
  projects/ifnet/sys/netipsec/key.c
  projects/ifnet/sys/netipsec/xform_ipip.c
  projects/ifnet/sys/netipx/ipx.c
  projects/ifnet/sys/netipx/ipx_input.c
  projects/ifnet/sys/netipx/ipx_outputfl.c
  projects/ifnet/sys/netipx/ipx_pcb.c
  projects/ifnet/sys/netipx/ipx_usrreq.c
  projects/ifnet/sys/netnatm/natm.c
  projects/ifnet/sys/netnatm/natm_pcb.c
  projects/ifnet/sys/netpfil/ipfw/ip_fw2.c
  projects/ifnet/sys/netpfil/ipfw/ip_fw_dynamic.c
  projects/ifnet/sys/netpfil/ipfw/ip_fw_log.c
  projects/ifnet/sys/netpfil/ipfw/ip_fw_nat.c
  projects/ifnet/sys/netpfil/pf/if_pflog.c
  projects/ifnet/sys/netpfil/pf/if_pfsync.c
  projects/ifnet/sys/netpfil/pf/pf.c
  projects/ifnet/sys/netpfil/pf/pf_if.c
  projects/ifnet/sys/netpfil/pf/pf_ioctl.c
  projects/ifnet/sys/netpfil/pf/pf_lb.c
  projects/ifnet/sys/netpfil/pf/pf_osfp.c
  projects/ifnet/sys/nfs/bootp_subr.c
  projects/ifnet/sys/nfsclient/nfs_vfsops.c
  projects/ifnet/sys/nfsclient/nfs_vnops.c
  projects/ifnet/sys/nfsserver/nfs_srvkrpc.c
  projects/ifnet/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib.h
  projects/ifnet/sys/ofed/drivers/infiniband/ulp/sdp/sdp.h
  projects/ifnet/sys/ofed/include/linux/list.h
  projects/ifnet/sys/pci/if_rl.c
  projects/ifnet/sys/powerpc/aim/mmu_oea.c
  projects/ifnet/sys/powerpc/aim/mp_cpudep.c
  projects/ifnet/sys/powerpc/booke/pmap.c
  projects/ifnet/sys/powerpc/include/intr_machdep.h
  projects/ifnet/sys/powerpc/include/psl.h
  projects/ifnet/sys/powerpc/include/trap.h
  projects/ifnet/sys/powerpc/mpc85xx/atpic.c
  projects/ifnet/sys/powerpc/mpc85xx/fsl_sdhc.c
  projects/ifnet/sys/powerpc/ofw/openpic_ofw.c
  projects/ifnet/sys/powerpc/powermac/powermac_thermal.c
  projects/ifnet/sys/powerpc/powerpc/exec_machdep.c
  projects/ifnet/sys/powerpc/powerpc/genassym.c
  projects/ifnet/sys/powerpc/powerpc/intr_machdep.c
  projects/ifnet/sys/powerpc/powerpc/nexus.c
  projects/ifnet/sys/powerpc/powerpc/pic_if.m
  projects/ifnet/sys/powerpc/pseries/platform_chrp.c
  projects/ifnet/sys/security/mac_ifoff/mac_ifoff.c
  projects/ifnet/sys/sparc64/include/bus.h
  projects/ifnet/sys/sparc64/include/bus_private.h
  projects/ifnet/sys/sparc64/pci/fire.c
  projects/ifnet/sys/sparc64/pci/psycho.c
  projects/ifnet/sys/sparc64/pci/schizo.c
  projects/ifnet/sys/sparc64/sbus/sbus.c
  projects/ifnet/sys/sparc64/sparc64/bus_machdep.c
  projects/ifnet/sys/sys/sdt.h
  projects/ifnet/sys/x86/x86/io_apic.c
  projects/ifnet/usr.sbin/bhyve/ioapic.c
  projects/ifnet/usr.sbin/pkg/Makefile
  projects/ifnet/usr.sbin/pkg/config.c
  projects/ifnet/usr.sbin/pkg/config.h
  projects/ifnet/usr.sbin/pkg/pkg.c
Directory Properties:
  projects/ifnet/   (props changed)
  projects/ifnet/contrib/llvm/   (props changed)
  projects/ifnet/contrib/llvm/tools/clang/   (props changed)
  projects/ifnet/contrib/subversion/   (props changed)
  projects/ifnet/sbin/   (props changed)
  projects/ifnet/sys/   (props changed)
  projects/ifnet/sys/boot/   (props changed)
  projects/ifnet/sys/cddl/contrib/opensolaris/   (props changed)
  projects/ifnet/sys/conf/   (props changed)
  projects/ifnet/usr.sbin/bhyve/   (props changed)

Modified: projects/ifnet/Makefile.inc1
==============================================================================
--- projects/ifnet/Makefile.inc1	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/Makefile.inc1	Sat Oct 26 18:03:36 2013	(r257177)
@@ -58,6 +58,7 @@
 # use that new version.  And the new (dynamically-linked) /bin/sh
 # will expect to find appropriate libraries in /lib and /libexec.
 #
+SRCDIR?=	${.CURDIR}
 .if defined(SUBDIR_OVERRIDE)
 SUBDIR=	${SUBDIR_OVERRIDE}
 .else
@@ -84,6 +85,9 @@ SUBDIR+=secure
 SUBDIR+=share
 .endif
 SUBDIR+=sys usr.bin usr.sbin
+.if ${MK_TESTS} != "no"
+SUBDIR+=	tests
+.endif
 .if ${MK_OFED} != "no"
 SUBDIR+=contrib/ofed
 .endif
@@ -128,10 +132,10 @@ OSRELDATE=	0
 .endif
 
 .if !defined(VERSION)
-REVISION!=	make -C ${.CURDIR}/release -V REVISION
-BRANCH!=	make -C ${.CURDIR}/release -V BRANCH
+REVISION!=	make -C ${SRCDIR}/release -V REVISION
+BRANCH!=	make -C ${SRCDIR}/release -V BRANCH
 SRCRELDATE!=	awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \
-		${.CURDIR}/sys/sys/param.h
+		${SRCDIR}/sys/sys/param.h
 VERSION=	FreeBSD ${REVISION}-${BRANCH} ${TARGET_ARCH} ${SRCRELDATE}
 .endif
 
@@ -488,6 +492,10 @@ _worldtmp:
 	mtree -deU -f ${.CURDIR}/etc/mtree/BSD.debug.dist \
 	    -p ${WORLDTMP}/usr/lib >/dev/null
 .endif
+.if ${MK_TESTS} != "no"
+	mtree -deU -f ${.CURDIR}/etc/mtree/BSD.tests.dist \
+	    -p ${WORLDTMP}${TESTSBASE} >/dev/null
+.endif
 .for _mtree in ${LOCAL_MTREE}
 	mtree -deU -f ${.CURDIR}/${_mtree} -p ${WORLDTMP} > /dev/null
 .endfor

Modified: projects/ifnet/ObsoleteFiles.inc
==============================================================================
--- projects/ifnet/ObsoleteFiles.inc	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/ObsoleteFiles.inc	Sat Oct 26 18:03:36 2013	(r257177)
@@ -38,6 +38,8 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20131023: remove never used iscsi directory
+OLD_DIRS+=usr/share/examples/iscsi
 # 20131014: libbsdyml becomes private
 OLD_FILES+=usr/lib/libbsdyml.a
 OLD_FILES+=usr/lib/libbsdyml.so
@@ -2491,6 +2493,7 @@ OLD_FILES+=usr/sbin/zfs
 OLD_FILES+=usr/sbin/zpool
 # 20070423: rc.bluetooth (examples) removed
 OLD_FILES+=usr/share/examples/netgraph/bluetooth/rc.bluetooth
+OLD_DIRS+=usr/share/examples/netgraph/bluetooth
 # 20070421: worm.4 removed
 OLD_FILES+=usr/share/man/man4/worm.4.gz
 # 20070417: trunk(4) renamed to lagg(4)

Modified: projects/ifnet/UPDATING
==============================================================================
--- projects/ifnet/UPDATING	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/UPDATING	Sat Oct 26 18:03:36 2013	(r257177)
@@ -31,6 +31,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20131025:
+	The default version of mtree is nmtree which is obtained from
+	NetBSD.  The output is generally the same, but may vary
+	slightly.  If you found you need identical output adding
+	"-F freebsd9" to the command line should do the trick.  For the
+	time being, the old mtree is available as fmtree.
+
 20131014:
 	libbsdyml has been renamed to libyaml and moved to /usr/lib/private.
 	This will break ports-mgmt/pkg. Rebuild the port, or upgrade to pkg

Modified: projects/ifnet/contrib/gperf/src/options.cc
==============================================================================
--- projects/ifnet/contrib/gperf/src/options.cc	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/contrib/gperf/src/options.cc	Sat Oct 26 18:03:36 2013	(r257177)
@@ -281,7 +281,7 @@ Options::print_options () const
         {
           putchar (*arg);
           arg++;
-          if (*arg >= 'A' && *arg <= 'Z' || *arg >= 'a' && *arg <= 'z')
+          if ( (*arg >= 'A' && *arg <= 'Z') || (*arg >= 'a' && *arg <= 'z') )
             {
               putchar (*arg);
               arg++;
@@ -293,7 +293,9 @@ Options::print_options () const
                   putchar (*arg);
                   arg++;
                 }
-              while (*arg >= 'A' && *arg <= 'Z' || *arg >= 'a' && *arg <= 'z' || *arg == '-');
+              while ( (*arg >= 'A' && *arg <= 'Z') ||
+                      (*arg >= 'a' && *arg <= 'z') ||
+                       *arg == '-');
               if (*arg == '=')
                 {
                   putchar (*arg);

Modified: projects/ifnet/contrib/gperf/src/search.cc
==============================================================================
--- projects/ifnet/contrib/gperf/src/search.cc	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/contrib/gperf/src/search.cc	Sat Oct 26 18:03:36 2013	(r257177)
@@ -36,7 +36,10 @@
 /* ============================== Portability ============================== */
 
 /* Assume ISO C++ 'for' scoping rule.  */
-#define for if (0) ; else for
+/* This code is used to work around scoping issues with visual studio 6 from
+ * 1998.  Comment it out here to queisce numerous -Wdangling-else warnings
+ * from clang.
+#define for if (0) ; else for */
 
 /* Dynamically allocated array with dynamic extent:
 

Modified: projects/ifnet/contrib/llvm/tools/clang/tools/driver/driver.cpp
==============================================================================
--- projects/ifnet/contrib/llvm/tools/clang/tools/driver/driver.cpp	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/contrib/llvm/tools/clang/tools/driver/driver.cpp	Sat Oct 26 18:03:36 2013	(r257177)
@@ -284,11 +284,13 @@ static void ParseProgName(SmallVectorImp
   } suffixes [] = {
     { "clang", false, false },
     { "clang++", true, false },
+    { "clang-CC", true, false },
     { "clang-c++", true, false },
     { "clang-cc", false, false },
     { "clang-cpp", false, true },
     { "clang-g++", true, false },
     { "clang-gcc", false, false },
+    { "CC", true, false },
     { "cc", false, false },
     { "cpp", false, true },
     { "++", true, false },

Modified: projects/ifnet/contrib/subversion/subversion/libsvn_subr/opt.c
==============================================================================
--- projects/ifnet/contrib/subversion/subversion/libsvn_subr/opt.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/contrib/subversion/subversion/libsvn_subr/opt.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -1115,10 +1115,8 @@ svn_opt__print_version_info(const char *
     return svn_cmdline_printf(pool, "%s\n", SVN_VER_NUMBER);
 
   SVN_ERR(svn_cmdline_printf(pool, _("%s, version %s\n"
-                                     "   compiled %s, %s on %s\n\n"),
+                                     "   compiled on %s\n\n"),
                              pgm_name, SVN_VERSION,
-                             svn_version_ext_build_date(info),
-                             svn_version_ext_build_time(info),
                              svn_version_ext_build_host(info)));
   SVN_ERR(svn_cmdline_printf(pool, "%s\n", svn_version_ext_copyright(info)));
 

Modified: projects/ifnet/contrib/subversion/subversion/libsvn_subr/version.c
==============================================================================
--- projects/ifnet/contrib/subversion/subversion/libsvn_subr/version.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/contrib/subversion/subversion/libsvn_subr/version.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -125,8 +125,8 @@ svn_version_extended(svn_boolean_t verbo
 {
   svn_version_extended_t *info = apr_pcalloc(pool, sizeof(*info));
 
-  info->build_date = __DATE__;
-  info->build_time = __TIME__;
+  info->build_date = NULL;
+  info->build_time = NULL;
   info->build_host = SVN_BUILD_HOST;
   info->copyright = apr_pstrdup
     (pool, _("Copyright (C) 2013 The Apache Software Foundation.\n"

Modified: projects/ifnet/etc/Makefile
==============================================================================
--- projects/ifnet/etc/Makefile	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/etc/Makefile	Sat Oct 26 18:03:36 2013	(r257177)
@@ -139,6 +139,9 @@ BIN1+= regdomain.xml
 BIN2=	netstart pccard_ether rc.suspend rc.resume
 
 MTREE=	BSD.include.dist BSD.root.dist BSD.usr.dist BSD.var.dist
+.if ${MK_TESTS} != "no"
+MTREE+=	BSD.tests.dist
+.endif
 .if ${MK_SENDMAIL} != "no"
 MTREE+=	BSD.sendmail.dist
 .endif
@@ -221,7 +224,11 @@ distribution:
 	${_+_}cd ${.CURDIR}/defaults; ${MAKE} install
 	${_+_}cd ${.CURDIR}/devd; ${MAKE} install
 	${_+_}cd ${.CURDIR}/gss; ${MAKE} install
+	${_+_}cd ${.CURDIR}/keys; ${MAKE} install
 	${_+_}cd ${.CURDIR}/periodic; ${MAKE} install
+.if ${MK_PKGBOOTSTRAP} != "no"
+	${_+_}cd ${.CURDIR}/pkg; ${MAKE} install
+.endif
 	${_+_}cd ${.CURDIR}/rc.d; ${MAKE} install
 	${_+_}cd ${.CURDIR}/../gnu/usr.bin/send-pr; ${MAKE} etc-gnats-freefall
 	${_+_}cd ${.CURDIR}/../share/termcap; ${MAKE} etc-termcap
@@ -314,6 +321,9 @@ MTREES+=	mtree/BSD.debug.dist		/usr/lib
 .if ${MK_GROFF} != "no"
 MTREES+=	mtree/BSD.groff.dist		/usr
 .endif
+.if ${MK_TESTS} != "no"
+MTREES+=	mtree/BSD.tests.dist		${TESTSBASE}
+.endif
 .if ${MK_SENDMAIL} != "no"
 MTREES+=	mtree/BSD.sendmail.dist		/
 .endif

Modified: projects/ifnet/etc/mtree/BSD.root.dist
==============================================================================
--- projects/ifnet/etc/mtree/BSD.root.dist	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/etc/mtree/BSD.root.dist	Sat Oct 26 18:03:36 2013	(r257177)
@@ -34,6 +34,14 @@
         ..
         gss
         ..
+        keys
+            pkg
+                revoked
+                ..
+                trusted
+                ..
+            ..
+        ..
         mail
         ..
         mtree
@@ -52,6 +60,8 @@
             weekly
             ..
         ..
+        pkg
+        ..
         ppp
         ..
         rc.d

Copied: projects/ifnet/etc/mtree/BSD.tests.dist (from r257176, head/etc/mtree/BSD.tests.dist)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/ifnet/etc/mtree/BSD.tests.dist	Sat Oct 26 18:03:36 2013	(r257177, copy of r257176, head/etc/mtree/BSD.tests.dist)
@@ -0,0 +1,12 @@
+# $FreeBSD$
+#
+# Please see the file src/etc/mtree/README before making changes to this file.
+#
+
+/set type=dir uname=root gname=wheel mode=0755
+.
+    lib
+        libcrypt
+        ..
+    ..
+..

Modified: projects/ifnet/etc/mtree/BSD.usr.dist
==============================================================================
--- projects/ifnet/etc/mtree/BSD.usr.dist	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/etc/mtree/BSD.usr.dist	Sat Oct 26 18:03:36 2013	(r257177)
@@ -325,8 +325,6 @@
             ..
             ipfw
             ..
-            iscsi
-            ..
             jails
             ..
             kld
@@ -360,8 +358,6 @@
             mdoc
             ..
             netgraph
-                bluetooth
-                ..
             ..
             pc-sysinstall
             ..

Modified: projects/ifnet/lib/libcrypt/Makefile
==============================================================================
--- projects/ifnet/lib/libcrypt/Makefile	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/lib/libcrypt/Makefile	Sat Oct 26 18:03:36 2013	(r257177)
@@ -37,4 +37,9 @@ WARNS?=		2
 
 PRECIOUSLIB=
 
+.if ${MK_TESTS} != "no"
+SUBDIR+=	tests
+.endif
+
 .include <bsd.lib.mk>
+.include <bsd.subdir.mk>

Modified: projects/ifnet/lib/libcrypt/tests/Makefile
==============================================================================
--- projects/ifnet/lib/libcrypt/tests/Makefile	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/lib/libcrypt/tests/Makefile	Sat Oct 26 18:03:36 2013	(r257177)
@@ -2,6 +2,8 @@
 
 # exercise libcrypt
 
+TESTSDIR= ${TESTSBASE}/lib/libcrypt
+
 ATF_TESTS_C= crypt_tests
 
 CFLAGS+= -I${.CURDIR:H}

Modified: projects/ifnet/sbin/hastctl/hastctl.c
==============================================================================
--- projects/ifnet/sbin/hastctl/hastctl.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/hastctl/hastctl.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -355,6 +355,13 @@ control_list(struct nv *nv)
 		    (uintmax_t)nv_get_uint64(nv, "stat_write_error%u", ii),
 		    (uintmax_t)nv_get_uint64(nv, "stat_delete_error%u", ii),
 		    (uintmax_t)nv_get_uint64(nv, "stat_flush_error%u", ii));
+		printf("    queues: "
+		    "local: %ju, send: %ju, recv: %ju, done: %ju, idle: %ju\n",
+		    (uintmax_t)nv_get_uint64(nv, "local_queue_size%u", ii),
+		    (uintmax_t)nv_get_uint64(nv, "send_queue_size%u", ii),
+		    (uintmax_t)nv_get_uint64(nv, "recv_queue_size%u", ii),
+		    (uintmax_t)nv_get_uint64(nv, "done_queue_size%u", ii),
+		    (uintmax_t)nv_get_uint64(nv, "idle_queue_size%u", ii));
 	}
 	return (ret);
 }

Modified: projects/ifnet/sbin/hastd/control.c
==============================================================================
--- projects/ifnet/sbin/hastd/control.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/hastd/control.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -215,6 +215,16 @@ control_status_worker(struct hast_resour
 	    "stat_delete_error%u", no);
 	nv_add_uint64(nvout, nv_get_uint64(cnvin, "stat_flush_error"),
 	    "stat_flush_error%u", no);
+	nv_add_uint64(nvout, nv_get_uint64(cnvin, "idle_queue_size"),
+	    "idle_queue_size%u", no);
+	nv_add_uint64(nvout, nv_get_uint64(cnvin, "local_queue_size"),
+	    "local_queue_size%u", no);
+	nv_add_uint64(nvout, nv_get_uint64(cnvin, "send_queue_size"),
+	    "send_queue_size%u", no);
+	nv_add_uint64(nvout, nv_get_uint64(cnvin, "recv_queue_size"),
+	    "recv_queue_size%u", no);
+	nv_add_uint64(nvout, nv_get_uint64(cnvin, "done_queue_size"),
+	    "done_queue_size%u", no);
 end:
 	if (cnvin != NULL)
 		nv_free(cnvin);
@@ -478,6 +488,7 @@ ctrl_thread(void *arg)
 			nv_add_uint64(nvout, res->hr_stat_flush_error +
 			    res->hr_stat_activemap_flush_error,
 			    "stat_flush_error");
+			res->output_status_aux(nvout);
 			nv_add_int16(nvout, 0, "error");
 			break;
 		case CONTROL_RELOAD:

Modified: projects/ifnet/sbin/hastd/hast.h
==============================================================================
--- projects/ifnet/sbin/hastd/hast.h	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/hastd/hast.h	Sat Oct 26 18:03:36 2013	(r257177)
@@ -137,6 +137,8 @@ struct hastd_config {
 #define	HAST_CHECKSUM_CRC32	1
 #define	HAST_CHECKSUM_SHA256	2
 
+struct nv;
+
 /*
  * Structure that describes single resource.
  */
@@ -254,6 +256,9 @@ struct hast_resource {
 	/* Number of activemap flush errors. */
 	uint64_t	hr_stat_activemap_flush_error;
 
+	/* Function to output worker specific info on control status request. */
+	void	(*output_status_aux)(struct nv *);
+
 	/* Next resource. */
 	TAILQ_ENTRY(hast_resource) hr_next;
 };

Modified: projects/ifnet/sbin/hastd/primary.c
==============================================================================
--- projects/ifnet/sbin/hastd/primary.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/hastd/primary.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -108,6 +108,7 @@ struct hio {
  * until some in-progress requests are freed.
  */
 static TAILQ_HEAD(, hio) hio_free_list;
+static size_t hio_free_list_size;
 static pthread_mutex_t hio_free_list_lock;
 static pthread_cond_t hio_free_list_cond;
 /*
@@ -116,20 +117,26 @@ static pthread_cond_t hio_free_list_cond
  * responsible for managing his own send list.
  */
 static TAILQ_HEAD(, hio) *hio_send_list;
+static size_t *hio_send_list_size;
 static pthread_mutex_t *hio_send_list_lock;
 static pthread_cond_t *hio_send_list_cond;
+#define	hio_send_local_list_size	hio_send_list_size[0]
+#define	hio_send_remote_list_size	hio_send_list_size[1]
 /*
  * There is one recv list for every component, although local components don't
  * use recv lists as local requests are done synchronously.
  */
 static TAILQ_HEAD(, hio) *hio_recv_list;
+static size_t *hio_recv_list_size;
 static pthread_mutex_t *hio_recv_list_lock;
 static pthread_cond_t *hio_recv_list_cond;
+#define	hio_recv_remote_list_size	hio_recv_list_size[1]
 /*
  * Request is placed on done list by the slowest component (the one that
  * decreased hio_countdown from 1 to 0).
  */
 static TAILQ_HEAD(, hio) hio_done_list;
+static size_t hio_done_list_size;
 static pthread_mutex_t hio_done_list_lock;
 static pthread_cond_t hio_done_list_cond;
 /*
@@ -170,6 +177,7 @@ static pthread_mutex_t metadata_lock;
 	_wakeup = TAILQ_EMPTY(&hio_##name##_list[(ncomp)]);		\
 	TAILQ_INSERT_TAIL(&hio_##name##_list[(ncomp)], (hio),		\
 	    hio_next[(ncomp)]);						\
+	hio_##name##_list_size[(ncomp)]++;				\
 	mtx_unlock(&hio_##name##_list_lock[ncomp]);			\
 	if (_wakeup)							\
 		cv_broadcast(&hio_##name##_list_cond[(ncomp)]);		\
@@ -180,6 +188,7 @@ static pthread_mutex_t metadata_lock;
 	mtx_lock(&hio_##name##_list_lock);				\
 	_wakeup = TAILQ_EMPTY(&hio_##name##_list);			\
 	TAILQ_INSERT_TAIL(&hio_##name##_list, (hio), hio_##name##_next);\
+	hio_##name##_list_size++;					\
 	mtx_unlock(&hio_##name##_list_lock);				\
 	if (_wakeup)							\
 		cv_broadcast(&hio_##name##_list_cond);			\
@@ -196,6 +205,8 @@ static pthread_mutex_t metadata_lock;
 			_last = true;					\
 	}								\
 	if (hio != NULL) {						\
+		PJDLOG_ASSERT(hio_##name##_list_size[(ncomp)] != 0);	\
+		hio_##name##_list_size[(ncomp)]--;			\
 		TAILQ_REMOVE(&hio_##name##_list[(ncomp)], (hio),	\
 		    hio_next[(ncomp)]);					\
 	}								\
@@ -207,6 +218,8 @@ static pthread_mutex_t metadata_lock;
 		cv_wait(&hio_##name##_list_cond,			\
 		    &hio_##name##_list_lock);				\
 	}								\
+	PJDLOG_ASSERT(hio_##name##_list_size != 0);			\
+	hio_##name##_list_size--;					\
 	TAILQ_REMOVE(&hio_##name##_list, (hio), hio_##name##_next);	\
 	mtx_unlock(&hio_##name##_list_lock);				\
 } while (0)
@@ -239,6 +252,22 @@ static void *sync_thread(void *arg);
 static void *guard_thread(void *arg);
 
 static void
+output_status_aux(struct nv *nvout)
+{
+
+	nv_add_uint64(nvout, (uint64_t)hio_free_list_size,
+	    "idle_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_send_local_list_size,
+	    "local_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_send_remote_list_size,
+	    "send_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_recv_remote_list_size,
+	    "recv_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_done_list_size,
+	    "done_queue_size");
+}
+
+static void
 cleanup(struct hast_resource *res)
 {
 	int rerrno;
@@ -355,6 +384,12 @@ init_environment(struct hast_resource *r
 		    "Unable to allocate %zu bytes of memory for send lists.",
 		    sizeof(hio_send_list[0]) * ncomps);
 	}
+	hio_send_list_size = malloc(sizeof(hio_send_list_size[0]) * ncomps);
+	if (hio_send_list_size == NULL) {
+		primary_exitx(EX_TEMPFAIL,
+		    "Unable to allocate %zu bytes of memory for send list counters.",
+		    sizeof(hio_send_list_size[0]) * ncomps);
+	}
 	hio_send_list_lock = malloc(sizeof(hio_send_list_lock[0]) * ncomps);
 	if (hio_send_list_lock == NULL) {
 		primary_exitx(EX_TEMPFAIL,
@@ -373,6 +408,12 @@ init_environment(struct hast_resource *r
 		    "Unable to allocate %zu bytes of memory for recv lists.",
 		    sizeof(hio_recv_list[0]) * ncomps);
 	}
+	hio_recv_list_size = malloc(sizeof(hio_recv_list_size[0]) * ncomps);
+	if (hio_recv_list_size == NULL) {
+		primary_exitx(EX_TEMPFAIL,
+		    "Unable to allocate %zu bytes of memory for recv list counters.",
+		    sizeof(hio_recv_list_size[0]) * ncomps);
+	}
 	hio_recv_list_lock = malloc(sizeof(hio_recv_list_lock[0]) * ncomps);
 	if (hio_recv_list_lock == NULL) {
 		primary_exitx(EX_TEMPFAIL,
@@ -393,16 +434,18 @@ init_environment(struct hast_resource *r
 	}
 
 	/*
-	 * Initialize lists, their locks and theirs condition variables.
+	 * Initialize lists, their counters, locks and condition variables.
 	 */
 	TAILQ_INIT(&hio_free_list);
 	mtx_init(&hio_free_list_lock);
 	cv_init(&hio_free_list_cond);
 	for (ii = 0; ii < HAST_NCOMPONENTS; ii++) {
 		TAILQ_INIT(&hio_send_list[ii]);
+		hio_send_list_size[ii] = 0;
 		mtx_init(&hio_send_list_lock[ii]);
 		cv_init(&hio_send_list_cond[ii]);
 		TAILQ_INIT(&hio_recv_list[ii]);
+		hio_recv_list_size[ii] = 0;
 		mtx_init(&hio_recv_list_lock[ii]);
 		cv_init(&hio_recv_list_cond[ii]);
 		rw_init(&hio_remote_lock[ii]);
@@ -445,6 +488,7 @@ init_environment(struct hast_resource *r
 		hio->hio_ggio.gctl_length = MAXPHYS;
 		hio->hio_ggio.gctl_error = 0;
 		TAILQ_INSERT_HEAD(&hio_free_list, hio, hio_free_next);
+		hio_free_list_size++;
 	}
 }
 
@@ -781,6 +825,7 @@ init_remote(struct hast_resource *res, s
 			free(map);
 			goto close;
 		}
+		mtx_lock(&res->hr_amp_lock);
 		/*
 		 * Merge local and remote bitmaps.
 		 */
@@ -790,7 +835,6 @@ init_remote(struct hast_resource *res, s
 		 * Now that we merged bitmaps from both nodes, flush it to the
 		 * disk before we start to synchronize.
 		 */
-		mtx_lock(&res->hr_amp_lock);
 		(void)hast_activemap_flush(res);
 	}
 	nv_free(nvin);
@@ -963,6 +1007,7 @@ hastd_primary(struct hast_resource *res)
 	}
 
 	gres = res;
+	res->output_status_aux = output_status_aux;
 	mode = pjdlog_mode_get();
 	debuglevel = pjdlog_debug_get();
 
@@ -1617,6 +1662,7 @@ remote_send_thread(void *arg)
 		mtx_lock(&hio_recv_list_lock[ncomp]);
 		wakeup = TAILQ_EMPTY(&hio_recv_list[ncomp]);
 		TAILQ_INSERT_TAIL(&hio_recv_list[ncomp], hio, hio_next[ncomp]);
+		hio_recv_list_size[ncomp]++;
 		mtx_unlock(&hio_recv_list_lock[ncomp]);
 		if (hast_proto_send(res, res->hr_remoteout, nv, data,
 		    data != NULL ? length : 0) == -1) {
@@ -1635,6 +1681,7 @@ remote_send_thread(void *arg)
 			mtx_lock(&hio_recv_list_lock[ncomp]);
 			TAILQ_REMOVE(&hio_recv_list[ncomp], hio,
 			    hio_next[ncomp]);
+			hio_recv_list_size[ncomp]--;
 			mtx_unlock(&hio_recv_list_lock[ncomp]);
 			goto done_queue;
 		}
@@ -1719,6 +1766,7 @@ remote_recv_thread(void *arg)
 			PJDLOG_ASSERT(hio != NULL);
 			TAILQ_REMOVE(&hio_recv_list[ncomp], hio,
 			    hio_next[ncomp]);
+			hio_recv_list_size[ncomp]--;
 			mtx_unlock(&hio_recv_list_lock[ncomp]);
 			goto done_queue;
 		}
@@ -1742,6 +1790,7 @@ remote_recv_thread(void *arg)
 			if (hio->hio_ggio.gctl_seq == seq) {
 				TAILQ_REMOVE(&hio_recv_list[ncomp], hio,
 				    hio_next[ncomp]);
+				hio_recv_list_size[ncomp]--;
 				break;
 			}
 		}
@@ -1838,6 +1887,7 @@ done_queue:
 					mtx_lock(&hio_recv_list_lock[ncomp]);
 					TAILQ_INSERT_TAIL(&hio_recv_list[ncomp],
 					    hio, hio_next[ncomp]);
+					hio_recv_list_size[ncomp]++;
 					mtx_unlock(&hio_recv_list_lock[ncomp]);
 				} else {
 					/*
@@ -1860,6 +1910,7 @@ done_queue:
 				mtx_lock(&hio_recv_list_lock[ncomp]);
 				TAILQ_INSERT_TAIL(&hio_recv_list[ncomp], hio,
 				    hio_next[ncomp]);
+				hio_recv_list_size[ncomp]++;
 				mtx_unlock(&hio_recv_list_lock[ncomp]);
 				continue;
 			default:

Modified: projects/ifnet/sbin/hastd/secondary.c
==============================================================================
--- projects/ifnet/sbin/hastd/secondary.c	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/hastd/secondary.c	Sat Oct 26 18:03:36 2013	(r257177)
@@ -82,18 +82,21 @@ static struct hast_resource *gres;
  * until some in-progress requests are freed.
  */
 static TAILQ_HEAD(, hio) hio_free_list;
+static size_t hio_free_list_size;
 static pthread_mutex_t hio_free_list_lock;
 static pthread_cond_t hio_free_list_cond;
 /*
  * Disk thread (the one that does I/O requests) takes requests from this list.
  */
 static TAILQ_HEAD(, hio) hio_disk_list;
+static size_t hio_disk_list_size;
 static pthread_mutex_t hio_disk_list_lock;
 static pthread_cond_t hio_disk_list_cond;
 /*
  * Thread that sends requests back to primary takes requests from this list.
  */
 static TAILQ_HEAD(, hio) hio_send_list;
+static size_t hio_send_list_size;
 static pthread_mutex_t hio_send_list_lock;
 static pthread_cond_t hio_send_list_cond;
 
@@ -112,6 +115,7 @@ static void *send_thread(void *arg);
 	mtx_lock(&hio_##name##_list_lock);				\
 	_wakeup = TAILQ_EMPTY(&hio_##name##_list);			\
 	TAILQ_INSERT_TAIL(&hio_##name##_list, (hio), hio_next);		\
+	hio_##name##_list_size++;					\
 	mtx_unlock(&hio_##name##_list_lock);				\
 	if (_wakeup)							\
 		cv_broadcast(&hio_##name##_list_cond);			\
@@ -122,11 +126,22 @@ static void *send_thread(void *arg);
 		cv_wait(&hio_##name##_list_cond,			\
 		    &hio_##name##_list_lock);				\
 	}								\
+	PJDLOG_ASSERT(hio_##name##_list_size != 0);			\
+	hio_##name##_list_size--;					\
 	TAILQ_REMOVE(&hio_##name##_list, (hio), hio_next);		\
 	mtx_unlock(&hio_##name##_list_lock);				\
 } while (0)
 
 static void
+output_status_aux(struct nv *nvout)
+{
+
+	nv_add_uint64(nvout, (uint64_t)hio_free_list_size, "idle_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_disk_list_size, "local_queue_size");
+	nv_add_uint64(nvout, (uint64_t)hio_send_list_size, "send_queue_size");
+}
+
+static void
 hio_clear(struct hio *hio)
 {
 
@@ -190,6 +205,7 @@ init_environment(void)
 		}
 		hio_clear(hio);
 		TAILQ_INSERT_HEAD(&hio_free_list, hio, hio_next);
+		hio_free_list_size++;
 	}
 }
 
@@ -441,6 +457,7 @@ hastd_secondary(struct hast_resource *re
 	}
 
 	gres = res;
+	res->output_status_aux = output_status_aux;
 	mode = pjdlog_mode_get();
 	debuglevel = pjdlog_debug_get();
 

Modified: projects/ifnet/sbin/mdconfig/mdconfig.8
==============================================================================
--- projects/ifnet/sbin/mdconfig/mdconfig.8	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/sbin/mdconfig/mdconfig.8	Sat Oct 26 18:03:36 2013	(r257177)
@@ -89,6 +89,9 @@ Options indicate an action to be perform
 Attach a memory disk.
 This will configure and attach a memory disk with the
 parameters specified and attach it to the system.
+If the
+.Fl u Ar unit
+option is not provided, the newly created device name will be printed on stdout.
 .It Fl d
 Detach a memory disk from the system and release all resources.
 .It Fl r
@@ -209,9 +212,12 @@ that might adversely affect the system.
 Enable/disable readonly mode.
 .El
 .It Fl u Ar unit
-Request a specific unit number for the
+Request a specific unit number or device name for the
 .Xr md 4
 device instead of automatic allocation.
+If a device name is specified, it must be start with
+.Dq md
+followed by the unit number.
 .El
 .Pp
 The last form,
@@ -237,19 +243,19 @@ with
 .Pa /tmp/boot.flp
 as backing storage:
 .Pp
-.Dl mdconfig -a -t vnode -f /tmp/boot.flp -u 4
+.Dl mdconfig -a -t vnode -f /tmp/boot.flp -u md4
 .Pp
 Detach and free all resources used by
 .Pa /dev/md4 :
 .Pp
-.Dl mdconfig -d -u 4
+.Dl mdconfig -d -u md4
 .Pp
 Create a 128MByte swap backed disk, initialize an
 .Xr ffs 7
 file system on it, and mount it on
 .Pa /tmp :
 .Bd -literal -offset indent
-mdconfig -a -t swap -s 128M -u 10
+mdconfig -a -t swap -s 128M -u md10
 newfs -U /dev/md10
 mount /dev/md10 /tmp
 chmod 1777 /tmp
@@ -263,7 +269,7 @@ are implied
 .Pc :
 .Bd -literal -offset indent
 dd if=/dev/zero of=somebackingfile bs=1k count=5k
-mdconfig -f somebackingfile -u 0
+mdconfig -f somebackingfile -u md0
 bsdlabel -w md0 auto
 newfs md0c
 mount /dev/md0c /mnt
@@ -290,7 +296,7 @@ is used to skip over the header informat
 .Pa md1.nop
 to the start of the filesystem in the image.
 .Bd -literal -offset indent
-mdconfig -f diskimage.img -u 1
+mdconfig -f diskimage.img -u md1
 gnop create -o 512K md1
 mount /dev/md1.nop /mnt
 .Ed

Modified: projects/ifnet/share/man/man5/src.conf.5
==============================================================================
--- projects/ifnet/share/man/man5/src.conf.5	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/share/man/man5/src.conf.5	Sat Oct 26 18:03:36 2013	(r257177)
@@ -1,7 +1,7 @@
 .\" DO NOT EDIT-- this file is automatically generated.
 .\" from FreeBSD: head/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des
 .\" $FreeBSD$
-.Dd October 6, 2013
+.Dd October 25, 2013
 .Dt SRC.CONF 5
 .Os
 .Sh NAME
@@ -208,10 +208,6 @@ When set, it also enforces the following
 .Va WITHOUT_CLANG_EXTRAS
 .It
 .Va WITHOUT_CLANG_FULL
-.It
-.Va WITHOUT_CLANG_IS_CC
-.It
-.Va WITHOUT_LLDB
 .El
 .It Va WITH_CLANG
 .\" from FreeBSD: head/tools/build/options/WITH_CLANG 221730 2011-05-10 11:14:40Z ru
@@ -323,11 +319,7 @@ When set, it also enforces the following
 .It
 .Va WITHOUT_CLANG_FULL
 .It
-.Va WITHOUT_CLANG_IS_CC
-.It
 .Va WITHOUT_GROFF
-.It
-.Va WITHOUT_LLDB
 .El
 .It Va WITH_DEBUG_FILES
 .\" from FreeBSD: head/tools/build/options/WITH_DEBUG_FILES 251512 2013-06-07 21:40:02Z emaste
@@ -772,14 +764,14 @@ Set to not build NLS catalogs.
 .\" from FreeBSD: head/tools/build/options/WITHOUT_NLS_CATALOGS 156932 2006-03-21 07:50:50Z ru
 Set to not build NLS catalog support for
 .Xr csh 1 .
-.It Va WITH_NMTREE
-.\" from FreeBSD: head/tools/build/options/WITH_NMTREE 245435 2013-01-14 20:38:32Z brooks
+.It Va WITHOUT_NMTREE
+.\" from FreeBSD: head/tools/build/options/WITHOUT_NMTREE 257138 2013-10-25 22:45:18Z brooks
 Set to install
-.Xr nmtree 8
+.Xr fmtree 8
 as
 .Xr mtree 8 .
 By default
-.Xr fmtree 8
+.Xr nmtree 8
 is installed as
 .Xr mtree 8 .
 .It Va WITHOUT_NS_CACHING
@@ -910,7 +902,7 @@ This includes
 .Xr rsh 1 ,
 etc.
 .It Va WITHOUT_RCS
-.\" from FreeBSD: head/tools/build/options/WITHOUT_RCS 156932 2006-03-21 07:50:50Z ru
+.\" from FreeBSD: head/tools/build/options/WITHOUT_RCS 256198 2013-10-09 17:07:20Z gjb
 Set to not build
 .Xr rcs 1
 and related utilities.
@@ -1030,13 +1022,9 @@ When set, it also enforces the following
 .It
 .Va WITHOUT_CLANG_FULL
 .It
-.Va WITHOUT_CLANG_IS_CC
-.It
 .Va WITHOUT_GCC
 .It
 .Va WITHOUT_GDB
-.It
-.Va WITHOUT_LLDB
 .El
 .It Va WITHOUT_UNBOUND
 .\" from FreeBSD: head/tools/build/options/WITHOUT_UNBOUND 255597 2013-09-15 14:51:23Z des

Modified: projects/ifnet/share/man/man7/Makefile
==============================================================================
--- projects/ifnet/share/man/man7/Makefile	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/share/man/man7/Makefile	Sat Oct 26 18:03:36 2013	(r257177)
@@ -29,6 +29,10 @@ MAN=	adding_user.7 \
 	sticky.7 \
 	tuning.7
 
+.if ${MK_TESTS} != "no"
+MAN+=	tests.7
+.endif
+
 MLINKS=	intro.7 miscellaneous.7
 MLINKS+= security.7 securelevel.7
 MLINKS+= c99.7 c.7

Modified: projects/ifnet/share/man/man7/hier.7
==============================================================================
--- projects/ifnet/share/man/man7/hier.7	Sat Oct 26 17:58:36 2013	(r257176)
+++ projects/ifnet/share/man/man7/hier.7	Sat Oct 26 18:03:36 2013	(r257177)
@@ -32,7 +32,7 @@
 .\"	@(#)hier.7	8.1 (Berkeley) 6/5/93
 .\" $FreeBSD$
 .\"
-.Dd January 21, 2010
+.Dd October 23, 2013
 .Dt HIER 7
 .Os
 .Sh NAME
@@ -94,6 +94,15 @@ bluetooth configuration files
 gnats configuration files;
 see
 .Xr send-pr 1
+.It Pa keys/
+known trusted and revoked keys.
+.Pp
+.Bl -tag -width ".Pa keys/pkg/" -compact
+.It Pa keys/pkg/
+fingerprints for
+.Xr pkg 8
+.El
+.Pp
 .It Pa localtime
 local timezone information;
 see
@@ -692,6 +701,12 @@ source code for files in
 source code for files in
 .Pa /usr/sbin
 .El
+.Pp
+.It Pa tests/
+The
+.Fx
+test suite.
+See tests(7) for more details.
 .El
 .It Pa /var/
 multi-purpose log, temporary, transient, and spool files
@@ -720,6 +735,14 @@ directory containing output spool files
 .Pp
 .It Pa backups/
 miscellaneous backup files
+.It Pa cache/
+miscellaneous cached files
+.Bl -tag -width ".Pa pkg/" -compact
+.It Pa pkg/
+cached packages for
+.Xr pkg 8
+.El
+.Pp
 .It Pa crash/
 default directory to store kernel crash dumps; see
 .Xr crash 8

Copied: projects/ifnet/share/man/man7/tests.7 (from r257176, head/share/man/man7/tests.7)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/ifnet/share/man/man7/tests.7	Sat Oct 26 18:03:36 2013	(r257177, copy of r257176, head/share/man/man7/tests.7)
@@ -0,0 +1,199 @@
+.\"	$FreeBSD$
+.\"	$NetBSD: tests.kyua.7,v 1.2 2013/07/20 21:39:59 wiz Exp $
+.\"
+.\" Copyright (c) 2010 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND
+.\" CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY
+.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+.\" GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+.\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+.\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd October 19, 2013
+.Dt TESTS 7
+.Os
+.Sh NAME
+.Nm tests
+.Nd introduction to the FreeBSD test suite
+.Sh DESCRIPTION
+The
+.Fx
+test suite provides a collection of automated tests for two major purposes.
+On the one hand, the test suite aids
+.Em developers
+in catching bugs and regressions in the code when they performing modifications
+to the source tree.
+On the other hand, the test suite allows
+.Em end users
+(and, in particular, system administrators) to verify that fresh installations
+of the
+.Fx
+operating system behave correctly in their hardware platform and also to ensure
+that the system does not suffer from regressions during regular system
+operation and maintenance.
+.Pp
+The
+.Fx
+test suite is installed under the
+.Pa /usr/tests
+hierarchy.
+.Pp
+This manual page describes how to execute the test suite and how to configure
+some of its optional features.
+.Ss When to run the tests?
+Before diving into the details of how to run the test suite, here are some
+scenarios in which you should be running them:
+.Bl -bullet -offset indent
+.It
+After a fresh installation of
+.Fx
+to ensure that the system works correctly on your hardware platform.
+.It
+After an upgrade of
+.Fx
+to a different version to ensure that the new code works well on your
+hardware platform and that the upgrade did not introduce regressions in your
+configuration.
+.It
+After performing changes to the source tree to catch any bugs and/or regressions
+introduced by the modifications.
+.It
+Periodically, maybe from a
+.Xr cron 8
+job, to ensure that any changes to the system (such as the installation of
+third-party packages or manual modifications to configuration files) do not
+introduce unexpected failures.
+.El
+.Ss Running the tests
+First of all, you will need to install the
+.Sq ports/devel/kyua
+package.
+.Pp
+Use the following command to run the whole test suite:
+.Bd -literal -offset indent
+$ kyua test -k /usr/tests/Kyuafile
+.Ed
+.Pp
+The above will go through all test programs in
+.Pa /usr/tests
+recursively, execute them, store their results and debugging data in Kyua
+database (by default in
+.Pa ~/.kyua/store.db ) ,
+and print a summary of the results.
+This summary includes a brief count of all total tests run and how many of
+them failed.
+.Pp
+It is possible to restrict which tests to run by providing their names in
+the command line.
+For example, this would execute the tests for the
+.Xr cp 1
+and
+.Xr cut 1
+utilities:
+.Bd -literal -offset indent
+$ kyua test -k /usr/tests/Kyuafile bin/cp usr.bin/cut
+.Ed
+.Ss Obtaining reports of the tests execution
+Additional information of the results of the execution can be later extracted
+from the database by using the various reporting commands of Kyua.
+For example, the following would extract a plain-text report of the executed
+tests and show which ones failed:
+.Bd -literal -offset indent
+$ kyua report
+.Ed
+.Pp
+This other example would generate an HTML report ready to be published on a
+web server:
+.Bd -literal -offset indent
+$ kyua report-html --output ~/public_html/tests
+.Ed
+.Pp
+For further details on the command-line interface of Kyua, please refer
+to its manual page
+.Xr kyua 1 .
+.\".Ss Configuring the tests
+.\"Some test cases in the
+.\".Fx
+.\"test suite require the administrator to manually set up some configuration
+.\"properties before they can run.
+.\"Unless these properties are defined, the tests that require them will be marked
+.\"as skipped and thus they will not be really executed.
+.\".Pp
+.\"Test suites are configured by defining the values to their configuration
+.\"variables in
+.\".Pa /usr/local/etc/kyua/kyua.conf .
+.\"The format of this file is detailed in
+.\".Xr kyua.conf 5 .
+.\".Pp
+.\"The following configuration variables are available in the
+.\".Fx
+.\"test suite:
+.\".Bl -tag
+.\".It NONE REGISTERED YET
+.\"TBD.
+.Ss What to do if something fails?
+If there is
+.Em any failure
+during the execution of the test suite, please considering reporting it to the

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-projects mailing list