svn commit: r255113 - in projects/bhyve_npt_pmap: . bin/ps bin/sh cddl/contrib/opensolaris/cmd/zpool cddl/contrib/opensolaris/common/ctf cddl/contrib/opensolaris/lib/libctf/common cddl/contrib/open...

Neel Natu neel at FreeBSD.org
Sun Sep 1 07:09:47 UTC 2013


Author: neel
Date: Sun Sep  1 07:09:42 2013
New Revision: 255113
URL: http://svnweb.freebsd.org/changeset/base/255113

Log:
  IFC @255028

Added:
  projects/bhyve_npt_pmap/cddl/lib/libdtrace/ip.d
     - copied unchanged from r255028, head/cddl/lib/libdtrace/ip.d
  projects/bhyve_npt_pmap/cddl/lib/libdtrace/tcp.d
     - copied unchanged from r255028, head/cddl/lib/libdtrace/tcp.d
  projects/bhyve_npt_pmap/cddl/lib/libdtrace/udp.d
     - copied unchanged from r255028, head/cddl/lib/libdtrace/udp.d
  projects/bhyve_npt_pmap/contrib/llvm/tools/lldb/
     - copied from r255028, head/contrib/llvm/tools/lldb/
  projects/bhyve_npt_pmap/etc/periodic/monthly/450.status-security
     - copied unchanged from r255028, head/etc/periodic/monthly/450.status-security
  projects/bhyve_npt_pmap/etc/periodic/weekly/450.status-security
     - copied unchanged from r255028, head/etc/periodic/weekly/450.status-security
  projects/bhyve_npt_pmap/share/man/man4/procdesc.4
     - copied unchanged from r255028, head/share/man/man4/procdesc.4
  projects/bhyve_npt_pmap/share/man/man4/vmx.4
     - copied unchanged from r255028, head/share/man/man4/vmx.4
  projects/bhyve_npt_pmap/sys/contrib/dev/drm2/
     - copied from r255028, head/sys/contrib/dev/drm2/
  projects/bhyve_npt_pmap/sys/contrib/dev/iwn/iwlwifi-2000-18.168.6.1.fw.uu
     - copied unchanged from r255028, head/sys/contrib/dev/iwn/iwlwifi-2000-18.168.6.1.fw.uu
  projects/bhyve_npt_pmap/sys/dev/drm2/ati_pcigart.c
     - copied unchanged from r255028, head/sys/dev/drm2/ati_pcigart.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_buffer.c
     - copied unchanged from r255028, head/sys/dev/drm2/drm_buffer.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_buffer.h
     - copied unchanged from r255028, head/sys/dev/drm2/drm_buffer.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_core.h
     - copied unchanged from r255028, head/sys/dev/drm2/drm_core.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_dp_helper.c
     - copied unchanged from r255028, head/sys/dev/drm2/drm_dp_helper.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_fixed.h
     - copied unchanged from r255028, head/sys/dev/drm2/drm_fixed.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_os_freebsd.h
     - copied unchanged from r255028, head/sys/dev/drm2/drm_os_freebsd.h
  projects/bhyve_npt_pmap/sys/dev/drm2/radeon/
     - copied from r255028, head/sys/dev/drm2/radeon/
  projects/bhyve_npt_pmap/sys/dev/vmware/
     - copied from r255028, head/sys/dev/vmware/
  projects/bhyve_npt_pmap/sys/modules/drm2/radeonkms/
     - copied from r255028, head/sys/modules/drm2/radeonkms/
  projects/bhyve_npt_pmap/sys/modules/drm2/radeonkmsfw/
     - copied from r255028, head/sys/modules/drm2/radeonkmsfw/
  projects/bhyve_npt_pmap/sys/modules/iwnfw/iwn2000/
     - copied from r255028, head/sys/modules/iwnfw/iwn2000/
  projects/bhyve_npt_pmap/sys/modules/vmware/
     - copied from r255028, head/sys/modules/vmware/
  projects/bhyve_npt_pmap/sys/netinet/in_kdtrace.c
     - copied unchanged from r255028, head/sys/netinet/in_kdtrace.c
  projects/bhyve_npt_pmap/sys/netinet/in_kdtrace.h
     - copied unchanged from r255028, head/sys/netinet/in_kdtrace.h
  projects/bhyve_npt_pmap/tools/build/options/WITHOUT_ICONV
     - copied unchanged from r255028, head/tools/build/options/WITHOUT_ICONV
  projects/bhyve_npt_pmap/tools/build/options/WITH_LIBICONV_COMPAT
     - copied unchanged from r255028, head/tools/build/options/WITH_LIBICONV_COMPAT
  projects/bhyve_npt_pmap/tools/build/options/WITH_USB_GADGET_EXAMPLES
     - copied unchanged from r255028, head/tools/build/options/WITH_USB_GADGET_EXAMPLES
  projects/bhyve_npt_pmap/tools/regression/bin/sh/builtins/alias4.0
     - copied unchanged from r255028, head/tools/regression/bin/sh/builtins/alias4.0
  projects/bhyve_npt_pmap/tools/regression/bin/sh/expansion/arith13.0
     - copied unchanged from r255028, head/tools/regression/bin/sh/expansion/arith13.0
  projects/bhyve_npt_pmap/tools/regression/bin/sh/parser/empty-cmd1.0
     - copied unchanged from r255028, head/tools/regression/bin/sh/parser/empty-cmd1.0
  projects/bhyve_npt_pmap/tools/regression/file/fcntlflags/
     - copied from r255028, head/tools/regression/file/fcntlflags/
  projects/bhyve_npt_pmap/tools/tools/drm/
     - copied from r255028, head/tools/tools/drm/
Deleted:
  projects/bhyve_npt_pmap/tools/build/options/WITH_BSDCONFIG
  projects/bhyve_npt_pmap/tools/build/options/WITH_GNU_PATCH
  projects/bhyve_npt_pmap/tools/build/options/WITH_ICONV
