Boost C++ Libraries: Ticket #11537: named_recursive_mutex deadlock problem https://svn.boost.org/trac10/ticket/11537 <p> In my fastcgi application code, I tried to use managed_mapped_file to communicate between process, and use named_recursive_mutex to do synchronization. With fastcgi, I started 3 child process, after a few minutes, I found all these 3 process waiting for lock: Thread 1 (Thread 0x7f0e2b536820 (LWP 16593)): <a class="missing ticket">#0</a> 0x0000003d9ee0e054 in <span class="underline">lll_lock_wait () from /lib64/libpthread.so.0 <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/1" title="#1: Bugs: boost.build causes ftjam to segfault (closed: Wont Fix)">#1</a> 0x0000003d9ee093a3 in _L_lock_892 () from /lib64/libpthread.so.0 <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/2" title="#2: Bugs: list::size should be const (closed: fixed)">#2</a> 0x0000003d9ee09287 in pthread_mutex_lock () from /lib64/libpthread.so.0 <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/3" title="#3: Bugs: automatic conversion and overload proble (closed: fixed)">#3</a> 0x000000000054a9cf in boost::interprocess::ipcdetail::posix_recursive_mutex::lock() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/4" title="#4: Bugs: any_ptr in any library documentation? (closed: Fixed)">#4</a> 0x000000000054aabc in boost::interprocess::interprocess_recursive_mutex::lock() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/5" title="#5: Bugs: shared_ptr and self-owning objects (closed: Fixed)">#5</a> 0x000000000054b304 in boost::interprocess::ipcdetail::shm_named_recursive_mutex::lock() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/6" title="#6: Bugs: tie in utility.hpp and tuple.hpp clash. (closed: Duplicate)">#6</a> 0x000000000054b390 in boost::interprocess::named_recursive_mutex::lock() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/7" title="#7: Bugs: g++ 2.96 requires NO_STRINGSTREAM (closed: Fixed)">#7</a> 0x000000000054bade in boost::interprocess::scoped_lock&lt;boost::interprocess::named_recursive_mutex&gt;::scoped_lock(boost::interprocess::named_recursive_mutex&amp;) () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8" title="#8: Bugs: prop in undirected graph + out_edges (closed: Works For Me)">#8</a> 0x00000000005647ef in IPRateLimit::CIPLimit::incCount(unsigned int, IPRateLimit::iprate&amp;) () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9" title="#9: Bugs: config_info ambiguity error (closed: Invalid)">#9</a> 0x00000000004d8017 in (anonymous namespace)::TboProc::operator()() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/10" title="#10: Bugs: allyourbase.jam file is bad. (closed: Out of Date)">#10</a> 0x00000000004e40f9 in Goome::FCGI_Accepter&lt;(anonymous namespace)::<a class="missing wiki">TboProc</a>&gt;::dispatch() () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/11" title="#11: Bugs: why not using mt19937? (closed: Fixed)">#11</a> 0x00000000004e2f80 in fork_main(int) () <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/12" title="#12: Bugs: Can't specify VertexPredicate (closed: Fixed)">#12</a> 0x00000000004e346f in main () </span></p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11537 Trac 1.4.3 zzweng_2001@… Thu, 13 Aug 2015 07:28:55 GMT attachment set https://svn.boost.org/trac10/ticket/11537 https://svn.boost.org/trac10/ticket/11537 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">IPLimit.cpp</span> </li> </ul> Ticket zzweng_2001@… Thu, 13 Aug 2015 07:29:28 GMT attachment set https://svn.boost.org/trac10/ticket/11537 https://svn.boost.org/trac10/ticket/11537 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">IPLimit.h</span> </li> </ul> Ticket