diff options
author | Christopher Faylor <me@cgf.cx> | 2011-05-30 16:09:29 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2011-05-30 16:09:29 +0000 |
commit | 6642f7daa369ede921ce92eb819f01dc58b18b30 (patch) | |
tree | 21a627aeca43a0dcc93353e22668e71fc259e658 /newlib/libc/stdlib/malloc.c | |
parent | 7123c8b1fd92c222613bb1b77ec67d69fbbb9791 (diff) | |
download | cygnal-6642f7daa369ede921ce92eb819f01dc58b18b30.tar.gz cygnal-6642f7daa369ede921ce92eb819f01dc58b18b30.tar.bz2 cygnal-6642f7daa369ede921ce92eb819f01dc58b18b30.zip |
* dll_init.cc (reserve_upto): Remove.
(release_upto): Ditto.
(dll_list::reserve_space): New function to reserve space needed by DLL_LOAD
dlls early in the fork process.
(dll_list::load_after_fork): Rewrite to use recursion to track reservations it
makes while trying to make dlls land where they belong.
(dll_list::load_after_fork_impl): New function used by load_after_fork.
(dll_list::alloc): Initialize image base field.
* dll_init.h (dll_list::prefered_base): New field.
(dll_list::reserve_space): Declare new function.
(dll_list::load_after_fork): Declare new function.
* fork.cc (frok::child): call dll_list::reserve_space early, so we can retry if
it fails.
Diffstat (limited to 'newlib/libc/stdlib/malloc.c')
0 files changed, 0 insertions, 0 deletions