summaryrefslogtreecommitdiffstats
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* Update ChangeLog for 4.4.0.Jason Evans2016-12-041-0/+27
|
* Update ChangeLog for 4.3.1.Jason Evans2016-11-081-0/+8
|
* Update ChangeLog for 4.3.0.Jason Evans2016-11-041-0/+2
|
* Update ChangeLog for 4.3.0.Jason Evans2016-11-041-3/+9
|
* Update ChangeLog for 4.3.0.Jason Evans2016-11-031-0/+37
|
* Update ChangeLog for 4.2.1.Jason Evans2016-06-081-0/+11
|
* Fix a typo.Jason Evans2016-05-121-1/+1
|
* Update ChangeLog for 4.2.0.Jason Evans2016-05-121-1/+1
|
* Fix chunk accounting related to triggering gdump profiles.Jason Evans2016-05-111-0/+1
| | | | | Fix in place huge reallocation to update the chunk counters that are used for triggering gdump profiles.
* Update ChangeLog.Jason Evans2016-05-061-0/+22
|
* Fix a typo.Jason Evans2016-05-041-1/+1
|
* Update ChangeLog for 4.1.1.Jason Evans2016-05-041-0/+21
|
* Replace contributor name with github account.Jason Evans2016-03-081-2/+2
|
* Update ChangeLog for 4.1.0.Jason Evans2016-02-281-1/+1
|
* Update ChangeLog.Jason Evans2016-02-281-7/+10
|
* Update ChangeLog in preparation for 4.1.0.Jason Evans2016-02-271-0/+70
|
* Update ChangeLog for 4.0.4.Jason Evans2015-10-241-1/+6
|
* Fix a xallocx(..., MALLOCX_ZERO) bug.Jason Evans2015-09-251-0/+7
| | | | | | | | Fix xallocx(..., MALLOCX_ZERO to zero the last full trailing page of large allocations that have been randomly assigned an offset of 0 when --enable-cache-oblivious configure option is enabled. This addresses a special case missed in d260f442ce693de4351229027b37b3293fcbfd7d (Fix xallocx(..., MALLOCX_ZERO) bugs.).
* Update ChangeLog for 4.0.3.Jason Evans2015-09-251-1/+3
|
* Work around an NPTL-specific TSD issue.Jason Evans2015-09-241-0/+2
| | | | | | | Work around a potentially bad thread-specific data initialization interaction with NPTL (glibc's pthreads implementation). This resolves #283.
* Fix xallocx(..., MALLOCX_ZERO) bugs.Jason Evans2015-09-241-0/+4
| | | | | | | | | | Zero all trailing bytes of large allocations when --enable-cache-oblivious configure option is enabled. This regression was introduced by 8a03cf039cd06f9fa6972711195055d865673966 (Implement cache index randomization for large allocations.). Zero trailing bytes of huge allocations when resizing from/to a size class that is not a multiple of the chunk size.
* Fix prof_tctx_dump_iter() to filter.Jason Evans2015-09-221-0/+6
| | | | | | | Fix prof_tctx_dump_iter() to filter out nodes that were created after heap profile dumping started. Prior to this fix, spurious entries with arbitrary object/byte counts could appear in heap profiles, which resulted in jeprof inaccuracies or failures.
* Update ChangeLog for 4.0.2.Jason Evans2015-09-211-1/+3
|
* Fix prof_alloc_rollback().Jason Evans2015-09-171-0/+2
| | | | | Fix prof_alloc_rollback() to read tdata from thread-specific data rather than dereferencing a potentially invalid tctx.
* Fix irallocx_prof_sample().Jason Evans2015-09-171-0/+2
| | | | | Fix irallocx_prof_sample() to always allocate large regions, even when alignment is non-zero.
* Fix ixallocx_prof_sample().Jason Evans2015-09-171-0/+7
| | | | | | Fix ixallocx_prof_sample() to never modify nor create sampled small allocations. xallocx() is in general incapable of moving small allocations, so this fix removes buggy code without loss of generality.
* Update ChangeLog for 4.0.1.Jason Evans2015-09-151-24/+47
|
* Fix ixallocx_prof() to check for size greater than HUGE_MAXCLASS.Jason Evans2015-09-151-2/+1
|
* Fix prof_{malloc,free}_sample_object() call order in prof_realloc().Jason Evans2015-09-151-0/+3
| | | | | | Fix prof_realloc() to call prof_free_sampled_object() after calling prof_malloc_sample_object(). Prior to this fix, if tctx and old_tctx were the same, the tctx could have been prematurely destroyed.
* Fix ixallocx_prof_sample() argument order reversal.Jason Evans2015-09-151-0/+2
| | | | | Fix ixallocx_prof() to pass usize_max and zero to ixallocx_prof_sample() in the correct order.
* Make one call to prof_active_get_unlocked() per allocation event.Jason Evans2015-09-151-0/+4
| | | | | | | Make one call to prof_active_get_unlocked() per allocation event, and use the result throughout the relevant functions that handle an allocation event. Also add a missing check in prof_realloc(). These fixes protect allocation events against concurrent prof_active changes.
* Fix irealloc_prof() to prof_alloc_rollback() on OOM.Jason Evans2015-09-151-0/+1
|
* Fix xallocx() bugs.Jason Evans2015-09-121-0/+2
| | | | | Fix xallocx() bugs related to the 'extra' parameter when specified as non-zero.
* Fix "prof.reset" mallctl-related corruption.Jason Evans2015-09-101-0/+4
| | | | | | | Fix heap profiling to distinguish among otherwise identical sample sites with interposed resets (triggered via the "prof.reset" mallctl). This bug could cause data structure corruption that would most likely result in a segfault.
* Fix TLS configuration.Jason Evans2015-09-021-0/+2
| | | | | | | | Fix TLS configuration such that it is enabled by default for platforms on which it works correctly. This regression was introduced by ac5db02034c01357a4ce90504886046a58117921 (Make --enable-tls and --enable-lazy-lock take precedence over configure.ac-hardcoded defaults).
* Fix chunk purge hook calls for in-place huge shrinking reallocation.Mike Hommey2015-08-281-0/+4
| | | | | | | | | | Fix chunk purge hook calls for in-place huge shrinking reallocation to specify the old chunk size rather than the new chunk size. This bug caused no correctness issues for the default chunk purge function, but was visible to custom functions set via the "arena.<i>.chunk_hooks" mallctl. This resolves #264.
* Fix arenas_cache_cleanup() and arena_get_hard().Jason Evans2015-08-281-3/+3
| | | | | | | | | Fix arenas_cache_cleanup() and arena_get_hard() to handle allocation/deallocation within the application's thread-specific data cleanup functions even after arenas_cache is torn down. This is a more general fix that complements 45e9f66c280e1ba8bebf7bed387a43bc9e45536d (Fix arenas_cache_cleanup().).
* Add JEMALLOC_CXX_THROW to the memalign() function prototype.Jason Evans2015-08-261-0/+3
| | | | | | | | | | Add JEMALLOC_CXX_THROW to the memalign() function prototype, in order to match glibc and avoid compilation errors when including both jemalloc/jemalloc.h and malloc.h in C++ code. This change was unintentionally omitted from ae93d6bf364e9db9f9ee69c3e5f9df110d8685a4 (Avoid function prototype incompatibilities.).
* Fix arenas_cache_cleanup().Christopher Ferris2015-08-211-1/+4
| | | | | | Fix arenas_cache_cleanup() to handle allocation/deallocation within the application's thread-specific data cleanup functions even after arenas_cache is torn down.
* Rename index_t to szind_t to avoid an existing type on Solaris.Jason Evans2015-08-191-0/+1
| | | | This resolves #256.
* Don't bitshift by negative amounts.Jason Evans2015-08-191-0/+6
| | | | | | | | Don't bitshift by negative amounts when encoding/decoding run sizes in chunk header maps. This affected systems with page sizes greater than 8 KiB. Reported by Ingvar Hagelund <ingvar@redpill-linpro.com>.
* Update ChangeLog for 4.0.0.Jason Evans2015-08-171-2/+1
|
* Remove obsolete entry.Jason Evans2015-08-121-4/+0
|
* Generalize chunk management hooks.Jason Evans2015-08-041-2/+1
| | | | | | | | | | | | | | | | | | | | Add the "arena.<i>.chunk_hooks" mallctl, which replaces and expands on the "arena.<i>.chunk.{alloc,dalloc,purge}" mallctls. The chunk hooks allow control over chunk allocation/deallocation, decommit/commit, purging, and splitting/merging, such that the application can rely on jemalloc's internal chunk caching and retaining functionality, yet implement a variety of chunk management mechanisms and policies. Merge the chunks_[sz]ad_{mmap,dss} red-black trees into chunks_[sz]ad_retained. This slightly reduces how hard jemalloc tries to honor the dss precedence setting; prior to this change the precedence setting was also consulted when recycling chunks. Fix chunk purging. Don't purge chunks in arena_purge_stashed(); instead deallocate them in arena_unstash_purged(), so that the dirty memory linkage remains valid until after the last time it is used. This resolves #176 and #201.
* Add the config.cache_oblivious mallctl.Jason Evans2015-07-171-1/+2
|
* Add a missing ChangeLog entry.Jason Evans2015-07-091-0/+3
|
* Fix typos ChangeLogcharsyam2015-07-071-1/+1
| | | Fix typos ChangeLog
* Minor ChangeLog edit.Jason Evans2015-07-071-3/+2
|
* Fix size class overflow handling when profiling is enabled.Jason Evans2015-06-241-0/+2
| | | | | | | | | | Fix size class overflow handling for malloc(), posix_memalign(), memalign(), calloc(), and realloc() when profiling is enabled. Remove an assertion that erroneously caused arena_sdalloc() to fail when profiling was enabled. This resolves #232.
* Implement cache index randomization for large allocations.Jason Evans2015-05-061-0/+3
| | | | | | | | | | | | | | | | | | | | Extract szad size quantization into {extent,run}_quantize(), and . quantize szad run sizes to the union of valid small region run sizes and large run sizes. Refactor iteration in arena_run_first_fit() to use run_quantize{,_first,_next(), and add support for padded large runs. For large allocations that have no specified alignment constraints, compute a pseudo-random offset from the beginning of the first backing page that is a multiple of the cache line size. Under typical configurations with 4-KiB pages and 64-byte cache lines this results in a uniform distribution among 64 page boundary offsets. Add the --disable-cache-oblivious option, primarily intended for performance testing. This resolves #13.