blob: eca1193dd37f0a5d8db6a5bea8825e01873c0d70 [file] [log] [blame]
From 847d37d5a34e4bf294de4ba98de3668950e28bc7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 27 Jan 2018 10:05:07 -0800
Subject: [PATCH 26/27] reset dl_load_write_lock after forking
The patch in this Bugzilla entry was requested by a customer:
https://www.sourceware.org/bugzilla/show_bug.cgi?id=19282
The __libc_fork() code reset dl_load_lock, but it also needed to reset
dl_load_write_lock. The patch has not yet been integrated upstream.
Upstream-Status: Pending [ No Author See bugzilla]
Signed-off-by: Damodar Sonone <damodar.sonone@kpit.com>
Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
sysdeps/nptl/fork.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/nptl/fork.c b/sysdeps/nptl/fork.c
index 846fa49ef2..f87506f398 100644
--- a/sysdeps/nptl/fork.c
+++ b/sysdeps/nptl/fork.c
@@ -194,9 +194,9 @@ __libc_fork (void)
_IO_list_resetlock ();
}
- /* Reset the lock the dynamic loader uses to protect its data. */
+ /* Reset the locks the dynamic loader uses to protect its data. */
__rtld_lock_initialize (GL(dl_load_lock));
-
+ __rtld_lock_initialize (GL(dl_load_write_lock));
/* Run the handlers registered for the child. */
while (allp != NULL)
{
--
2.16.1