Skip to content

Instantly share code, notes, and snippets.

@msimberg
Created October 25, 2017 12:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save msimberg/820d53607cf731e2e6ec02699765feb3 to your computer and use it in GitHub Desktop.
Save msimberg/820d53607cf731e2e6ec02699765feb3 to your computer and use it in GitHub Desktop.
HPX asan stacktrace #1
==31311==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7f7c48122e90 at pc 0x7f7c56e693bd bp 0x7f7c48122e40 sp 0x7f7c48122e30
WRITE of size 8 at 0x7f7c48122e90 thread T449
#0 0x7f7c56e693bc in std::_Rb_tree_iterator<std::pair<void const* const, hpx::util::detail::lock_data> >::_Rb_tree_iterator(std::_Rb_tree_node_base*) /usr/include/c++/5/bits/stl_tree.h:192
#1 0x7f7c56e69321 in std::_Rb_tree<void const*, std::pair<void const* const, hpx::util::detail::lock_data>, std::_Select1st<std::pair<void const* const, hpx::util::detail::lock_data> >, std::less<void const*>, std::allocator<std::pair<void const* const, hpx::util::detail::lock_d
ata> > >::_M_lower_bound(std::_Rb_tree_node<std::pair<void const* const, hpx::util::detail::lock_data> >*, std::_Rb_tree_node<std::pair<void const* const, hpx::util::detail::lock_data> >*, void const* const&) /usr/include/c++/5/bits/stl_tree.h:1632
#2 0x7f7c56e6892b in std::_Rb_tree<void const*, std::pair<void const* const, hpx::util::detail::lock_data>, std::_Select1st<std::pair<void const* const, hpx::util::detail::lock_data> >, std::less<void const*>, std::allocator<std::pair<void const* const, hpx::util::detail::lock_d
ata> > >::find(void const* const&) /usr/include/c++/5/bits/stl_tree.h:2295
#3 0x7f7c56e6833e in std::map<void const*, hpx::util::detail::lock_data, std::less<void const*>, std::allocator<std::pair<void const* const, hpx::util::detail::lock_data> > >::find(void const* const&) /usr/include/c++/5/bits/stl_map.h:846
#4 0x7f7c56e66546 in hpx::util::register_lock(void const*, hpx::util::register_lock_data*) /home/simbergm/src/hpx/src/util/register_locks.cpp:187
#5 0x7f7c55a3281e in hpx::lcos::local::spinlock::lock() /home/simbergm/src/hpx/hpx/lcos/local/spinlock.hpp:152
#6 0x7f7c55a41aed in std::unique_lock<hpx::lcos::local::spinlock>::lock() /usr/include/c++/5/mutex:485
#7 0x7f7c55a3a0a5 in std::unique_lock<hpx::lcos::local::spinlock>::unique_lock(hpx::lcos::local::spinlock&) /usr/include/c++/5/mutex:415
#8 0x7f7c565a37df in void hpx::lcos::detail::future_data<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >::set_value<std::vector<hpx::lcos::future<std::vector<long, std::al
locator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >(std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&&, hpx::error_code&) (/home/
simbergm/src/hpx-build-release/lib/libhpxd.so.1+0x16aa7df)
#9 0x7f7c5659a58b in void hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >::operator()<hpx::util::tuple<std::vect
or<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >(hpx::util::detail::async_traverse_complete_tag, hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long>
> >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >&&) /home/simbergm/src/hpx/hpx/lcos/when_all.hpp:221
#10 0x7f7c5657b660 in void hpx::util::detail::invoke_impl<void, hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >
>::operator()<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&, hpx::util::detail::async_traverse_complete_tag, hpx:
:util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >(hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::al
locator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&, hpx::util::detail::async_traverse_complete_tag&&, hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std:
:vector<long, std::allocator<long> > > > > >&&) /home/simbergm/src/hpx/hpx/util/invoke.hpp:36
#11 0x7f7c5657b660 in hpx::util::invoke_result<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&, hpx::util::deta
il::async_traverse_complete_tag, hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >::type hpx::util::invoke<hpx::lcos::detail::async_when_all_frame<hpx::util::
tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&, hpx::util::detail::async_traverse_complete_tag, hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std:
:allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >(hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<l
ong, std::allocator<long> > > > > > >&, hpx::util::detail::async_traverse_complete_tag&&, hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >&&) /home/simbergm/sr
c/hpx/hpx/util/invoke.hpp:154
#12 0x7f7c5657b660 in hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >,
std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >::async_complete() /home/simbergm/src/hpx/hpx/util/detail/pack_traversal_async_impl.hpp:172
#13 0x7f7c56570b75 in void hpx::util::detail::resume_state_callable::operator()<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::a
llocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::util::detail::static_async_range<hpx::ut
il::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >(boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hp
x::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<st
d::vector<long, std::allocator<long> > > > > > >&&, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul>&&) const
/home/simbergm/src/hpx/hpx/util/detail/pack_traversal_async_impl.hpp:478
#14 0x7f7c5654d290 in void hpx::util::detail::invoke_impl<void, hpx::util::detail::resume_state_callable>::operator()<hpx::util::detail::resume_state_callable, boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<
std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long,
std::allocator<long> > > > > > >, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >(hpx::util::detail::resum
e_state_callable&&, boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long
> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&&, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std:
:allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul>&&) /home/simbergm/src/hpx/hpx/util/invoke.hpp:36
#15 0x7f7c5654d290 in void hpx::util::invoke_r<void, hpx::util::detail::resume_state_callable, boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<lo
ng> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::util::detail::static_asyn
c_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >(hpx::util::detail::resume_state_callable&&, boost::intrusive_ptr<hpx::util::detail::async
_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, st
d::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >&&, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vecto
r<long, std::allocator<long> > > > > >, 0ul, 1ul>&&) /home/simbergm/src/hpx/hpx/util/invoke.hpp:166
#16 0x7f7c5654d290 in void hpx::util::detail::invoke_fused_impl<void, hpx::util::detail::resume_state_callable, hpx::util::tuple<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<s
td::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >
>, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >, 0ul, 1ul>(hpx::util::detail::resume_state_callable&&,
hpx::util::tuple<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> >
> > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allo
cator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >&&, hpx::util::detail::pack_c<unsigned long, 0ul, 1ul>) /home/simbergm/src/hpx/hpx/util/invoke_fused.hpp:74
#17 0x7f7c5653649a in hpx::util::detail::invoke_fused_result<hpx::util::detail::resume_state_callable, hpx::util::tuple<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vecto
r<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::
util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> > >::type hpx::util::invoke_fused<hpx::util::detail::resume_state_
callable, hpx::util::tuple<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocat
or<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long,
std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> > >(hpx::util::detail::resume_state_callable&&, hpx::util::tuple<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_fr
ame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::fut
ure<std::vector<long, std::allocator<long> > > > > > >, hpx::util::detail::static_async_range<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> >&&)
/home/simbergm/src/hpx/hpx/util/invoke_fused.hpp:10
#18 0x7f7c5653649a in hpx::util::detail::resume_traversal_callable<boost::intrusive_ptr<hpx::util::detail::async_traversal_frame<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx:
:lcos::future<std::vector<long, std::allocator<long> > > > > > >, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >, hpx::util::tuple<hpx::util::detail::static_async_range<hpx
::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >, 0ul, 1ul> > >::operator()() /home/simbergm/src/hpx/hpx/util/detail/pack_traversal_async_impl.hpp:519
#19 0x7f7c565288d5 in hpx::util::detail::async_traversal_types<hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::
vector<long, std::allocator<long> > > > > > > >, hpx::lcos::detail::future_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >::visitor_pointer_
type hpx::util::detail::apply_pack_transform_async<hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std
::allocator<long> > > > > > > >, hpx::lcos::detail::future_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >, hpx::util::detail::async_traversal
_types<hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > > >, hpx::lcos::
detail::future_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > >(hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_whe
n_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > > >&&, hpx::lcos::detail::future_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<
std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&&) /home/simbergm/src/hpx/hpx/util/detail/pack_traversal_async_impl.hpp:568
#20 0x7f7c5651e542 in decltype (apply_pack_transform_async((forward<hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<
std::vector<long, std::allocator<long> > > > > > > > >)({parm#1}), (forward<hpx::lcos::detail::future_data_refcnt_base::init_no_addref&>)({parm#2}), (forward<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long,
std::allocator<long> > > > > >)({parm#2}))) hpx::util::traverse_pack_async<hpx::util::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::futu
re<std::vector<long, std::allocator<long> > > > > > > >, hpx::lcos::detail::future_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > >(hpx::util
::detail::async_traverse_in_place_tag<hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > > > > >&&, hpx::lcos::detail::future
_data_refcnt_base::init_no_addref&, std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&&) /home/simbergm/src/hpx/hpx/util/pack_traversal_async.hpp:92
#21 0x7f7c56512c59 in hpx::lcos::detail::async_when_all_frame<hpx::util::tuple<hpx::traits::acquire_future<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&, void>::type> >::
type hpx::lcos::detail::when_all_impl<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&>(std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<
hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&) (/home/simbergm/src/hpx-build-release/lib/libhpxd.so.1+0x1619c59)
#22 0x7f7c56509119 in decltype (when_all_impl((forward<std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&>)({parm#1}))) hpx::lcos::when_all<std::vector<hpx::lcos::future<std::
vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > > >&, (void*)0>(std::vector<hpx::lcos::future<std::vector<long, std::allocator<long> > >, std::allocator<hpx::lcos::future<std::vector<long, std::allocator<long> > > >
>&) (/home/simbergm/src/hpx-build-release/lib/libhpxd.so.1+0x1610119)
#23 0x7f7c564f0bc2 in hpx::agas::addressing_service::send_refcnt_requests_sync(std::unique_lock<hpx::lcos::local::spinlock>&, hpx::error_code&) /home/simbergm/src/hpx/src/runtime/agas/addressing_service.cpp:2617
#24 0x7f7c564e9f8a in hpx::agas::addressing_service::start_shutdown(hpx::error_code&) /home/simbergm/src/hpx/src/runtime/agas/addressing_service.cpp:2015
#25 0x7f7c5601265f in hpx::components::server::runtime_support::shutdown_all(double) /home/simbergm/src/hpx/src/runtime/components/server/runtime_support_server.cpp:855
#26 0x7f7c55b0d6c2 in void hpx::actions::basic_action_impl<void (hpx::components::server::runtime_support::*)(double), void (hpx::components::server::runtime_support::*)(double), &hpx::components::server::runtime_support::shutdown_all, hpx::components::server::runtime_support::s
hutdown_all_action>::invoke<double>(unsigned long, int, double&&) /home/simbergm/src/hpx/hpx/runtime/actions/component_action.hpp:65
#27 0x7f7c55b051c7 in std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function:
:operator()<double>(unsigned long, int, double&&) const /home/simbergm/src/hpx/hpx/runtime/actions/basic_action.hpp:246
#28 0x7f7c55b051c7 in std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::invoke_impl<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >, hpx::actions::basic_action<hpx::compone
nts::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function>::operator()<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action
>::thread_function, unsigned long, int, double>(hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function&&, unsigned long&&, int&&, double&&) /home/simbergm/src/hpx/hpx/util/in
voke.hpp:36
#29 0x7f7c55b051c7 in hpx::util::invoke_result<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function, unsigned long, int, double>::type hpx::util::invoke<hpx::actions::b
asic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function, unsigned long, int, double>(hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::serv
er::runtime_support::shutdown_all_action>::thread_function&&, unsigned long&&, int&&, double&&) /home/simbergm/src/hpx/hpx/util/invoke.hpp:154
#30 0x7f7c55b051c7 in hpx::util::invoke_result<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function, unsigned long, int, double>::type hpx::util::detail::one_shot_wrapp
er<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function>::operator()<unsigned long, int, double>(unsigned long&&, int&&, double&&) /home/simbergm/src/hpx/hpx/util/bind.hpp:
432
#31 0x7f7c55afd926 in std::enable_if<hpx::util::detail::is_simple_bind<hpx::util::tuple<unsigned long, int, double> >::value, hpx::util::detail::invoke_bound_result<hpx::util::detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (dou
ble), hpx::components::server::runtime_support::shutdown_all_action>::thread_function>, hpx::util::tuple<unsigned long, int, double>, hpx::util::tuple<hpx::threads::thread_state_ex_enum&&> >::type>::type hpx::util::detail::bound_impl<hpx::actions::basic_action<hpx::components::serve
r::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function, hpx::util::tuple<unsigned long, int, double>, hpx::util::tuple<hpx::threads::thread_state_ex_enum&&>, 0ul, 1ul, 2ul>(hpx::util::detail::one_shot_wrapper<hpx::actions::
basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function>&, hpx::util::tuple<unsigned long, int, double>&, hpx::util::tuple<hpx::threads::thread_state_ex_enum&&>&&, hpx::util::detail::pack_c
<unsigned long, 0ul, 1ul, 2ul>) (/home/simbergm/src/hpx-build-release/lib/libhpxd.so.1+0xc04926)
#32 0x7f7c55af8d2c in hpx::util::detail::invoke_bound_result<hpx::util::detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function>, hpx::util::tuple
<unsigned long, int, double>, hpx::util::tuple<hpx::threads::thread_state_ex_enum&&> >::type hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shu
tdown_all_action>::thread_function> (unsigned long&, int&, double&)>::operator()<hpx::threads::thread_state_ex_enum>(hpx::threads::thread_state_ex_enum&&) /home/simbergm/src/hpx/hpx/util/bind.hpp:298
#33 0x7f7c55af248e in std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::invoke_impl<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >, hpx::util::detail::bound<hpx::util::det
ail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)> >::operator()<hpx::util::detail::bound<hpx::util::detail::one_s
hot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)>&, hpx::threads::thread_state_ex_enum>(hpx::util::detail::bound<hpx::util:
:detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)>&, hpx::threads::thread_state_ex_enum&&) /home/simbergm/src/
hpx/hpx/util/invoke.hpp:36
#34 0x7f7c55af248e in std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::invoke_r<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> >, hpx::util::detail::bound<hpx::util::detail::one_sh
ot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)>&, hpx::threads::thread_state_ex_enum>(hpx::util::detail::bound<hpx::util::
detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)>&, hpx::threads::thread_state_ex_enum&&) /home/simbergm/src/h
px/hpx/util/invoke.hpp:166
#35 0x7f7c55af248e in std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > hpx::util::detail::callable_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)
>::_invoke<hpx::util::detail::bound<hpx::util::detail::one_shot_wrapper<hpx::actions::basic_action<hpx::components::server::runtime_support, void (double), hpx::components::server::runtime_support::shutdown_all_action>::thread_function> (unsigned long&, int&, double&)> >(void**, hpx
::threads::thread_state_ex_enum&&) /home/simbergm/src/hpx/hpx/util/detail/vtable/callable_vtable.hpp:75
#36 0x7f7c56407355 in hpx::util::detail::function_base<hpx::util::detail::unique_function_vtable<std::pair<hpx::threads::thread_state_enum, boost::intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>, std::pair<hpx::threads::thread_state_enum, boost::
intrusive_ptr<hpx::threads::thread_data> > (hpx::threads::thread_state_ex_enum)>::operator()(hpx::threads::thread_state_ex_enum) const /home/simbergm/src/hpx/hpx/util/detail/basic_function.hpp:196
#37 0x7f7c56407355 in hpx::threads::coroutines::detail::coroutine_impl::operator()() /home/simbergm/src/hpx/src/runtime/threads/coroutines/detail/coroutine_impl.cpp:96
#38 0x7f7c56216c3e in void hpx::threads::coroutines::detail::lx::trampoline<hpx::threads::coroutines::detail::coroutine_impl>(hpx::threads::coroutines::detail::coroutine_impl*) /home/simbergm/src/hpx/hpx/runtime/threads/coroutines/detail/context_linux_x86.hpp:102
AddressSanitizer can not describe address in more detail (wild memory access suspected).
SUMMARY: AddressSanitizer: stack-buffer-overflow /usr/include/c++/5/bits/stl_tree.h:192 std::_Rb_tree_iterator<std::pair<void const* const, hpx::util::detail::lock_data> >::_Rb_tree_iterator(std::_Rb_tree_node_base*)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment