#
a7639d23 |
|
18-Nov-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
libroot_debug: Add aligned_alloc implementation. Fixes #17407.
|
#
c529e2a3 |
|
02-Feb-2020 |
X512 <danger_mail@list.ru> |
debug heap: implement malloc_usable_size Change-Id: I49d7918df00cca4b889f6a3cf52c3f903ee5fa2a Reviewed-on: https://review.haiku-os.org/c/haiku/+/2179 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
e4103b1b |
|
25-Dec-2018 |
Michael Lotz <mmlr@mlotz.ch> |
libroot: Introduce thread specific heap init/exit hooks. This allows heap implementations to initialize and clean up any thread specific structures. The current default hoard heap does not use these. Note that the thread exit hook will not be called for the main thread as the heap may be needed during process termination (__cxa_finalize for example). Change-Id: I703fbd34dec0d9029d619a2125c5b19d8c1933aa Reviewed-on: https://review.haiku-os.org/799 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
17b2a3cf |
|
17-Dec-2016 |
Jérôme Duval <jerome.duval@gmail.com> |
fork(): Defer signals and lock the heaps while _kern_fork(). * Also defer signals while registering fork hooks. * While malloc provides fork heap hooks which lock the heaps and unlock/reinit, malloc_debug provides empty hooks. * Ideas suggested by Ingo, patch reviewed by him. Thanks a lot! * Also call fork parent hooks on failure. * Solve locks-up when combining multithreading and process forking, should help with #13111.
|
#
dbf060a3 |
|
29-Oct-2015 |
Simon South <ssouth@simonsouth.com> |
libroot: Add brk() and sbrk(). This commit replaces the placeholder implementation of sbrk(), which operated on a process' heap, with real implementations of brk() and sbrk() that adjust a process' program break. * unistd.h: Add standard definitions of brk() and sbrk(); include stdint.h for intptr_t. * thread.cpp: Recognize RLIMIT_AS and RLIMIT_DATA resource limits (both currently unlimited); order limit identifiers alphabetically. * arch-specific.cpp: Remove sbrk_hook(). * malloc_debug_api.cpp: Remove sbrk_hook(). * unistd/Jamfile: Build brk.c instead of sbrk.c. * unistd/brk.c: Add. * unistd/sbrk.c: Delete (placeholder implementation). * libroot_stubs.c: Remove sbrk_hook(). * libroot_stubs_legacy.c: Remove sbrk_hook(). * src/tests/.../posix/Jamfile: Build brk_test.c. * brk_test.c: Add (simple unit test that demonstrates behaviour of sbrk()). Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
|
#
f474606e |
|
12-Aug-2015 |
Michael Lotz <mmlr@mlotz.ch> |
libroot_debug: Merge guarded heap into libroot_debug. The individual debug heap implementations are now exposed via a structure of function pointers and a common frontend dispatches the malloc and malloc_debug APIs through them. The MALLOC_DEBUG environment variable can be used to select the guarded heap by adding 'g', otherwise the debug heap is used as the default. Consequently the separate libroot_guarded is not needed anymore and has been removed. To allow the use of environment variables this early, init_env_post_heap has been added and the heap dependent atfork() moved there. This allowed to fold the code of init_heap_post_env into init_heap so the former has been removed.
|
#
f474606ee92a7afddb5b3b6350a97ffd31e22c42 |
|
12-Aug-2015 |
Michael Lotz <mmlr@mlotz.ch> |
libroot_debug: Merge guarded heap into libroot_debug. The individual debug heap implementations are now exposed via a structure of function pointers and a common frontend dispatches the malloc and malloc_debug APIs through them. The MALLOC_DEBUG environment variable can be used to select the guarded heap by adding 'g', otherwise the debug heap is used as the default. Consequently the separate libroot_guarded is not needed anymore and has been removed. To allow the use of environment variables this early, init_env_post_heap has been added and the heap dependent atfork() moved there. This allowed to fold the code of init_heap_post_env into init_heap so the former has been removed.
|