Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Jun 2015 22:54:30 GMT
From:      clord@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r286620 - in soc2015/clord/head: . bin/ps contrib/diff/src contrib/elftoolchain contrib/elftoolchain/common contrib/elftoolchain/elfcopy contrib/elftoolchain/libdwarf contrib/elftool...
Message-ID:  <201506032254.t53MsUM5019192@socsvn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: clord
Date: Wed Jun  3 22:54:29 2015
New Revision: 286620
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=286620

Log:
  Merge with head

Added:
  soc2015/clord/head/lib/libutil/kinfo_getvmobject.3
     - copied unchanged from r286619, mirror/FreeBSD/head/lib/libutil/kinfo_getvmobject.3
  soc2015/clord/head/lib/libutil/kinfo_getvmobject.c
     - copied unchanged from r286619, mirror/FreeBSD/head/lib/libutil/kinfo_getvmobject.c
  soc2015/clord/head/release/arm/CUBOX-HUMMINGBOARD.conf
     - copied unchanged from r286619, mirror/FreeBSD/head/release/arm/CUBOX-HUMMINGBOARD.conf
  soc2015/clord/head/share/man/man4/ig4.4
     - copied unchanged from r286619, mirror/FreeBSD/head/share/man/man4/ig4.4
  soc2015/clord/head/share/man/man9/PCI_IOV_ADD_VF.9
     - copied unchanged from r286619, mirror/FreeBSD/head/share/man/man9/PCI_IOV_ADD_VF.9
  soc2015/clord/head/share/man/man9/PCI_IOV_INIT.9
     - copied unchanged from r286619, mirror/FreeBSD/head/share/man/man9/PCI_IOV_INIT.9
  soc2015/clord/head/share/man/man9/PCI_IOV_UNINIT.9
     - copied unchanged from r286619, mirror/FreeBSD/head/share/man/man9/PCI_IOV_UNINIT.9
  soc2015/clord/head/sys/dev/ichiic/
     - copied from r286619, mirror/FreeBSD/head/sys/dev/ichiic/
  soc2015/clord/head/sys/dev/pci/pci_iov.h
     - copied unchanged from r286619, mirror/FreeBSD/head/sys/dev/pci/pci_iov.h
  soc2015/clord/head/sys/dev/pci/pci_iov_if.m
     - copied unchanged from r286619, mirror/FreeBSD/head/sys/dev/pci/pci_iov_if.m
  soc2015/clord/head/sys/dev/usb/template/usb_template_midi.c
     - copied unchanged from r286619, mirror/FreeBSD/head/sys/dev/usb/template/usb_template_midi.c
  soc2015/clord/head/sys/modules/i2c/controllers/ichiic/
     - copied from r286619, mirror/FreeBSD/head/sys/modules/i2c/controllers/ichiic/
  soc2015/clord/head/tools/build/options/WITHOUT_MANDOCDB
     - copied unchanged from r286619, mirror/FreeBSD/head/tools/build/options/WITHOUT_MANDOCDB
Deleted:
  soc2015/clord/head/etc/tests/
  soc2015/clord/head/lib/libc/arm/sys/fork.S
  soc2015/clord/head/lib/libc/mips/sys/fork.S
  soc2015/clord/head/share/man/man9/PCI_ADD_VF.9
  soc2015/clord/head/share/man/man9/PCI_INIT_IOV.9
  soc2015/clord/head/share/man/man9/PCI_UNINIT_IOV.9
