svn commit: r309768 - in projects/clang391-import: . bin/dd bin/ps cddl/compat/opensolaris/include cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid cddl/contrib/opensolaris/cmd/dtrace/test/t...
Dimitry Andric
dim at FreeBSD.org
Fri Dec 9 20:57:48 UTC 2016
Author: dim
Date: Fri Dec 9 20:57:43 2016
New Revision: 309768
URL: https://svnweb.freebsd.org/changeset/base/309768
Log:
Merge ^/head r309519 through r309757.
Added:
projects/clang391-import/contrib/libarchive/libarchive/test/test_compat_plexus_archiver_tar.c
- copied unchanged from r309757, head/contrib/libarchive/libarchive/test/test_compat_plexus_archiver_tar.c
projects/clang391-import/contrib/libarchive/libarchive/test/test_compat_plexus_archiver_tar.tar.uu
- copied unchanged from r309757, head/contrib/libarchive/libarchive/test/test_compat_plexus_archiver_tar.tar.uu
projects/clang391-import/lib/libproc/crc32.c
- copied unchanged from r309757, head/lib/libproc/crc32.c
projects/clang391-import/lib/libproc/crc32.h
- copied unchanged from r309757, head/lib/libproc/crc32.h
projects/clang391-import/sbin/rcorder/rcorder-visualize.sh
- copied unchanged from r309757, head/sbin/rcorder/rcorder-visualize.sh
projects/clang391-import/sys/arm/arm/gic_common.h
- copied unchanged from r309757, head/sys/arm/arm/gic_common.h
projects/clang391-import/sys/dev/cxgbe/firmware/t4fw-1.16.22.0.bin.uu
- copied unchanged from r309757, head/sys/dev/cxgbe/firmware/t4fw-1.16.22.0.bin.uu
projects/clang391-import/sys/dev/cxgbe/firmware/t5fw-1.16.22.0.bin.uu
- copied unchanged from r309757, head/sys/dev/cxgbe/firmware/t5fw-1.16.22.0.bin.uu
projects/clang391-import/sys/dev/cxgbe/firmware/t6fw-1.16.22.0.bin.uu
- copied unchanged from r309757, head/sys/dev/cxgbe/firmware/t6fw-1.16.22.0.bin.uu
projects/clang391-import/sys/mips/ingenic/jz4780_aic.h
- copied unchanged from r309757, head/sys/mips/ingenic/jz4780_aic.h
projects/clang391-import/sys/mips/ingenic/jz4780_codec.c
- copied unchanged from r309757, head/sys/mips/ingenic/jz4780_codec.c
projects/clang391-import/sys/mips/ingenic/jz4780_codec.h
- copied unchanged from r309757, head/sys/mips/ingenic/jz4780_codec.h
projects/clang391-import/sys/mips/ingenic/jz4780_common.h
- copied unchanged from r309757, head/sys/mips/ingenic/jz4780_common.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsg_len.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsg_len.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsg_len.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsg_len.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsgcred.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsgcred.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsgcred.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsgcred.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsgcred_sockcred.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsgcred_sockcred.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_cmsgcred_sockcred.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_cmsgcred_sockcred.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_generic.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_generic.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_generic.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_generic.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_peercred.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_peercred.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_peercred.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_peercred.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_sockcred.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_sockcred.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_sockcred.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_sockcred.h
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_xxxtime.c.in
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_xxxtime.c.in
projects/clang391-import/tools/regression/sockets/unix_cmsg/t_xxxtime.h.in
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/t_xxxtime.h.in
projects/clang391-import/tools/regression/sockets/unix_cmsg/uc_common.c
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/uc_common.c
projects/clang391-import/tools/regression/sockets/unix_cmsg/uc_common.h
- copied unchanged from r309757, head/tools/regression/sockets/unix_cmsg/uc_common.h
Deleted:
projects/clang391-import/sys/arm64/arm64/gic.h
projects/clang391-import/sys/dev/cxgbe/firmware/t4fw-1.16.12.0.bin.uu
projects/clang391-import/sys/dev/cxgbe/firmware/t5fw-1.16.12.0.bin.uu
projects/clang391-import/sys/dev/cxgbe/firmware/t6fw-1.16.12.0.bin.uu
Modified:
projects/clang391-import/ObsoleteFiles.inc
projects/clang391-import/bin/dd/dd.c
projects/clang391-import/bin/ps/print.c
projects/clang391-import/cddl/compat/opensolaris/include/libproc.h
projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh
projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.func.ksh
projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.mod.ksh
projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.sym.ksh
projects/clang391-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pid.c
projects/clang391-import/cddl/lib/libdtrace/libproc_compat.h
projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/dtest.sh
projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh
projects/clang391-import/contrib/elftoolchain/readelf/readelf.c
projects/clang391-import/contrib/jemalloc/ChangeLog
projects/clang391-import/contrib/jemalloc/FREEBSD-diffs
projects/clang391-import/contrib/jemalloc/VERSION
projects/clang391-import/contrib/jemalloc/doc/jemalloc.3
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/arena.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/chunk.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/extent.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/pages.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/private_namespace.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/stats.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/util.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/valgrind.h
projects/clang391-import/contrib/jemalloc/include/jemalloc/jemalloc.h
projects/clang391-import/contrib/jemalloc/src/arena.c
projects/clang391-import/contrib/jemalloc/src/base.c
projects/clang391-import/contrib/jemalloc/src/chunk.c
projects/clang391-import/contrib/jemalloc/src/chunk_dss.c
projects/clang391-import/contrib/jemalloc/src/extent.c
projects/clang391-import/contrib/jemalloc/src/huge.c
projects/clang391-import/contrib/jemalloc/src/jemalloc.c
projects/clang391-import/contrib/jemalloc/src/pages.c
projects/clang391-import/contrib/jemalloc/src/stats.c
projects/clang391-import/contrib/jemalloc/src/tcache.c
projects/clang391-import/contrib/jemalloc/src/util.c
projects/clang391-import/contrib/libarchive/cat/test/main.c
projects/clang391-import/contrib/libarchive/cpio/test/main.c
projects/clang391-import/contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c
projects/clang391-import/contrib/libarchive/libarchive/archive_read_support_filter_uu.c
projects/clang391-import/contrib/libarchive/libarchive/archive_read_support_format_ar.c
projects/clang391-import/contrib/libarchive/libarchive/archive_read_support_format_cab.c
projects/clang391-import/contrib/libarchive/libarchive/archive_read_support_format_tar.c
projects/clang391-import/contrib/libarchive/libarchive/archive_string.c
projects/clang391-import/contrib/libarchive/libarchive/archive_string.h
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_7zip.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_cpio.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_gnutar.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_mtree.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_pax.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_ustar.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_v7tar.c
projects/clang391-import/contrib/libarchive/libarchive/archive_write_set_format_zip.c
projects/clang391-import/contrib/libarchive/libarchive/test/main.c
projects/clang391-import/contrib/libarchive/libarchive/test/test_archive_cmdline.c
projects/clang391-import/contrib/libc-vis/vis.c
projects/clang391-import/contrib/llvm/lib/Analysis/LazyValueInfo.cpp
projects/clang391-import/contrib/netbsd-tests/lib/libc/locale/t_mbtowc.c
projects/clang391-import/contrib/tcpdump/tcpdump.c
projects/clang391-import/contrib/telnet/telnetd/sys_term.c
projects/clang391-import/contrib/tzdata/CONTRIBUTING
projects/clang391-import/contrib/tzdata/Makefile
projects/clang391-import/contrib/tzdata/NEWS
projects/clang391-import/contrib/tzdata/README
projects/clang391-import/contrib/tzdata/Theory
projects/clang391-import/contrib/tzdata/africa
projects/clang391-import/contrib/tzdata/asia
projects/clang391-import/contrib/tzdata/europe
projects/clang391-import/contrib/tzdata/version
projects/clang391-import/contrib/tzdata/zone.tab
projects/clang391-import/contrib/tzdata/zone1970.tab
projects/clang391-import/etc/pccard_ether
projects/clang391-import/lib/clang/libllvmminimal/Makefile
projects/clang391-import/lib/libarchive/tests/Makefile
projects/clang391-import/lib/libc/gen/jrand48.c
projects/clang391-import/lib/libc/gen/mrand48.c
projects/clang391-import/lib/libc/net/linkaddr.c
projects/clang391-import/lib/libc/net/sctp_sys_calls.c
projects/clang391-import/lib/libc/tests/nss/getgr_test.c
projects/clang391-import/lib/libfetch/common.c
projects/clang391-import/lib/libkvm/kvm_proc.c
projects/clang391-import/lib/libproc/Makefile
projects/clang391-import/lib/libproc/_libproc.h
projects/clang391-import/lib/libproc/libproc.h
projects/clang391-import/lib/libproc/proc_bkpt.c
projects/clang391-import/lib/libproc/proc_create.c
projects/clang391-import/lib/libproc/proc_regs.c
projects/clang391-import/lib/libproc/proc_rtld.c
projects/clang391-import/lib/libproc/proc_sym.c
projects/clang391-import/lib/libproc/proc_util.c
projects/clang391-import/lib/libproc/tests/proc_test.c
projects/clang391-import/lib/librtld_db/rtld_db.c
projects/clang391-import/lib/librtld_db/rtld_db.h
projects/clang391-import/lib/libthr/thread/thr_cond.c
projects/clang391-import/lib/libvmmapi/vmmapi.c
projects/clang391-import/sbin/nvmecontrol/logpage.c
projects/clang391-import/share/man/man4/Makefile
projects/clang391-import/share/man/man4/cxgbe.4
projects/clang391-import/share/man/man4/cxgbev.4
projects/clang391-import/share/man/man4/rsu.4
projects/clang391-import/share/man/man5/src.conf.5
projects/clang391-import/share/man/man9/counter.9
projects/clang391-import/sys/amd64/amd64/elf_machdep.c
projects/clang391-import/sys/amd64/amd64/pmap.c
projects/clang391-import/sys/amd64/conf/GENERIC
projects/clang391-import/sys/amd64/conf/MINIMAL
projects/clang391-import/sys/arm/arm/gic.c
projects/clang391-import/sys/arm/arm/gic.h
projects/clang391-import/sys/arm/arm/gic_fdt.c
projects/clang391-import/sys/arm/conf/std.arm
projects/clang391-import/sys/arm/conf/std.armv6
projects/clang391-import/sys/arm/include/pmap-v6.h
projects/clang391-import/sys/arm/include/pmap.h
projects/clang391-import/sys/arm/nvidia/tegra124/tegra124_car.c
projects/clang391-import/sys/arm/nvidia/tegra124/tegra124_clk_per.c
projects/clang391-import/sys/arm/nvidia/tegra124/tegra124_clk_pll.c
projects/clang391-import/sys/arm64/arm64/gic_v3.c
projects/clang391-import/sys/arm64/arm64/gic_v3_fdt.c
projects/clang391-import/sys/arm64/arm64/gic_v3_reg.h
projects/clang391-import/sys/arm64/arm64/gic_v3_var.h
projects/clang391-import/sys/arm64/arm64/gicv3_its.c
projects/clang391-import/sys/arm64/arm64/mp_machdep.c
projects/clang391-import/sys/arm64/arm64/pmap.c
projects/clang391-import/sys/arm64/include/setjmp.h
projects/clang391-import/sys/cddl/compat/opensolaris/sys/atomic.h
projects/clang391-import/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
projects/clang391-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
projects/clang391-import/sys/compat/freebsd32/freebsd32.h
projects/clang391-import/sys/compat/linuxkpi/common/include/linux/device.h
projects/clang391-import/sys/compat/linuxkpi/common/include/linux/gfp.h
projects/clang391-import/sys/compat/linuxkpi/common/include/linux/interrupt.h
projects/clang391-import/sys/compat/linuxkpi/common/include/linux/pci.h
projects/clang391-import/sys/compat/linuxkpi/common/include/linux/slab.h
projects/clang391-import/sys/compat/linuxkpi/common/src/linux_pci.c
projects/clang391-import/sys/conf/NOTES
projects/clang391-import/sys/conf/files
projects/clang391-import/sys/conf/files.arm64
projects/clang391-import/sys/conf/options
projects/clang391-import/sys/dev/acpica/acpi_pcib_acpi.c
projects/clang391-import/sys/dev/ath/if_ath_keycache.c
projects/clang391-import/sys/dev/cxgbe/common/common.h
projects/clang391-import/sys/dev/cxgbe/common/t4_hw.c
projects/clang391-import/sys/dev/cxgbe/firmware/t4fw_interface.h
projects/clang391-import/sys/dev/cxgbe/firmware/t6fw_cfg.txt
projects/clang391-import/sys/dev/cxgbe/firmware/t6fw_cfg_uwire.txt
projects/clang391-import/sys/dev/cxgbe/t4_main.c
projects/clang391-import/sys/dev/cxgbe/t4_netmap.c
projects/clang391-import/sys/dev/drm2/i915/i915_gem.c
projects/clang391-import/sys/dev/extres/clk/clk.c
projects/clang391-import/sys/dev/hyperv/include/hyperv.h
projects/clang391-import/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c
projects/clang391-import/sys/dev/hyperv/utilities/hv_timesync.c
projects/clang391-import/sys/dev/hyperv/utilities/vmbus_icreg.h
projects/clang391-import/sys/dev/hyperv/vmbus/hyperv_reg.h
projects/clang391-import/sys/dev/hyperv/vmbus/hyperv_var.h
projects/clang391-import/sys/dev/hyperv/vmbus/vmbus_chan.c
projects/clang391-import/sys/dev/hyperv/vmbus/vmbus_et.c
projects/clang391-import/sys/dev/ioat/ioat.c
projects/clang391-import/sys/dev/mwl/if_mwl.c
projects/clang391-import/sys/dev/psci/psci.c
projects/clang391-import/sys/dev/rtwn/if_rtwn_cam.c
projects/clang391-import/sys/dev/sound/pci/hda/hdaa_patches.c
projects/clang391-import/sys/dev/sound/pci/hda/hdac.h
projects/clang391-import/sys/dev/sound/pci/hda/hdacc.c
projects/clang391-import/sys/dev/sound/pci/hdspe-pcm.c
projects/clang391-import/sys/dev/sound/pci/hdspe.c
projects/clang391-import/sys/dev/usb/wlan/if_rsu.c
projects/clang391-import/sys/dev/usb/wlan/if_rsureg.h
projects/clang391-import/sys/dev/usb/wlan/if_rum.c
projects/clang391-import/sys/dev/usb/wlan/if_run.c
projects/clang391-import/sys/fs/nfsserver/nfs_nfsdstate.c
projects/clang391-import/sys/i386/conf/GENERIC
projects/clang391-import/sys/i386/i386/pmap.c
projects/clang391-import/sys/kern/init_sysent.c
projects/clang391-import/sys/kern/kern_exit.c
projects/clang391-import/sys/kern/kern_proc.c
projects/clang391-import/sys/kern/subr_counter.c
projects/clang391-import/sys/kern/syscalls.c
projects/clang391-import/sys/kern/syscalls.master
projects/clang391-import/sys/mips/conf/ERL
projects/clang391-import/sys/mips/conf/JZ4780
projects/clang391-import/sys/mips/conf/X1000
projects/clang391-import/sys/mips/ingenic/jz4780_pdma.h
projects/clang391-import/sys/modules/cxgbe/t4_firmware/Makefile
projects/clang391-import/sys/modules/cxgbe/t5_firmware/Makefile
projects/clang391-import/sys/modules/cxgbe/t6_firmware/Makefile
projects/clang391-import/sys/modules/ioat/Makefile
projects/clang391-import/sys/net/route.c
projects/clang391-import/sys/net80211/ieee80211_crypto.c
projects/clang391-import/sys/net80211/ieee80211_crypto.h
projects/clang391-import/sys/net80211/ieee80211_freebsd.h
projects/clang391-import/sys/net80211/ieee80211_superg.c
projects/clang391-import/sys/netinet/icmp_var.h
projects/clang391-import/sys/netinet/ip_icmp.c
projects/clang391-import/sys/netinet/sctp_asconf.c
projects/clang391-import/sys/netinet/sctp_asconf.h
projects/clang391-import/sys/netinet/sctp_bsd_addr.h
projects/clang391-import/sys/netinet/sctp_cc_functions.c
projects/clang391-import/sys/netinet/sctp_constants.h
projects/clang391-import/sys/netinet/sctp_crc32.c
projects/clang391-import/sys/netinet/sctp_crc32.h
projects/clang391-import/sys/netinet/sctp_header.h
projects/clang391-import/sys/netinet/sctp_indata.c
projects/clang391-import/sys/netinet/sctp_indata.h
projects/clang391-import/sys/netinet/sctp_input.c
projects/clang391-import/sys/netinet/sctp_os_bsd.h
projects/clang391-import/sys/netinet/sctp_output.c
projects/clang391-import/sys/netinet/sctp_pcb.c
projects/clang391-import/sys/netinet/sctp_pcb.h
projects/clang391-import/sys/netinet/sctp_peeloff.h
projects/clang391-import/sys/netinet/sctp_ss_functions.c
projects/clang391-import/sys/netinet/sctp_structs.h
projects/clang391-import/sys/netinet/sctp_sysctl.c
projects/clang391-import/sys/netinet/sctp_timer.c
projects/clang391-import/sys/netinet/sctp_uio.h
projects/clang391-import/sys/netinet/sctp_usrreq.c
projects/clang391-import/sys/netinet/sctp_var.h
projects/clang391-import/sys/netinet/sctputil.c
projects/clang391-import/sys/netinet/sctputil.h
projects/clang391-import/sys/netinet6/sctp6_usrreq.c
projects/clang391-import/sys/netinet6/sctp6_var.h
projects/clang391-import/sys/netpfil/ipfw/ip_fw_dynamic.c
projects/clang391-import/sys/netpfil/pf/if_pflog.c
projects/clang391-import/sys/pc98/conf/GENERIC
projects/clang391-import/sys/powerpc/booke/pmap.c
projects/clang391-import/sys/powerpc/conf/GENERIC
projects/clang391-import/sys/powerpc/conf/GENERIC64
projects/clang391-import/sys/powerpc/conf/MPC85XX
projects/clang391-import/sys/powerpc/conf/MPC85XXSPE
projects/clang391-import/sys/sparc64/conf/GENERIC
projects/clang391-import/sys/sys/counter.h
projects/clang391-import/sys/sys/param.h
projects/clang391-import/sys/sys/syscall.h
projects/clang391-import/sys/sys/syscall.mk
projects/clang391-import/sys/sys/sysproto.h
projects/clang391-import/sys/sys/user.h
projects/clang391-import/sys/vm/device_pager.c
projects/clang391-import/sys/vm/phys_pager.c
projects/clang391-import/sys/vm/vm_fault.c
projects/clang391-import/sys/vm/vm_meter.c
projects/clang391-import/sys/vm/vm_object.h
projects/clang391-import/sys/vm/vm_page.c
projects/clang391-import/sys/vm/vm_pager.h
projects/clang391-import/sys/vm/vm_radix.c
projects/clang391-import/sys/vm/vm_radix.h
projects/clang391-import/sys/x86/iommu/intel_drv.c
projects/clang391-import/sys/x86/iommu/intel_fault.c
projects/clang391-import/sys/x86/iommu/intel_qi.c
projects/clang391-import/sys/x86/x86/stack_machdep.c
projects/clang391-import/tests/sys/kern/coredump_phnum_test.sh
projects/clang391-import/tools/build/mk/OptionalObsoleteFiles.inc
projects/clang391-import/tools/regression/sockets/unix_cmsg/Makefile
projects/clang391-import/tools/regression/sockets/unix_cmsg/unix_cmsg.c
projects/clang391-import/usr.bin/indent/indent.1
projects/clang391-import/usr.bin/locale/locale.c
projects/clang391-import/usr.bin/procstat/procstat.c
projects/clang391-import/usr.bin/procstat/procstat.h
projects/clang391-import/usr.bin/procstat/procstat_cs.c
projects/clang391-import/usr.bin/procstat/procstat_kstack.c
projects/clang391-import/usr.bin/procstat/procstat_threads.c
projects/clang391-import/usr.bin/systat/systat.1
projects/clang391-import/usr.bin/top/machine.c
projects/clang391-import/usr.bin/truss/aarch64-cloudabi64.c
projects/clang391-import/usr.bin/truss/aarch64-freebsd.c
projects/clang391-import/usr.bin/truss/amd64-cloudabi64.c
projects/clang391-import/usr.bin/truss/amd64-freebsd.c
projects/clang391-import/usr.bin/truss/amd64-freebsd32.c
projects/clang391-import/usr.bin/truss/amd64-linux.c
projects/clang391-import/usr.bin/truss/amd64-linux32.c
projects/clang391-import/usr.bin/truss/arm-freebsd.c
projects/clang391-import/usr.bin/truss/i386-freebsd.c
projects/clang391-import/usr.bin/truss/i386-linux.c
projects/clang391-import/usr.bin/truss/mips-freebsd.c
projects/clang391-import/usr.bin/truss/powerpc-freebsd.c
projects/clang391-import/usr.bin/truss/powerpc64-freebsd.c
projects/clang391-import/usr.bin/truss/powerpc64-freebsd32.c
projects/clang391-import/usr.bin/truss/setup.c
projects/clang391-import/usr.bin/truss/sparc64-freebsd.c
projects/clang391-import/usr.bin/truss/syscall.h
projects/clang391-import/usr.bin/truss/syscalls.c
projects/clang391-import/usr.bin/truss/truss.h
projects/clang391-import/usr.sbin/bsdinstall/scripts/wlanconfig
projects/clang391-import/usr.sbin/nfsd/nfsd.c
Directory Properties:
projects/clang391-import/ (props changed)
projects/clang391-import/cddl/ (props changed)
projects/clang391-import/cddl/contrib/opensolaris/ (props changed)
projects/clang391-import/contrib/elftoolchain/ (props changed)
projects/clang391-import/contrib/libarchive/ (props changed)
projects/clang391-import/contrib/libc-vis/ (props changed)
projects/clang391-import/contrib/llvm/ (props changed)
projects/clang391-import/contrib/netbsd-tests/ (props changed)
projects/clang391-import/contrib/tcpdump/ (props changed)
projects/clang391-import/contrib/tzdata/ (props changed)
projects/clang391-import/sys/cddl/contrib/opensolaris/ (props changed)
Modified: projects/clang391-import/ObsoleteFiles.inc
==============================================================================
--- projects/clang391-import/ObsoleteFiles.inc Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/ObsoleteFiles.inc Fri Dec 9 20:57:43 2016 (r309768)
@@ -147,6 +147,9 @@ OLD_FILES+=usr/lib/clang/3.9.0/lib/freeb
OLD_DIRS+=usr/lib/clang/3.9.0/lib/freebsd
OLD_DIRS+=usr/lib/clang/3.9.0/lib
OLD_DIRS+=usr/lib/clang/3.9.0
+# 20161205: libproc version bump
+OLD_LIBS+=usr/lib/libproc.so.3
+OLD_LIBS+=usr/lib32/libproc.so.3
# 20161127: Remove vm_page_cache(9)
OLD_FILES+=usr/share/man/man9/vm_page_cache.9.gz
# 20161124: new clang import which bumps version from 3.8.0 to 3.9.0.
Modified: projects/clang391-import/bin/dd/dd.c
==============================================================================
--- projects/clang391-import/bin/dd/dd.c Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/bin/dd/dd.c Fri Dec 9 20:57:43 2016 (r309768)
@@ -47,11 +47,14 @@ __FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/stat.h>
+#include <sys/capsicum.h>
#include <sys/conf.h>
#include <sys/disklabel.h>
#include <sys/filio.h>
+#include <sys/mtio.h>
#include <assert.h>
+#include <capsicum_helpers.h>
#include <ctype.h>
#include <err.h>
#include <errno.h>
@@ -92,6 +95,10 @@ main(int argc __unused, char *argv[])
jcl(argv);
setup();
+ caph_cache_catpages();
+ if (cap_enter() == -1 && errno != ENOSYS)
+ err(1, "unable to enter capability mode");
+
(void)signal(SIGINFO, siginfo_handler);
(void)signal(SIGINT, terminate);
@@ -125,6 +132,8 @@ static void
setup(void)
{
u_int cnt;
+ cap_rights_t rights;
+ unsigned long cmds[] = { FIODTYPE, MTIOCTOP };
if (in.name == NULL) {
in.name = "stdin";
@@ -133,13 +142,20 @@ setup(void)
in.fd = open(in.name, O_RDONLY, 0);
if (in.fd == -1)
err(1, "%s", in.name);
+ if (caph_limit_stdin() == -1)
+ err(1, "unable to limit capability rights");
}
getfdtype(&in);
+ cap_rights_init(&rights, CAP_READ, CAP_SEEK);
+ if (cap_rights_limit(in.fd, &rights) == -1 && errno != ENOSYS)
+ err(1, "unable to limit capability rights");
+
if (files_cnt > 1 && !(in.flags & ISTAPE))
errx(1, "files is not supported for non-tape devices");
+ cap_rights_set(&rights, CAP_FTRUNCATE, CAP_IOCTL, CAP_WRITE);
if (out.name == NULL) {
/* No way to check for read access here. */
out.fd = STDOUT_FILENO;
@@ -156,13 +172,27 @@ setup(void)
if (out.fd == -1) {
out.fd = open(out.name, O_WRONLY | OFLAGS, DEFFILEMODE);
out.flags |= NOREAD;
+ cap_rights_clear(&rights, CAP_READ);
}
if (out.fd == -1)
err(1, "%s", out.name);
+ if (caph_limit_stdout() == -1)
+ err(1, "unable to limit capability rights");
}
getfdtype(&out);
+ if (cap_rights_limit(out.fd, &rights) == -1 && errno != ENOSYS)
+ err(1, "unable to limit capability rights");
+ if (cap_ioctls_limit(out.fd, cmds, nitems(cmds)) == -1 &&
+ errno != ENOSYS)
+ err(1, "unable to limit capability rights");
+
+ if (in.fd != STDERR_FILENO && out.fd != STDERR_FILENO) {
+ if (caph_limit_stderr() == -1)
+ err(1, "unable to limit capability rights");
+ }
+
/*
* Allocate space for the input and output buffers. If not doing
* record oriented I/O, only need a single buffer.
Modified: projects/clang391-import/bin/ps/print.c
==============================================================================
--- projects/clang391-import/bin/ps/print.c Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/bin/ps/print.c Fri Dec 9 20:57:43 2016 (r309768)
@@ -120,11 +120,12 @@ command(KINFO *k, VARENT *ve)
if (cflag) {
/* If it is the last field, then don't pad */
if (STAILQ_NEXT(ve, next_ve) == NULL) {
- asprintf(&str, "%s%s%s%s",
+ asprintf(&str, "%s%s%s%s%s",
k->ki_d.prefix ? k->ki_d.prefix : "",
k->ki_p->ki_comm,
(showthreads && k->ki_p->ki_numthreads > 1) ? "/" : "",
- (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : "");
+ (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : "",
+ (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_moretdname : "");
} else
str = strdup(k->ki_p->ki_comm);
@@ -172,14 +173,16 @@ ucomm(KINFO *k, VARENT *ve)
char *str;
if (STAILQ_NEXT(ve, next_ve) == NULL) { /* last field, don't pad */
- asprintf(&str, "%s%s%s%s",
+ asprintf(&str, "%s%s%s%s%s",
k->ki_d.prefix ? k->ki_d.prefix : "",
k->ki_p->ki_comm,
(showthreads && k->ki_p->ki_numthreads > 1) ? "/" : "",
- (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : "");
+ (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_tdname : "",
+ (showthreads && k->ki_p->ki_numthreads > 1) ? k->ki_p->ki_moretdname : "");
} else {
if (showthreads && k->ki_p->ki_numthreads > 1)
- asprintf(&str, "%s/%s", k->ki_p->ki_comm, k->ki_p->ki_tdname);
+ asprintf(&str, "%s/%s%s", k->ki_p->ki_comm,
+ k->ki_p->ki_tdname, k->ki_p->ki_moretdname);
else
str = strdup(k->ki_p->ki_comm);
}
@@ -192,7 +195,8 @@ tdnam(KINFO *k, VARENT *ve __unused)
char *str;
if (showthreads && k->ki_p->ki_numthreads > 1)
- str = strdup(k->ki_p->ki_tdname);
+ asprintf(&str, "%s%s", k->ki_p->ki_tdname,
+ k->ki_p->ki_moretdname);
else
str = strdup(" ");
Modified: projects/clang391-import/cddl/compat/opensolaris/include/libproc.h
==============================================================================
--- projects/clang391-import/cddl/compat/opensolaris/include/libproc.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/compat/opensolaris/include/libproc.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -38,9 +38,6 @@
#define PR_RLC 0x0001
#define PR_KLC 0x0002
-#define PGRAB_RDONLY O_RDONLY
-#define PGRAB_FORCE 0
-
#include_next <libproc.h>
#endif
Modified: projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh
==============================================================================
--- projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.provregex3.ksh Fri Dec 9 20:57:43 2016 (r309768)
@@ -56,7 +56,7 @@ prov.h: prov.d
$dtrace -h -s prov.d
prov.o: prov.d main.o
- $dtrace -G -32 -s prov.d main.o
+ $dtrace -G -s prov.d main.o
EOF
cat > prov.d <<EOF
Modified: projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.func.ksh
==============================================================================
--- projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.func.ksh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.func.ksh Fri Dec 9 20:57:43 2016 (r309768)
@@ -45,7 +45,7 @@ EOF
spinny()
{
while true; do
- /usr/bin/date > /dev/null
+ /bin/date > /dev/null
done
}
Modified: projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.mod.ksh
==============================================================================
--- projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.mod.ksh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.mod.ksh Fri Dec 9 20:57:43 2016 (r309768)
@@ -45,7 +45,7 @@ EOF
spinny()
{
while true; do
- /usr/bin/date > /dev/null
+ /bin/date > /dev/null
done
}
Modified: projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.sym.ksh
==============================================================================
--- projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.sym.ksh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/profile-n/tst.sym.ksh Fri Dec 9 20:57:43 2016 (r309768)
@@ -45,7 +45,7 @@ EOF
spinny()
{
while true; do
- /usr/bin/date > /dev/null
+ /bin/date > /dev/null
done
}
Modified: projects/clang391-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pid.c
==============================================================================
--- projects/clang391-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pid.c Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pid.c Fri Dec 9 20:57:43 2016 (r309768)
@@ -729,8 +729,13 @@ dt_pid_create_probes(dtrace_probedesc_t
(void) snprintf(provname, sizeof (provname), "pid%d", (int)pid);
if (gmatch(provname, pdp->dtpd_provider) != 0) {
+#ifdef __FreeBSD__
+ if ((P = dt_proc_grab(dtp, pid, 0, 1)) == NULL)
+#else
if ((P = dt_proc_grab(dtp, pid, PGRAB_RDONLY | PGRAB_FORCE,
- 0)) == NULL) {
+ 0)) == NULL)
+#endif
+ {
(void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_GRAB,
"failed to grab process %d", (int)pid);
return (-1);
Modified: projects/clang391-import/cddl/lib/libdtrace/libproc_compat.h
==============================================================================
--- projects/clang391-import/cddl/lib/libdtrace/libproc_compat.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/lib/libdtrace/libproc_compat.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -34,6 +34,9 @@
* Functions sorted alphabetically.
*/
#define PR_LMID_EVERY 0
+#define PGRAB_RDONLY PATTACH_RDONLY
+#define PGRAB_FORCE PATTACH_FORCE
+
#define Psetrun(p, a1, a2) proc_continue((p))
#define Pxlookup_by_addr(p, a, n, s, sym, i) \
proc_addr2sym(p, a, n, s, sym)
@@ -44,7 +47,7 @@
#define Pdelbkpt proc_bkptdel
#define Pgrab_error strerror
#define Plmid(p, a, l) (-1)
-#define Plmid_to_map(p, l, o) proc_obj2map((p), (o))
+#define Plmid_to_map(p, l, o) proc_name2map(p, o)
#define Plookup_by_addr proc_addr2sym
#define Pname_to_ctf(p, obj) (ctf_file_t *)proc_name2ctf(p, obj)
#define Pname_to_map proc_name2map
Modified: projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/dtest.sh
==============================================================================
--- projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/dtest.sh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/dtest.sh Fri Dec 9 20:57:43 2016 (r309768)
@@ -70,7 +70,7 @@ runtest()
err.*.ksh|tst.*.ksh)
expr "$TFILE" : 'err.*' >/dev/null && exstatus=1
- ksh "$TFILE" /usr/sbin/dtrace >$STDOUT 2>$STDERR
+ tst=$TFILE ksh "$TFILE" /usr/sbin/dtrace >$STDOUT 2>$STDERR
status=$?
if [ $status -ne $exstatus ]; then
Modified: projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh
==============================================================================
--- projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Fri Dec 9 20:57:43 2016 (r309768)
@@ -128,9 +128,6 @@ exclude EXFAIL common/ip/tst.ipv4remotei
exclude EXFAIL common/ip/tst.localtcpstate.ksh
exclude EXFAIL common/ip/tst.remotetcpstate.ksh
-# Depends on the number of probes in /bin/sh and the current DOF limit.
-exclude EXFAIL common/pid/err.D_PROC_CREATEFAIL.many.d
-
# Tries to enable pid$target:libc::entry, though there's no "libc" module.
# Currently unsure as to whether this might be a libproc bug.
exclude EXFAIL common/pid/tst.probemod.ksh
Modified: projects/clang391-import/contrib/elftoolchain/readelf/readelf.c
==============================================================================
--- projects/clang391-import/contrib/elftoolchain/readelf/readelf.c Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/elftoolchain/readelf/readelf.c Fri Dec 9 20:57:43 2016 (r309768)
@@ -2112,7 +2112,7 @@ dwarf_reg(unsigned int mach, unsigned in
static void
dump_ehdr(struct readelf *re)
{
- size_t shnum, shstrndx;
+ size_t phnum, shnum, shstrndx;
int i;
printf("ELF Header:\n");
@@ -2174,7 +2174,13 @@ dump_ehdr(struct readelf *re)
re->ehdr.e_phentsize);
/* e_phnum. */
- printf("%-37s%u\n", " Number of program headers:", re->ehdr.e_phnum);
+ printf("%-37s%u", " Number of program headers:", re->ehdr.e_phnum);
+ if (re->ehdr.e_phnum == PN_XNUM) {
+ /* Extended program header numbering is in use. */
+ if (elf_getphnum(re->elf, &phnum))
+ printf(" (%zu)", phnum);
+ }
+ putchar('\n');
/* e_shentsize. */
printf("%-37s%u (bytes)\n", " Size of section headers:",
@@ -6551,13 +6557,14 @@ load_sections(struct readelf *re)
}
if ((name = elf_strptr(re->elf, shstrndx, sh.sh_name)) == NULL) {
(void) elf_errno();
- name = "ERROR";
+ name = "<no-name>";
}
if ((ndx = elf_ndxscn(scn)) == SHN_UNDEF) {
- if ((elferr = elf_errno()) != 0)
+ if ((elferr = elf_errno()) != 0) {
warnx("elf_ndxscn failed: %s",
elf_errmsg(elferr));
- continue;
+ continue;
+ }
}
if (ndx >= re->shnum) {
warnx("section index of '%s' out of range", name);
Modified: projects/clang391-import/contrib/jemalloc/ChangeLog
==============================================================================
--- projects/clang391-import/contrib/jemalloc/ChangeLog Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/ChangeLog Fri Dec 9 20:57:43 2016 (r309768)
@@ -4,6 +4,33 @@ brevity. Much more detail can be found
https://github.com/jemalloc/jemalloc
+* 4.4.0 (December 3, 2016)
+
+ New features:
+ - Add configure support for *-*-linux-android. (@cferris1000, @jasone)
+ - Add the --disable-syscall configure option, for use on systems that place
+ security-motivated limitations on syscall(2). (@jasone)
+ - Add support for Debian GNU/kFreeBSD. (@thesam)
+
+ Optimizations:
+ - Add extent serial numbers and use them where appropriate as a sort key that
+ is higher priority than address, so that the allocation policy prefers older
+ extents. This tends to improve locality (decrease fragmentation) when
+ memory grows downward. (@jasone)
+ - Refactor madvise(2) configuration so that MADV_FREE is detected and utilized
+ on Linux 4.5 and newer. (@jasone)
+ - Mark partially purged arena chunks as non-huge-page. This improves
+ interaction with Linux's transparent huge page functionality. (@jasone)
+
+ Bug fixes:
+ - Fix size class computations for edge conditions involving extremely large
+ allocations. This regression was first released in 4.0.0. (@jasone,
+ @ingvarha)
+ - Remove overly restrictive assertions related to the cactive statistic. This
+ regression was first released in 4.1.0. (@jasone)
+ - Implement a more reliable detection scheme for os_unfair_lock on macOS.
+ (@jszakmeister)
+
* 4.3.1 (November 7, 2016)
Bug fixes:
Modified: projects/clang391-import/contrib/jemalloc/FREEBSD-diffs
==============================================================================
--- projects/clang391-import/contrib/jemalloc/FREEBSD-diffs Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/FREEBSD-diffs Fri Dec 9 20:57:43 2016 (r309768)
@@ -1,5 +1,5 @@
diff --git a/doc/jemalloc.xml.in b/doc/jemalloc.xml.in
-index 3d2e721..b361db2 100644
+index d9c8345..9898c3c 100644
--- a/doc/jemalloc.xml.in
+++ b/doc/jemalloc.xml.in
@@ -53,11 +53,23 @@
@@ -47,10 +47,10 @@ index 3d2e721..b361db2 100644
+ </refsect1>
</refentry>
diff --git a/include/jemalloc/internal/arena.h b/include/jemalloc/internal/arena.h
-index f39ce54..a3ba55d 100644
+index ce4e602..35360b6 100644
--- a/include/jemalloc/internal/arena.h
+++ b/include/jemalloc/internal/arena.h
-@@ -719,8 +719,13 @@ arena_miscelm_get_mutable(arena_chunk_t *chunk, size_t pageind)
+@@ -730,8 +730,13 @@ arena_miscelm_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const arena_chunk_map_misc_t *
arena_miscelm_get_const(const arena_chunk_t *chunk, size_t pageind)
{
@@ -64,7 +64,7 @@ index f39ce54..a3ba55d 100644
}
JEMALLOC_ALWAYS_INLINE size_t
-@@ -779,8 +784,13 @@ arena_mapbitsp_get_mutable(arena_chunk_t *chunk, size_t pageind)
+@@ -790,8 +795,13 @@ arena_mapbitsp_get_mutable(arena_chunk_t *chunk, size_t pageind)
JEMALLOC_ALWAYS_INLINE const size_t *
arena_mapbitsp_get_const(const arena_chunk_t *chunk, size_t pageind)
{
@@ -79,7 +79,7 @@ index f39ce54..a3ba55d 100644
JEMALLOC_ALWAYS_INLINE size_t
diff --git a/include/jemalloc/internal/jemalloc_internal.h.in b/include/jemalloc/internal/jemalloc_internal.h.in
-index fdc8fef..56a35a4 100644
+index e7ace7d..d86c61d 100644
--- a/include/jemalloc/internal/jemalloc_internal.h.in
+++ b/include/jemalloc/internal/jemalloc_internal.h.in
@@ -8,6 +8,9 @@
@@ -144,10 +144,10 @@ index b442d2d..76518db 100644
#endif /* JEMALLOC_H_EXTERNS */
diff --git a/include/jemalloc/internal/private_symbols.txt b/include/jemalloc/internal/private_symbols.txt
-index 87c8c9b..df576f6 100644
+index c1c6c40..c6395fd 100644
--- a/include/jemalloc/internal/private_symbols.txt
+++ b/include/jemalloc/internal/private_symbols.txt
-@@ -307,7 +307,6 @@ iralloct_realign
+@@ -310,7 +310,6 @@ iralloct_realign
isalloc
isdalloct
isqalloc
@@ -335,7 +335,7 @@ index f943891..47d032c 100755
+#include "jemalloc_FreeBSD.h"
EOF
diff --git a/src/jemalloc.c b/src/jemalloc.c
-index 38650ff..f659b55 100644
+index baead66..8a49f26 100644
--- a/src/jemalloc.c
+++ b/src/jemalloc.c
@@ -4,6 +4,10 @@
@@ -349,7 +349,7 @@ index 38650ff..f659b55 100644
/* Runtime configuration options. */
const char *je_malloc_conf
#ifndef _WIN32
-@@ -2756,6 +2760,107 @@ je_malloc_usable_size(JEMALLOC_USABLE_SIZE_CONST void *ptr)
+@@ -2775,6 +2779,107 @@ je_malloc_usable_size(JEMALLOC_USABLE_SIZE_CONST void *ptr)
*/
/******************************************************************************/
/*
@@ -457,7 +457,7 @@ index 38650ff..f659b55 100644
* The following functions are used by threading libraries for protection of
* malloc during fork().
*/
-@@ -2894,4 +2999,11 @@ jemalloc_postfork_child(void)
+@@ -2913,4 +3018,11 @@ jemalloc_postfork_child(void)
ctl_postfork_child(tsd_tsdn(tsd));
}
@@ -516,7 +516,7 @@ index 6333e73..13f8d79 100644
+#endif
+}
diff --git a/src/util.c b/src/util.c
-index 7905267..bee1c77 100644
+index dd8c236..a4ff287 100755
--- a/src/util.c
+++ b/src/util.c
@@ -67,6 +67,22 @@ wrtmessage(void *cbopaque, const char *s)
Modified: projects/clang391-import/contrib/jemalloc/VERSION
==============================================================================
--- projects/clang391-import/contrib/jemalloc/VERSION Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/VERSION Fri Dec 9 20:57:43 2016 (r309768)
@@ -1 +1 @@
-4.3.1-0-g0110fa8451af905affd77c3bea0d545fee2251b2
+4.4.0-0-gf1f76357313e7dcad7262f17a48ff0a2e005fcdc
Modified: projects/clang391-import/contrib/jemalloc/doc/jemalloc.3
==============================================================================
--- projects/clang391-import/contrib/jemalloc/doc/jemalloc.3 Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/doc/jemalloc.3 Fri Dec 9 20:57:43 2016 (r309768)
@@ -2,12 +2,12 @@
.\" Title: JEMALLOC
.\" Author: Jason Evans
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
-.\" Date: 11/08/2016
+.\" Date: 12/04/2016
.\" Manual: User Manual
-.\" Source: jemalloc 4.3.1-0-g0110fa8451af905affd77c3bea0d545fee2251b2
+.\" Source: jemalloc 4.4.0-0-gf1f76357313e7dcad7262f17a48ff0a2e005fcdc
.\" Language: English
.\"
-.TH "JEMALLOC" "3" "11/08/2016" "jemalloc 4.3.1-0-g0110fa8451af" "User Manual"
+.TH "JEMALLOC" "3" "12/04/2016" "jemalloc 4.4.0-0-gf1f76357313e" "User Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -31,7 +31,7 @@
jemalloc \- general purpose memory allocation functions
.SH "LIBRARY"
.PP
-This manual describes jemalloc 4\&.3\&.1\-0\-g0110fa8451af905affd77c3bea0d545fee2251b2\&. More information can be found at the
+This manual describes jemalloc 4\&.4\&.0\-0\-gf1f76357313e7dcad7262f17a48ff0a2e005fcdc\&. More information can be found at the
\m[blue]\fBjemalloc website\fR\m[]\&\s-2\u[1]\d\s+2\&.
.PP
The following configuration options are enabled in libc\*(Aqs built\-in jemalloc:
@@ -365,7 +365,7 @@ for (i = 0; i < nbins; i++) {
mib[2] = i;
len = sizeof(bin_size);
- mallctlbymib(mib, miblen, &bin_size, &len, NULL, 0);
+ mallctlbymib(mib, miblen, (void *)&bin_size, &len, NULL, 0);
/* Do something with bin_size\&.\&.\&. */
}
.fi
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/arena.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/arena.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/arena.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -191,6 +191,14 @@ struct arena_chunk_s {
extent_node_t node;
/*
+ * True if memory could be backed by transparent huge pages. This is
+ * only directly relevant to Linux, since it is the only supported
+ * platform on which jemalloc interacts with explicit transparent huge
+ * page controls.
+ */
+ bool hugepage;
+
+ /*
* Map of pages within chunk that keeps track of free/large/small. The
* first map_bias entries are omitted, since the chunk header does not
* need to be tracked in the map. This omission saves a header page
@@ -374,10 +382,12 @@ struct arena_s {
dss_prec_t dss_prec;
-
/* Extant arena chunks. */
ql_head(extent_node_t) achunks;
+ /* Extent serial number generator state. */
+ size_t extent_sn_next;
+
/*
* In order to avoid rapid chunk allocation/deallocation when an arena
* oscillates right on the cusp of needing a new chunk, cache the most
@@ -453,9 +463,9 @@ struct arena_s {
* orderings are needed, which is why there are two trees with the same
* contents.
*/
- extent_tree_t chunks_szad_cached;
+ extent_tree_t chunks_szsnad_cached;
extent_tree_t chunks_ad_cached;
- extent_tree_t chunks_szad_retained;
+ extent_tree_t chunks_szsnad_retained;
extent_tree_t chunks_ad_retained;
malloc_mutex_t chunks_mtx;
@@ -522,13 +532,13 @@ void arena_chunk_cache_maybe_remove(aren
extent_node_t *arena_node_alloc(tsdn_t *tsdn, arena_t *arena);
void arena_node_dalloc(tsdn_t *tsdn, arena_t *arena, extent_node_t *node);
void *arena_chunk_alloc_huge(tsdn_t *tsdn, arena_t *arena, size_t usize,
- size_t alignment, bool *zero);
+ size_t alignment, size_t *sn, bool *zero);
void arena_chunk_dalloc_huge(tsdn_t *tsdn, arena_t *arena, void *chunk,
- size_t usize);
+ size_t usize, size_t sn);
void arena_chunk_ralloc_huge_similar(tsdn_t *tsdn, arena_t *arena,
void *chunk, size_t oldsize, size_t usize);
void arena_chunk_ralloc_huge_shrink(tsdn_t *tsdn, arena_t *arena,
- void *chunk, size_t oldsize, size_t usize);
+ void *chunk, size_t oldsize, size_t usize, size_t sn);
bool arena_chunk_ralloc_huge_expand(tsdn_t *tsdn, arena_t *arena,
void *chunk, size_t oldsize, size_t usize, bool *zero);
ssize_t arena_lg_dirty_mult_get(tsdn_t *tsdn, arena_t *arena);
@@ -601,6 +611,7 @@ void arena_stats_merge(tsdn_t *tsdn, are
unsigned arena_nthreads_get(arena_t *arena, bool internal);
void arena_nthreads_inc(arena_t *arena, bool internal);
void arena_nthreads_dec(arena_t *arena, bool internal);
+size_t arena_extent_sn_next(arena_t *arena);
arena_t *arena_new(tsdn_t *tsdn, unsigned ind);
void arena_boot(void);
void arena_prefork0(tsdn_t *tsdn, arena_t *arena);
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/chunk.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/chunk.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/chunk.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -58,15 +58,16 @@ void chunk_deregister(const void *chunk,
void *chunk_alloc_base(size_t size);
void *chunk_alloc_cache(tsdn_t *tsdn, arena_t *arena,
chunk_hooks_t *chunk_hooks, void *new_addr, size_t size, size_t alignment,
- bool *zero, bool *commit, bool dalloc_node);
+ size_t *sn, bool *zero, bool *commit, bool dalloc_node);
void *chunk_alloc_wrapper(tsdn_t *tsdn, arena_t *arena,
chunk_hooks_t *chunk_hooks, void *new_addr, size_t size, size_t alignment,
- bool *zero, bool *commit);
+ size_t *sn, bool *zero, bool *commit);
void chunk_dalloc_cache(tsdn_t *tsdn, arena_t *arena,
- chunk_hooks_t *chunk_hooks, void *chunk, size_t size, bool committed);
-void chunk_dalloc_wrapper(tsdn_t *tsdn, arena_t *arena,
- chunk_hooks_t *chunk_hooks, void *chunk, size_t size, bool zeroed,
+ chunk_hooks_t *chunk_hooks, void *chunk, size_t size, size_t sn,
bool committed);
+void chunk_dalloc_wrapper(tsdn_t *tsdn, arena_t *arena,
+ chunk_hooks_t *chunk_hooks, void *chunk, size_t size, size_t sn,
+ bool zeroed, bool committed);
bool chunk_purge_wrapper(tsdn_t *tsdn, arena_t *arena,
chunk_hooks_t *chunk_hooks, void *chunk, size_t size, size_t offset,
size_t length);
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/extent.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/extent.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/extent.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -19,6 +19,20 @@ struct extent_node_s {
size_t en_size;
/*
+ * Serial number (potentially non-unique).
+ *
+ * In principle serial numbers can wrap around on 32-bit systems if
+ * JEMALLOC_MUNMAP is defined, but as long as comparison functions fall
+ * back on address comparison for equal serial numbers, stable (if
+ * imperfect) ordering is maintained.
+ *
+ * Serial numbers may not be unique even in the absence of wrap-around,
+ * e.g. when splitting an extent and assigning the same serial number to
+ * both resulting adjacent extents.
+ */
+ size_t en_sn;
+
+ /*
* The zeroed flag is used by chunk recycling code to track whether
* memory is zero-filled.
*/
@@ -45,8 +59,8 @@ struct extent_node_s {
qr(extent_node_t) cc_link;
union {
- /* Linkage for the size/address-ordered tree. */
- rb_node(extent_node_t) szad_link;
+ /* Linkage for the size/sn/address-ordered tree. */
+ rb_node(extent_node_t) szsnad_link;
/* Linkage for arena's achunks, huge, and node_cache lists. */
ql_elm(extent_node_t) ql_link;
@@ -61,7 +75,7 @@ typedef rb_tree(extent_node_t) extent_tr
/******************************************************************************/
#ifdef JEMALLOC_H_EXTERNS
-rb_proto(, extent_tree_szad_, extent_tree_t, extent_node_t)
+rb_proto(, extent_tree_szsnad_, extent_tree_t, extent_node_t)
rb_proto(, extent_tree_ad_, extent_tree_t, extent_node_t)
@@ -73,6 +87,7 @@ rb_proto(, extent_tree_ad_, extent_tree_
arena_t *extent_node_arena_get(const extent_node_t *node);
void *extent_node_addr_get(const extent_node_t *node);
size_t extent_node_size_get(const extent_node_t *node);
+size_t extent_node_sn_get(const extent_node_t *node);
bool extent_node_zeroed_get(const extent_node_t *node);
bool extent_node_committed_get(const extent_node_t *node);
bool extent_node_achunk_get(const extent_node_t *node);
@@ -80,12 +95,13 @@ prof_tctx_t *extent_node_prof_tctx_get(c
void extent_node_arena_set(extent_node_t *node, arena_t *arena);
void extent_node_addr_set(extent_node_t *node, void *addr);
void extent_node_size_set(extent_node_t *node, size_t size);
+void extent_node_sn_set(extent_node_t *node, size_t sn);
void extent_node_zeroed_set(extent_node_t *node, bool zeroed);
void extent_node_committed_set(extent_node_t *node, bool committed);
void extent_node_achunk_set(extent_node_t *node, bool achunk);
void extent_node_prof_tctx_set(extent_node_t *node, prof_tctx_t *tctx);
void extent_node_init(extent_node_t *node, arena_t *arena, void *addr,
- size_t size, bool zeroed, bool committed);
+ size_t size, size_t sn, bool zeroed, bool committed);
void extent_node_dirty_linkage_init(extent_node_t *node);
void extent_node_dirty_insert(extent_node_t *node,
arena_runs_dirty_link_t *runs_dirty, extent_node_t *chunks_dirty);
@@ -114,6 +130,13 @@ extent_node_size_get(const extent_node_t
return (node->en_size);
}
+JEMALLOC_INLINE size_t
+extent_node_sn_get(const extent_node_t *node)
+{
+
+ return (node->en_sn);
+}
+
JEMALLOC_INLINE bool
extent_node_zeroed_get(const extent_node_t *node)
{
@@ -165,6 +188,13 @@ extent_node_size_set(extent_node_t *node
}
JEMALLOC_INLINE void
+extent_node_sn_set(extent_node_t *node, size_t sn)
+{
+
+ node->en_sn = sn;
+}
+
+JEMALLOC_INLINE void
extent_node_zeroed_set(extent_node_t *node, bool zeroed)
{
@@ -194,12 +224,13 @@ extent_node_prof_tctx_set(extent_node_t
JEMALLOC_INLINE void
extent_node_init(extent_node_t *node, arena_t *arena, void *addr, size_t size,
- bool zeroed, bool committed)
+ size_t sn, bool zeroed, bool committed)
{
extent_node_arena_set(node, arena);
extent_node_addr_set(node, addr);
extent_node_size_set(node, size);
+ extent_node_sn_set(node, sn);
extent_node_zeroed_set(node, zeroed);
extent_node_committed_set(node, committed);
extent_node_achunk_set(node, false);
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -334,7 +334,7 @@ typedef unsigned szind_t;
/* Return the nearest aligned address at or below a. */
#define ALIGNMENT_ADDR2BASE(a, alignment) \
- ((void *)((uintptr_t)(a) & (-(alignment))))
+ ((void *)((uintptr_t)(a) & ((~(alignment)) + 1)))
/* Return the offset between a and the nearest aligned address at or below a. */
#define ALIGNMENT_ADDR2OFFSET(a, alignment) \
@@ -342,7 +342,7 @@ typedef unsigned szind_t;
/* Return the smallest alignment multiple that is >= s. */
#define ALIGNMENT_CEILING(s, alignment) \
- (((s) + (alignment - 1)) & (-(alignment)))
+ (((s) + (alignment - 1)) & ((~(alignment)) + 1))
/* Declare a variable-length array. */
#if __STDC_VERSION__ < 199901L
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -57,11 +57,6 @@
#define JEMALLOC_HAVE_BUILTIN_CLZ
/*
- * Defined if madvise(2) is available.
- */
-#define JEMALLOC_HAVE_MADVISE
-
-/*
* Defined if os_unfair_lock_*() functions are available, as provided by Darwin.
*/
/* #undef JEMALLOC_OS_UNFAIR_LOCK */
@@ -72,8 +67,8 @@
*/
/* #undef JEMALLOC_OSSPIN */
-/* Defined if syscall(2) is available. */
-#define JEMALLOC_HAVE_SYSCALL
+/* Defined if syscall(2) is usable. */
+#define JEMALLOC_USE_SYSCALL
/*
* Defined if secure_getenv(3) is available.
@@ -85,6 +80,9 @@
*/
#define JEMALLOC_HAVE_ISSETUGID
+/* Defined if pthread_atfork(3) is available. */
+#define JEMALLOC_HAVE_PTHREAD_ATFORK
+
/*
* Defined if clock_gettime(CLOCK_MONOTONIC_COARSE, ...) is available.
*/
@@ -253,18 +251,26 @@
#define JEMALLOC_SYSCTL_VM_OVERCOMMIT
/* #undef JEMALLOC_PROC_SYS_VM_OVERCOMMIT_MEMORY */
+/* Defined if madvise(2) is available. */
+#define JEMALLOC_HAVE_MADVISE
+
/*
* Methods for purging unused pages differ between operating systems.
*
- * madvise(..., MADV_DONTNEED) : On Linux, this immediately discards pages,
- * such that new pages will be demand-zeroed if
- * the address region is later touched.
- * madvise(..., MADV_FREE) : On FreeBSD and Darwin, this marks pages as being
- * unused, such that they will be discarded rather
- * than swapped out.
+ * madvise(..., MADV_FREE) : This marks pages as being unused, such that they
+ * will be discarded rather than swapped out.
+ * madvise(..., MADV_DONTNEED) : This immediately discards pages, such that
+ * new pages will be demand-zeroed if the
+ * address region is later touched.
*/
-/* #undef JEMALLOC_PURGE_MADVISE_DONTNEED */
#define JEMALLOC_PURGE_MADVISE_FREE
+#define JEMALLOC_PURGE_MADVISE_DONTNEED
+
+/*
+ * Defined if transparent huge pages are supported via the MADV_[NO]HUGEPAGE
+ * arguments to madvise(2).
+ */
+/* #undef JEMALLOC_THP */
/* Define if operating system has alloca.h header. */
/* #undef JEMALLOC_HAS_ALLOCA_H */
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/pages.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/pages.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/pages.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -16,6 +16,8 @@ void *pages_trim(void *addr, size_t allo
bool pages_commit(void *addr, size_t size);
bool pages_decommit(void *addr, size_t size);
bool pages_purge(void *addr, size_t size);
+bool pages_huge(void *addr, size_t size);
+bool pages_nohuge(void *addr, size_t size);
void pages_boot(void);
#endif /* JEMALLOC_H_EXTERNS */
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/private_namespace.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/private_namespace.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/private_namespace.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -36,6 +36,7 @@
#define arena_decay_time_set JEMALLOC_N(arena_decay_time_set)
#define arena_dss_prec_get JEMALLOC_N(arena_dss_prec_get)
#define arena_dss_prec_set JEMALLOC_N(arena_dss_prec_set)
+#define arena_extent_sn_next JEMALLOC_N(arena_extent_sn_next)
#define arena_get JEMALLOC_N(arena_get)
#define arena_ichoose JEMALLOC_N(arena_ichoose)
#define arena_init JEMALLOC_N(arena_init)
@@ -218,6 +219,8 @@
#define extent_node_prof_tctx_set JEMALLOC_N(extent_node_prof_tctx_set)
#define extent_node_size_get JEMALLOC_N(extent_node_size_get)
#define extent_node_size_set JEMALLOC_N(extent_node_size_set)
+#define extent_node_sn_get JEMALLOC_N(extent_node_sn_get)
+#define extent_node_sn_set JEMALLOC_N(extent_node_sn_set)
#define extent_node_zeroed_get JEMALLOC_N(extent_node_zeroed_get)
#define extent_node_zeroed_set JEMALLOC_N(extent_node_zeroed_set)
#define extent_tree_ad_destroy JEMALLOC_N(extent_tree_ad_destroy)
@@ -239,25 +242,25 @@
#define extent_tree_ad_reverse_iter_recurse JEMALLOC_N(extent_tree_ad_reverse_iter_recurse)
#define extent_tree_ad_reverse_iter_start JEMALLOC_N(extent_tree_ad_reverse_iter_start)
#define extent_tree_ad_search JEMALLOC_N(extent_tree_ad_search)
-#define extent_tree_szad_destroy JEMALLOC_N(extent_tree_szad_destroy)
-#define extent_tree_szad_destroy_recurse JEMALLOC_N(extent_tree_szad_destroy_recurse)
-#define extent_tree_szad_empty JEMALLOC_N(extent_tree_szad_empty)
-#define extent_tree_szad_first JEMALLOC_N(extent_tree_szad_first)
-#define extent_tree_szad_insert JEMALLOC_N(extent_tree_szad_insert)
-#define extent_tree_szad_iter JEMALLOC_N(extent_tree_szad_iter)
-#define extent_tree_szad_iter_recurse JEMALLOC_N(extent_tree_szad_iter_recurse)
-#define extent_tree_szad_iter_start JEMALLOC_N(extent_tree_szad_iter_start)
-#define extent_tree_szad_last JEMALLOC_N(extent_tree_szad_last)
-#define extent_tree_szad_new JEMALLOC_N(extent_tree_szad_new)
-#define extent_tree_szad_next JEMALLOC_N(extent_tree_szad_next)
-#define extent_tree_szad_nsearch JEMALLOC_N(extent_tree_szad_nsearch)
-#define extent_tree_szad_prev JEMALLOC_N(extent_tree_szad_prev)
-#define extent_tree_szad_psearch JEMALLOC_N(extent_tree_szad_psearch)
-#define extent_tree_szad_remove JEMALLOC_N(extent_tree_szad_remove)
-#define extent_tree_szad_reverse_iter JEMALLOC_N(extent_tree_szad_reverse_iter)
-#define extent_tree_szad_reverse_iter_recurse JEMALLOC_N(extent_tree_szad_reverse_iter_recurse)
-#define extent_tree_szad_reverse_iter_start JEMALLOC_N(extent_tree_szad_reverse_iter_start)
-#define extent_tree_szad_search JEMALLOC_N(extent_tree_szad_search)
+#define extent_tree_szsnad_destroy JEMALLOC_N(extent_tree_szsnad_destroy)
+#define extent_tree_szsnad_destroy_recurse JEMALLOC_N(extent_tree_szsnad_destroy_recurse)
+#define extent_tree_szsnad_empty JEMALLOC_N(extent_tree_szsnad_empty)
+#define extent_tree_szsnad_first JEMALLOC_N(extent_tree_szsnad_first)
+#define extent_tree_szsnad_insert JEMALLOC_N(extent_tree_szsnad_insert)
+#define extent_tree_szsnad_iter JEMALLOC_N(extent_tree_szsnad_iter)
+#define extent_tree_szsnad_iter_recurse JEMALLOC_N(extent_tree_szsnad_iter_recurse)
+#define extent_tree_szsnad_iter_start JEMALLOC_N(extent_tree_szsnad_iter_start)
+#define extent_tree_szsnad_last JEMALLOC_N(extent_tree_szsnad_last)
+#define extent_tree_szsnad_new JEMALLOC_N(extent_tree_szsnad_new)
+#define extent_tree_szsnad_next JEMALLOC_N(extent_tree_szsnad_next)
+#define extent_tree_szsnad_nsearch JEMALLOC_N(extent_tree_szsnad_nsearch)
+#define extent_tree_szsnad_prev JEMALLOC_N(extent_tree_szsnad_prev)
+#define extent_tree_szsnad_psearch JEMALLOC_N(extent_tree_szsnad_psearch)
+#define extent_tree_szsnad_remove JEMALLOC_N(extent_tree_szsnad_remove)
+#define extent_tree_szsnad_reverse_iter JEMALLOC_N(extent_tree_szsnad_reverse_iter)
+#define extent_tree_szsnad_reverse_iter_recurse JEMALLOC_N(extent_tree_szsnad_reverse_iter_recurse)
+#define extent_tree_szsnad_reverse_iter_start JEMALLOC_N(extent_tree_szsnad_reverse_iter_start)
+#define extent_tree_szsnad_search JEMALLOC_N(extent_tree_szsnad_search)
#define ffs_llu JEMALLOC_N(ffs_llu)
#define ffs_lu JEMALLOC_N(ffs_lu)
#define ffs_u JEMALLOC_N(ffs_u)
@@ -393,7 +396,9 @@
#define pages_boot JEMALLOC_N(pages_boot)
#define pages_commit JEMALLOC_N(pages_commit)
#define pages_decommit JEMALLOC_N(pages_decommit)
+#define pages_huge JEMALLOC_N(pages_huge)
#define pages_map JEMALLOC_N(pages_map)
+#define pages_nohuge JEMALLOC_N(pages_nohuge)
#define pages_purge JEMALLOC_N(pages_purge)
#define pages_trim JEMALLOC_N(pages_trim)
#define pages_unmap JEMALLOC_N(pages_unmap)
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/stats.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/stats.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/stats.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -175,25 +175,21 @@ stats_cactive_get(void)
JEMALLOC_INLINE void
stats_cactive_add(size_t size)
{
- UNUSED size_t cactive;
assert(size > 0);
assert((size & chunksize_mask) == 0);
- cactive = atomic_add_z(&stats_cactive, size);
- assert(cactive - size < cactive);
+ atomic_add_z(&stats_cactive, size);
}
JEMALLOC_INLINE void
stats_cactive_sub(size_t size)
{
- UNUSED size_t cactive;
assert(size > 0);
assert((size & chunksize_mask) == 0);
- cactive = atomic_sub_z(&stats_cactive, size);
- assert(cactive + size > cactive);
+ atomic_sub_z(&stats_cactive, size);
}
#endif
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/util.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/util.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/util.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -41,8 +41,12 @@
#define MALLOC_PRINTF_BUFSIZE 4096
/* Junk fill patterns. */
-#define JEMALLOC_ALLOC_JUNK ((uint8_t)0xa5)
-#define JEMALLOC_FREE_JUNK ((uint8_t)0x5a)
+#ifndef JEMALLOC_ALLOC_JUNK
+# define JEMALLOC_ALLOC_JUNK ((uint8_t)0xa5)
+#endif
+#ifndef JEMALLOC_FREE_JUNK
+# define JEMALLOC_FREE_JUNK ((uint8_t)0x5a)
+#endif
/*
* Wrap a cpp argument that contains commas such that it isn't broken up into
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/valgrind.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/valgrind.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/internal/valgrind.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -36,13 +36,25 @@
zero); \
} \
} while (0)
-#define JEMALLOC_VALGRIND_REALLOC(maybe_moved, tsdn, ptr, usize, \
- ptr_maybe_null, old_ptr, old_usize, old_rzsize, old_ptr_maybe_null, \
- zero) do { \
+#define JEMALLOC_VALGRIND_REALLOC_MOVED_no(ptr, old_ptr) \
+ (false)
+#define JEMALLOC_VALGRIND_REALLOC_MOVED_maybe(ptr, old_ptr) \
+ ((ptr) != (old_ptr))
+#define JEMALLOC_VALGRIND_REALLOC_PTR_NULL_no(ptr) \
+ (false)
+#define JEMALLOC_VALGRIND_REALLOC_PTR_NULL_maybe(ptr) \
+ (ptr == NULL)
+#define JEMALLOC_VALGRIND_REALLOC_OLD_PTR_NULL_no(old_ptr) \
+ (false)
+#define JEMALLOC_VALGRIND_REALLOC_OLD_PTR_NULL_maybe(old_ptr) \
+ (old_ptr == NULL)
+#define JEMALLOC_VALGRIND_REALLOC(moved, tsdn, ptr, usize, ptr_null, \
+ old_ptr, old_usize, old_rzsize, old_ptr_null, zero) do { \
if (unlikely(in_valgrind)) { \
size_t rzsize = p2rz(tsdn, ptr); \
\
- if (!maybe_moved || ptr == old_ptr) { \
+ if (!JEMALLOC_VALGRIND_REALLOC_MOVED_##moved(ptr, \
+ old_ptr)) { \
VALGRIND_RESIZEINPLACE_BLOCK(ptr, old_usize, \
usize, rzsize); \
if (zero && old_usize < usize) { \
@@ -51,11 +63,13 @@
old_usize), usize - old_usize); \
} \
} else { \
- if (!old_ptr_maybe_null || old_ptr != NULL) { \
+ if (!JEMALLOC_VALGRIND_REALLOC_OLD_PTR_NULL_## \
+ old_ptr_null(old_ptr)) { \
valgrind_freelike_block(old_ptr, \
old_rzsize); \
} \
- if (!ptr_maybe_null || ptr != NULL) { \
+ if (!JEMALLOC_VALGRIND_REALLOC_PTR_NULL_## \
+ ptr_null(ptr)) { \
size_t copy_size = (old_usize < usize) \
? old_usize : usize; \
size_t tail_size = usize - copy_size; \
Modified: projects/clang391-import/contrib/jemalloc/include/jemalloc/jemalloc.h
==============================================================================
--- projects/clang391-import/contrib/jemalloc/include/jemalloc/jemalloc.h Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/include/jemalloc/jemalloc.h Fri Dec 9 20:57:43 2016 (r309768)
@@ -87,12 +87,12 @@ extern "C" {
#include <limits.h>
#include <strings.h>
-#define JEMALLOC_VERSION "4.3.1-0-g0110fa8451af905affd77c3bea0d545fee2251b2"
+#define JEMALLOC_VERSION "4.4.0-0-gf1f76357313e7dcad7262f17a48ff0a2e005fcdc"
#define JEMALLOC_VERSION_MAJOR 4
-#define JEMALLOC_VERSION_MINOR 3
-#define JEMALLOC_VERSION_BUGFIX 1
+#define JEMALLOC_VERSION_MINOR 4
+#define JEMALLOC_VERSION_BUGFIX 0
#define JEMALLOC_VERSION_NREV 0
-#define JEMALLOC_VERSION_GID "0110fa8451af905affd77c3bea0d545fee2251b2"
+#define JEMALLOC_VERSION_GID "f1f76357313e7dcad7262f17a48ff0a2e005fcdc"
# define MALLOCX_LG_ALIGN(la) ((int)(la))
# if LG_SIZEOF_PTR == 2
Modified: projects/clang391-import/contrib/jemalloc/src/arena.c
==============================================================================
--- projects/clang391-import/contrib/jemalloc/src/arena.c Fri Dec 9 20:52:48 2016 (r309767)
+++ projects/clang391-import/contrib/jemalloc/src/arena.c Fri Dec 9 20:57:43 2016 (r309768)
@@ -38,8 +38,8 @@ static void arena_run_dalloc(tsdn_t *tsd
bool dirty, bool cleaned, bool decommitted);
static void arena_dalloc_bin_run(tsdn_t *tsdn, arena_t *arena,
arena_chunk_t *chunk, arena_run_t *run, arena_bin_t *bin);
-static void arena_bin_lower_run(arena_t *arena, arena_chunk_t *chunk,
- arena_run_t *run, arena_bin_t *bin);
+static void arena_bin_lower_run(arena_t *arena, arena_run_t *run,
+ arena_bin_t *bin);
/******************************************************************************/
@@ -55,8 +55,31 @@ arena_miscelm_size_get(const arena_chunk
return (arena_mapbits_size_decode(mapbits));
}
+JEMALLOC_INLINE_C const extent_node_t *
+arena_miscelm_extent_get(const arena_chunk_map_misc_t *miscelm)
+{
+ arena_chunk_t *chunk;
+
+ chunk = (arena_chunk_t *)CHUNK_ADDR2BASE(miscelm);
+ return (&chunk->node);
+}
+
+JEMALLOC_INLINE_C int
+arena_sn_comp(const arena_chunk_map_misc_t *a, const arena_chunk_map_misc_t *b)
+{
+ size_t a_sn, b_sn;
+
+ assert(a != NULL);
+ assert(b != NULL);
+
+ a_sn = extent_node_sn_get(arena_miscelm_extent_get(a));
+ b_sn = extent_node_sn_get(arena_miscelm_extent_get(b));
+
+ return ((a_sn > b_sn) - (a_sn < b_sn));
+}
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-projects
mailing list