Boost logo

Boost :

Subject: [boost] [smart_ptr] quick allocator broken
From: Juergen Hunold (juergen.hunold_at_[hidden])
Date: 2009-12-10 14:30:27


Hi !

I just got round to finally debug some mysterious failures on my project
against current trunk. It seems that
------------------------------------------------------------------------
r57953 | pdimov | 2009-11-26 21:55:05 +0100 (Thu, 26 Nov 2009) | 1 line
                                                                                                                                                        
Add error checking to lwm_pthreads.hpp. Refs #2681.
------------------------------------------------------------------------

broke BOOST_SP_USE_QUICK_ALLOCATOR support. All my programs (and tests)
using smart_ptr fail with

/rmc/hunold/packages/boost/boost/smart_ptr/detail/lwm_pthreads.hpp:73:
boost::detail::lightweight_mutex::scoped_lock::scoped_lock(boost::detail::lightweight_mutex&):
Assertion `pthread_mutex_lock( &m_ ) == 0' failed.

on exit.

Steps to reproduce:
I've attached against the Jamfile.v2 in libs/test/test which adds an
extra feature "quick-allocate" with values "off" "on"
Running "bjam quick-allocate=on" will start a build using the quick
allocator and reveal 4 failures (log attached).

I'm lost here. All I have figured out so far is that the destruction of
static object might be involved here. But this migt be a red herring.

Any ideas on this ?

This is catched by the regression tests as obviously noone ist running a
build with BOOST_SP_USE_QUICK_ALLOCATOR enabled.

I can provide gdb stacktrace when needed.

Yours,

Jürgen

-- 
* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für 
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* juergen.hunold_at_[hidden]        ! www.ivembh.de
* 
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !





Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk