[PATCH] malloc: Run fork handler as late as possible [BZ #19431]
Andreas Schwab
schwab@suse.de
Thu Apr 14 10:26:00 GMT 2016
Florian Weimer <fweimer@redhat.com> writes:
> 2016-04-13 Florian Weimer <fweimer@redhat.com>
>
> [BZ #19431]
> Run the malloc fork handler as late as possible to avoid deadlocks.
> * malloc/malloc-internal.h: New file.
> * malloc/malloc.c: Include it.
> * malloc/arena.c (ATFORK_MEM): Remove.
> (__malloc_fork_lock_parent): Rename from ptmalloc_lock_all.
> Update comment.
> (__malloc_fork_unlock_parent): Rename from ptmalloc_unlock_all.
> (__malloc_fork_unlock_child): Rename from ptmalloc_unlock_all2.
> Remove outdated comment.
> (ptmalloc_init): Do not call thread_atfork. Remove
> thread_atfork_static.
In file included from malloc.c:1889:0:
arena.c:139:1: error: conflicting types for '__malloc_fork_lock_parent'
__malloc_fork_lock_parent (void)
^
In file included from malloc.c:247:0:
../malloc/malloc-internal.h:23:6: note: previous declaration of '__malloc_fork_lock_parent' was here
void __malloc_fork_lock_parent (void) internal_function attribute_hidden;
^
Andreas.
--
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
More information about the Libc-alpha
mailing list