Modified:
  soc2015/clord/head/   (props changed)
  soc2015/clord/head/Makefile.inc1
  soc2015/clord/head/ObsoleteFiles.inc
  soc2015/clord/head/bin/ps/ps.1
  soc2015/clord/head/bin/ps/ps.c
  soc2015/clord/head/contrib/diff/src/context.c
  soc2015/clord/head/contrib/elftoolchain/   (props changed)
  soc2015/clord/head/contrib/elftoolchain/common/_elftc.h
  soc2015/clord/head/contrib/elftoolchain/common/elfdefinitions.h
  soc2015/clord/head/contrib/elftoolchain/elfcopy/elfcopy.h
  soc2015/clord/head/contrib/elftoolchain/elfcopy/main.c
  soc2015/clord/head/contrib/elftoolchain/elfcopy/sections.c
  soc2015/clord/head/contrib/elftoolchain/elfcopy/symbols.c
  soc2015/clord/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c
  soc2015/clord/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
  soc2015/clord/head/contrib/elftoolchain/libelftc/os.Linux.mk
  soc2015/clord/head/contrib/elftoolchain/readelf/readelf.1
  soc2015/clord/head/contrib/elftoolchain/readelf/readelf.c
  soc2015/clord/head/contrib/gcc/   (props changed)
  soc2015/clord/head/contrib/gcc/config/arm/lib1funcs.asm
  soc2015/clord/head/contrib/mdocml/   (props changed)
  soc2015/clord/head/contrib/mdocml/read.c
  soc2015/clord/head/contrib/netbsd-tests/lib/libc/c063/t_faccessat.c
  soc2015/clord/head/contrib/netbsd-tests/lib/libc/c063/t_openat.c
  soc2015/clord/head/contrib/netbsd-tests/lib/libc/c063/t_readlinkat.c
  soc2015/clord/head/contrib/netbsd-tests/lib/libc/c063/t_unlinkat.c
  soc2015/clord/head/contrib/netbsd-tests/lib/libc/string/t_memmem.c
  soc2015/clord/head/contrib/traceroute/traceroute.8
  soc2015/clord/head/contrib/traceroute/traceroute.c
  soc2015/clord/head/crypto/openssh/   (props changed)
  soc2015/clord/head/crypto/openssh/moduli
  soc2015/clord/head/etc/   (props changed)
  soc2015/clord/head/games/grdc/grdc.c
  soc2015/clord/head/lib/libc/   (props changed)
  soc2015/clord/head/lib/libc/arm/SYS.h
  soc2015/clord/head/lib/libc/arm/aeabi/aeabi_asm_double.S
  soc2015/clord/head/lib/libc/arm/aeabi/aeabi_asm_float.S
  soc2015/clord/head/lib/libc/arm/gen/_setjmp.S
  soc2015/clord/head/lib/libc/arm/gen/setjmp.S
  soc2015/clord/head/lib/libc/arm/string/ffs.S
  soc2015/clord/head/lib/libc/arm/string/memmove.S
  soc2015/clord/head/lib/libc/arm/string/memset.S
  soc2015/clord/head/lib/libc/arm/string/strcmp.S
  soc2015/clord/head/lib/libc/arm/string/strlen.S
  soc2015/clord/head/lib/libc/arm/string/strncmp.S
  soc2015/clord/head/lib/libc/gen/fpclassify.c
  soc2015/clord/head/lib/libc/gen/isinf.c
  soc2015/clord/head/lib/libc/mips/sys/Makefile.inc
  soc2015/clord/head/lib/libc/string/memmem.3
  soc2015/clord/head/lib/libc/string/memmem.c
  soc2015/clord/head/lib/libc/xdr/xdr.c
  soc2015/clord/head/lib/libc/xdr/xdr_array.c
  soc2015/clord/head/lib/libc/xdr/xdr_float.c
  soc2015/clord/head/lib/libc/xdr/xdr_mem.c
  soc2015/clord/head/lib/libc/xdr/xdr_rec.c
  soc2015/clord/head/lib/libc/xdr/xdr_reference.c
  soc2015/clord/head/lib/libc/xdr/xdr_sizeof.c
  soc2015/clord/head/lib/libc/xdr/xdr_stdio.c
  soc2015/clord/head/lib/libdpv/dpv.c
  soc2015/clord/head/lib/libelftc/elftc_version.c
  soc2015/clord/head/lib/libgssapi/gss_accept_sec_context.c
  soc2015/clord/head/lib/libprocstat/libprocstat.c
  soc2015/clord/head/lib/libutil/   (props changed)
  soc2015/clord/head/lib/libutil/Makefile
  soc2015/clord/head/lib/libutil/kinfo_getallproc.3
  soc2015/clord/head/lib/libutil/kinfo_getfile.3
  soc2015/clord/head/lib/libutil/kinfo_getproc.3
  soc2015/clord/head/lib/libutil/kinfo_getvmmap.3
  soc2015/clord/head/lib/libutil/libutil.h
  soc2015/clord/head/lib/libutil/pw_util.3
  soc2015/clord/head/lib/libutil/pw_util.c
  soc2015/clord/head/libexec/ypxfr/ypxfr_main.c
  soc2015/clord/head/release/Makefile.ec2
  soc2015/clord/head/release/Makefile.mirrors
  soc2015/clord/head/release/arm/PANDABOARD.conf
  soc2015/clord/head/release/arm/RPI2.conf
  soc2015/clord/head/release/arm/WANDBOARD.conf
  soc2015/clord/head/release/tools/arm.subr
  soc2015/clord/head/sbin/   (props changed)
  soc2015/clord/head/sbin/camcontrol/camcontrol.c
  soc2015/clord/head/sbin/camcontrol/persist.c
  soc2015/clord/head/sbin/dhclient/dhclient.c
  soc2015/clord/head/sbin/dumpfs/dumpfs.c
  soc2015/clord/head/share/   (props changed)
  soc2015/clord/head/share/doc/papers/bufbio/bio.ms
  soc2015/clord/head/share/man/man3/pthread_setspecific.3
  soc2015/clord/head/share/man/man4/   (props changed)
  soc2015/clord/head/share/man/man4/Makefile
  soc2015/clord/head/share/man/man4/em.4
  soc2015/clord/head/share/man/man4/gre.4
  soc2015/clord/head/share/man/man5/src.conf.5
  soc2015/clord/head/share/man/man8/Makefile
  soc2015/clord/head/share/man/man9/Makefile
  soc2015/clord/head/share/man/man9/pci.9
  soc2015/clord/head/share/man/man9/pci_iov_schema.9
  soc2015/clord/head/share/mk/bsd.lib.mk
  soc2015/clord/head/share/mk/src.libnames.mk
  soc2015/clord/head/share/mk/src.opts.mk
  soc2015/clord/head/share/mk/src.sys.mk
  soc2015/clord/head/sys/   (props changed)
  soc2015/clord/head/sys/Makefile
  soc2015/clord/head/sys/amd64/amd64/pmap.c
  soc2015/clord/head/sys/amd64/amd64/trap.c
  soc2015/clord/head/sys/amd64/amd64/vm_machdep.c
  soc2015/clord/head/sys/amd64/ia32/ia32_reg.c
  soc2015/clord/head/sys/amd64/include/vmm.h   (contents, props changed)
  soc2015/clord/head/sys/amd64/vmm/   (props changed)
  soc2015/clord/head/sys/amd64/vmm/amd/svm.c
  soc2015/clord/head/sys/amd64/vmm/intel/vmx.c
  soc2015/clord/head/sys/amd64/vmm/vmm.c
  soc2015/clord/head/sys/amd64/vmm/vmm_stat.c
  soc2015/clord/head/sys/amd64/vmm/vmm_stat.h
  soc2015/clord/head/sys/arm/arm/copystr.S
  soc2015/clord/head/sys/arm/arm/cpu_asm-v6.S
  soc2015/clord/head/sys/arm/arm/elf_trampoline.c
  soc2015/clord/head/sys/arm/arm/exception.S
  soc2015/clord/head/sys/arm/arm/machdep.c
  soc2015/clord/head/sys/arm/arm/stack_machdep.c
  soc2015/clord/head/sys/arm/arm/sys_machdep.c
  soc2015/clord/head/sys/arm/arm/trap-v6.c
  soc2015/clord/head/sys/arm/broadcom/bcm2835/bcm2835_spi.c
  soc2015/clord/head/sys/arm/include/_types.h
  soc2015/clord/head/sys/arm/include/asm.h
  soc2015/clord/head/sys/arm/include/proc.h
  soc2015/clord/head/sys/boot/   (props changed)
  soc2015/clord/head/sys/boot/fdt/dts/arm/sun4i-a10.dtsi
  soc2015/clord/head/sys/boot/fdt/dts/arm/sun7i-a20.dtsi
  soc2015/clord/head/sys/boot/forth/support.4th
  soc2015/clord/head/sys/boot/uboot/lib/module.c
  soc2015/clord/head/sys/boot/userboot/userboot/conf.c
  soc2015/clord/head/sys/cddl/contrib/opensolaris/   (props changed)
  soc2015/clord/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
  soc2015/clord/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
  soc2015/clord/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
  soc2015/clord/head/sys/compat/linprocfs/linprocfs.c
  soc2015/clord/head/sys/conf/   (props changed)
  soc2015/clord/head/sys/conf/NOTES
  soc2015/clord/head/sys/conf/files
  soc2015/clord/head/sys/conf/files.pc98
  soc2015/clord/head/sys/conf/kmod.mk
  soc2015/clord/head/sys/conf/options
  soc2015/clord/head/sys/contrib/dev/acpica/   (props changed)
  soc2015/clord/head/sys/contrib/dev/acpica/common/ahuuids.c
  soc2015/clord/head/sys/contrib/dev/acpica/include/acuuid.h
  soc2015/clord/head/sys/dev/acpi_support/acpi_ibm.c
  soc2015/clord/head/sys/dev/ahci/ahci.h
  soc2015/clord/head/sys/dev/ath/ath_rate/sample/sample.c
  soc2015/clord/head/sys/dev/ath/if_ath.c
  soc2015/clord/head/sys/dev/ath/if_ath_rx.c
  soc2015/clord/head/sys/dev/ath/if_ath_tdma.c
  soc2015/clord/head/sys/dev/ath/if_ath_tx.c
  soc2015/clord/head/sys/dev/bwi/bwimac.c
  soc2015/clord/head/sys/dev/bwi/bwimac.h
  soc2015/clord/head/sys/dev/bwi/if_bwi.c
  soc2015/clord/head/sys/dev/bwi/if_bwi_pci.c
  soc2015/clord/head/sys/dev/cxgbe/t4_main.c
  soc2015/clord/head/sys/dev/cxgbe/t4_sge.c
  soc2015/clord/head/sys/dev/dwc/if_dwc.c
  soc2015/clord/head/sys/dev/e1000/e1000_defines.h
  soc2015/clord/head/sys/dev/e1000/if_em.c
  soc2015/clord/head/sys/dev/e1000/if_em.h
  soc2015/clord/head/sys/dev/hwpmc/hwpmc_mod.c
  soc2015/clord/head/sys/dev/iwi/if_iwi.c
  soc2015/clord/head/sys/dev/ixgbe/if_ix.c
  soc2015/clord/head/sys/dev/ixgbe/if_ixv.c
  soc2015/clord/head/sys/dev/ixgbe/ix_txrx.c
  soc2015/clord/head/sys/dev/ixgbe/ixgbe.h
  soc2015/clord/head/sys/dev/ixgbe/ixgbe_mbx.h
  soc2015/clord/head/sys/dev/ixgbe/ixgbe_vf.c
  soc2015/clord/head/sys/dev/ixl/if_ixl.c
  soc2015/clord/head/sys/dev/ixl/ixl.h
  soc2015/clord/head/sys/dev/mmc/mmcsd.c
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_cnfg.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_hbd.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_history.txt
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_init.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_ioc.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_ra.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_raid.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_sas.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_targ.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_tool.h
  soc2015/clord/head/sys/dev/mpr/mpi/mpi2_type.h
  soc2015/clord/head/sys/dev/mpr/mpr.c
  soc2015/clord/head/sys/dev/mpr/mpr_config.c
  soc2015/clord/head/sys/dev/mpr/mpr_ioctl.h
  soc2015/clord/head/sys/dev/mpr/mpr_mapping.c
  soc2015/clord/head/sys/dev/mpr/mpr_mapping.h
  soc2015/clord/head/sys/dev/mpr/mpr_pci.c
  soc2015/clord/head/sys/dev/mpr/mpr_sas.c
  soc2015/clord/head/sys/dev/mpr/mpr_sas.h
  soc2015/clord/head/sys/dev/mpr/mpr_sas_lsi.c
  soc2015/clord/head/sys/dev/mpr/mpr_user.c
  soc2015/clord/head/sys/dev/mpr/mprvar.h
  soc2015/clord/head/sys/dev/netmap/if_em_netmap.h
  soc2015/clord/head/sys/dev/pci/pci.c
  soc2015/clord/head/sys/dev/pci/pci_if.m
  soc2015/clord/head/sys/dev/pci/pci_iov.c
  soc2015/clord/head/sys/dev/pci/pcivar.h
  soc2015/clord/head/sys/dev/sfxge/sfxge_port.c
  soc2015/clord/head/sys/dev/sfxge/sfxge_version.h
  soc2015/clord/head/sys/dev/uart/uart_dev_ns8250.c
  soc2015/clord/head/sys/dev/usb/controller/dwc_otg.c
  soc2015/clord/head/sys/dev/usb/template/usb_template.c
  soc2015/clord/head/sys/dev/usb/template/usb_template.h
  soc2015/clord/head/sys/dev/usb/usb_ioctl.h
  soc2015/clord/head/sys/fs/ext2fs/ext2_vnops.c
  soc2015/clord/head/sys/fs/nfs/nfs.h
  soc2015/clord/head/sys/fs/nfs/nfsdport.h
  soc2015/clord/head/sys/fs/nfs/nfsrvstate.h
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdkrpc.c
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdport.c
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdserv.c
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdsocket.c
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdstate.c
  soc2015/clord/head/sys/fs/nfsserver/nfs_nfsdsubs.c
  soc2015/clord/head/sys/fs/procfs/procfs_ctl.c
  soc2015/clord/head/sys/fs/procfs/procfs_map.c
  soc2015/clord/head/sys/kern/kern_exit.c
  soc2015/clord/head/sys/kern/kern_proc.c
  soc2015/clord/head/sys/kern/kern_sig.c
  soc2015/clord/head/sys/kern/kern_synch.c
  soc2015/clord/head/sys/kern/subr_trap.c
  soc2015/clord/head/sys/kern/sys_process.c
  soc2015/clord/head/sys/kern/vfs_cluster.c
  soc2015/clord/head/sys/kern/vfs_init.c
  soc2015/clord/head/sys/kern/vfs_mount.c
  soc2015/clord/head/sys/kern/vfs_subr.c
  soc2015/clord/head/sys/kern/vfs_vnops.c
  soc2015/clord/head/sys/libkern/arm/memcpy.S
  soc2015/clord/head/sys/mips/include/pcpu.h
  soc2015/clord/head/sys/modules/Makefile
  soc2015/clord/head/sys/modules/em/Makefile
  soc2015/clord/head/sys/modules/i2c/controllers/Makefile
  soc2015/clord/head/sys/modules/ixl/Makefile   (contents, props changed)
  soc2015/clord/head/sys/modules/ixv/Makefile
  soc2015/clord/head/sys/modules/sfxge/Makefile
  soc2015/clord/head/sys/modules/usb/template/Makefile
  soc2015/clord/head/sys/net80211/ieee80211.h
  soc2015/clord/head/sys/net80211/ieee80211_crypto.c
  soc2015/clord/head/sys/net80211/ieee80211_crypto_ccmp.c
  soc2015/clord/head/sys/net80211/ieee80211_crypto_none.c
  soc2015/clord/head/sys/net80211/ieee80211_crypto_tkip.c
  soc2015/clord/head/sys/net80211/ieee80211_crypto_wep.c
  soc2015/clord/head/sys/net80211/ieee80211_freebsd.h
  soc2015/clord/head/sys/net80211/ieee80211_hwmp.c
  soc2015/clord/head/sys/net80211/ieee80211_ratectl_none.c
  soc2015/clord/head/sys/netinet/sctp_asconf.c
  soc2015/clord/head/sys/netinet/sctp_cc_functions.c
  soc2015/clord/head/sys/netinet/sctp_constants.h
  soc2015/clord/head/sys/netinet/sctp_indata.c
  soc2015/clord/head/sys/netinet/sctp_input.c
  soc2015/clord/head/sys/netinet/sctp_output.c
  soc2015/clord/head/sys/netinet/sctp_pcb.c
  soc2015/clord/head/sys/netinet/sctp_timer.c
  soc2015/clord/head/sys/netinet/sctp_usrreq.c
  soc2015/clord/head/sys/netinet/sctputil.c
  soc2015/clord/head/sys/netinet6/in6.c
  soc2015/clord/head/sys/netinet6/nd6.c
  soc2015/clord/head/sys/netinet6/sctp6_usrreq.c
  soc2015/clord/head/sys/ofed/drivers/net/mlx4/en_netdev.c
  soc2015/clord/head/sys/ofed/drivers/net/mlx4/port.c
  soc2015/clord/head/sys/ofed/include/linux/mlx4/device.h
  soc2015/clord/head/sys/sys/nlist_aout.h
  soc2015/clord/head/sys/sys/param.h
  soc2015/clord/head/sys/sys/proc.h
  soc2015/clord/head/sys/sys/systm.h
  soc2015/clord/head/sys/sys/user.h
  soc2015/clord/head/sys/sys/vnode.h
  soc2015/clord/head/sys/ufs/ffs/ffs_softdep.c
  soc2015/clord/head/sys/ufs/ffs/ffs_suspend.c
  soc2015/clord/head/sys/ufs/ffs/ffs_vfsops.c
  soc2015/clord/head/sys/ufs/ffs/ffs_vnops.c
  soc2015/clord/head/sys/ufs/ufs/ufs_bmap.c
  soc2015/clord/head/sys/ufs/ufs/ufs_dirhash.c
  soc2015/clord/head/sys/vm/vm_object.c
  soc2015/clord/head/sys/vm/vm_object.h
  soc2015/clord/head/sys/vm/vm_page.c
  soc2015/clord/head/sys/x86/iommu/busdma_dmar.c
  soc2015/clord/head/sys/x86/iommu/intel_idpgtbl.c
  soc2015/clord/head/sys/x86/iommu/intel_qi.c
  soc2015/clord/head/tests/Makefile
  soc2015/clord/head/tests/sys/kern/ptrace_test.c
  soc2015/clord/head/usr.bin/Makefile
  soc2015/clord/head/usr.bin/man/Makefile
  soc2015/clord/head/usr.bin/mandoc/Makefile
  soc2015/clord/head/usr.bin/vmstat/vmstat.8
  soc2015/clord/head/usr.bin/vmstat/vmstat.c
  soc2015/clord/head/usr.sbin/bhyve/   (props changed)
  soc2015/clord/head/usr.sbin/bhyve/bhyverun.c
  soc2015/clord/head/usr.sbin/ctld/login.c
  soc2015/clord/head/usr.sbin/pmcstat/pmcstat.8
  soc2015/clord/head/usr.sbin/pmcstat/pmcstat.c
  soc2015/clord/head/usr.sbin/pw/Makefile
  soc2015/clord/head/usr.sbin/pw/grupd.c
  soc2015/clord/head/usr.sbin/pw/pw.8
  soc2015/clord/head/usr.sbin/pw/pw.c
  soc2015/clord/head/usr.sbin/pw/pw_conf.c
  soc2015/clord/head/usr.sbin/pw/pw_group.c
  soc2015/clord/head/usr.sbin/pw/pw_user.c
  soc2015/clord/head/usr.sbin/pw/pwupd.c
  soc2015/clord/head/usr.sbin/pw/pwupd.h
  soc2015/clord/head/usr.sbin/yppoll/yppoll.8
  soc2015/clord/head/usr.sbin/yppoll/yppoll.c
  soc2015/clord/head/usr.sbin/yppush/yppush_main.c

