1 | ==================
|
---|
2 | WARNING: ThreadSanitizer: data race (pid=48512)
|
---|
3 | Write of size 8 at 0x7f7526996010 by thread T15:
|
---|
4 | #0 pthread_cond_destroy <null> (test_libRsBase2CommFramework+0x000000473bcc)
|
---|
5 | #1 boost::asio::detail::posix_event::~posix_event() /usr/include/boost/asio/detail/posix_event.hpp:42:5 (test_libRsBase2CommFramework+0x000000565e7c)
|
---|
6 | #2 boost::asio::detail::task_io_service::run(boost::system::error_code&) /usr/include/boost/asio/detail/impl/task_io_service.ipp:161:1 (test_libRsBase2CommFramework+0x0000005656e8)
|
---|
7 | #3 boost::asio::io_service::run() /usr/include/boost/asio/impl/io_service.ipp:59:19 (test_libRsBase2CommFramework+0x000000565471)
|
---|
8 | 15
|
---|
9 | #4 BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1}::operator()() const /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:273:9 (test_libRsBase2CommFramework+0x000000587aae)
|
---|
10 | #5 void std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/functional:1731:18 (test_libRsBase2CommFramework+0x000000587a18)
|
---|
11 | #6 std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()>::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/functional:1720:16 (test_libRsBase2CommFramework+0x0000005879c8)
|
---|
12 | #7 std::thread::_Impl<std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()> >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/thread:115:13 (test_libRsBase2CommFramework+0x00000058777c)
|
---|
13 | #8 <null> <null> (libstdc++.so.6+0x0000000b1a5f)
|
---|
14 |
|
---|
15 | Previous read of size 8 at 0x7f7526996010 by main thread:
|
---|
16 | #0 pthread_cond_signal <null> (test_libRsBase2CommFramework+0x000000473960)
|
---|
17 | #1 void boost::asio::detail::posix_event::signal_and_unlock<boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex> >(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&) /usr/include/boost/asio/detail/posix_event.hpp:62:5 (test_libRsBase2CommFramework+0x00000050ceda)
|
---|
18 | #2 boost::asio::detail::task_io_service::wake_one_idle_thread_and_unlock(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&) /usr/include/boost/asio/detail/impl/task_io_service.ipp:488:5 (test_libRsBase2CommFramework+0x00000050cd6f)
|
---|
19 | #3 boost::asio::detail::task_io_service::wake_one_thread_and_unlock(boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex>&) /usr/include/boost/asio/detail/impl/task_io_service.ipp:497:8 (test_libRsBase2CommFramework+0x00000050cadc)
|
---|
20 | #4 boost::asio::detail::task_io_service::post_immediate_completion(boost::asio::detail::task_io_service_operation*, bool) /usr/include/boost/asio/detail/impl/task_io_service.ipp:282:3 (test_libRsBase2CommFramework+0x00000050c81a)
|
---|
21 | #5 void boost::asio::detail::task_io_service::post<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}>(BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}&) /usr/include/boost/asio/detail/impl/task_io_service.hpp:70:3 (test_libRsBase2CommFramework+0x0000005881ad)
|
---|
22 | #6 boost::asio::async_result<boost::asio::handler_type<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}, void ()>::type>::type boost::asio::io_service::post<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}>(boost::asio::handler_type&&) /usr/include/boost/asio/impl/io_service.hpp:108:3 (test_libRsBase2CommFramework+0x0000005864c1)
|
---|
23 | #7 BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:277:5 (test_libRsBase2CommFramework+0x0000005817c1)
|
---|
24 | #8 BoostAsio::ioServiceShallWaitForPendingJobs::test_method() /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:295:5 (test_libRsBase2CommFramework+0x000000581675)
|
---|
25 | #9 BoostAsio::ioServiceShallWaitForPendingJobs_invoker() /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:264:1 (test_libRsBase2CommFramework+0x000000581539)
|
---|
26 | #10 boost::unit_test::ut_detail::unused boost::unit_test::ut_detail::invoker<boost::unit_test::ut_detail::unused>::invoke<void (*)()>(void (*&)()) /usr/include/boost/test/utils/callback.hpp:56:59 (test_libRsBase2CommFramework+0x0000005907a4)
|
---|
27 | #11 boost::unit_test::ut_detail::callback0_impl_t<boost::unit_test::ut_detail::unused, void (*)()>::invoke() /usr/include/boost/test/utils/callback.hpp:89:33 (test_libRsBase2CommFramework+0x0000005906d3)
|
---|
28 | #12 <null> <null> (libboost_unit_test_framework.so.1.54.0+0x0000000681f0)
|
---|
29 | #13 __libc_start_main /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:287 (libc.so.6+0x000000021f44)
|
---|
30 |
|
---|
31 | As if synchronized via sleep:
|
---|
32 | #0 nanosleep <null> (test_libRsBase2CommFramework+0x000000470757)
|
---|
33 | #1 void std::this_thread::sleep_for<long, std::ratio<1l, 1000l> >(std::chrono::duration<long, std::ratio<1l, 1000l> > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/thread:279:2 (test_libRsBase2CommFramework+0x00000058e581)
|
---|
34 | #2 BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}::operator()() const /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:280:11 (test_libRsBase2CommFramework+0x000000588970)
|
---|
35 | #3 void boost::asio::asio_handler_invoke<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}>(BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}, ...) /usr/include/boost/asio/handler_invoke_hook.hpp:64:3 (test_libRsBase2CommFramework+0x000000588908)
|
---|
36 | #4 void boost_asio_handler_invoke_helpers::invoke<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}, {lambda()#2}>(BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}&, {lambda()#2}&) /usr/include/boost/asio/detail/handler_invoke_helpers.hpp:37:3 (test_libRsBase2CommFramework+0x000000588810)
|
---|
37 | #5 boost::asio::detail::completion_handler<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#2}>::do_complete(boost::asio::detail::task_io_service*, boost::asio::detail::task_io_service_operation*, boost::system::error_code const&, unsigned long) /usr/include/boost/asio/detail/completion_handler.hpp:68:7 (test_libRsBase2CommFramework+0x00000058864e)
|
---|
38 | #6 boost::asio::detail::task_io_service_operation::complete(boost::asio::detail::task_io_service&, boost::system::error_code const&, unsigned long) /usr/include/boost/asio/detail/task_io_service_operation.hpp:37:5 (test_libRsBase2CommFramework+0x00000050c357)
|
---|
39 | #7 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&) /usr/include/boost/asio/detail/impl/task_io_service.ipp:388:9 (test_libRsBase2CommFramework+0x000000565c72)
|
---|
40 | #8 boost::asio::detail::task_io_service::run(boost::system::error_code&) /usr/include/boost/asio/detail/impl/task_io_service.ipp:154:10 (test_libRsBase2CommFramework+0x0000005655eb)
|
---|
41 | #9 boost::asio::io_service::run() /usr/include/boost/asio/impl/io_service.ipp:59:19 (test_libRsBase2CommFramework+0x000000565471)
|
---|
42 | #10 BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1}::operator()() const /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:273:9 (test_libRsBase2CommFramework+0x000000587aae)
|
---|
43 | #11 void std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()>::_M_invoke<>(std::_Index_tuple<>) /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/functional:1731:18 (test_libRsBase2CommFramework+0x000000587a18)
|
---|
44 | #12 std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()>::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/functional:1720:16 (test_libRsBase2CommFramework+0x0000005879c8)
|
---|
45 | #13 std::thread::_Impl<std::_Bind_simple<BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const::{lambda()#1} ()> >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/4.8/../../../../include/c++/4.8/thread:115:13 (test_libRsBase2CommFramework+0x00000058777c)
|
---|
46 | #14 <null> <null> (libstdc++.so.6+0x0000000b1a5f)
|
---|
47 |
|
---|
48 | Location is stack of thread T15.
|
---|
49 |
|
---|
50 | Thread T15 (tid=48530, running) created by main thread at:
|
---|
51 | #0 pthread_create <null> (test_libRsBase2CommFramework+0x000000472d83)
|
---|
52 | #1 std::thread::_M_start_thread(std::shared_ptr<std::thread::_Impl_base>) <null> (libstdc++.so.6+0x0000000b1cae)
|
---|
53 | #2 BoostAsio::ioServiceShallWaitForPendingJobs::test_method()::$_8::operator()() const /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:270:17 (test_libRsBase2CommFramework+0x000000581781)
|
---|
54 | #3 BoostAsio::ioServiceShallWaitForPendingJobs::test_method() /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:295:5 (test_libRsBase2CommFramework+0x000000581675)
|
---|
55 | #4 BoostAsio::ioServiceShallWaitForPendingJobs_invoker() /home/kostov/workspaces/sde900/libRsBase2CommFramework/tests/BoostAsio_test.cpp:264:1 (test_libRsBase2CommFramework+0x000000581539)
|
---|
56 | #5 boost::unit_test::ut_detail::unused boost::unit_test::ut_detail::invoker<boost::unit_test::ut_detail::unused>::invoke<void (*)()>(void (*&)()) /usr/include/boost/test/utils/callback.hpp:56:59 (test_libRsBase2CommFramework+0x0000005907a4)
|
---|
57 | #6 boost::unit_test::ut_detail::callback0_impl_t<boost::unit_test::ut_detail::unused, void (*)()>::invoke() /usr/include/boost/test/utils/callback.hpp:89:33 (test_libRsBase2CommFramework+0x0000005906d3)
|
---|
58 | #7 <null> <null> (libboost_unit_test_framework.so.1.54.0+0x0000000681f0)
|
---|
59 | #8 __libc_start_main /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:287 (libc.so.6+0x000000021f44)
|
---|
60 |
|
---|
61 | SUMMARY: ThreadSanitizer: data race (/home/kostov/workspaces/sde900/build_xx10/filesystems/rootfs/usr/local/test/test_libRsBase2CommFramework+0x473bcc) in pthread_cond_destroy
|
---|
62 | ==================
|
---|