Subject: [Boost-bugs] [Boost C++ Libraries] #3926: thread_specific_ptr + dlopen library causes a SIGSEGV.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-02-12 23:05:31
#3926: thread_specific_ptr + dlopen library causes a SIGSEGV.
----------------------------+-----------------------------------------------
Reporter: pluto@⦠| Owner: anthonyw
Type: Bugs | Status: new
Milestone: Boost 1.43.0 | Component: thread
Version: Boost 1.42.0 | Severity: Problem
Keywords: |
----------------------------+-----------------------------------------------
hi,
i've discovered that using thread_specific_ptr in shared library dlopened
from thread causes a gpf.[[BR]]
please consider following scenario:
[[BR]][[BR]]
spawn thread[[BR]]
dlopen a shared library with thread_specific_ptr[[BR]]
dlclose the library[[BR]]
terminate the thread[[BR]]
[[BR]]
observe the gpf[[BR]]
[[BR]]
{{{
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff62b7400 in ?? ()
(gdb) bt
#0 0x00007ffff62b7400 in ?? ()
#1 0x00007ffff7221f79 in __nptl_deallocate_tsd () at pthread_create.c:154
#2 0x00007ffff722291b in start_thread (arg=<value optimized out>) at
pthread_create.c:304
#3 0x00007ffff6f9293d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4 0x0000000000000000 in ?? ()
}}}
afaics the pthread (user provided) destructor keyed to pthread specific
data is called on dlunloaded code.[[BR]][[BR]]
BR,[[BR]]
Pawel.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/3926> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:02 UTC