Modified:
  projects/bhyve_npt_pmap/ObsoleteFiles.inc
  projects/bhyve_npt_pmap/UPDATING
  projects/bhyve_npt_pmap/bin/ps/keyword.c
  projects/bhyve_npt_pmap/bin/ps/ps.1
  projects/bhyve_npt_pmap/bin/sh/alias.c
  projects/bhyve_npt_pmap/bin/sh/arith_yylex.c
  projects/bhyve_npt_pmap/bin/sh/jobs.c
  projects/bhyve_npt_pmap/bin/sh/parser.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_create.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_error.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_impl.h
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_open.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libctf/common/ctf_lib.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
  projects/bhyve_npt_pmap/cddl/lib/libdtrace/Makefile
  projects/bhyve_npt_pmap/cddl/lib/libzpool/Makefile
  projects/bhyve_npt_pmap/cddl/usr.bin/ztest/Makefile
  projects/bhyve_npt_pmap/cddl/usr.sbin/zdb/Makefile
  projects/bhyve_npt_pmap/contrib/llvm/include/llvm/MC/MCInstPrinter.h
  projects/bhyve_npt_pmap/contrib/llvm/lib/MC/MCInstPrinter.cpp
  projects/bhyve_npt_pmap/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp
  projects/bhyve_npt_pmap/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp
  projects/bhyve_npt_pmap/contrib/pam_modules/pam_passwdqc/pam_passwdqc.c
  projects/bhyve_npt_pmap/etc/defaults/periodic.conf
  projects/bhyve_npt_pmap/etc/network.subr
  projects/bhyve_npt_pmap/etc/periodic/monthly/Makefile
  projects/bhyve_npt_pmap/etc/periodic/security/100.chksetuid
  projects/bhyve_npt_pmap/etc/periodic/security/110.neggrpperm
  projects/bhyve_npt_pmap/etc/periodic/security/200.chkmounts
  projects/bhyve_npt_pmap/etc/periodic/security/300.chkuid0
  projects/bhyve_npt_pmap/etc/periodic/security/400.passwdless
  projects/bhyve_npt_pmap/etc/periodic/security/410.logincheck
  projects/bhyve_npt_pmap/etc/periodic/security/460.chkportsum
  projects/bhyve_npt_pmap/etc/periodic/security/500.ipfwdenied
  projects/bhyve_npt_pmap/etc/periodic/security/510.ipfdenied
  projects/bhyve_npt_pmap/etc/periodic/security/520.pfdenied
  projects/bhyve_npt_pmap/etc/periodic/security/550.ipfwlimit
  projects/bhyve_npt_pmap/etc/periodic/security/610.ipf6denied
  projects/bhyve_npt_pmap/etc/periodic/security/700.kernelmsg
  projects/bhyve_npt_pmap/etc/periodic/security/800.loginfail
  projects/bhyve_npt_pmap/etc/periodic/security/900.tcpwrap
  projects/bhyve_npt_pmap/etc/periodic/security/security.functions
  projects/bhyve_npt_pmap/etc/periodic/weekly/Makefile
  projects/bhyve_npt_pmap/etc/rc.d/savecore
  projects/bhyve_npt_pmap/gnu/usr.bin/patch/Makefile
  projects/bhyve_npt_pmap/lib/libc/gen/wordexp.c
  projects/bhyve_npt_pmap/lib/libc/sys/pdfork.2
  projects/bhyve_npt_pmap/lib/libpam/modules/pam_passwdqc/Makefile
  projects/bhyve_npt_pmap/lib/libutil/login_auth.c
  projects/bhyve_npt_pmap/lib/libutil/login_cap.c
  projects/bhyve_npt_pmap/lib/libutil/pidfile.c
  projects/bhyve_npt_pmap/lib/libutil/quotafile.c
  projects/bhyve_npt_pmap/lib/libutil/uucplock.c
  projects/bhyve_npt_pmap/lib/msun/src/s_erf.c
  projects/bhyve_npt_pmap/lib/msun/src/s_erff.c
  projects/bhyve_npt_pmap/release/scripts/mm-mtree.sh
  projects/bhyve_npt_pmap/sbin/camcontrol/camcontrol.c
  projects/bhyve_npt_pmap/share/man/man4/Makefile
  projects/bhyve_npt_pmap/share/man/man4/capsicum.4
  projects/bhyve_npt_pmap/share/man/man4/cd.4
  projects/bhyve_npt_pmap/share/man/man4/sa.4
  projects/bhyve_npt_pmap/share/man/man4/sysmouse.4
  projects/bhyve_npt_pmap/share/man/man5/periodic.conf.5
  projects/bhyve_npt_pmap/share/man/man5/src.conf.5
  projects/bhyve_npt_pmap/share/man/man9/EVENTHANDLER.9
  projects/bhyve_npt_pmap/share/man/man9/Makefile
  projects/bhyve_npt_pmap/share/man/man9/pfil.9
  projects/bhyve_npt_pmap/share/man/man9/timeout.9
  projects/bhyve_npt_pmap/share/misc/committers-src.dot
  projects/bhyve_npt_pmap/share/mk/bsd.own.mk
  projects/bhyve_npt_pmap/share/mk/sys.mk
  projects/bhyve_npt_pmap/sys/amd64/amd64/pmap.c
  projects/bhyve_npt_pmap/sys/amd64/vmm/vmm_instruction_emul.c
  projects/bhyve_npt_pmap/sys/arm/arm/irq_dispatch.S
  projects/bhyve_npt_pmap/sys/arm/arm/pmap-v6.c
  projects/bhyve_npt_pmap/sys/arm/arm/pmap.c
  projects/bhyve_npt_pmap/sys/arm/arm/swtch.S
  projects/bhyve_npt_pmap/sys/arm/conf/VERSATILEPB
  projects/bhyve_npt_pmap/sys/arm/include/param.h
  projects/bhyve_npt_pmap/sys/arm/include/pmap.h
  projects/bhyve_npt_pmap/sys/arm/include/pte.h
  projects/bhyve_npt_pmap/sys/arm/include/vmparam.h
  projects/bhyve_npt_pmap/sys/boot/forth/beastie.4th
  projects/bhyve_npt_pmap/sys/boot/forth/version.4th
  projects/bhyve_npt_pmap/sys/boot/forth/version.4th.8
  projects/bhyve_npt_pmap/sys/boot/i386/libi386/biosacpi.c
  projects/bhyve_npt_pmap/sys/cam/cam_xpt.c
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl.c
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl.h
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl_backend.h
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl_backend_block.c
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl_backend_ramdisk.c
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl_frontend.h
  projects/bhyve_npt_pmap/sys/cam/ctl/ctl_io.h
  projects/bhyve_npt_pmap/sys/cam/scsi/scsi_all.c
  projects/bhyve_npt_pmap/sys/cam/scsi/scsi_sa.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/uts/common/sys/ctf_api.h
  projects/bhyve_npt_pmap/sys/cddl/dev/dtrace/dtrace_load.c
  projects/bhyve_npt_pmap/sys/cddl/dev/dtrace/dtrace_unload.c
  projects/bhyve_npt_pmap/sys/cddl/dev/sdt/sdt.c
  projects/bhyve_npt_pmap/sys/compat/freebsd32/freebsd32.h
  projects/bhyve_npt_pmap/sys/compat/ndis/kern_ndis.c
  projects/bhyve_npt_pmap/sys/compat/ndis/ndis_var.h
  projects/bhyve_npt_pmap/sys/conf/Makefile.amd64
  projects/bhyve_npt_pmap/sys/conf/files
  projects/bhyve_npt_pmap/sys/conf/files.amd64
  projects/bhyve_npt_pmap/sys/conf/files.i386
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/acpica_prep.sh
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/changes.txt   (contents, props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/common/adisasm.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/common/adwalk.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/common/dmextern.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/common/dmtable.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/aslcompile.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/aslglobal.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/aslload.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/aslmain.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/asloptions.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/dtcompile.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/debugger/dbcmds.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/debugger/dbfileio.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/debugger/dbinput.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/debugger/dbnames.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/evgpeutil.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/evmisc.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/evregion.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/evsci.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/evxface.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/hardware/hwxface.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/namespace/nsaccess.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/namespace/nsdump.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/namespace/nsxfeval.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/tables/tbinstal.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/tables/tbprint.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/tables/tbxfroot.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/utilities/utdebug.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/utilities/utglobal.c
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acdebug.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acdisasm.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acevents.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acexcep.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acglobal.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/aclocal.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acnamesp.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acpiosxf.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/acpixf.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/actypes.h
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/os_specific/service_layers/osunixxf.c
  projects/bhyve_npt_pmap/sys/contrib/rdma/krping/krping.c
  projects/bhyve_npt_pmap/sys/contrib/rdma/krping/krping.h
  projects/bhyve_npt_pmap/sys/contrib/rdma/krping/krping_dev.c
  projects/bhyve_npt_pmap/sys/dev/ahci/ahci.c
  projects/bhyve_npt_pmap/sys/dev/amdtemp/amdtemp.c
  projects/bhyve_npt_pmap/sys/dev/ath/if_ath.c
  projects/bhyve_npt_pmap/sys/dev/cas/if_cas.c
  projects/bhyve_npt_pmap/sys/dev/cxgb/cxgb_sge.c
  projects/bhyve_npt_pmap/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_qp.c
  projects/bhyve_npt_pmap/sys/dev/cxgbe/adapter.h
  projects/bhyve_npt_pmap/sys/dev/cxgbe/offload.h
  projects/bhyve_npt_pmap/sys/dev/cxgbe/osdep.h
  projects/bhyve_npt_pmap/sys/dev/cxgbe/t4_main.c
  projects/bhyve_npt_pmap/sys/dev/cxgbe/t4_sge.c
  projects/bhyve_npt_pmap/sys/dev/cxgbe/t4_tracer.c
  projects/bhyve_npt_pmap/sys/dev/cxgbe/tom/t4_cpl_io.c
  projects/bhyve_npt_pmap/sys/dev/cxgbe/tom/t4_tom.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drmP.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_atomic.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_crtc.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_crtc.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_crtc_helper.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_dp_helper.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_dp_iic_helper.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_drv.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_edid.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_gem.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_gem_names.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_ioctl.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_irq.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_linux_list.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_pci.c
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_pciids.h
  projects/bhyve_npt_pmap/sys/dev/drm2/drm_sysctl.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/i915_gem.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/i915_gem_execbuffer.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_crt.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_display.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_dp.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_drv.h
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_hdmi.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_lvds.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_panel.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_sdvo.c
  projects/bhyve_npt_pmap/sys/dev/drm2/i915/intel_tv.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_bo.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_bo_driver.h
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_bo_util.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_bo_vm.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_execbuf_util.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_page_alloc.c
  projects/bhyve_npt_pmap/sys/dev/drm2/ttm/ttm_tt.c
  projects/bhyve_npt_pmap/sys/dev/e1000/if_igb.c
  projects/bhyve_npt_pmap/sys/dev/fb/vesa.c
  projects/bhyve_npt_pmap/sys/dev/fdc/fdc.c
  projects/bhyve_npt_pmap/sys/dev/flash/mx25l.c
  projects/bhyve_npt_pmap/sys/dev/gpio/gpiobus.c
  projects/bhyve_npt_pmap/sys/dev/hatm/if_hatm_intr.c
  projects/bhyve_npt_pmap/sys/dev/hwpmc/hwpmc_core.c
  projects/bhyve_npt_pmap/sys/dev/hwpmc/hwpmc_mod.c
  projects/bhyve_npt_pmap/sys/dev/hwpmc/pmc_events.h
  projects/bhyve_npt_pmap/sys/dev/if_ndis/if_ndis.c
  projects/bhyve_npt_pmap/sys/dev/iscsi_initiator/isc_soc.c
  projects/bhyve_npt_pmap/sys/dev/iwn/if_iwn.c
  projects/bhyve_npt_pmap/sys/dev/ixgbe/ixgbe.c
  projects/bhyve_npt_pmap/sys/dev/ixgbe/ixv.c
  projects/bhyve_npt_pmap/sys/dev/jme/if_jme.c
  projects/bhyve_npt_pmap/sys/dev/lge/if_lge.c
  projects/bhyve_npt_pmap/sys/dev/mfi/mfi_cam.c
  projects/bhyve_npt_pmap/sys/dev/mwl/if_mwl.c
  projects/bhyve_npt_pmap/sys/dev/nfe/if_nfe.c
  projects/bhyve_npt_pmap/sys/dev/patm/if_patm.c
  projects/bhyve_npt_pmap/sys/dev/patm/if_patm_tx.c
  projects/bhyve_npt_pmap/sys/dev/pci/pcivar.h
  projects/bhyve_npt_pmap/sys/dev/pci/vga_pci.c
  projects/bhyve_npt_pmap/sys/dev/qlxgb/qla_hw.c
  projects/bhyve_npt_pmap/sys/dev/qlxgbe/ql_misc.c
  projects/bhyve_npt_pmap/sys/dev/qlxgbe/ql_os.c
  projects/bhyve_npt_pmap/sys/dev/sfxge/sfxge_rx.c
  projects/bhyve_npt_pmap/sys/dev/usb/controller/dwc_otg.c
  projects/bhyve_npt_pmap/sys/dev/usb/controller/musb_otg.c
  projects/bhyve_npt_pmap/sys/dev/wb/if_wb.c
  projects/bhyve_npt_pmap/sys/dev/xen/blkfront/blkfront.c
  projects/bhyve_npt_pmap/sys/dev/xen/netback/netback.c
  projects/bhyve_npt_pmap/sys/fs/nfs/nfs.h
  projects/bhyve_npt_pmap/sys/fs/tmpfs/tmpfs_subr.c
  projects/bhyve_npt_pmap/sys/fs/tmpfs/tmpfs_vfsops.c
  projects/bhyve_npt_pmap/sys/geom/geom_disk.c
  projects/bhyve_npt_pmap/sys/geom/zero/g_zero.c
  projects/bhyve_npt_pmap/sys/i386/i386/pmap.c
  projects/bhyve_npt_pmap/sys/i386/xen/pmap.c
  projects/bhyve_npt_pmap/sys/ia64/ia64/pmap.c
  projects/bhyve_npt_pmap/sys/kern/kern_event.c
  projects/bhyve_npt_pmap/sys/kern/kern_jail.c
  projects/bhyve_npt_pmap/sys/kern/kern_linker.c
  projects/bhyve_npt_pmap/sys/kern/kern_mbuf.c
  projects/bhyve_npt_pmap/sys/kern/kern_physio.c
  projects/bhyve_npt_pmap/sys/kern/kern_proc.c
  projects/bhyve_npt_pmap/sys/kern/link_elf.c
  projects/bhyve_npt_pmap/sys/kern/subr_mbpool.c
  projects/bhyve_npt_pmap/sys/kern/subr_taskqueue.c
  projects/bhyve_npt_pmap/sys/kern/uipc_cow.c
  projects/bhyve_npt_pmap/sys/kern/uipc_mbuf.c
  projects/bhyve_npt_pmap/sys/kern/uipc_syscalls.c
  projects/bhyve_npt_pmap/sys/kern/vfs_cluster.c
  projects/bhyve_npt_pmap/sys/mips/atheros/ar71xx_spi.c
  projects/bhyve_npt_pmap/sys/mips/atheros/if_arge.c
  projects/bhyve_npt_pmap/sys/mips/conf/ROUTERSTATION.hints
  projects/bhyve_npt_pmap/sys/mips/malta/gt_pci.c
  projects/bhyve_npt_pmap/sys/mips/malta/yamon.c
  projects/bhyve_npt_pmap/sys/mips/mips/pmap.c
  projects/bhyve_npt_pmap/sys/modules/Makefile
  projects/bhyve_npt_pmap/sys/modules/drm2/Makefile
  projects/bhyve_npt_pmap/sys/modules/drm2/drm2/Makefile
  projects/bhyve_npt_pmap/sys/modules/ip6_mroute_mod/Makefile
  projects/bhyve_npt_pmap/sys/modules/linux/Makefile
  projects/bhyve_npt_pmap/sys/modules/rdma/Makefile
  projects/bhyve_npt_pmap/sys/net/if.h
  projects/bhyve_npt_pmap/sys/net/if_fddisubr.c
  projects/bhyve_npt_pmap/sys/net/if_iso88025subr.c
  projects/bhyve_npt_pmap/sys/net/if_llatbl.h
  projects/bhyve_npt_pmap/sys/net/if_pfsync.h
  projects/bhyve_npt_pmap/sys/net/pfil.c
  projects/bhyve_npt_pmap/sys/net/pfil.h
  projects/bhyve_npt_pmap/sys/net80211/ieee80211_output.c
  projects/bhyve_npt_pmap/sys/net80211/ieee80211_proto.h
  projects/bhyve_npt_pmap/sys/net80211/ieee80211_superg.c
  projects/bhyve_npt_pmap/sys/netinet/icmp_var.h
  projects/bhyve_npt_pmap/sys/netinet/igmp.c
  projects/bhyve_npt_pmap/sys/netinet/igmp_var.h
  projects/bhyve_npt_pmap/sys/netinet/in.h
  projects/bhyve_npt_pmap/sys/netinet/ip_fastfwd.c
  projects/bhyve_npt_pmap/sys/netinet/ip_input.c
  projects/bhyve_npt_pmap/sys/netinet/ip_output.c
  projects/bhyve_npt_pmap/sys/netinet/pim_var.h
  projects/bhyve_npt_pmap/sys/netinet/sctp_input.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_input.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_lro.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_lro.h
  projects/bhyve_npt_pmap/sys/netinet/tcp_output.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_subr.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_syncache.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_usrreq.c
  projects/bhyve_npt_pmap/sys/netinet/tcp_var.h
  projects/bhyve_npt_pmap/sys/netinet/udp_usrreq.c
  projects/bhyve_npt_pmap/sys/netinet/udp_var.h
  projects/bhyve_npt_pmap/sys/netinet6/ip6_input.c
  projects/bhyve_npt_pmap/sys/netinet6/ip6_mroute.c
  projects/bhyve_npt_pmap/sys/netinet6/ip6_output.c
  projects/bhyve_npt_pmap/sys/netinet6/mld6.c
  projects/bhyve_npt_pmap/sys/netinet6/nd6.c
  projects/bhyve_npt_pmap/sys/netinet6/pim6_var.h
  projects/bhyve_npt_pmap/sys/netinet6/sctp6_usrreq.c
  projects/bhyve_npt_pmap/sys/netinet6/send.c
  projects/bhyve_npt_pmap/sys/netinet6/udp6_usrreq.c
  projects/bhyve_npt_pmap/sys/netipsec/ipsec.h
  projects/bhyve_npt_pmap/sys/netipsec/key_var.h
  projects/bhyve_npt_pmap/sys/netpfil/ipfw/ip_dummynet.c
  projects/bhyve_npt_pmap/sys/netpfil/ipfw/ip_fw2.c
  projects/bhyve_npt_pmap/sys/netpfil/ipfw/ip_fw_nat.c
  projects/bhyve_npt_pmap/sys/netpfil/ipfw/ip_fw_private.h
  projects/bhyve_npt_pmap/sys/ofed/drivers/net/mlx4/en_frag.c
  projects/bhyve_npt_pmap/sys/ofed/include/linux/net.h
  projects/bhyve_npt_pmap/sys/powerpc/powermac/kiic.c
  projects/bhyve_npt_pmap/sys/powerpc/powerpc/mmu_if.m
  projects/bhyve_npt_pmap/sys/powerpc/powerpc/pmap_dispatch.c
  projects/bhyve_npt_pmap/sys/sparc64/sparc64/pmap.c
  projects/bhyve_npt_pmap/sys/sys/conf.h
  projects/bhyve_npt_pmap/sys/sys/eventhandler.h
  projects/bhyve_npt_pmap/sys/sys/fcntl.h
  projects/bhyve_npt_pmap/sys/sys/jail.h
  projects/bhyve_npt_pmap/sys/sys/mbpool.h
  projects/bhyve_npt_pmap/sys/sys/mbuf.h
  projects/bhyve_npt_pmap/sys/sys/mount.h
  projects/bhyve_npt_pmap/sys/sys/param.h
  projects/bhyve_npt_pmap/sys/sys/pmckern.h
  projects/bhyve_npt_pmap/sys/sys/sf_buf.h
  projects/bhyve_npt_pmap/sys/sys/socket.h
  projects/bhyve_npt_pmap/sys/sys/sysctl.h
  projects/bhyve_npt_pmap/sys/sys/user.h
  projects/bhyve_npt_pmap/sys/ufs/ffs/ffs_alloc.c
  projects/bhyve_npt_pmap/sys/ufs/ufs/ufs_dirhash.c
  projects/bhyve_npt_pmap/sys/vm/pmap.h
  projects/bhyve_npt_pmap/sys/vm/vm_map.c
  projects/bhyve_npt_pmap/sys/vm/vm_page.c
  projects/bhyve_npt_pmap/tools/tools/README
  projects/bhyve_npt_pmap/usr.bin/brandelf/brandelf.1
  projects/bhyve_npt_pmap/usr.bin/kdump/kdump.c
  projects/bhyve_npt_pmap/usr.bin/kdump/mksubr
  projects/bhyve_npt_pmap/usr.bin/patch/Makefile
  projects/bhyve_npt_pmap/usr.sbin/bhyve/pci_emul.c
  projects/bhyve_npt_pmap/usr.sbin/bhyve/pci_virtio_block.c
  projects/bhyve_npt_pmap/usr.sbin/crashinfo/crashinfo.sh
  projects/bhyve_npt_pmap/usr.sbin/jail/jail.8
  projects/bhyve_npt_pmap/usr.sbin/mfiutil/mfi_drive.c
  projects/bhyve_npt_pmap/usr.sbin/mfiutil/mfiutil.8
  projects/bhyve_npt_pmap/usr.sbin/mfiutil/mfiutil.c
  projects/bhyve_npt_pmap/usr.sbin/periodic/periodic.sh
  projects/bhyve_npt_pmap/usr.sbin/rtadvd/config.c
Directory Properties:
  projects/bhyve_npt_pmap/   (props changed)
  projects/bhyve_npt_pmap/cddl/   (props changed)
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/   (props changed)
  projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libzfs/   (props changed)
  projects/bhyve_npt_pmap/contrib/llvm/   (props changed)
  projects/bhyve_npt_pmap/lib/libc/   (props changed)
  projects/bhyve_npt_pmap/lib/libutil/   (props changed)
  projects/bhyve_npt_pmap/sbin/   (props changed)
  projects/bhyve_npt_pmap/share/man/man4/   (props changed)
  projects/bhyve_npt_pmap/sys/   (props changed)
  projects/bhyve_npt_pmap/sys/amd64/vmm/   (props changed)
  projects/bhyve_npt_pmap/sys/boot/   (props changed)
  projects/bhyve_npt_pmap/sys/cddl/contrib/opensolaris/   (props changed)
  projects/bhyve_npt_pmap/sys/conf/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/common/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/compiler/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/debugger/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/events/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/hardware/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/namespace/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/tables/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/components/utilities/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/include/   (props changed)
  projects/bhyve_npt_pmap/sys/contrib/dev/acpica/os_specific/   (props changed)
  projects/bhyve_npt_pmap/usr.sbin/bhyve/   (props changed)
  projects/bhyve_npt_pmap/usr.sbin/jail/   (props changed)
  projects/bhyve_npt_pmap/usr.sbin/rtadvd/   (props changed)

Modified: projects/bhyve_npt_pmap/ObsoleteFiles.inc
==============================================================================
--- projects/bhyve_npt_pmap/ObsoleteFiles.inc	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/ObsoleteFiles.inc	Sun Sep  1 07:09:42 2013	(r255113)
@@ -38,6 +38,14 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20130822: bind 9.9.3-P2 import
+OLD_LIBS+=usr/lib/liblwres.so.80
+# 20130814: vm_page_busy(9)
+OLD_FILES+=usr/share/man/man9/vm_page_flash.9.gz
+OLD_FILES+=usr/share/man/man9/vm_page_io.9.gz
+OLD_FILES+=usr/share/man/man9/vm_page_io_finish.9.gz
+OLD_FILES+=usr/share/man/man9/vm_page_io_start.9.gz
+OLD_FILES+=usr/share/man/man9/vm_page_wakeup.9.gz
 # 20130710: libkvm version bump 
 OLD_LIBS+=lib/libkvm.so.5
 OLD_LIBS+=usr/lib32/libkvm.so.5
@@ -114,6 +122,7 @@ OLD_FILES+=usr/include/clang/3.2/xmmintr
 OLD_FILES+=usr/include/clang/3.2/xopintrin.h
 OLD_DIRS+=usr/include/clang/3.2
 # 20130404: legacy ATA stack removed
+OLD_FILES+=etc/periodic/daily/405.status-ata-raid
 OLD_FILES+=rescue/atacontrol
 OLD_FILES+=sbin/atacontrol
 OLD_FILES+=usr/share/man/man8/atacontrol.8.gz

Modified: projects/bhyve_npt_pmap/UPDATING
==============================================================================
--- projects/bhyve_npt_pmap/UPDATING	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/UPDATING	Sun Sep  1 07:09:42 2013	(r255113)
@@ -31,6 +31,19 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20130827:
+        Thomas Dickey (vendor author thereof) reports that dialog(1) since
+        2011/10/18 has a bug in handling --hline. Testers and I noticed the
+        --hline is not ignored but displayed as a NULL string, regardless of
+        value. This will cause confusion in some bsdconfig dialogs where the
+        --hline is used to inform users which keybindings to use. This will
+        likewise affect any other persons relying on --hline. It also looks
+        rather strange seeing "[]" at the bottom of dialog(1) widgets when
+        passing --hline "anything". Thomas said he will have a look in a few
+        weeks. NOTE: The "[]" brackets appear with the left-edge where it
+        would normally appear given the width of text to display, but the
+        displayed text is not there (part of the bug).
+
 20130821:
 	The PADLOCK_RNG and RDRAND_RNG kernel options are now devices.
 	Thus "device padlock_rng" and "device rdrand_rng" should be

Modified: projects/bhyve_npt_pmap/bin/ps/keyword.c
==============================================================================
--- projects/bhyve_npt_pmap/bin/ps/keyword.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/ps/keyword.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -87,6 +87,7 @@ static VAR var[] = {
 	{"etimes", "ELAPSED", NULL, USER, elapseds, 0, CHAR, NULL, 0},
 	{"euid", "", "uid", 0, NULL, 0, CHAR, NULL, 0},
 	{"f", "F", NULL, 0, kvar, KOFF(ki_flag), INT, "x", 0},
+	{"fib", "FIB", NULL, 0, kvar, KOFF(ki_fibnum), INT, "d", 0},
 	{"flags", "", "f", 0, NULL, 0, CHAR, NULL, 0},
 	{"gid", "GID", NULL, 0, kvar, KOFF(ki_groups), UINT, UIDFMT, 0},
 	{"group", "GROUP", NULL, LJUST, egroupname, 0, CHAR, NULL, 0},

Modified: projects/bhyve_npt_pmap/bin/ps/ps.1
==============================================================================
--- projects/bhyve_npt_pmap/bin/ps/ps.1	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/ps/ps.1	Sun Sep  1 07:09:42 2013	(r255113)
@@ -512,6 +512,9 @@ elapsed running time, format
 minutes:seconds.
 .It Cm etimes
 elapsed running time, in decimal integer seconds
+.It Cm fib
+default FIB number, see
+.Xr setfib 1
 .It Cm flags
 the process flags, in hexadecimal (alias
 .Cm f )

Modified: projects/bhyve_npt_pmap/bin/sh/alias.c
==============================================================================
--- projects/bhyve_npt_pmap/bin/sh/alias.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/sh/alias.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -237,17 +237,19 @@ printaliases(void)
 }
 
 int
-aliascmd(int argc, char **argv)
+aliascmd(int argc __unused, char **argv __unused)
 {
 	char *n, *v;
 	int ret = 0;
 	struct alias *ap;
 
-	if (argc == 1) {
+	nextopt("");
+
+	if (*argptr == NULL) {
 		printaliases();
 		return (0);
 	}
-	while ((n = *++argv) != NULL) {
+	while ((n = *argptr++) != NULL) {
 		if ((v = strchr(n+1, '=')) == NULL) /* n+1: funny ksh stuff */
 			if ((ap = lookupalias(n, 0)) == NULL) {
 				warning("%s: not found", n);

Modified: projects/bhyve_npt_pmap/bin/sh/arith_yylex.c
==============================================================================
--- projects/bhyve_npt_pmap/bin/sh/arith_yylex.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/sh/arith_yylex.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -218,9 +218,13 @@ checkeqcur:
 			value += ARITH_REM - '%';
 			goto checkeq;
 		case '+':
+			if (buf[1] == '+')
+				return ARITH_BAD;
 			value += ARITH_ADD - '+';
 			goto checkeq;
 		case '-':
+			if (buf[1] == '-')
+				return ARITH_BAD;
 			value += ARITH_SUB - '-';
 			goto checkeq;
 		case '~':

Modified: projects/bhyve_npt_pmap/bin/sh/jobs.c
==============================================================================
--- projects/bhyve_npt_pmap/bin/sh/jobs.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/sh/jobs.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -495,14 +495,10 @@ waitcmdloop(struct job *job)
 	in_waitcmd++;
 	do {
 		if (job != NULL) {
-			if (job->state) {
+			if (job->state == JOBDONE) {
 				status = job->ps[job->nprocs - 1].status;
 				if (WIFEXITED(status))
 					retval = WEXITSTATUS(status);
-#if JOBS
-				else if (WIFSTOPPED(status))
-					retval = WSTOPSIG(status) + 128;
-#endif
 				else
 					retval = WTERMSIG(status) + 128;
 				if (! iflag || ! job->changed)

Modified: projects/bhyve_npt_pmap/bin/sh/parser.c
==============================================================================
--- projects/bhyve_npt_pmap/bin/sh/parser.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/bin/sh/parser.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -573,7 +573,7 @@ TRACE(("expecting DO got %s %s\n", tokna
 			synexpect(TEND);
 		checkkwd = CHKKWD | CHKALIAS;
 		break;
-	/* Handle an empty command like other simple commands.  */
+	/* A simple command must have at least one redirection or word. */
 	case TBACKGND:
 	case TSEMI:
 	case TAND:
@@ -581,16 +581,12 @@ TRACE(("expecting DO got %s %s\n", tokna
 	case TPIPE:
 	case TENDCASE:
 	case TFALLTHRU:
-		/*
-		 * An empty command before a ; doesn't make much sense, and
-		 * should certainly be disallowed in the case of `if ;'.
-		 */
+	case TEOF:
+	case TNL:
+	case TRP:
 		if (!redir)
 			synexpect(-1);
-	case TNL:
-	case TEOF:
 	case TWORD:
-	case TRP:
 		tokpushback++;
 		n1 = simplecmd(rpp, redir);
 		return n1;

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -25,6 +25,7 @@
  * Copyright (c) 2012 by Delphix. All rights reserved.
  * Copyright (c) 2012 by Frederik Wessels. All rights reserved.
  * Copyright (c) 2012 Martin Matuska <mm at FreeBSD.org>. All rights reserved.
+ * Copyright (c) 2013 by Prasad Joshi (sTec). All rights reserved.
  */
 
 #include <solaris.h>
@@ -2128,8 +2129,10 @@ zpool_do_import(int argc, char **argv)
 
 		errno = 0;
 		searchguid = strtoull(argv[0], &endptr, 10);
-		if (errno != 0 || *endptr != '\0')
+		if (errno != 0 || *endptr != '\0') {
 			searchname = argv[0];
+			searchguid = 0;
+		}
 		found_config = NULL;
 
 		/*

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_create.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_create.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_create.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -24,13 +24,15 @@
  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
-
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
+/*
+ * Copyright (c) 2013, Joyent, Inc.  All rights reserved.
+ */
 
 #include <sys/sysmacros.h>
 #include <sys/param.h>
 #include <sys/mman.h>
 #include <ctf_impl.h>
+#include <sys/debug.h>
 
 /*
  * This static string is used as the template for initially populating a
@@ -167,6 +169,51 @@ ctf_copy_membnames(ctf_dtdef_t *dtd, uch
 }
 
 /*
+ * Only types of dyanmic CTF containers contain reference counts. These
+ * containers are marked RD/WR. Because of that we basically make this a no-op
+ * for compatability with non-dynamic CTF sections. This is also a no-op for
+ * types which are not dynamic types. It is the responsibility of the caller to
+ * make sure it is a valid type. We help that caller out on debug builds.
+ *
+ * Note that the reference counts are not maintained for types that are not
+ * within this container. In other words if we have a type in a parent, that
+ * will not have its reference count increased. On the flip side, the parent
+ * will not be allowed to remove dynamic types if it has children.
+ */
+static void
+ctf_ref_inc(ctf_file_t *fp, ctf_id_t tid)
+{
+	ctf_dtdef_t *dtd = ctf_dtd_lookup(fp, tid);
+
+	if (dtd == NULL)
+		return;
+
+	if (!(fp->ctf_flags & LCTF_RDWR))
+		return;
+
+	dtd->dtd_ref++;
+}
+
+/*
+ * Just as with ctf_ref_inc, this is a no-op on non-writeable containers and the
+ * caller should ensure that this is already a valid type.
+ */
+static void
+ctf_ref_dec(ctf_file_t *fp, ctf_id_t tid)
+{
+	ctf_dtdef_t *dtd = ctf_dtd_lookup(fp, tid);
+
+	if (dtd == NULL)
+		return;
+
+	if (!(fp->ctf_flags & LCTF_RDWR))
+		return;
+
+	ASSERT(dtd->dtd_ref >= 1);
+	dtd->dtd_ref--;
+}
+
+/*
  * If the specified CTF container is writable and has been modified, reload
  * this container with the updated type definitions.  In order to make this
  * code and the rest of libctf as simple as possible, we perform updates by
@@ -180,6 +227,10 @@ ctf_copy_membnames(ctf_dtdef_t *dtd, uch
  * ctf_bufopen() will return a new ctf_file_t, but we want to keep the fp
  * constant for the caller, so after ctf_bufopen() returns, we use bcopy to
  * swap the interior of the old and new ctf_file_t's, and then free the old.
+ *
+ * Note that the lists of dynamic types stays around and the resulting container
+ * is still writeable. Furthermore, the reference counts that are on the dtd's
+ * are still valid.
  */
 int
 ctf_update(ctf_file_t *fp)
@@ -432,6 +483,7 @@ ctf_dtd_delete(ctf_file_t *fp, ctf_dtdef
 	ctf_dtdef_t *p, **q = &fp->ctf_dthash[h];
 	ctf_dmdef_t *dmd, *nmd;
 	size_t len;
+	int kind, i;
 
 	for (p = *q; p != NULL; p = p->dtd_hash) {
 		if (p != dtd)
@@ -443,7 +495,8 @@ ctf_dtd_delete(ctf_file_t *fp, ctf_dtdef
 	if (p != NULL)
 		*q = p->dtd_hash;
 
-	switch (CTF_INFO_KIND(dtd->dtd_data.ctt_info)) {
+	kind = CTF_INFO_KIND(dtd->dtd_data.ctt_info);
+	switch (kind) {
 	case CTF_K_STRUCT:
 	case CTF_K_UNION:
 	case CTF_K_ENUM:
@@ -454,14 +507,33 @@ ctf_dtd_delete(ctf_file_t *fp, ctf_dtdef
 				ctf_free(dmd->dmd_name, len);
 				fp->ctf_dtstrlen -= len;
 			}
+			if (kind != CTF_K_ENUM)
+				ctf_ref_dec(fp, dmd->dmd_type);
 			nmd = ctf_list_next(dmd);
 			ctf_free(dmd, sizeof (ctf_dmdef_t));
 		}
 		break;
 	case CTF_K_FUNCTION:
+		ctf_ref_dec(fp, dtd->dtd_data.ctt_type);
+		for (i = 0; i < CTF_INFO_VLEN(dtd->dtd_data.ctt_info); i++)
+			if (dtd->dtd_u.dtu_argv[i] != 0)
+				ctf_ref_dec(fp, dtd->dtd_u.dtu_argv[i]);
 		ctf_free(dtd->dtd_u.dtu_argv, sizeof (ctf_id_t) *
 		    CTF_INFO_VLEN(dtd->dtd_data.ctt_info));
 		break;
+	case CTF_K_ARRAY:
+		ctf_ref_dec(fp, dtd->dtd_u.dtu_arr.ctr_contents);
+		ctf_ref_dec(fp, dtd->dtd_u.dtu_arr.ctr_index);
+		break;
+	case CTF_K_TYPEDEF:
+		ctf_ref_dec(fp, dtd->dtd_data.ctt_type);
+		break;
+	case CTF_K_POINTER:
+	case CTF_K_VOLATILE:
+	case CTF_K_CONST:
+	case CTF_K_RESTRICT:
+		ctf_ref_dec(fp, dtd->dtd_data.ctt_type);
+		break;
 	}
 
 	if (dtd->dtd_name) {
@@ -495,7 +567,9 @@ ctf_dtd_lookup(ctf_file_t *fp, ctf_id_t 
  * Discard all of the dynamic type definitions that have been added to the
  * container since the last call to ctf_update().  We locate such types by
  * scanning the list and deleting elements that have type IDs greater than
- * ctf_dtoldid, which is set by ctf_update(), above.
+ * ctf_dtoldid, which is set by ctf_update(), above. Note that to work properly
+ * with our reference counting schemes, we must delete the dynamic list in
+ * reverse.
  */
 int
 ctf_discard(ctf_file_t *fp)
@@ -508,11 +582,11 @@ ctf_discard(ctf_file_t *fp)
 	if (!(fp->ctf_flags & LCTF_DIRTY))
 		return (0); /* no update required */
 
-	for (dtd = ctf_list_next(&fp->ctf_dtdefs); dtd != NULL; dtd = ntd) {
+	for (dtd = ctf_list_prev(&fp->ctf_dtdefs); dtd != NULL; dtd = ntd) {
 		if (dtd->dtd_type <= fp->ctf_dtoldid)
 			continue; /* skip types that have been committed */
 
-		ntd = ctf_list_next(dtd);
+		ntd = ctf_list_prev(dtd);
 		ctf_dtd_delete(fp, dtd);
 	}
 
@@ -614,6 +688,8 @@ ctf_add_reftype(ctf_file_t *fp, uint_t f
 	if ((type = ctf_add_generic(fp, flag, NULL, &dtd)) == CTF_ERR)
 		return (CTF_ERR); /* errno is set for us */
 
+	ctf_ref_inc(fp, ref);
+
 	dtd->dtd_data.ctt_info = CTF_TYPE_INFO(kind, flag, 0);
 	dtd->dtd_data.ctt_type = (ushort_t)ref;
 
@@ -645,16 +721,29 @@ ctf_add_array(ctf_file_t *fp, uint_t fla
 {
 	ctf_dtdef_t *dtd;
 	ctf_id_t type;
+	ctf_file_t *fpd;
 
 	if (arp == NULL)
 		return (ctf_set_errno(fp, EINVAL));
 
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, arp->ctr_contents) == NULL &&
+	    ctf_dtd_lookup(fp, arp->ctr_contents) == NULL)
+		return (ctf_set_errno(fp, ECTF_BADID));
+
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, arp->ctr_index) == NULL &&
+	    ctf_dtd_lookup(fp, arp->ctr_index) == NULL)
+		return (ctf_set_errno(fp, ECTF_BADID));
+
 	if ((type = ctf_add_generic(fp, flag, NULL, &dtd)) == CTF_ERR)
 		return (CTF_ERR); /* errno is set for us */
 
 	dtd->dtd_data.ctt_info = CTF_TYPE_INFO(CTF_K_ARRAY, flag, 0);
 	dtd->dtd_data.ctt_size = 0;
 	dtd->dtd_u.dtu_arr = *arp;
+	ctf_ref_inc(fp, arp->ctr_contents);
+	ctf_ref_inc(fp, arp->ctr_index);
 
 	return (type);
 }
@@ -662,6 +751,7 @@ ctf_add_array(ctf_file_t *fp, uint_t fla
 int
 ctf_set_array(ctf_file_t *fp, ctf_id_t type, const ctf_arinfo_t *arp)
 {
+	ctf_file_t *fpd;
 	ctf_dtdef_t *dtd = ctf_dtd_lookup(fp, type);
 
 	if (!(fp->ctf_flags & LCTF_RDWR))
@@ -670,8 +760,22 @@ ctf_set_array(ctf_file_t *fp, ctf_id_t t
 	if (dtd == NULL || CTF_INFO_KIND(dtd->dtd_data.ctt_info) != CTF_K_ARRAY)
 		return (ctf_set_errno(fp, ECTF_BADID));
 
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, arp->ctr_contents) == NULL &&
+	    ctf_dtd_lookup(fp, arp->ctr_contents) == NULL)
+		return (ctf_set_errno(fp, ECTF_BADID));
+
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, arp->ctr_index) == NULL &&
+	    ctf_dtd_lookup(fp, arp->ctr_index) == NULL)
+		return (ctf_set_errno(fp, ECTF_BADID));
+
+	ctf_ref_dec(fp, dtd->dtd_u.dtu_arr.ctr_contents);
+	ctf_ref_dec(fp, dtd->dtd_u.dtu_arr.ctr_index);
 	fp->ctf_flags |= LCTF_DIRTY;
 	dtd->dtd_u.dtu_arr = *arp;
+	ctf_ref_inc(fp, arp->ctr_contents);
+	ctf_ref_inc(fp, arp->ctr_index);
 
 	return (0);
 }
@@ -683,7 +787,9 @@ ctf_add_function(ctf_file_t *fp, uint_t 
 	ctf_dtdef_t *dtd;
 	ctf_id_t type;
 	uint_t vlen;
+	int i;
 	ctf_id_t *vdat = NULL;
+	ctf_file_t *fpd;
 
 	if (ctc == NULL || (ctc->ctc_flags & ~CTF_FUNC_VARARG) != 0 ||
 	    (ctc->ctc_argc != 0 && argv == NULL))
@@ -696,6 +802,18 @@ ctf_add_function(ctf_file_t *fp, uint_t 
 	if (vlen > CTF_MAX_VLEN)
 		return (ctf_set_errno(fp, EOVERFLOW));
 
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, ctc->ctc_return) == NULL &&
+	    ctf_dtd_lookup(fp, ctc->ctc_return) == NULL)
+		return (ctf_set_errno(fp, ECTF_BADID));
+
+	for (i = 0; i < ctc->ctc_argc; i++) {
+		fpd = fp;
+		if (ctf_lookup_by_id(&fpd, argv[i]) == NULL &&
+		    ctf_dtd_lookup(fp, argv[i]) == NULL)
+			return (ctf_set_errno(fp, ECTF_BADID));
+	}
+
 	if (vlen != 0 && (vdat = ctf_alloc(sizeof (ctf_id_t) * vlen)) == NULL)
 		return (ctf_set_errno(fp, EAGAIN));
 
@@ -707,6 +825,10 @@ ctf_add_function(ctf_file_t *fp, uint_t 
 	dtd->dtd_data.ctt_info = CTF_TYPE_INFO(CTF_K_FUNCTION, flag, vlen);
 	dtd->dtd_data.ctt_type = (ushort_t)ctc->ctc_return;
 
+	ctf_ref_inc(fp, ctc->ctc_return);
+	for (i = 0; i < ctc->ctc_argc; i++)
+		ctf_ref_inc(fp, argv[i]);
+
 	bcopy(argv, vdat, sizeof (ctf_id_t) * ctc->ctc_argc);
 	if (ctc->ctc_flags & CTF_FUNC_VARARG)
 		vdat[vlen - 1] = 0; /* add trailing zero to indicate varargs */
@@ -825,8 +947,11 @@ ctf_add_typedef(ctf_file_t *fp, uint_t f
 {
 	ctf_dtdef_t *dtd;
 	ctf_id_t type;
+	ctf_file_t *fpd;
 
-	if (ref == CTF_ERR || ref < 0 || ref > CTF_MAX_TYPE)
+	fpd = fp;
+	if (ref == CTF_ERR || (ctf_lookup_by_id(&fpd, ref) == NULL &&
+	    ctf_dtd_lookup(fp, ref) == NULL))
 		return (ctf_set_errno(fp, EINVAL));
 
 	if ((type = ctf_add_generic(fp, flag, name, &dtd)) == CTF_ERR)
@@ -834,6 +959,7 @@ ctf_add_typedef(ctf_file_t *fp, uint_t f
 
 	dtd->dtd_data.ctt_info = CTF_TYPE_INFO(CTF_K_TYPEDEF, flag, 0);
 	dtd->dtd_data.ctt_type = (ushort_t)ref;
+	ctf_ref_inc(fp, ref);
 
 	return (type);
 }
@@ -1008,6 +1134,45 @@ ctf_add_member(ctf_file_t *fp, ctf_id_t 
 	if (s != NULL)
 		fp->ctf_dtstrlen += strlen(s) + 1;
 
+	ctf_ref_inc(fp, type);
+	fp->ctf_flags |= LCTF_DIRTY;
+	return (0);
+}
+
+/*
+ * This removes a type from the dynamic section. This will fail if the type is
+ * referenced by another type. Note that the CTF ID is never reused currently by
+ * CTF. Note that if this container is a parent container then we just outright
+ * refuse to remove the type. There currently is no notion of searching for the
+ * ctf_dtdef_t in parent containers. If there is, then this constraint could
+ * become finer grained.
+ */
+int
+ctf_delete_type(ctf_file_t *fp, ctf_id_t type)
+{
+	ctf_file_t *fpd;
+	ctf_dtdef_t *dtd = ctf_dtd_lookup(fp, type);
+
+	if (!(fp->ctf_flags & LCTF_RDWR))
+		return (ctf_set_errno(fp, ECTF_RDONLY));
+
+	/*
+	 * We want to give as useful an errno as possible. That means that we
+	 * want to distinguish between a type which does not exist and one for
+	 * which the type is not dynamic.
+	 */
+	fpd = fp;
+	if (ctf_lookup_by_id(&fpd, type) == NULL &&
+	    ctf_dtd_lookup(fp, type) == NULL)
+		return (CTF_ERR); /* errno is set for us */
+
+	if (dtd == NULL)
+		return (ctf_set_errno(fp, ECTF_NOTDYN));
+
+	if (dtd->dtd_ref != 0 || fp->ctf_refcnt > 1)
+		return (ctf_set_errno(fp, ECTF_REFERENCED));
+
+	ctf_dtd_delete(fp, dtd);
 	fp->ctf_flags |= LCTF_DIRTY;
 	return (0);
 }
@@ -1103,6 +1268,9 @@ ctf_add_type(ctf_file_t *dst_fp, ctf_fil
 	ctf_hash_t *hp;
 	ctf_helem_t *hep;
 
+	if (dst_fp == src_fp)
+		return (src_type);
+
 	if (!(dst_fp->ctf_flags & LCTF_RDWR))
 		return (ctf_set_errno(dst_fp, ECTF_RDONLY));
 
@@ -1313,6 +1481,14 @@ ctf_add_type(ctf_file_t *dst_fp, ctf_fil
 
 		if (errs)
 			return (CTF_ERR); /* errno is set for us */
+
+		/*
+		 * Now that we know that we can't fail, we go through and bump
+		 * all the reference counts on the member types.
+		 */
+		for (dmd = ctf_list_next(&dtd->dtd_u.dtu_members);
+		    dmd != NULL; dmd = ctf_list_next(dmd))
+			ctf_ref_inc(dst_fp, dmd->dmd_type);
 		break;
 	}
 

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_error.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_error.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_error.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -23,8 +23,9 @@
  * Copyright 2003 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
-
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
+/*
+ * Copyright (c) 2012, Joyent, Inc.
+ */
 
 #include <ctf_impl.h>
 
@@ -73,6 +74,8 @@ static const char *const _ctf_errlist[] 
 	"Limit on number of dynamic types reached",	 /* ECTF_FULL */
 	"Duplicate member name definition",		 /* ECTF_DUPMEMBER */
 	"Conflicting type is already defined",		 /* ECTF_CONFLICT */
+	"Type has outstanding references",		 /* ECTF_REFERENCED */
+	"Type is not a dynamic type"			 /* ECTF_NOTDYN */
 };
 
 static const int _ctf_nerr = sizeof (_ctf_errlist) / sizeof (_ctf_errlist[0]);

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_impl.h
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_impl.h	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_impl.h	Sun Sep  1 07:09:42 2013	(r255113)
@@ -24,12 +24,13 @@
  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
+/*
+ * Copyright (c) 2012, Joyent, Inc.  All rights reserved.
+ */
 
 #ifndef	_CTF_IMPL_H
 #define	_CTF_IMPL_H
 
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
-
 #include <sys/types.h>
 #include <sys/errno.h>
 #include <sys/sysmacros.h>
@@ -149,6 +150,7 @@ typedef struct ctf_dtdef {
 	char *dtd_name;		/* name associated with definition (if any) */
 	ctf_id_t dtd_type;	/* type identifier for this definition */
 	ctf_type_t dtd_data;	/* type node (see <sys/ctf.h>) */
+	int dtd_ref;		/* recfount for dyanmic types */
 	union {
 		ctf_list_t dtu_members;	/* struct, union, or enum */
 		ctf_arinfo_t dtu_arr;	/* array */
@@ -269,7 +271,9 @@ enum {
 	ECTF_DTFULL,		/* CTF type is full (no more members allowed) */
 	ECTF_FULL,		/* CTF container is full */
 	ECTF_DUPMEMBER,		/* duplicate member name definition */
-	ECTF_CONFLICT		/* conflicting type definition present */
+	ECTF_CONFLICT,		/* conflicting type definition present */
+	ECTF_REFERENCED,	/* type has outstanding references */
+	ECTF_NOTDYN		/* type is not a dynamic type */
 };
 
 extern ssize_t ctf_get_ctt_size(const ctf_file_t *, const ctf_type_t *,

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_open.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_open.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/common/ctf/ctf_open.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -24,8 +24,9 @@
  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
-
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
+/*
+ * Copyright (c) 2012, Joyent, Inc.  All rights reserved.
+ */
 
 #include <ctf_impl.h>
 #include <sys/mman.h>
@@ -810,8 +811,12 @@ ctf_close(ctf_file_t *fp)
 	if (fp->ctf_parent != NULL)
 		ctf_close(fp->ctf_parent);
 
-	for (dtd = ctf_list_next(&fp->ctf_dtdefs); dtd != NULL; dtd = ntd) {
-		ntd = ctf_list_next(dtd);
+	/*
+	 * Note, to work properly with reference counting on the dynamic
+	 * section, we must delete the list in reverse.
+	 */
+	for (dtd = ctf_list_prev(&fp->ctf_dtdefs); dtd != NULL; dtd = ntd) {
+		ntd = ctf_list_prev(dtd);
 		ctf_dtd_delete(fp, dtd);
 	}
 

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libctf/common/ctf_lib.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libctf/common/ctf_lib.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libctf/common/ctf_lib.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -216,6 +216,7 @@ ctf_fdopen(int fd, int *errp)
 {
 	ctf_sect_t ctfsect, symsect, strsect;
 	ctf_file_t *fp = NULL;
+	size_t shstrndx, shnum;
 
 	struct stat64 st;
 	ssize_t nbytes;
@@ -278,11 +279,10 @@ ctf_fdopen(int fd, int *errp)
 #else
 		uchar_t order = ELFDATA2LSB;
 #endif
-		GElf_Half i, n;
 		GElf_Shdr *sp;
 
 		void *strs_map;
-		size_t strs_mapsz;
+		size_t strs_mapsz, i;
 		char *strs;
 
 		if (hdr.e32.e_ident[EI_DATA] != order)
@@ -298,11 +298,38 @@ ctf_fdopen(int fd, int *errp)
 			ehdr_to_gelf(&e32, &hdr.e64);
 		}
 
-		if (hdr.e64.e_shstrndx >= hdr.e64.e_shnum)
+		shnum = hdr.e64.e_shnum;
+		shstrndx = hdr.e64.e_shstrndx;
+
+		/* Extended ELF sections */
+		if ((shstrndx == SHN_XINDEX) || (shnum == 0)) {
+			if (hdr.e32.e_ident[EI_CLASS] == ELFCLASS32) {
+				Elf32_Shdr x32;
+
+				if (pread64(fd, &x32, sizeof (x32),
+				    hdr.e64.e_shoff) != sizeof (x32))
+					return (ctf_set_open_errno(errp,
+					    errno));
+
+				shnum = x32.sh_size;
+				shstrndx = x32.sh_link;
+			} else {
+				Elf64_Shdr x64;
+
+				if (pread64(fd, &x64, sizeof (x64),
+				    hdr.e64.e_shoff) != sizeof (x64))
+					return (ctf_set_open_errno(errp,
+					    errno));
+
+				shnum = x64.sh_size;
+				shstrndx = x64.sh_link;
+			}
+		}
+
+		if (shstrndx >= shnum)
 			return (ctf_set_open_errno(errp, ECTF_CORRUPT));
 
-		n = hdr.e64.e_shnum;
-		nbytes = sizeof (GElf_Shdr) * n;
+		nbytes = sizeof (GElf_Shdr) * shnum;
 
 		if ((sp = malloc(nbytes)) == NULL)
 			return (ctf_set_open_errno(errp, errno));
@@ -314,7 +341,7 @@ ctf_fdopen(int fd, int *errp)
 		if (hdr.e32.e_ident[EI_CLASS] == ELFCLASS32) {
 			Elf32_Shdr *sp32;
 
-			nbytes = sizeof (Elf32_Shdr) * n;
+			nbytes = sizeof (Elf32_Shdr) * shnum;
 
 			if ((sp32 = malloc(nbytes)) == NULL || pread64(fd,
 			    sp32, nbytes, hdr.e64.e_shoff) != nbytes) {
@@ -322,7 +349,7 @@ ctf_fdopen(int fd, int *errp)
 				return (ctf_set_open_errno(errp, errno));
 			}
 
-			for (i = 0; i < n; i++)
+			for (i = 0; i < shnum; i++)
 				shdr_to_gelf(&sp32[i], &sp[i]);
 
 			free(sp32);
@@ -336,14 +363,14 @@ ctf_fdopen(int fd, int *errp)
 		 * Now mmap the section header strings section so that we can
 		 * perform string comparison on the section names.
 		 */
-		strs_mapsz = sp[hdr.e64.e_shstrndx].sh_size +
-		    (sp[hdr.e64.e_shstrndx].sh_offset & ~_PAGEMASK);
+		strs_mapsz = sp[shstrndx].sh_size +
+		    (sp[shstrndx].sh_offset & ~_PAGEMASK);
 
 		strs_map = mmap64(NULL, strs_mapsz, PROT_READ, MAP_PRIVATE,
-		    fd, sp[hdr.e64.e_shstrndx].sh_offset & _PAGEMASK);
+		    fd, sp[shstrndx].sh_offset & _PAGEMASK);
 
 		strs = (char *)strs_map +
-		    (sp[hdr.e64.e_shstrndx].sh_offset & ~_PAGEMASK);
+		    (sp[shstrndx].sh_offset & ~_PAGEMASK);
 
 		if (strs_map == MAP_FAILED) {
 			free(sp);
@@ -354,15 +381,15 @@ ctf_fdopen(int fd, int *errp)
 		 * Iterate over the section header array looking for the CTF
 		 * section and symbol table.  The strtab is linked to symtab.
 		 */
-		for (i = 0; i < n; i++) {
+		for (i = 0; i < shnum; i++) {
 			const GElf_Shdr *shp = &sp[i];
 			const GElf_Shdr *lhp = &sp[shp->sh_link];
 
-			if (shp->sh_link >= hdr.e64.e_shnum)
+			if (shp->sh_link >= shnum)
 				continue; /* corrupt sh_link field */
 
-			if (shp->sh_name >= sp[hdr.e64.e_shstrndx].sh_size ||
-			    lhp->sh_name >= sp[hdr.e64.e_shstrndx].sh_size)
+			if (shp->sh_name >= sp[shstrndx].sh_size ||
+			    lhp->sh_name >= sp[shstrndx].sh_size)
 				continue; /* corrupt sh_name field */
 
 			if (shp->sh_type == SHT_PROGBITS &&

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_iter.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -21,10 +21,10 @@
 
 /*
  * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright 2010 Nexenta Systems, Inc. All rights reserved.
  * Copyright (c) 2012 by Delphix. All rights reserved.
  * Copyright (c) 2012 Pawel Jakub Dawidek <pawel at dawidek.net>.
  * All rights reserved.
+ * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  */
 
 #include <stdio.h>
@@ -452,8 +452,12 @@ iter_dependents_cb(zfs_handle_t *zhp, vo
 		}
 		ida->stack = isf.next;
 	}
+
 	if (!first && err == 0)
 		err = ida->func(zhp, ida->data);
+	else
+		zfs_close(zhp);
+
 	return (err);
 }
 

Modified: projects/bhyve_npt_pmap/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c
==============================================================================
--- projects/bhyve_npt_pmap/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c	Sun Sep  1 07:09:42 2013	(r255113)
@@ -23,8 +23,6 @@
  * Use is subject to license terms.
  */
 
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
-
 /*
  * DWARF to tdata conversion
  *
@@ -1796,6 +1794,59 @@ die_resolve(dwarf_t *dw)
 	} while (dw->dw_nunres != 0);
 }
 
+/*
+ * Any object containing a function or object symbol at any scope should also
+ * contain DWARF data.
+ */
+static boolean_t
+should_have_dwarf(Elf *elf)
+{
+	Elf_Scn *scn = NULL;
+	Elf_Data *data = NULL;
+	GElf_Shdr shdr;
+	GElf_Sym sym;
+	uint32_t symdx = 0;
+	size_t nsyms = 0;
+	boolean_t found = B_FALSE;
+
+	while ((scn = elf_nextscn(elf, scn)) != NULL) {
+		gelf_getshdr(scn, &shdr);
+
+		if (shdr.sh_type == SHT_SYMTAB) {
+			found = B_TRUE;
+			break;
+		}
+	}
+
+	if (!found)
+		terminate("cannot convert stripped objects\n");
+
+	data = elf_getdata(scn, NULL);
+	nsyms = shdr.sh_size / shdr.sh_entsize;
+
+	for (symdx = 0; symdx < nsyms; symdx++) {
+		gelf_getsym(data, symdx, &sym);
+
+		if ((GELF_ST_TYPE(sym.st_info) == STT_FUNC) ||
+		    (GELF_ST_TYPE(sym.st_info) == STT_TLS) ||
+		    (GELF_ST_TYPE(sym.st_info) == STT_OBJECT)) {
+			char *name;
+
+			name = elf_strptr(elf, shdr.sh_link, sym.st_name);
+
+			/* Studio emits these local symbols regardless */
+			if ((strcmp(name, "Bbss.bss") != 0) &&
+			    (strcmp(name, "Ttbss.bss") != 0) &&
+			    (strcmp(name, "Ddata.data") != 0) &&
+			    (strcmp(name, "Ttdata.data") != 0) &&
+			    (strcmp(name, "Drodata.rodata") != 0))
+				return (B_TRUE);
+		}
+	}
+
+	return (B_FALSE);
+}
+
 /*ARGSUSED*/
 int
 dw_read(tdata_t *td, Elf *elf, char *filename __unused)
@@ -1820,8 +1871,12 @@ dw_read(tdata_t *td, Elf *elf, char *fil
 
 	if ((rc = dwarf_elf_init(elf, DW_DLC_READ, &dw.dw_dw,
 	    &dw.dw_err)) == DW_DLV_NO_ENTRY) {
-		errno = ENOENT;
-		return (-1);
+		if (should_have_dwarf(elf)) {
+			errno = ENOENT;
+			return (-1);
+		} else {
+			return (0);
+		}
 	} else if (rc != DW_DLV_OK) {
 		if (dwarf_errno(&dw.dw_err) == DW_DLE_DEBUG_INFO_NULL) {
 			/*
@@ -1839,9 +1894,14 @@ dw_read(tdata_t *td, Elf *elf, char *fil
 	    &addrsz, &nxthdr, &dw.dw_err)) != DW_DLV_OK)
 		terminate("rc = %d %s\n", rc, dwarf_errmsg(&dw.dw_err));
 
-	if ((cu = die_sibling(&dw, NULL)) == NULL)
+	if ((cu = die_sibling(&dw, NULL)) == NULL ||
+	    (((child = die_child(&dw, cu)) == NULL) &&
+	    should_have_dwarf(elf))) {
 		terminate("file does not contain dwarf type data "
 		    "(try compiling with -g)\n");
+	} else if (child == NULL) {
+		return (0);
+	}
 
 	dw.dw_maxoff = nxthdr - 1;
 

Modified: projects/bhyve_npt_pmap/cddl/lib/libdtrace/Makefile
==============================================================================
--- projects/bhyve_npt_pmap/cddl/lib/libdtrace/Makefile	Sun Sep  1 04:33:47 2013	(r255112)
+++ projects/bhyve_npt_pmap/cddl/lib/libdtrace/Makefile	Sun Sep  1 07:09:42 2013	(r255113)
@@ -48,8 +48,11 @@ SRCS=		dt_aggregate.c \
 
 DSRCS=		errno.d			\
 		io.d			\
+		ip.d			\
 		psinfo.d		\
 		signal.d		\
+		tcp.d			\
+		udp.d			\
 		unistd.d
 
 WARNS?=		1

Copied: projects/bhyve_npt_pmap/cddl/lib/libdtrace/ip.d (from r255028, head/cddl/lib/libdtrace/ip.d)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/bhyve_npt_pmap/cddl/lib/libdtrace/ip.d	Sun Sep  1 07:09:42 2013	(r255113, copy of r255028, head/cddl/lib/libdtrace/ip.d)
@@ -0,0 +1,285 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ *
+ * $FreeBSD$
+ */
+/*
+ * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013 Mark Johnston <markj at freebsd.org>
+ */
+
+#pragma D depends_on provider ip
+
+/*
+ * pktinfo is where packet ID info can be made available for deeper
+ * analysis if packet IDs become supported by the kernel in the future.
+ * The pkt_addr member is currently always NULL.
+ */
+typedef struct pktinfo {
+	uintptr_t pkt_addr;
+} pktinfo_t;
+
+/*
+ * csinfo is where connection state info is made available.
+ */
+typedef uint32_t zoneid_t;
+typedef struct csinfo {
+	uintptr_t cs_addr;
+	uint64_t cs_cid;
+	pid_t cs_pid;
+	zoneid_t cs_zoneid;
+} csinfo_t;
+
+/*
+ * ipinfo contains common IP info for both IPv4 and IPv6.
+ */
+typedef struct ipinfo {
+	uint8_t ip_ver;			/* IP version (4, 6) */
+	uint32_t ip_plength;		/* payload length */
+	string ip_saddr;		/* source address */
+	string ip_daddr;		/* destination address */
+} ipinfo_t;
+
+/*
+ * ifinfo contains network interface info.
+ */
+typedef struct ifinfo {
+	string if_name;			/* interface name */
+	int8_t if_local;		/* is delivered locally */
+	/*netstackid_t if_ipstack;*/	/* ipstack ID */
+	uintptr_t if_addr;		/* pointer to raw ill_t */
+} ifinfo_t;
+
+typedef uint32_t ipaddr_t;
+typedef struct {
+	uint8_t		ipha_version_and_hdr_length;
+	uint8_t		ipha_type_of_service;
+	uint16_t	ipha_length;
+	uint16_t	ipha_ident;
+	uint16_t	ipha_fragment_offset_and_flags;
+	uint8_t		ipha_ttl;
+	uint8_t		ipha_protocol;
+	uint16_t	ipha_hdr_checksum;
+	ipaddr_t	ipha_src;
+	ipaddr_t	ipha_dst;
+} ipha_t;
+
+/*
+ * ipv4info is a translated version of the IPv4 header (with raw pointer).
+ * These values are NULL if the packet is not IPv4.
+ */
+typedef struct ipv4info {
+	uint8_t ipv4_ver;		/* IP version (4) */
+	uint8_t ipv4_ihl;		/* header length, bytes */
+	uint8_t ipv4_tos;		/* type of service field */
+	uint16_t ipv4_length;		/* length (header + payload) */
+	uint16_t ipv4_ident;		/* identification */
+	uint8_t ipv4_flags;		/* IP flags */
+	uint16_t ipv4_offset;		/* fragment offset */
+	uint8_t ipv4_ttl;		/* time to live */
+	uint8_t ipv4_protocol;		/* next level protocol */
+	string ipv4_protostr;		/* next level protocol, as a string */
+	uint16_t ipv4_checksum;		/* header checksum */
+	ipaddr_t ipv4_src;		/* source address */

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


More information about the svn-src-projects mailing list