Skip to content

Releases: jemalloc/jemalloc

2.2.4

18 Apr 16:48
Compare
Choose a tag to compare

Bug fixes:

  • Initialize arenas_tsd before using it. This bug existed for 2.2.[0-3], as
    well as for --disable-tls builds in earlier releases.
  • Do not assume a 4 KiB page size in test/rallocm.c.

2.2.3

18 Apr 16:49
Compare
Choose a tag to compare

This version fixes numerous bugs related to heap profiling.

Bug fixes:

  • Fix a prof-related race condition. This bug could cause memory corruption,
    but only occurred in non-default configurations (prof_accum:false).
  • Fix off-by-one backtracing issues (make sure that prof_alloc_prep() is
    excluded from backtraces).
  • Fix a prof-related bug in realloc() (only triggered by OOM errors).
  • Fix prof-related bugs in allocm() and rallocm().
  • Fix prof_tdata_cleanup() for --disable-tls builds.
  • Fix a relative include path, to fix objdir builds.

2.2.2

18 Apr 16:50
Compare
Choose a tag to compare

Bug fixes:

  • Fix a build error for --disable-tcache.
  • Fix assertions in arena_purge() (for real this time).
  • Add the --with-private-namespace option. This is a workaround for symbol
    conflicts that can inadvertently arise when using static libraries.

2.2.1

18 Apr 16:51
Compare
Choose a tag to compare

Bug fixes:

  • Implement atomic operations for x86/x64. This fixes compilation failures
    for versions of gcc that are still in wide use.
  • Fix an assertion in arena_purge().

2.2.0

18 Apr 16:52
Compare
Choose a tag to compare

This version incorporates several improvements to algorithms and data structures that tend to reduce fragmentation and increase speed.

New features:

  • Add the "stats.cactive" mallctl.
  • Update pprof (from google-perftools 1.7).
  • Improve backtracing-related configuration logic, and add the
    --disable-prof-libgcc option.

Bug fixes:

  • Change default symbol visibility from "internal", to "hidden", which
    decreases the overhead of library-internal function calls.
  • Fix symbol visibility so that it is also set on OS X.
  • Fix a build dependency regression caused by the introduction of the .pic.o
    suffix for PIC object files.
  • Add missing checks for mutex initialization failures.
  • Don't use libgcc-based backtracing except on x64, where it is known to work.
  • Fix deadlocks on OS X that were due to memory allocation in
    pthread_mutex_lock().
  • Heap profiling-specific fixes:
    • Fix memory corruption due to integer overflow in small region index
      computation, when using a small enough sample interval that profiling
      context pointers are stored in small run headers.
    • Fix a bootstrap ordering bug that only occurred with TLS disabled.
    • Fix a rallocm() rsize bug.
    • Fix error detection bugs for aligned memory allocation.

2.1.3

18 Apr 16:52
Compare
Choose a tag to compare

Bug fixes:

  • Fix a cpp logic regression (due to the "thread.{de,}allocatedp" mallctl fix
    for OS X in 2.1.2).
  • Fix a "thread.arena" mallctl bug.
  • Fix a thread cache stats merging bug.

2.1.2

18 Apr 16:53
Compare
Choose a tag to compare

Bug fixes:

  • Fix "thread.{de,}allocatedp" mallctl for OS X.
  • Add missing jemalloc.a to build system.

2.1.1

18 Apr 16:54
Compare
Choose a tag to compare

Bug fixes:

  • Fix aligned huge reallocation (affected allocm()).
  • Fix the ALLOCM_LG_ALIGN macro definition.
  • Fix a heap dumping deadlock.
  • Fix a "thread.arena" mallctl bug.

2.1.0

18 Apr 16:55
Compare
Choose a tag to compare

This version incorporates some optimizations that can't quite be considered bug fixes.

New features:

  • Use Linux's mremap(2) for huge object reallocation when possible.
  • Avoid locking in mallctl*() when possible.
  • Add the "thread.[de]allocatedp" mallctl's.
  • Convert the manual page source from roff to DocBook, and generate both roff
    and HTML manuals.

Bug fixes:

  • Fix a crash due to incorrect bootstrap ordering. This only impacted
    --enable-debug --enable-dss configurations.
  • Fix a minor statistics bug for mallctl("swap.avail", ...).

2.0.1

18 Apr 16:55
Compare
Choose a tag to compare

Bug fixes:

  • Fix a race condition in heap profiling that could cause undefined behavior
    if "opt.prof_accum" were disabled.
  • Add missing mutex unlocks for some OOM error paths in the heap profiling
    code.
  • Fix a compilation error for non-C99 builds.