Boost logo

Boost Users :

Subject: [Boost-users] Valgrind errors with ASIO
From: Bo Jensen (jensen.bo_at_[hidden])
Date: 2013-09-30 00:41:38


Hi,

I have build a job queue with a combination io_service, io_service::work,
packaged_task and a thread group. I am seeing randomly either segfaults or
strange asserts in pthread or even malloc, which suggest to me memory is
being corrupted somehow.

The problem is it does not show in debug mode running under valgrind, but
if I run valgrind on the non debug version I get valgrind errors in
pthreads called from asio. I try to downgrade my boost lib from 1.54 to
1.52, but still the same.

I am completely stuck on this, does anyone have some hints to possible
causes ?

I can not show the complete source since it's not possible to isolate, but
here's the types I have :

      std::vector<boost::shared_ptr<ExceptionTransfer> >
  io_error_;
      std::vector<boost::shared_future<BasisSelectRet> >
  io_future_;

      boost::asio::io_service
    io_service_threads_;
      boost::shared_ptr<boost::asio::io_service::work>
  io_work_;
      boost::thread_group
 io_threads_;

I am calling it ala like this :

    /* Create new tasks */
    basistasks_[workerid] =
boost::make_shared<boost::packaged_task<BasisSelectRet>
>(boost::bind(&CallBasisSelection,&worker,boost::ref(io_error_[workerid])));

    /* Make threads */

io_service_threads_.post(boost::bind(&boost::packaged_task<BasisSelectRet>::operator(),basistasks_[workerid]));

    io_future_[workerid] = basistasks_[workerid]->get_future().share();

The called function is defined as follows (BasisSelectRet is just a enum) :

  /* Helper function */
  BasisSelectRet CallBasisSelection(TreeWorker
*worker,
                                    boost::shared_ptr<ExceptionTransfer>
&error)
  {
    BasisSelectRet ret = BasisSelectRetOk;

    try
    {
      worker->BasisSelection();
    }
    catch( ... )
    {
      error->SetException(boost::current_exception());
    }

    return ret;
  }

I can wait for a job to finish like this :

              boost::wait_for_any(io_future_.begin(),io_future_.end());

Here's the val grind errors :

==3723== by 0xB5D77BF: ???
==3723==
==3723== Thread 5:
==3723== Invalid read of size 4
==3723== at 0x6506C01: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:50)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEAA2A: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c334 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6506C36: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:61)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEAA2A: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c328 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6506C40: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:62)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEAA2A: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c330 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid write of size 4
==3723== at 0x6506C4C: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:125)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEAA2A: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c330 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 1
==3723== at 0x5F27B2B:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0xDD41297: ???
==3723== Address 0x670c360 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6500311: __pthread_mutex_unlock_usercnt
(pthread_mutex_unlock.c:37)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c334 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid write of size 4
==3723== at 0x650032F: __pthread_mutex_unlock_usercnt
(pthread_mutex_unlock.c:46)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c330 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6500360: __pthread_mutex_unlock_usercnt
(pthread_mutex_unlock.c:49)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c338 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6500340: __pthread_mutex_unlock_usercnt
(pthread_mutex_unlock.c:52)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c328 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid write of size 4
==3723== at 0x6503C55: __lll_unlock_wake (lowlevellock.S:374)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c328 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Syscall param futex(futex) points to unaddressable byte(s)
==3723== at 0x6503C7C: __lll_unlock_wake (lowlevellock.S:380)
==3723== by 0x5EEAA58: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0x670c328 is not stack'd, malloc'd or (recently) free'd
==3723==
<Log> 20 0 20 -3.05198e+02 - - - 1127
 31.18
==3723== Thread 3:
==3723== Invalid read of size 8
==3723== at 0x4E0ED3F: __intel_ssse3_memcpy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x7439DF7: ???
==3723== Address 0x66f3b58 is 112 bytes inside a block of size 116 alloc'd
==3723== at 0x4024F20: malloc (vg_replace_malloc.c:236)
==3723== by 0x582A7B6: _ZN3slm6Matrix16ResizeVecsInternEiPKib. (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x7439DF7: ???
==3723==
==3723== Invalid read of size 8
==3723== at 0x4E0ED6F: __intel_ssse3_memcpy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x7439DF7: ???
==3723== Address 0x66f5d48 is 136 bytes inside a block of size 140 alloc'd
==3723== at 0x4024F20: malloc (vg_replace_malloc.c:236)
==3723== by 0x582A7B6: _ZN3slm6Matrix16ResizeVecsInternEiPKib. (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x7439DF7: ???
==3723==
<Log> 20 0 20 -3.05198e+02 -2.68521e+02* 12.0 1 1139
 36.72
==3723== Thread 4:
==3723== Invalid read of size 4
==3723== at 0x6506C01: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:50)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEA9C5: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0xb93ffac is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6506C36: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:61)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEA9C5: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0xb93ffa0 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid read of size 4
==3723== at 0x6506C40: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:62)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEA9C5: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0xb93ffa8 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Invalid write of size 4
==3723== at 0x6506C4C: __pthread_mutex_cond_lock
(pthread_mutex_lock.c:125)
==3723== by 0x65010B2: pthread_cond_wait@@GLIBC_2.3.2
(pthread_cond_wait.S:203)
==3723== by 0x5F27B73:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x5EEA9C5: boost::asio::io_service::run() (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0x4C160F9:
boost::detail::thread_data<boost::_bi::bind_t<unsigned int,
boost::_mfi::mf0<unsigned int, boost::asio::io_service>,
boost::_bi::list1<boost::_bi::value<boost::asio::io_service*> > > >::run()
(in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x4E25DAB: thread_proxy (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulumnet20.so)
==3723== by 0x64FC96D: start_thread (pthread_create.c:300)
==3723== by 0x65DD98D: clone (clone.S:130)
==3723== Address 0xb93ffa8 is not stack'd, malloc'd or (recently) free'd
==3723==
==3723== Thread 5:
==3723== Invalid read of size 1
==3723== at 0x5F27B2B:
boost::asio::detail::task_io_service::do_run_one(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&,
boost::asio::detail::task_io_service::thread_info&,
boost::system::error_code const&) (in
/home/bj/sulum/root/src/bjam/bin/intel-linux/release/address-model-32/threading-multi/libsulum20.so)
==3723== by 0xCD40297: ???
==3723== Address 0xb93ffd8 is not stack'd, malloc'd or (recently) free'd
==3723==



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net