about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2021-07-27 02:03:01 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2021-07-27 02:03:01 +0200
commitde2f68c3c751df1925c50ebf3be1c9d9f79b1dcf (patch)
treef501249f4983633dff944a5624202c21d1996417
parentddcc612ce923038b867083a0c55d6e034951155a (diff)
downloadglibc-de2f68c3c751df1925c50ebf3be1c9d9f79b1dcf.tar.gz
glibc-de2f68c3c751df1925c50ebf3be1c9d9f79b1dcf.tar.xz
glibc-de2f68c3c751df1925c50ebf3be1c9d9f79b1dcf.zip
hurd: _Fork: unlock malloc before calling fork child hooks
The setitimer fork hook, fork_itimer, needs to call malloc inside
__mach_setup_tls, so we need to unlock malloc before calling it.
-rw-r--r--sysdeps/mach/hurd/_Fork.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sysdeps/mach/hurd/_Fork.c b/sysdeps/mach/hurd/_Fork.c
index 75d45d6cad..88787f35ac 100644
--- a/sysdeps/mach/hurd/_Fork.c
+++ b/sysdeps/mach/hurd/_Fork.c
@@ -660,6 +660,7 @@ retry:
 
       /* Release malloc locks.  */
       _hurd_malloc_fork_child ();
+      call_function_static_weak (__malloc_fork_unlock_child);
 
       /* Run things that want to run in the child task to set up.  */
       RUN_HOOK (_hurd_fork_child_hook, ());