diff --git a/disable-test_prof_log_many_traces-test.patch b/disable-test_prof_log_many_traces-test.patch new file mode 100644 index 0000000..d6ff4ef --- /dev/null +++ b/disable-test_prof_log_many_traces-test.patch @@ -0,0 +1,9 @@ +--- jemalloc-5.2.0/test/unit/prof_log.c 2019-04-03 02:51:39.000000000 +0200 ++++ jemalloc-5.2.0/test/unit/prof_log.c.new 2019-04-04 11:42:22.371447078 +0200 +@@ -141,6 +141,5 @@ + prof_log_dummy_set(true); + return test_no_reentrancy( + test_prof_log_many_logs, +- test_prof_log_many_traces, + test_prof_log_many_threads); + } diff --git a/jemalloc-5.1.0.tar.bz2 b/jemalloc-5.1.0.tar.bz2 deleted file mode 100644 index 727b937..0000000 --- a/jemalloc-5.1.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5396e61cc6103ac393136c309fae09e44d74743c86f90e266948c50f3dbb7268 -size 515622 diff --git a/jemalloc-5.2.0.tar.bz2 b/jemalloc-5.2.0.tar.bz2 new file mode 100644 index 0000000..4662282 --- /dev/null +++ b/jemalloc-5.2.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74be9f44a60d2a99398e706baa921e4efde82bf8fd16e5c0643c375c5851e3b4 +size 543892 diff --git a/jemalloc.changes b/jemalloc.changes index 5909451..eb3dc92 100644 --- a/jemalloc.changes +++ b/jemalloc.changes @@ -1,3 +1,93 @@ +------------------------------------------------------------------- +Thu Apr 4 09:44:44 UTC 2019 - Martin Liška + +- Add disable-test_prof_log_many_traces-test.patch in order + to workaround https://github.com/jemalloc/jemalloc/issues/1477. + +------------------------------------------------------------------- +Wed Apr 3 08:35:44 UTC 2019 - Martin Liška + +- Update to version 5.2.0: + + New features: + * Implement oversize_threshold, which uses a dedicated arena for allocations crossing the specified threshold to reduce fragmentation. (@interwq) + * Add extents usage information to stats. (@tyleretzel) + * Log time information for sampled allocations. (@tyleretzel) + * Support 0 size in sdallocx. (@djwatson) + * Output rate for certain counters in malloc_stats. (@zinoale) + * Add configure option --enable-readlinkat, which allows the use of readlinkat over readlink. (@davidtgoldblatt) + * Add configure options --{enable,disable}-{static,shared} to allow not building unwanted libraries. (@Ericson2314) + * Add configure option --disable-libdl to enable fully static builds. (@interwq) + * Add mallctl interfaces: + * opt.oversize_threshold (@interwq) + * stats.arenas..extent_avail (@tyleretzel) + * stats.arenas..extents..n{dirty,muzzy,retained} (@tyleretzel) + * stats.arenas..extents..{dirty,muzzy,retained}_bytes (@tyleretzel) + + Portability improvements: + * Update MSVC builds. (@maksqwe, @rustyx) + * Workaround a compiler optimizer bug on s390x. (@rkmisra) + * Make use of pthread_set_name_np(3) on FreeBSD. (@trasz) + * Implement malloc_getcpu() to enable percpu_arena for windows. (@santagada) + * Link against -pthread instead of -lpthread. (@paravoid) + * Make background_thread not dependent on libdl. (@interwq) + * Add stringify to fix a linker directive issue on MSVC. (@daverigby) + * Detect and fall back when 8-bit atomics are unavailable. (@interwq) + * Fall back to the default pthread_create(3) if dlsym(3) fails. (@interwq) + + Optimizations and refactors: + * Refactor the TSD module. (@davidtgoldblatt) + * Avoid taking extents_muzzy mutex when muzzy is disabled. (@interwq) + * Avoid taking large_mtx for auto arenas on the tcache flush path. (@interwq) + * Optimize ixalloc by avoiding a size lookup. (@interwq) + * Implement opt.oversize_threshold which uses a dedicated arena for requests crossing the threshold, also eagerly purges the oversize extents. Default the threshold to 8 MiB. (@interwq) + * Clean compilation with -Wextra. (@gnzlbg, @jasone) + * Refactor the size class module. (@davidtgoldblatt) + * Refactor the stats emitter. (@tyleretzel) + * Optimize pow2_ceil. (@rkmisra) + * Avoid runtime detection of lazy purging on FreeBSD. (@trasz) + * Optimize mmap(2) alignment handling on FreeBSD. (@trasz) + * Improve error handling for THP state initialization. (@jsteemann) + * Rework the malloc() fast path. (@djwatson) + * Rework the free() fast path. (@djwatson) + * Refactor and optimize the tcache fill / flush paths. (@djwatson) + * Optimize sync / lwsync on PowerPC. (@chmeeedalf) + * Bypass extent_dalloc() when retain is enabled. (@interwq) + * Optimize the locking on large deallocation. (@interwq) + * Reduce the number of pages committed from sanity checking in debug build. (@trasz, @interwq) + * Deprecate OSSpinLock. (@interwq) + * Lower the default number of background threads to 4 (when the feature is enabled). (@interwq) + * Optimize the trylock spin wait. (@djwatson) + * Use arena index for arena-matching checks. (@interwq) + * Avoid forced decay on thread termination when using background threads. (@interwq) + * Disable muzzy decay by default. (@djwatson, @interwq) + * Only initialize libgcc unwinder when profiling is enabled. (@paravoid, @interwq) + + Bug fixes (all only relevant to jemalloc 5.x): + * Fix background thread index issues with max_background_threads. (@djwatson, @interwq) + * Fix stats output for opt.lg_extent_max_active_fit. (@interwq) + * Fix opt.prof_prefix initialization. (@davidtgoldblatt) + * Properly trigger decay on tcache destroy. (@interwq, @amosbird) + * Fix tcache.flush. (@interwq) + * Detect whether explicit extent zero out is necessary with huge pages or custom extent hooks, which may change the purge semantics. (@interwq) + * Fix a side effect caused by extent_max_active_fit combined with decay-based purging, where freed extents can accumulate and not be reused for an extended period of time. (@interwq, @mpghf) + * Fix a missing unlock on extent register error handling. (@zoulasc) + + Testing: + * Simplify the Travis script output. (@gnzlbg) + * Update the test scripts for FreeBSD. (@devnexen) + * Add unit tests for the producer-consumer pattern. (@interwq) + * Add Cirrus-CI config for FreeBSD builds. (@jasone) + * Add size-matching sanity checks on tcache flush. (@davidtgoldblatt, @interwq) + + Incompatible changes: + * Remove --with-lg-page-sizes. (@davidtgoldblatt) + + Documentation: + * Attempt to build docs by default, however skip doc building when xsltproc is missing. (@interwq, @cmuellner) + +- Change URL of the project. + ------------------------------------------------------------------- Tue Oct 30 15:44:20 UTC 2018 - Michel Normand diff --git a/jemalloc.spec b/jemalloc.spec index e6ff39e..d778def 100644 --- a/jemalloc.spec +++ b/jemalloc.spec @@ -1,7 +1,7 @@ # # spec file for package jemalloc # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,13 +18,14 @@ %define lname libjemalloc2 Name: jemalloc -Version: 5.1.0 +Version: 5.2.0 Release: 0 Summary: General-purpose scalable concurrent malloc implementation License: BSD-2-Clause Group: Development/Libraries/C and C++ -Url: http://canonware.com/jemalloc/ +Url: https://github.com/jemalloc/jemalloc Source: https://github.com/jemalloc/jemalloc/releases/download/%{version}/jemalloc-%{version}.tar.bz2 +Patch0: disable-test_prof_log_many_traces-test.patch BuildRequires: docbook-xsl-stylesheets BuildRequires: libxslt BuildRequires: pkg-config @@ -66,6 +67,7 @@ malloc(3) implementation. %prep %setup -q +%patch0 -p1 %build export EXTRA_CFLAGS="%optflags -std=gnu99"