From b683fcf69217f7195e73b2f05d608c952101f47a Mon Sep 17 00:00:00 2001 From: kib Date: Thu, 27 Nov 2008 11:27:59 +0000 Subject: Add two rtld exported symbols, _rtld_atfork_pre and _rtld_atfork_post. Threading library calls _pre before the fork, allowing the rtld to lock itself to ensure that other threads of the process are out of dynamic linker. _post releases the locks. This allows the rtld to have consistent state in the child. Although child may legitimately call only async-safe functions, the call may need plt relocation resolution, and this requires working rtld. Reported and debugging help by: rink Reviewed by: kan, davidxu MFC after: 1 month (anyway, not before 7.1 is out) --- libexec/rtld-elf/Symbol.map | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libexec/rtld-elf/Symbol.map') diff --git a/libexec/rtld-elf/Symbol.map b/libexec/rtld-elf/Symbol.map index 325362c..20f8d60 100644 --- a/libexec/rtld-elf/Symbol.map +++ b/libexec/rtld-elf/Symbol.map @@ -21,4 +21,6 @@ FBSDprivate_1.0 { _rtld_thread_init; _rtld_allocate_tls; _rtld_free_tls; + _rtld_atfork_pre; + _rtld_atfork_post; }; -- cgit v1.1