Modified: soc2015/clord/head/Makefile.inc1
==============================================================================
--- soc2015/clord/head/Makefile.inc1	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/Makefile.inc1	Wed Jun  3 22:54:29 2015	(r286620)
@@ -1276,8 +1276,8 @@
 .endif
 
 .if ${BOOTSTRAPPING} < 1000002
-_m4=		lib/libohash \
-		usr.bin/m4
+_libohash=	lib/libohash
+_m4=		usr.bin/m4
 
 ${_bt}-usr.bin/m4: ${_bt}-lib/libohash
 .endif
@@ -1363,6 +1363,15 @@
 .ORDER: ${_kerberos5_bootstrap_tools:C/^/${_bt}-/g}
 .endif
 
+.if ${MK_MANDOCDB} != "no"
+_libohash?=	lib/libohash
+_makewhatis=	lib/libsqlite3 \
+		usr.bin/mandoc
+${_bt}-usr.bin/mandoc: ${_bt}-lib/libohash ${_bt}-lib/libsqlite3
+.else
+_makewhatis=usr.bin/makewhatis
+.endif
+
 # Rebuild up-to-date libmd for xinstall
 ${_bt}-usr.bin/xinstall: ${_bt}-lib/libmd
 
@@ -1383,7 +1392,8 @@
     ${_awk} \
     ${_cat} \
     usr.bin/lorder \
