Lines Matching refs:to

12   - Fix xallocx(..., MALLOCX_ZERO) to zero all trailing bytes of large
14 - Fix xallocx(..., MALLOCX_ZERO) to zero trailing bytes of huge allocations
15 when resizing from/to a size class that is not a multiple of the chunk size.
16 - Fix prof_tctx_dump_iter() to filter out nodes that were created after heap
23 This bugfix release addresses a few bugs specific to heap profiling.
26 - Fix ixallocx_prof_sample() to never modify nor create sampled small
29 - Fix irallocx_prof_sample() to always allocate large regions, even when
31 - Fix prof_alloc_rollback() to read tdata from thread-specific data rather
36 This is a bugfix release that is somewhat high risk due to the amount of
37 refactoring required to address deep xallocx() problems. As a side effect of
38 these fixes, xallocx() now tries harder to partially fulfill requests for
41 fixes that were integral to disovering most of the other bugs.
48 - Optimize irallocx_prof() to optimistically update the sampler state. The
49 prior implementation appears to have been a holdover from when
55 - Fix arenas_cache_cleanup() and arena_get_hard() to handle
58 - Fix xallocx() bugs related to size+extra exceeding HUGE_MAXCLASS.
59 - Fix chunk purge hook calls for in-place huge shrinking reallocation to
62 visible to custom functions set via the "arena.<i>.chunk_hooks" mallctl.
64 + Fix heap profiling to distinguish among otherwise identical sample sites
68 + Fix irealloc_prof() to prof_alloc_rollback() on OOM.
69 + Make one call to prof_active_get_unlocked() per allocation event, and use
73 + Fix ixallocx_prof() to pass usize_max and zero to ixallocx_prof_sample()
75 + Fix prof_realloc() to call prof_free_sampled_object() after calling
76 prof_malloc_sample_object(). Prior to this fix, if tctx and old_tctx were
82 + Rename index_t to szind_t to avoid an existing type on Solaris.
83 + Add JEMALLOC_CXX_THROW to the memalign() function prototype, in order to
89 + Link tests to librt if it contains clock_gettime(2).
99 - Normalize size class spacing to be consistent across the complete size
103 --with-lg-tiny-min options, which can be used to tweak page and size class
108 + Internal fragmentation is limited to 20% for all but the smallest size
111 + Chunk fragmentation tends to be lower because there are fewer distinct run
112 sizes to pack.
115 MALLOCX_TCACHE(tc) and MALLOCX_TCACHE_NONE flags to the *allocx() API
117 - Implement per thread heap profiling, as well as the ability to
124 - Refactor huge allocation to be managed by arenas, so that arenas now
137 - Add the 'util' column to malloc_stats_print() output, which reports the
141 mallctl), so that it is possible to separately enable junk filling for
144 jemalloc was configured, and how to integrate it into application builds.
153 - Add the "prof.gdump" mallctl, which makes it possible to toggle the gdump
159 only have to #include <jemalloc/jemalloc.h>.
175 - Split the arena chunk map into two separate arrays, in order to increase
181 - Randomly distribute large allocation base pointer alignment relative to page
182 boundaries in order to more uniformly utilize CPU cache sets. This can be
186 - Refactor thread-specific data to reside in a single structure. This assures
189 - Refactor rtree (radix tree for chunk lookups) to be lock-free, and make
190 additional optimizations that reduce maximum lookup depth to one or two
196 - Replace --enable-cc-silence with --disable-cc-silence to suppress spurious
200 - Change the heap profile dump format to support per thread heap profiling,
201 rename pprof to jeprof, and enhance it with the --thread=<n> option. As a
204 - Disable "opt.prof_final" by default, in order to avoid atexit(3), which can
206 - Change the "arenas.nlruns" mallctl type from size_t to unsigned.
211 MALLOCX_TCACHE(tc) and MALLOCX_TCACHE_NONE flags to control tcache usage.
228 - Fix the cactive statistic to decrease (rather than increase) when active
237 - Fix the "arena.<i>.dss" mallctl to return an error if "primary" or
239 - Fix fallback lg_floor() implementations to handle extremely large inputs.
242 - Fix the "arena.<i>.dss" mallctl to handle read-only calls.
243 - Fix tls_model configuration to enable the initial-exec model when possible.
259 -fno-omit-frame-pointer to gcc. Note that the application (and all the
260 libraries it links to) must also be compiled with this option for
261 backtracing to be reliable.
277 - Configure Solaris/Illumos to use MADV_FREE.
297 - Add the *allocx() API, which is a successor to the experimental *allocm()
298 API. The *allocx() functions are slightly simpler to use because they have
308 systems, makes it possible to completely disable floating point register
309 use. Some versions of glibc neglect to save/restore caller-saved floating
311 code uses whatever malloc the application happens to have linked/loaded
317 - Fix prof_dump() to close the dump file descriptor for all relevant error
319 - Fix rallocm() to use the arena specified by the ALLOCM_ARENA(s) flag for
327 - Fix growing large reallocation to junk fill new space.
328 - Fix huge deallocation to junk fill when munmap is disabled.
329 - Change the default private namespace prefix from empty to je_, and change
352 + internal zero-initialized data structures (relevant to tcache and prof
356 set during the first allocation prior to this fix.
380 - Fix a chunk recycling bug that could cause the allocator to lose track of
396 - Fix Valgrind integration to annotate all internally allocated memory in a
402 This version includes a few minor performance improvements in addition to the
406 - Add clipping support to lg_chunk option processing.
412 - Fix "arenas.extend" mallctl to output the number of arenas.
413 - Fix chunk_recycle() to unconditionally inform Valgrind that returned memory
415 - Fix build break on FreeBSD related to alloca.h.
419 In addition to a couple of bug fixes, this version modifies page run
420 allocation and dirty page purging algorithms in order to better control
424 - Change the "opt.lg_dirty_mult" default from 5 to 3 (32:1 to 8:1).
427 - Fix dss/mmap allocation precedence code to use recyclable mmap memory only
435 - Auto-detect whether running inside Valgrind, thus removing the need to
437 - Add the "arenas.extend" mallctl, which allows applications to create
446 - Disable tcache by default if running inside Valgrind, in order to avoid
447 making unallocated objects appear reachable to Valgrind.
462 of which is not reflected in the ChangeLog. This is the first release to
465 contribution details). Note that the license has been unified, thanks to
481 - Add nallocm(), which rounds a request size up to the nearest size class
496 - Rename the "tcache.flush" mallctl to "thread.tcache.flush".
497 - Rename the "arenas.pagesize" mallctl to "arenas.page".
498 - Change the "opt.lg_prof_sample" default from 0 to 19 (1 B to 512 KiB).
499 - Change the "opt.prof_accum" default from true to false.
525 - Fix large calloc() zeroing bugs due to dropping chunk map unzeroed flags.
526 - Fix chunk_alloc_dss() to stop claiming memory is zeroed. This bug could
530 - Fix malloc_stats_print() to honor 'b' and 'l' in the opts parameter.
531 - Fix realloc(p, 0) to act like free(p).
536 - Fix the "epoch" mallctl to update cached stats even if the passed in epoch
538 - Fix bin->runcur management to fix a layout policy bug. This bug did not
540 - Fix a bug in choose_arena_hard() that potentially caused more arenas to be
543 - Use glibc allocator hooks to make mixed allocator usage less likely.
552 - Fix huge_ralloc() to maintain chunk statistics.
564 This version fixes numerous bugs related to heap profiling.
574 - Fix a relative include path, to fix objdir builds.
593 This version incorporates several improvements to algorithms and data
594 structures that tend to reduce fragmentation and increase speed.
603 - Change default symbol visibility from "internal", to "hidden", which
609 - Don't use libgcc-based backtracing except on x64, where it is known to work.
610 - Fix deadlocks on OS X that were due to memory allocation in
613 + Fix memory corruption due to integer overflow in small region index
623 - Fix a cpp logic regression (due to the "thread.{de,}allocatedp" mallctl fix
632 - Add missing jemalloc.a to build system.
651 - Convert the manual page source from roff to DocBook, and generate both roff
655 - Fix a crash due to incorrect bootstrap ordering. This only impacted
677 realloc(), malloc_usable_size(), and free(). These functions can be used to
685 - Port to Apple OS X. Sponsored by Mozilla.
686 - Make it possible for the application to control thread-->arena mappings via
692 - Add the "arenas.purge" mallctl, which can be used to synchronously purge all
694 - Make cumulative heap profiling data optional, so that it is possible to
701 - Increase default backtrace depth from 4 to 128 for heap profiling.
707 - Fix strerror_r() usage to deal with non-standard semantics in GNU libc.
708 - Fix leak context reporting. This bug tended to cause the number of contexts
709 to be underreported (though the reported number of objects and bytes were
712 cause memory corruption, but it was hard to trigger.
714 multiple threads raced to create a new run of backing pages.
715 - Enhance the heap profiler to trigger samples based on usable size, rather
717 - Fix a heap profiling bug due to sometimes losing track of requested object
724 profiling). This bug could cause zero-length backtraces to be reported.
726 threads raced to initialize malloc, some of them could end up permanently
734 memory limits could cause swap file configuration to fail. Contributed by
742 to be leaked during thread exit.
756 - Make it possible for the application to manually flush a thread's cache, via
763 - Simplify the malloc_message() signature to only take one string argument,
767 application to disable over-commit if swap files are in use.
775 - Modify chunk allocation to work when address space layout randomization
777 - Fix thread cleanup bugs related to TLS destruction.