aboutsummaryrefslogtreecommitdiff
path: root/malloc/malloc.c
AgeCommit message (Collapse)Author
2013-12-06Fix BZ #15089: malloc_trim always trim for large padding.Fernando J. V. da Silva
2013-11-28Make memset in calloc a tail call.Ondřej Bílka
2013-11-21Add missing #include for malloc/hooks.c code.Roland McGrath
2013-11-20Consolidate valloc/pvalloc code.Ondřej Bílka
To make malloc code more maintainable we make malloc and pvalloc share logic with memalign.
2013-11-01Fix malloc_info statistic. Fixes bug 16112Ondřej Bílka
2013-10-30malloc: Fix for infinite loop in memalign/posix_memalign.Will Newton
A very large alignment argument passed to mealign/posix_memalign causes _int_memalign to enter an infinite loop. Limit the maximum alignment value to the maximum representable power of two to prevent this from happening. Changelog: 2013-10-30 Will Newton <will.newton@linaro.org> [BZ #16038] * malloc/hooks.c (memalign_check): Limit alignment to the maximum representable power of two. * malloc/malloc.c (__libc_memalign): Likewise. * malloc/tst-memalign.c (do_test): Add test for very large alignment values. * malloc/tst-posix_memalign.c (do_test): Likewise.
2013-10-30Use atomic operations to track memory. Fixes bug 11087Ondřej Bílka
2013-10-18Remove assert in malloc statistic. Fixes bug 12486.Ondřej Bílka
2013-09-20Add malloc probes for sbrk and heap resizing.Alexandre Oliva
for ChangeLog * malloc/arena.c (new_heap): New memory_heap_new probe. (grow_heap): New memory_heap_more probe. (shrink_heap): New memory_heap_less probe. (heap_trim): New memory_heap_free probe. * malloc/malloc.c (sysmalloc): New memory_sbrk_more probe. (systrim): New memory_sbrk_less probe. * manual/probes.texi: Document them.
2013-09-20Add probes for malloc retries.Alexandre Oliva
for ChangeLog * malloc/malloc.c (__libc_malloc): Add memory_malloc_retry probe. (__libc_realloc): Add memory_realloc_retry probe. (__libc_memalign): Add memory_memalign_retry probe. (__libc_valloc): Add memory_valloc_retry probe. (__libc_pvalloc): Add memory_pvalloc_retry probe. (__libc_calloc): Add memory_calloc_retry probe. * manual/probes.texi: Document them.
2013-09-20Add probes for malloc arena changes.Alexandre Oliva
for ChangeLog * malloc/arena.c (get_free_list): Add probe memory_arena_reuse_free_list. (reused_arena) [PER_THREAD]: Add probes memory_arena_reuse_wait and memory_arena_reuse. (arena_get2) [!PER_THREAD]: Likewise. * malloc/malloc.c (__libc_realloc) [!PER_THREAD]: Add probe memory_arena_reuse_realloc. * manual/probes.texi: Document them.
2013-09-20Add probes for all changes to malloc options.Alexandre Oliva
for ChangeLog * malloc/malloc.c (__libc_free): Add memory_mallopt_free_dyn_thresholds probe. (__libc_mallopt): Add multiple memory_mallopt probes. * manual/probes.texi: Document them.
2013-09-20Add first set of memory probes.Alexandre Oliva
for ChangeLog * malloc/malloc.c: Include stap-probe.h. (__libc_mallopt): Add memory_mallopt probe. * malloc/arena.c (_int_new_arena): Add memory_arena_new probe. * manual/probes.texi: New. * manual/Makefile (chapters): Add probes. * manual/threads.texi: Set next node.
2013-09-11malloc: Check for integer overflow in memalign.Will Newton
A large bytes parameter to memalign could cause an integer overflow and corrupt allocator internals. Check the overflow does not occur before continuing with the allocation. ChangeLog: 2013-09-11 Will Newton <will.newton@linaro.org> [BZ #15857] * malloc/malloc.c (__libc_memalign): Check the value of bytes does not overflow.
2013-09-11malloc: Check for integer overflow in valloc.Will Newton
A large bytes parameter to valloc could cause an integer overflow and corrupt allocator internals. Check the overflow does not occur before continuing with the allocation. ChangeLog: 2013-09-11 Will Newton <will.newton@linaro.org> [BZ #15856] * malloc/malloc.c (__libc_valloc): Check the value of bytes does not overflow.
2013-09-11malloc: Check for integer overflow in pvalloc.Will Newton
A large bytes parameter to pvalloc could cause an integer overflow and corrupt allocator internals. Check the overflow does not occur before continuing with the allocation. ChangeLog: 2013-09-11 Will Newton <will.newton@linaro.org> [BZ #15855] * malloc/malloc.c (__libc_pvalloc): Check the value of bytes does not overflow.
2013-08-29Fix typos.Ondřej Bílka
2013-06-08Use (void) in no-arguments function definitions.Joseph Myers
2013-03-08Remove __malloc_ptr_t.Joseph Myers
2013-01-17Add HAVE_MREMAP for mremap usagePino Toscano
Introduce (only on Linux) and use a HAVE_MREMAP symbol to advertize mremap availability. Move the malloc-sysdep.h include from arena.c to malloc.c, since what is provided by malloc-sysdep.h is needed earlier in malloc.c, before the inclusion of arena.c.
2013-01-07Clean up __MALLOC_* macros.Joseph Myers
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-10-04Name space hygeine for madvise.Roland McGrath
2012-10-02Clarify memory allocation error diagnostics to avoid confusionDmitry V. Levin
2012-09-07Cleanup code duplication in malloc on fallback to use another arenaSiddhesh Poyarekar
Break the fallback code to try another arena into a separate function for readability.
2012-09-05* malloc/malloc.c (__libc_mallopt) <M_MMAP_MAX>: Fix indentation.Alexandre Oliva
2012-09-05Don't change no_dyn_threshold on mallopt failureAlexandre Oliva
* malloc/malloc.c (__libc_mallopt) <M_MMAP_THRESHOLD>: Do not change internal state upon failure.
2012-09-05Return requested size for malloc_usable_size when MALLOC_CHECK_ > 0Siddhesh Poyarekar
[BZ #1349] malloc_usable_size returns the usable size in an allocated chunk, which may be >= the requested size. In the case of MALLOC_CHECK_ being exported to > 0 however, only the requested size is usable, since a magic value is written at the end of the request size to trap writes beyond request bounds. Hence, when MALLOC_CHECK_ is exported to > 0, malloc_usable_size() should return the request size.
2012-08-17Make malloc build for no-threads configurations.Roland McGrath
2012-08-10Fix whitespace problems detected by commit hooks.Jeff Law
2012-08-10 [BZ #13939]Jeff Law
* malloc.c/arena.c (reused_arena): New parameter, avoid_arena. When avoid_arena is set, don't retry in the that arena. Pick the next one, whatever it might be. (arena_get2): New parameter avoid_arena, pass through to reused_arena. (arena_lock): Pass in new parameter to arena_get2. * malloc/malloc.c (__libc_memalign): Pass in new parameter to arena_get2. (__libc_malloc): Unify retrying after main arena failure with __libc_memalign version. (__libc_valloc, __libc_pvalloc, __libc_calloc): Likewise.
2012-05-24Make free chunk size a multiple of MALLOC_ALIGNMENTH.J. Lu
2012-05-24Properly handle MALLOC_ALIGNMENT > 2 * SIZE_SZH.J. Lu
2012-05-21Fix last changeAndreas Jaeger
Include shlib-compat.h for SHLIB_COMPAT.
2012-05-21Set MALLOC_ALIGNMENT to at least __alignof__ (long double) for new ABIs.Roland McGrath
2012-05-16For [BZ #208], accumulate malloc stats over all arenas.Paul Pluzhnikov
2012-03-20Move stdio-common/_itoa.h to sysdeps/genericH.J. Lu
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2012-01-31Cleanups of mallocUlrich Drepper
Remove ugly names and unnecessary wrappers.
2012-01-17More minor malloc cleanupsUlrich Drepper
2012-01-16Minor cleanups of malloc codeUlrich Drepper
2012-01-07Remove pre-ISO C supportUlrich Drepper
No more __const.
2012-01-01Implement aligned_allocUlrich Drepper
2011-10-29Avoid assertion in processes with VM in bad shapeUlrich Drepper
2011-09-10Remove MALLOC_FAILURE_ACTION use in mallocUlrich Drepper
2011-09-10Simplify malloc initializationUlrich Drepper
Singificantly reduce the code needed at malloc initialization. In the process getpagesize is simplified by always initializing GLRO(dl_pagesize).
2011-09-10Simplify malloc codeUlrich Drepper
Remove all kinds of unused configuration options and dead code.
2011-09-10Remove support for !USE___THREADUlrich Drepper
2011-04-22Remove doubled words.Jim Meyering
2010-12-25Use fastbin macro everywhere.Ulrich Drepper