-    usr.bin/makewhatis \
+    ${_libohash} \
+    ${_makewhatis} \
     usr.bin/rpcgen \
     ${_sed} \
     ${_yacc} \
@@ -1755,6 +1765,7 @@
 cddl/lib/libzfs_core__L: cddl/lib/libnvpair__L
 cddl/lib/libzfs__L: lib/libgeom__L
 cddl/lib/libctf__L: lib/libz__L
+.endif
 # cddl/lib/libdtrace requires lib/libproc and lib/librtld_db; it's only built
 # on select architectures though (see cddl/lib/Makefile)
 .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" || \
@@ -1762,7 +1773,6 @@
 	${MACHINE_CPUARCH} == "arm"
 _prebuild_libs+=	lib/libproc lib/librtld_db
 .endif
-.endif
 
 .if ${MK_CRYPT} != "no"
 .if ${MK_OPENSSL} != "no"
@@ -1806,9 +1816,10 @@
 kerberos5/lib/libwind__L: kerberos5/lib/libroken__L lib/libcom_err__L
 kerberos5/lib/libheimbase__L: lib/libthr__L
 kerberos5/lib/libheimipcc__L: kerberos5/lib/libroken__L kerberos5/lib/libheimbase__L lib/libthr__L
-lib/libsqlite3__L: lib/libthr__L
 .endif
 
+lib/libsqlite3__L: lib/libthr__L
+
 .if ${MK_GSSAPI} != "no"
 _lib_libgssapi=	lib/libgssapi
 .endif

Modified: soc2015/clord/head/ObsoleteFiles.inc
==============================================================================
--- soc2015/clord/head/ObsoleteFiles.inc	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/ObsoleteFiles.inc	Wed Jun  3 22:54:29 2015	(r286620)
@@ -38,6 +38,10 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20150528: PCI IOV device driver methods moved to a separate kobj interface.
+OLD_FILES+=usr/share/man/man9/PCI_ADD_VF.9
+OLD_FILES+=usr/share/man/man9/PCI_INIT_IOV.9
+OLD_FILES+=usr/share/man/man9/PCI_UNINIT_IOV.9
 # 20150525: new clang import which bumps version from 3.6.0 to 3.6.1.
 OLD_FILES+=usr/lib/clang/3.6.0/include/__stddef_max_align_t.h
 OLD_FILES+=usr/lib/clang/3.6.0/include/__wmmintrin_aes.h

Modified: soc2015/clord/head/bin/ps/ps.1
==============================================================================
--- soc2015/clord/head/bin/ps/ps.1	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/bin/ps/ps.1	Wed Jun  3 22:54:29 2015	(r286620)
@@ -29,7 +29,7 @@
 .\"     @(#)ps.1	8.3 (Berkeley) 4/18/94
 .\" $FreeBSD$
 .\"
-.Dd May 22, 2015
+.Dd May 27, 2015
 .Dt PS 1
 .Os
 .Sh NAME
@@ -350,6 +350,9 @@
 .In sys/proc.h :
 .Bl -column P2_INHERIT_PROTECTED 0x00000001
 .It Dv "P2_INHERIT_PROTECTED" Ta No "0x00000001" Ta "New children get P_PROTECTED"
+.It Dv "P2_NOTRACE" Ta No "0x00000002" Ta "No ptrace(2) attach or coredumps"
+.It Dv "P2_NOTRACE_EXEC" Ta No "0x00000004" Ta "Keep P2_NOPTRACE on exec(2)"
+.It Dv "P2_AST_SU" Ta No "0x00000008" Ta "Handles SU ast for kthreads"
 .El
 .It Cm label
 The MAC label of the process.

Modified: soc2015/clord/head/bin/ps/ps.c
==============================================================================
--- soc2015/clord/head/bin/ps/ps.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/bin/ps/ps.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -180,7 +180,7 @@
 	KINFO_STR *ks;
 	struct varent *vent;
 	struct winsize ws = { .ws_row = 0 };
-	const char *nlistf, *memf, *fmtstr, *str;
+	const char *nlistf, *memf, *str;
 	char *cols;
 	int all, ch, elem, flag, _fmt, i, lineno, linelen, left;
 	int descendancy, nentries, nkept, nselectors;
@@ -649,11 +649,6 @@
 		linelen = 0;
 		xo_open_instance("process");
 		STAILQ_FOREACH(vent, &varlist, next_ve) {
-	        	if (vent->var->flag & LJUST)
-				fmtstr = "%-*s";
-			else
-				fmtstr = "%*s";
-
 			ks = STAILQ_FIRST(&kinfo[i].ki_ks);
 			STAILQ_REMOVE_HEAD(&kinfo[i].ki_ks, ks_next);
 			/* Truncate rightmost column if necessary.  */

Modified: soc2015/clord/head/contrib/diff/src/context.c
==============================================================================
--- soc2015/clord/head/contrib/diff/src/context.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/diff/src/context.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -62,7 +62,7 @@
 	{
 	  time_t sec = inf->stat.st_mtime;
 	  verify (info_preserved, sizeof inf->stat.st_mtime <= sizeof sec);
-	  sprintf (buf, "%jd.%.9d", (intmax_t)sec, nsec);
+	  sprintf (buf, "%jd.%.9ld", (intmax_t)sec, nsec);
 	}
       fprintf (outfile, "%s %s\t%s\n", mark, inf->name, buf);
     }

