Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK)) by mollari.NetBSD.org (Postfix) with ESMTPS id 424647A47B for ; Sat, 2 Jul 2016 11:00:44 +0000 (UTC) Received: by mail.netbsd.org (Postfix, from userid 605) id E93A485E62; Sat, 2 Jul 2016 11:00:43 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 7625885E73 for ; Sat, 2 Jul 2016 11:00:43 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id SrTSOg78o53N for ; Sat, 2 Jul 2016 11:00:42 +0000 (UTC) Received: from cvs.NetBSD.org (unknown [IPv6:2001:470:a085:999:28c:faff:fe03:5984]) by mail.netbsd.org (Postfix) with ESMTP id 975EB84CFC for ; Sat, 2 Jul 2016 11:00:42 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id 922C4FBB5; Sat, 2 Jul 2016 11:00:42 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1467457242272100" MIME-Version: 1.0 Date: Sat, 2 Jul 2016 11:00:42 +0000 From: "Thomas Klausner" Subject: CVS commit: pkgsrc/devel/jemalloc To: pkgsrc-changes@NetBSD.org Reply-To: wiz@netbsd.org X-Mailer: log_accum Message-Id: <20160702110042.922C4FBB5@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk This is a multi-part message in MIME format. --_----------=_1467457242272100 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: wiz Date: Sat Jul 2 11:00:42 UTC 2016 Modified Files: pkgsrc/devel/jemalloc: Makefile distinfo Log Message: Updated jemalloc to 4.2.1. Provided by Jonathan Buschmann in PR 51302. * 4.2.1 (June 8, 2016) Bug fixes: - Fix bootstrapping issues for configurations that require allocation during tsd initialization (e.g. --disable-tls). (@cferris1000, @jasone) - Fix gettimeofday() version of nstime_update(). (@ronawho) - Fix Valgrind regressions in calloc() and chunk_alloc_wrapper(). (@ronawho) - Fix potential VM map fragmentation regression. (@jasone) - Fix opt_zero-triggered in-place huge reallocation zeroing. (@jasone) - Fix heap profiling context leaks in reallocation edge cases. (@jasone) * 4.2.0 (May 12, 2016) New features: - Add the arena..reset mallctl, which makes it possible to discard all of an arena's allocations in a single operation. (@jasone) - Add the stats.retained and stats.arenas..retained statistics. (@jasone) - Add the --with-version configure option. (@jasone) - Support --with-lg-page values larger than actual page size. (@jasone) Optimizations: - Use pairing heaps rather than red-black trees for various hot data structures. (@djwatson, @jasone) - Streamline fast paths of rtree operations. (@jasone) - Optimize the fast paths of calloc() and [m,d,sd]allocx(). (@jasone) - Decommit unused virtual memory if the OS does not overcommit. (@jasone) - Specify MAP_NORESERVE on Linux if [heuristic] overcommit is active, in order to avoid unfortunate interactions during fork(2). (@jasone) Bug fixes: - Fix chunk accounting related to triggering gdump profiles. (@jasone) - Link against librt for clock_gettime(2) if glibc < 2.17. (@jasone) - Scale leak report summary according to sampling probability. (@jasone) * 4.1.1 (May 3, 2016) This bugfix release resolves a variety of mostly minor issues, though the bitmap fix is critical for 64-bit Windows. Bug fixes: - Fix the linear scan version of bitmap_sfu() to shift by the proper amount even when sizeof(long) is not the same as sizeof(void *), as on 64-bit Windows. (@jasone) - Fix hashing functions to avoid unaligned memory accesses (and resulting crashes). This is relevant at least to some ARM-based platforms. (@rkmisra) - Fix fork()-related lock rank ordering reversals. These reversals were unlikely to cause deadlocks in practice except when heap profiling was enabled and active. (@jasone) - Fix various chunk leaks in OOM code paths. (@jasone) - Fix malloc_stats_print() to print opt.narenas correctly. (@jasone) - Fix MSVC-specific build/test issues. (@rustyx, @yuslepukhin) - Fix a variety of test failures that were due to test fragility rather than core bugs. (@jasone) * 4.1.0 (February 28, 2016) This release is primarily about optimizations, but it also incorporates a lot of portability-motivated refactoring and enhancements. Many people worked on this release, to an extent that even with the omission here of minor changes (see git revision history), and of the people who reported and diagnosed issues, so much of the work was contributed that starting with this release, changes are annotated with author credits to help reflect the collaborative effort involved. New features: - Implement decay-based unused dirty page purging, a major optimization with mallctl API impact. This is an alternative to the existing ratio-based unused dirty page purging, and is intended to eventually become the sole purging mechanism. New mallctls: + opt.purge + opt.decay_time + arena..decay + arena..decay_time + arenas.decay_time + stats.arenas..decay_time (@jasone, @cevans87) - Add --with-malloc-conf, which makes it possible to embed a default options string during configuration. This was motivated by the desire to specify --with-malloc-conf=purge:decay , since the default must remain purge:ratio until the 5.0.0 release. (@jasone) - Add MS Visual Studio 2015 support. (@rustyx, @yuslepukhin) - Make *allocx() size class overflow behavior defined. The maximum size class is now less than PTRDIFF_MAX to protect applications against numerical overflow, and all allocation functions are guaranteed to indicate errors rather than potentially crashing if the request size exceeds the maximum size class. (@jasone) - jeprof: + Add raw heap profile support. (@jasone) + Add --retain and --exclude for backtrace symbol filtering. (@jasone) Optimizations: - Optimize the fast path to combine various bootstrapping and configuration checks and execute more streamlined code in the common case. (@interwq) - Use linear scan for small bitmaps (used for small object tracking). In addition to speeding up bitmap operations on 64-bit systems, this reduces allocator metadata overhead by approximately 0.2%. (@djwatson) - Separate arena_avail trees, which substantially speeds up run tree operations. (@djwatson) - Use memoization (boot-time-computed table) for run quantization. Separate arena_avail trees reduced the importance of this optimization. (@jasone) - Attempt mmap-based in-place huge reallocation. This can dramatically speed up incremental huge reallocation. (@jasone) Incompatible changes: - Make opt.narenas unsigned rather than size_t. (@jasone) Bug fixes: - Fix stats.cactive accounting regression. (@rustyx, @jasone) - Handle unaligned keys in hash(). This caused problems for some ARM systems. (@jasone, @cferris1000) - Refactor arenas array. In addition to fixing a fork-related deadlock, this makes arena lookups faster and simpler. (@jasone) - Move retained memory allocation out of the default chunk allocation function, to a location that gets executed even if the application installs a custom chunk allocation function. This resolves a virtual memory leak. (@buchgr) - Fix a potential tsd cleanup leak. (@cferris1000, @jasone) - Fix run quantization. In practice this bug had no impact unless applications requested memory with alignment exceeding one page. (@jasone, @djwatson) - Fix LinuxThreads-specific bootstrapping deadlock. (Cosmin Paraschiv) - jeprof: + Don't discard curl options if timeout is not defined. (@djwatson) + Detect failed profile fetches. (@djwatson) - Fix stats.arenas..{dss,lg_dirty_mult,decay_time,pactive,pdirty} for --disable-stats case. (@jasone) To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 pkgsrc/devel/jemalloc/Makefile \ pkgsrc/devel/jemalloc/distinfo Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1467457242272100 Content-Disposition: inline Content-Length: 1761 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/devel/jemalloc/Makefile diff -u pkgsrc/devel/jemalloc/Makefile:1.1 pkgsrc/devel/jemalloc/Makefile:1.2 --- pkgsrc/devel/jemalloc/Makefile:1.1 Thu Feb 18 15:51:59 2016 +++ pkgsrc/devel/jemalloc/Makefile Sat Jul 2 11:00:42 2016 @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.1 2016/02/18 15:51:59 gson Exp $ +# $NetBSD: Makefile,v 1.2 2016/07/02 11:00:42 wiz Exp $ -DISTNAME= jemalloc-4.0.4 +DISTNAME= jemalloc-4.2.1 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_GITHUB:=jemalloc/} GITHUB_PROJECT= jemalloc Index: pkgsrc/devel/jemalloc/distinfo diff -u pkgsrc/devel/jemalloc/distinfo:1.1 pkgsrc/devel/jemalloc/distinfo:1.2 --- pkgsrc/devel/jemalloc/distinfo:1.1 Thu Feb 18 15:51:59 2016 +++ pkgsrc/devel/jemalloc/distinfo Sat Jul 2 11:00:42 2016 @@ -1,8 +1,7 @@ -$NetBSD: distinfo,v 1.1 2016/02/18 15:51:59 gson Exp $ +$NetBSD: distinfo,v 1.2 2016/07/02 11:00:42 wiz Exp $ -SHA1 (jemalloc-4.0.4.tar.bz2) = 665050e09ed2270899c2421248f21e6d52dfd9dd -RMD160 (jemalloc-4.0.4.tar.bz2) = 9d3572a41c5c5ed0ed15bd3cb82c1098767b11e7 -SHA512 (jemalloc-4.0.4.tar.bz2) = 93be0551a80d5f5dc3a1044ef3d5f06c5ce65f3c1fd753743ee64340b841fc2d7902178774ab71eaa633f68abad44109870eb84159679fdc8ce6d93db3a53112 -Size (jemalloc-4.0.4.tar.bz2) = 391483 bytes +SHA1 (jemalloc-4.2.1.tar.bz2) = 2b5c5841c099751c29caef8053e6fa3b99689188 +RMD160 (jemalloc-4.2.1.tar.bz2) = fdd50de876c8e78e14e4c75e54b3ed05b6fba1c0 +SHA512 (jemalloc-4.2.1.tar.bz2) = a0bbf2150371bf31b386c668bc636a56e82145a8a81586d0898cdeed707bf1b694e777ea2afba521584998a60663bb4734e8a83697a337ea13e6ade4de737c18 +Size (jemalloc-4.2.1.tar.bz2) = 431132 bytes SHA1 (patch-Makefile.in) = 44329c739b691f977bd672acc337a07e4fa7f4c5 -SHA1 (patch-configure) = ade66a0b8fee1ed3a8e74f9e0e29a30f88802e0a --_----------=_1467457242272100--