glibc/malloc
Osama Abdelkader 57ce2d8243 Fix allocation_index increment in malloc_internal
The allocation_index was being incremented before checking if mmap()
succeeds.  If mmap() fails, allocation_index would still be incremented,
creating a gap in the allocations tracking array and making
allocation_index inconsistent with the actual number of successful
allocations.

This fix moves the allocation_index increment to after the mmap()
success check, ensuring it only increments when an allocation actually
succeeds.  This maintains proper tracking for leak detection and
prevents gaps in the allocations array.

Signed-off-by: Osama Abdelkader <osama.abdelkader@gmail.com>
Reviewed-by: Florian Weimer <fweimer@redhat.com>
2025-12-01 13:35:36 +01:00
..
Depend
Makefile malloc: Add threaded variants of single-threaded malloc tests 2025-11-24 16:47:52 +01:00
Versions malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
alloc_buffer_alloc_array.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
alloc_buffer_allocate.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
alloc_buffer_copy_bytes.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
alloc_buffer_copy_string.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
alloc_buffer_create_failure.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
arena.c malloc: Do not call madvise if heap's oldsize >= THP size 2025-10-20 11:33:54 -03:00
dynarray-skeleton.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray_at_failure.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray_emplace_enlarge.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray_finalize.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray_resize.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
dynarray_resize_clear.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
hooks.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
malloc-check.c Suppress -Wmaybe-uninitialized only for gcc 2025-10-21 09:24:05 -03:00
malloc-debug.c malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
malloc-internal.h malloc: Improve malloc initialization 2025-05-12 16:10:28 +00:00
malloc.c malloc: Use _int_free_chunk in tcache_thread_shutdown 2025-11-20 12:28:46 +00:00
malloc.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mallocbug.c
mcheck-impl.c Cleanup some recently added whitespace. 2025-10-30 18:56:58 -07:00
mcheck-init.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mcheck.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mcheck.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memusage.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memusage.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
memusagestat.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
morecore.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mtrace-impl.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mtrace.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
mtrace.pl Update copyright dates not handled by scripts/update-copyrights 2025-01-01 11:22:09 -08:00
obstack.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
obstack.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
reallocarray.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
scratch_buffer_grow.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
scratch_buffer_grow_preserve.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
scratch_buffer_set_array_size.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
set-freeres.c elf: Merge __dl_libc_freemem into __rtld_libc_freeres 2025-02-02 20:10:09 +01:00
thread-freeres.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-aligned-alloc-random-thread-cross.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-aligned-alloc-random-thread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-aligned-alloc-random.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-aligned-alloc-static.c aligned_alloc: conform to C17 2023-05-08 16:40:10 -04:00
tst-aligned-alloc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-aligned_alloc-lib.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-alloc_buffer.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-calloc.c malloc: cleanup casts in tst-calloc 2025-01-25 05:34:05 +00:00
tst-compathooks-off.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-compathooks-on.c Move malloc hooks into a compat DSO 2021-07-22 18:37:59 +05:30
tst-dynarray-at-fail.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-dynarray-fail.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-dynarray-shared.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-dynarray.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-free-aligned-sized-trace.c malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
tst-free-aligned-sized.c malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
tst-free-errno.c malloc: Simplify tst-free-errno munmap failure test 2025-11-18 14:28:42 +01:00
tst-free-sized-trace.c malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
tst-free-sized.c malloc: add free_sized and free_aligned_sized from C23 2025-11-19 13:47:53 -03:00
tst-interpose-aux-nothread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-aux-thread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-aux.c Fix allocation_index increment in malloc_internal 2025-12-01 13:35:36 +01:00
tst-interpose-aux.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-nothread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-skeleton.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-static-nothread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-static-thread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-interpose-thread.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mallinfo2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-alternate-path.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-aux.h Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-backtrace.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-check.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-fork-deadlock.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-random.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-stats-cancellation.c
tst-malloc-tcache-leak.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-thread-exit.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-thread-fail.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-too-large.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc-usable-tunables.c
tst-malloc-usable.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-malloc_info.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mallocalign1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mallocfork.c
tst-mallocfork2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mallocfork3.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mallocstate.c malloc: Remove dumped heap support 2025-09-19 13:11:56 +00:00
tst-mallopt.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-memalign-2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-memalign-3.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-memalign.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mtrace.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mtrace.sh Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-mxfast.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-obstack.c Avoid -Wuse-after-free in tests [BZ #26779]. 2022-01-26 10:38:23 -07:00
tst-posix_memalign.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-pvalloc-fortify.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-pvalloc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-realloc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-reallocarray.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-safe-linking.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-scratch_buffer.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tcfree1.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tcfree2.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tcfree3.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00
tst-tcfree4.c malloc: Improved double free detection in the tcache 2025-05-12 11:58:30 +00:00
tst-trim1.c
tst-valloc.c Update copyright dates with scripts/update-copyrights 2025-01-01 11:22:09 -08:00