Modified: soc2015/clord/head/contrib/elftoolchain/common/_elftc.h
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/common/_elftc.h	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/common/_elftc.h	Wed Jun  3 22:54:29 2015	(r286620)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: _elftc.h 3175 2015-03-27 17:21:24Z emaste $
+ * $Id: _elftc.h 3209 2015-05-17 13:40:46Z kaiwang27 $
  */
 
 /**
@@ -342,12 +342,13 @@
 
 
 #if defined(__GLIBC__) || defined(__linux__)
-
+#ifndef _GNU_SOURCE
 /*
  * GLIBC based systems have a global 'char *' pointer referencing
  * the executable's name.
  */
 extern const char *program_invocation_short_name;
+#endif	/* !_GNU_SOURCE */
 
 #define	ELFTC_GETPROGNAME()	program_invocation_short_name
 

Modified: soc2015/clord/head/contrib/elftoolchain/common/elfdefinitions.h
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/common/elfdefinitions.h	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/common/elfdefinitions.h	Wed Jun  3 22:54:29 2015	(r286620)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: elfdefinitions.h 3178 2015-03-30 18:29:13Z emaste $
+ * $Id: elfdefinitions.h 3198 2015-05-14 18:36:19Z emaste $
  */
 
 /*
@@ -565,6 +565,7 @@
 _ELF_DEFINE_EM(EM_386,              3, "Intel 80386")			\
 _ELF_DEFINE_EM(EM_68K,              4, "Motorola 68000")		\
 _ELF_DEFINE_EM(EM_88K,              5, "Motorola 88000")		\
+_ELF_DEFINE_EM(EM_IAMCU,            6, "Intel MCU")			\
 _ELF_DEFINE_EM(EM_860,              7, "Intel 80860")			\
 _ELF_DEFINE_EM(EM_MIPS,             8, "MIPS I Architecture")		\
 _ELF_DEFINE_EM(EM_S370,             9, "IBM System/370 Processor")	\

Modified: soc2015/clord/head/contrib/elftoolchain/elfcopy/elfcopy.h
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/elfcopy/elfcopy.h	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/elfcopy/elfcopy.h	Wed Jun  3 22:54:29 2015	(r286620)
@@ -23,7 +23,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $Id: elfcopy.h 3173 2015-03-27 16:46:13Z emaste $
+ * $Id: elfcopy.h 3221 2015-05-24 23:42:43Z kaiwang27 $
  */
 
 #include <sys/queue.h>
@@ -237,6 +237,7 @@
 	uint64_t	*secndx;	/* section index map. */
 	uint64_t	*symndx;	/* symbol index map. */
 	unsigned char	*v_rel;		/* symbols needed by relocation. */
+	unsigned char	*v_grp;		/* symbols refered by section group. */
 	unsigned char	*v_secsym;	/* sections with section symbol. */
 	STAILQ_HEAD(, segment) v_seg;	/* list of segments. */
 	STAILQ_HEAD(, sec_action) v_sac;/* list of section operations. */

Modified: soc2015/clord/head/contrib/elftoolchain/elfcopy/main.c
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/elfcopy/main.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/elfcopy/main.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -39,7 +39,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: main.c 3174 2015-03-27 17:13:41Z emaste $");
+ELFTC_VCSID("$Id: main.c 3216 2015-05-23 21:16:36Z kaiwang27 $");
 
 enum options
 {
@@ -404,8 +404,19 @@
 	 * Insert SHDR table into the internal section list as a "pseudo"
 	 * section, so later it will get sorted and resynced just as "normal"
 	 * sections.
+	 *
+	 * Under FreeBSD, Binutils objcopy always put the section header
+	 * at the end of all the sections. We want to do the same here.
+	 *
+	 * However, note that the behaviour is still different with Binutils:
+	 * elfcopy checks the FreeBSD OSABI tag to tell whether it needs to
+	 * move the section headers, while Binutils is probably configured
+	 * this way when it's compiled on FreeBSD.
 	 */
-	shtab = insert_shtab(ecp, 0);
+	if (oeh.e_ident[EI_OSABI] == ELFOSABI_FREEBSD)
+		shtab = insert_shtab(ecp, 1);
+	else
+		shtab = insert_shtab(ecp, 0);
 
 	/*
 	 * Resync section offsets in the output object. This is needed
@@ -485,6 +496,11 @@
 			free(sec);
 		}
 	}
+
+	if (ecp->secndx != NULL) {
+		free(ecp->secndx);
+		ecp->secndx = NULL;
+	}
 }
 
 /* Create a temporary file. */

Modified: soc2015/clord/head/contrib/elftoolchain/elfcopy/sections.c
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/elfcopy/sections.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/elfcopy/sections.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -34,7 +34,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: sections.c 3185 2015-04-11 08:56:34Z kaiwang27 $");
+ELFTC_VCSID("$Id: sections.c 3220 2015-05-24 23:42:39Z kaiwang27 $");
 
 static void	add_gnu_debuglink(struct elfcopy *ecp);
 static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc);
@@ -56,6 +56,7 @@
 static void	print_section(struct section *s);
 static void	*read_section(struct section *s, size_t *size);
 static void	update_reloc(struct elfcopy *ecp, struct section *s);
+static void	update_section_group(struct elfcopy *ecp, struct section *s);
 
 int
 is_remove_section(struct elfcopy *ecp, const char *name)
@@ -552,6 +553,14 @@
 		    (s->type == SHT_REL || s->type == SHT_RELA))
 			filter_reloc(ecp, s);
 
+		/*
+		 * The section indices in the SHT_GROUP section needs
+		 * to be updated since we might have stripped some
+		 * sections and changed section numbering.
+		 */
+		if (s->type == SHT_GROUP)
+			update_section_group(ecp, s);
+
 		if (is_modify_section(ecp, s->name))
 			modify_section(ecp, s);
 
@@ -571,6 +580,71 @@
 	}
 }
 
+
+/*
+ * Update section group section. The section indices in the SHT_GROUP
+ * section need update after section numbering changed.
+ */
+static void
+update_section_group(struct elfcopy *ecp, struct section *s)
+{
+	GElf_Shdr	 ish;
+	Elf_Data	*id;
+	uint32_t	*ws, *wd;
+	uint64_t	 n;
+	size_t		 ishnum;
+	int		 i, j;
+
+	if (!elf_getshnum(ecp->ein, &ishnum))
+		errx(EXIT_FAILURE, "elf_getshnum failed: %s",
+		    elf_errmsg(-1));
+
+	if (gelf_getshdr(s->is, &ish) == NULL)
+		errx(EXIT_FAILURE, "gelf_getehdr() failed: %s",
+		    elf_errmsg(-1));
+
+	if ((id = elf_getdata(s->is, NULL)) == NULL)
+		errx(EXIT_FAILURE, "elf_getdata() failed: %s",
+		    elf_errmsg(-1));
+
+	if (ish.sh_size == 0)
+		return;
+
+	if (ish.sh_entsize == 0)
+		ish.sh_entsize = 4;
+
+	ws = id->d_buf;
+
+	/* We only support COMDAT section. */
+#ifndef GRP_COMDAT
+#define	GRP_COMDAT 0x1
+#endif
+	if ((*ws & GRP_COMDAT) == 0)
+		return;
+
+	if ((s->buf = malloc(ish.sh_size)) == NULL)
+		err(EXIT_FAILURE, "malloc failed");
+
+	s->sz = ish.sh_size;
+
+	wd = s->buf;
+
+	/* Copy the flag word as-is. */
+	*wd = *ws;
+
+	/* Update the section indices. */
+	n = ish.sh_size / ish.sh_entsize;
+	for(i = 1, j = 1; (uint64_t)i < n; i++) {
+		if (ws[i] != SHN_UNDEF && ws[i] < ishnum &&
+		    ecp->secndx[ws[i]] != 0)
+			wd[j++] = ecp->secndx[ws[i]];
+		else
+			s->sz -= 4;
+	}
+
+	s->nocopy = 1;
+}
+
 /*
  * Filter relocation entries, only keep those entries whose
  * symbol is in the keep list.
@@ -1028,8 +1102,11 @@
 				osh.sh_flags |= SHF_WRITE;
 			if (sec_flags & SF_CODE)
 				osh.sh_flags |= SHF_EXECINSTR;
-		} else
+		} else {
 			osh.sh_flags = ish.sh_flags;
+			if (ish.sh_type == SHT_REL || ish.sh_type == SHT_RELA)
+				osh.sh_flags |= SHF_INFO_LINK;
+		}
 	}
 
 	if (name == NULL)

Modified: soc2015/clord/head/contrib/elftoolchain/elfcopy/symbols.c
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/elfcopy/symbols.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/elfcopy/symbols.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -33,7 +33,7 @@
 
 #include "elfcopy.h"
 
-ELFTC_VCSID("$Id: symbols.c 3191 2015-05-04 17:07:01Z jkoshy $");
+ELFTC_VCSID("$Id: symbols.c 3222 2015-05-24 23:47:23Z kaiwang27 $");
 
 /* Symbol table buffer structure. */
 struct symbuf {
@@ -77,7 +77,8 @@
 static int	lookup_exact_string(hash_head *hash, const char *buf,
 		    const char *s);
 static int	generate_symbols(struct elfcopy *ecp);
-static void	mark_symbols(struct elfcopy *ecp, size_t sc);
+static void	mark_reloc_symbols(struct elfcopy *ecp, size_t sc);
+static void	mark_section_group_symbols(struct elfcopy *ecp, size_t sc);
 static int	match_wildcard(const char *name, const char *pattern);
 uint32_t	str_hash(const char *s);
 
@@ -160,6 +161,10 @@
 	if (BIT_ISSET(ecp->v_rel, i))
 		return (1);
 
+	/* Symbols refered by COMDAT sections are needed. */
+	if (BIT_ISSET(ecp->v_grp, i))
+		return (1);
+
 	/*
 	 * For relocatable files (.o files), global and weak symbols
 	 * are needed.
@@ -207,7 +212,10 @@
 		return (1);
 
 	if (ecp->v_rel == NULL)
-		mark_symbols(ecp, sc);
+		mark_reloc_symbols(ecp, sc);
+
+	if (ecp->v_grp == NULL)
+		mark_section_group_symbols(ecp, sc);
 
 	if (is_needed_symbol(ecp, i, s))
 		return (0);
@@ -233,7 +241,7 @@
  * Mark symbols refered by relocation entries.
  */
 static void
-mark_symbols(struct elfcopy *ecp, size_t sc)
+mark_reloc_symbols(struct elfcopy *ecp, size_t sc)
 {
 	const char	*name;
 	Elf_Data	*d;
@@ -311,6 +319,49 @@
 		    elf_errmsg(elferr));
 }
 
+static void
+mark_section_group_symbols(struct elfcopy *ecp, size_t sc)
+{
+	const char	*name;
+	Elf_Scn		*s;
+	GElf_Shdr	 sh;
+	size_t		 indx;
+	int		 elferr;
+
+	ecp->v_grp = calloc((sc + 7) / 8, 1);
+	if (ecp->v_grp == NULL)
+		err(EXIT_FAILURE, "calloc failed");
+
+	if (elf_getshstrndx(ecp->ein, &indx) == 0)
+		errx(EXIT_FAILURE, "elf_getshstrndx failed: %s",
+		    elf_errmsg(-1));
+
+	s = NULL;
+	while ((s = elf_nextscn(ecp->ein, s)) != NULL) {
+		if (gelf_getshdr(s, &sh) != &sh)
+			errx(EXIT_FAILURE, "elf_getshdr failed: %s",
+			    elf_errmsg(-1));
+
+		if (sh.sh_type != SHT_GROUP)
+			continue;
+
+		if ((name = elf_strptr(ecp->ein, indx, sh.sh_name)) == NULL)
+			errx(EXIT_FAILURE, "elf_strptr failed: %s",
+			    elf_errmsg(-1));
+		if (is_remove_section(ecp, name))
+			continue;
+
+		if (sh.sh_info > 0 && sh.sh_info < sc)
+			BIT_SET(ecp->v_grp, sh.sh_info);
+		else if (sh.sh_info != 0)
+			warnx("invalid symbox index");
+	}
+	elferr = elf_errno();
+	if (elferr != 0)
+		errx(EXIT_FAILURE, "elf_nextscn failed: %s",
+		    elf_errmsg(elferr));
+}
+
 static int
 generate_symbols(struct elfcopy *ecp)
 {
@@ -351,6 +402,8 @@
 	ecp->symtab->buf = sy_buf;
 	ecp->strtab->buf = st_buf;
 
+	gsym = NULL;
+
 	/*
 	 * Create bit vector v_secsym, which is used to mark sections
 	 * that already have corresponding STT_SECTION symbols.
@@ -384,7 +437,7 @@
 	/* Symbol table should exist if this function is called. */
 	if (symndx == 0) {
 		warnx("can't find .strtab section");
-		return (0);
+		goto clean;
 	}
 
 	/* Locate .symtab of input object. */
@@ -413,7 +466,6 @@
 	 * output object, it is used by update_reloc() later to update
 	 * relocation information.
 	 */
-	gsym = NULL;
 	sc = ish.sh_size / ish.sh_entsize;
 	if (sc > 0) {
 		ecp->symndx = calloc(sc, sizeof(*ecp->symndx));
@@ -427,7 +479,7 @@
 			if (elferr != 0)
 				errx(EXIT_FAILURE, "elf_getdata failed: %s",
 				    elf_errmsg(elferr));
-			return (0);
+			goto clean;
 		}
 	} else
 		return (0);
@@ -523,7 +575,7 @@
 	 * check if that only local symbol is the reserved symbol.
 	 */
 	if (sy_buf->nls <= 1 && sy_buf->ngs == 0)
-		return (0);
+		goto clean;
 
 	/*
 	 * Create STT_SECTION symbols for sections that do not already
@@ -550,6 +602,7 @@
 			sym.st_value = s->vma;
 			sym.st_size  = 0;
 			sym.st_info  = GELF_ST_INFO(STB_LOCAL, STT_SECTION);
+			sym.st_other = STV_DEFAULT;
 			/*
 			 * Don't let add_to_symtab() touch sym.st_shndx.
 			 * In this case, we know the index already.
@@ -583,6 +636,12 @@
 	}
 
 	return (1);
+
+clean:
+	free(gsym);
+	free_symtab(ecp);
+
+	return (0);
 }
 
 void
@@ -624,7 +683,9 @@
 	if (((ecp->flags & SYMTAB_INTACT) == 0) && !generate_symbols(ecp)) {
 		TAILQ_REMOVE(&ecp->v_sec, ecp->symtab, sec_list);
 		TAILQ_REMOVE(&ecp->v_sec, ecp->strtab, sec_list);
+		free(ecp->symtab->buf);
 		free(ecp->symtab);
+		free(ecp->strtab->buf);
 		free(ecp->strtab);
 		ecp->symtab = NULL;
 		ecp->strtab = NULL;
@@ -697,6 +758,23 @@
 			}
 		}
 	}
+
+	if (ecp->symndx != NULL) {
+		free(ecp->symndx);
+		ecp->symndx = NULL;
+	}
+	if (ecp->v_rel != NULL) {
+		free(ecp->v_rel);
+		ecp->v_rel = NULL;
+	}
+	if (ecp->v_grp != NULL) {
+		free(ecp->v_grp);
+		ecp->v_grp = NULL;
+	}
+	if (ecp->v_secsym != NULL) {
+		free(ecp->v_secsym);
+		ecp->v_secsym = NULL;
+	}
 }
 
 void

Modified: soc2015/clord/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -26,7 +26,7 @@
 
 #include "_libdwarf.h"
 
-ELFTC_VCSID("$Id: libdwarf_reloc.c 3149 2015-02-15 19:00:06Z emaste $");
+ELFTC_VCSID("$Id: libdwarf_reloc.c 3198 2015-05-14 18:36:19Z emaste $");
 
 Dwarf_Unsigned
 _dwarf_get_reloc_type(Dwarf_P_Debug dbg, int is64)
@@ -75,6 +75,7 @@
 			return (4);
 		break;
 	case EM_386:
+	case EM_IAMCU:
 		if (rel_type == R_386_32)
 			return (4);
 		break;

Modified: soc2015/clord/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
==============================================================================
--- soc2015/clord/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c	Wed Jun  3 20:48:28 2015	(r286619)
+++ soc2015/clord/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c	Wed Jun  3 22:54:29 2015	(r286620)
@@ -36,7 +36,7 @@
 
 #include "_libelftc.h"
 
-ELFTC_VCSID("$Id: libelftc_dem_gnu3.c 3194 2015-05-05 17:55:16Z emaste $");
+ELFTC_VCSID("$Id: libelftc_dem_gnu3.c 3212 2015-05-17 13:40:55Z kaiwang27 $");
 
 /**
  * @file cpp_demangle.c
@@ -50,7 +50,7 @@
 
 enum type_qualifier {
 	TYPE_PTR, TYPE_REF, TYPE_CMX, TYPE_IMG, TYPE_EXT, TYPE_RST, TYPE_VAT,
-	TYPE_CST
+	TYPE_CST, TYPE_VEC
 };
 
 struct vector_type_qualifier {
@@ -84,6 +84,7 @@
 	int			 func_type;
 	const char		*cur;		/* current mangled name ptr */
 	const char		*last_sname;	/* last source name */
+	int			 push_head;
 };
 
 #define	CPP_DEMANGLE_TRY_LIMIT	128
@@ -112,6 +113,8 @@
 static int	cpp_demangle_read_encoding(struct cpp_demangle_data *);
 static int	cpp_demangle_read_expr_primary(struct cpp_demangle_data *);
 static int	cpp_demangle_read_expression(struct cpp_demangle_data *);
+static int	cpp_demangle_read_expression_flat(struct cpp_demangle_data *,
+		    char **);
 static int	cpp_demangle_read_expression_binary(struct cpp_demangle_data *,
 		    const char *, size_t);
 static int	cpp_demangle_read_expression_unary(struct cpp_demangle_data *,
@@ -123,8 +126,12 @@
 static int	cpp_demangle_local_source_name(struct cpp_demangle_data *ddata);
 static int	cpp_demangle_read_local_name(struct cpp_demangle_data *);
 static int	cpp_demangle_read_name(struct cpp_demangle_data *);
+static int	cpp_demangle_read_name_flat(struct cpp_demangle_data *,
+		    char**);
 static int	cpp_demangle_read_nested_name(struct cpp_demangle_data *);
 static int	cpp_demangle_read_number(struct cpp_demangle_data *, long *);
+static int	cpp_demangle_read_number_as_string(struct cpp_demangle_data *,
+		    char **);
 static int	cpp_demangle_read_nv_offset(struct cpp_demangle_data *);
 static int	cpp_demangle_read_offset(struct cpp_demangle_data *);
 static int	cpp_demangle_read_offset_number(struct cpp_demangle_data *);
@@ -138,6 +145,8 @@
 static int	cpp_demangle_read_tmpl_args(struct cpp_demangle_data *);
 static int	cpp_demangle_read_tmpl_param(struct cpp_demangle_data *);
 static int	cpp_demangle_read_type(struct cpp_demangle_data *, int);
+static int	cpp_demangle_read_type_flat(struct cpp_demangle_data *,
+		    char **);
 static int	cpp_demangle_read_uqname(struct cpp_demangle_data *);
 static int	cpp_demangle_read_v_offset(struct cpp_demangle_data *);
 static char	*decode_fp_to_double(const char *, size_t);
@@ -156,8 +165,6 @@
 static int	vector_type_qualifier_push(struct vector_type_qualifier *,
 		    enum type_qualifier);
 
-static int cpp_demangle_gnu3_push_head;
-
 /**
  * @brief Decode the input string by IA-64 C++ ABI style.
  *
@@ -190,7 +197,6 @@
 	if (!cpp_demangle_data_init(&ddata, org + 2))
 		return (NULL);
 
-	cpp_demangle_gnu3_push_head = 0;
 	rtn = NULL;
 
 	if (!cpp_demangle_read_encoding(&ddata))
@@ -277,6 +283,7 @@
 	d->func_type = 0;
 	d->cur = cur;
 	d->last_sname = NULL;
+	d->push_head = 0;
 
 	return (1);
 
@@ -309,7 +316,6 @@
 	fp = ddata->cur;
 	while (*ddata->cur != 'E')
 		++ddata->cur;
-	++ddata->cur;
 
 	if ((f = decoder(fp, ddata->cur - fp)) == NULL)
 		return (0);
@@ -320,6 +326,8 @@
 
 	free(f);
 
+	++ddata->cur;
+
 	return (rtn);
 }
 
@@ -331,7 +339,7 @@
 	if (ddata == NULL || str == NULL || len == 0)
 		return (0);
 
-	if (cpp_demangle_gnu3_push_head > 0)
+	if (ddata->push_head > 0)
 		return (vector_str_push(&ddata->output_tmp, str, len));
 
 	return (vector_str_push(&ddata->output, str, len));
@@ -403,7 +411,8 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, "*", 1))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
@@ -414,7 +423,8 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, "&", 1))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
@@ -425,7 +435,8 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, " complex", 8))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
@@ -434,23 +445,26 @@
 			if (!cpp_demangle_push_str(ddata, " imaginary", 10))
 				goto clean;
 			if (type_str != NULL) {
-				if (!vector_str_push(&subst_v, " imaginary", 10))
+				if (!vector_str_push(&subst_v, " imaginary",
+				    10))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
 
 		case TYPE_EXT:
-			if (e_idx > v->ext_name.size - 1)
+			if (v->ext_name.size == 0 ||
+			    e_idx > v->ext_name.size - 1)
 				goto clean;
-			if ((e_len = strlen(v->ext_name.container[e_idx])) == 0)
+			if ((e_len = strlen(v->ext_name.container[e_idx])) ==
+			    0)
 				goto clean;
-			if ((buf = malloc(sizeof(char) * (e_len + 1))) == NULL)
+			if ((buf = malloc(e_len + 2)) == NULL)
 				goto clean;
-
-			memcpy(buf, " ", 1);
-			memcpy(buf + 1, v->ext_name.container[e_idx], e_len);
+			snprintf(buf, e_len + 2, " %s",
+			    v->ext_name.container[e_idx]);
 
 			if (!cpp_demangle_push_str(ddata, buf, e_len + 1)) {
 				free(buf);
@@ -463,7 +477,8 @@
 					free(buf);
 					goto clean;
 				}
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v)) {
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v)) {
 					free(buf);
 					goto clean;
 				}
@@ -478,7 +493,8 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, " restrict", 9))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
@@ -489,7 +505,8 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, " volatile", 9))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
@@ -500,11 +517,42 @@
 			if (type_str != NULL) {
 				if (!vector_str_push(&subst_v, " const", 6))
 					goto clean;
-				if (!cpp_demangle_push_subst_v(ddata, &subst_v))
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v))
 					goto clean;
 			}
 			break;
 
+		case TYPE_VEC:
+			if (v->ext_name.size == 0 ||
+			    e_idx > v->ext_name.size - 1)
+				goto clean;
+			if ((e_len = strlen(v->ext_name.container[e_idx])) ==
+			    0)
+				goto clean;
+			if ((buf = malloc(e_len + 12)) == NULL)
+				goto clean;
+			snprintf(buf, e_len + 12, " __vector(%s)",
+			    v->ext_name.container[e_idx]);
+			if (!cpp_demangle_push_str(ddata, buf, e_len + 11)) {
+				free(buf);
+				goto clean;
+			}
+			if (type_str != NULL) {
+				if (!vector_str_push(&subst_v, buf,
+				    e_len + 11)) {
+					free(buf);
+					goto clean;
+				}
+				if (!cpp_demangle_push_subst_v(ddata,
+				    &subst_v)) {
+					free(buf);
+					goto clean;
+				}
+			}
+			free(buf);
+			++e_idx;
+			break;
 		};
 		--idx;
 	}
@@ -655,10 +703,14 @@
 
 	switch (*ddata->cur) {
 	case 'b':
+		if (*(ddata->cur + 2) != 'E')
+			return (0);
 		switch (*(++ddata->cur)) {
 		case '0':
+			ddata->cur += 2;
 			return (cpp_demangle_push_str(ddata, "false", 5));
 		case '1':
+			ddata->cur += 2;
 			return (cpp_demangle_push_str(ddata, "true", 4));
 		default:
 			return (0);
@@ -707,7 +759,8 @@
 			++ddata->cur;
 		}
 		++ddata->cur;
-		return (cpp_demangle_push_str(ddata, num, ddata->cur - num));
+		return (cpp_demangle_push_str(ddata, num,
+		    ddata->cur - num - 1));
 
 	default:
 		return (0);
@@ -999,6 +1052,38 @@
 }
 
 static int
+cpp_demangle_read_expression_flat(struct cpp_demangle_data *ddata, char **str)
+{
+	struct vector_str *output;
+	size_t i, p_idx, idx, exp_len;
+	char *exp;
+
+	output = ddata->push_head > 0 ? &ddata->output_tmp :
+	    &ddata->output;
+
+	p_idx = output->size;
+
+	if (!cpp_demangle_read_expression(ddata))
+		return (0);
+
+	if ((exp = vector_str_substr(output, p_idx, output->size - 1,
+	    &exp_len)) == NULL)
+		return (0);
+
+	idx = output->size;
+	for (i = p_idx; i < idx; ++i) {
+		if (!vector_str_pop(output)) {
+			free(exp);
+			return (0);
+		}
+	}
+
+	*str = exp;
+
+	return (1);
+}
+
+static int
 cpp_demangle_read_expression_binary(struct cpp_demangle_data *ddata,
     const char *name, size_t len)
 {
@@ -1127,12 +1212,65 @@
 static int
 cpp_demangle_read_encoding(struct cpp_demangle_data *ddata)
 {
+	char *name, *type, *num_str;
+	long offset;
+	int rtn;
 
 	if (ddata == NULL || *ddata->cur == '\0')
 		return (0);
 
 	/* special name */
 	switch (SIMPLE_HASH(*ddata->cur, *(ddata->cur + 1))) {
+	case SIMPLE_HASH('G', 'A'):
+		if (!cpp_demangle_push_str(ddata, "hidden alias for ", 17))
+			return (0);
+		ddata->cur += 2;
+		if (*ddata->cur == '\0')
+			return (0);
+		return (cpp_demangle_read_encoding(ddata));
+
+	case SIMPLE_HASH('G', 'R'):
+		if (!cpp_demangle_push_str(ddata, "reference temporary #", 21))
+			return (0);
+		ddata->cur += 2;
+		if (*ddata->cur == '\0')
+			return (0);
+		if (!cpp_demangle_read_name_flat(ddata, &name))
+			return (0);
+		rtn = 0;
+		if (!cpp_demangle_read_number_as_string(ddata, &num_str))
+			goto clean1;
+		if (!cpp_demangle_push_str(ddata, num_str, strlen(num_str)))
+			goto clean2;
+		if (!cpp_demangle_push_str(ddata, " for ", 5))
+			goto clean2;
+		if (!cpp_demangle_push_str(ddata, name, strlen(name)))
+			goto clean2;
+		rtn = 1;
+	clean2:
+		free(num_str);
+	clean1:
+		free(name);
+		return (rtn);
+
+	case SIMPLE_HASH('G', 'T'):
+		ddata->cur += 2;
+		if (*ddata->cur == '\0')
+			return (0);
+		switch (*ddata->cur) {
+		case 'n':
+			if (!cpp_demangle_push_str(ddata,
+			    "non-transaction clone for ", 26))
+				return (0);
+		case 't':
+		default:
+			if (!cpp_demangle_push_str(ddata,
+			    "transaction clone for ", 22))
+				return (0);
+		}
+		++ddata->cur;
+		return (cpp_demangle_read_encoding(ddata));
+
 	case SIMPLE_HASH('G', 'V'):
 		/* sentry object for 1 time init */
 		if (!cpp_demangle_push_str(ddata, "guard variable for ", 20))
@@ -1154,14 +1292,49 @@
 			return (0);
 		return (cpp_demangle_read_encoding(ddata));
 
+	case SIMPLE_HASH('T', 'C'):
+		/* construction vtable */
+		if (!cpp_demangle_push_str(ddata, "construction vtable for ",
+		    24))
+			return (0);
+		ddata->cur += 2;
+		if (*ddata->cur == '\0')
+			return (0);
+		if (!cpp_demangle_read_type_flat(ddata, &type))
+			return (0);
+		rtn = 0;
+		if (!cpp_demangle_read_number(ddata, &offset))
+			goto clean3;
+		if (*ddata->cur++ != '_')
+			goto clean3;
+		if (!cpp_demangle_read_type(ddata, 0))
+			goto clean3;
+		if (!cpp_demangle_push_str(ddata, "-in-", 4))
+			goto clean3;
+		if (!cpp_demangle_push_str(ddata, type, strlen(type)))
+			goto clean3;
+		rtn = 1;
+	clean3:
+		free(type);
+		return (rtn);
+
 	case SIMPLE_HASH('T', 'D'):
 		/* typeinfo common proxy */
 		break;
 
+	case SIMPLE_HASH('T', 'F'):
+		/* typeinfo fn */
+		if (!cpp_demangle_push_str(ddata, "typeinfo fn for ", 16))
+			return (0);

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



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