aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2016-12-04 22:14:01 +0200
committerRiccardo Spagni <ric@spagni.net>2016-12-04 22:14:01 +0200
commit3c05aeda1b4810fd62edabf704e998d2f5264386 (patch)
tree2b5c99be449492311e0a9bba055f0fbb30aea65c
parentMerge pull request #1383 (diff)
parentmonero.supp: add a suppression for noisy boost cond var signalling (diff)
downloadmonero-3c05aeda1b4810fd62edabf704e998d2f5264386.tar.xz
Merge pull request #1384
8b0e04cb monero.supp: add a suppression for noisy boost cond var signalling (moneromooo-monero) c3527daf epee: signal cond var before unlocking (moneromooo-monero)
-rw-r--r--contrib/epee/include/net/abstract_tcp_server2.inl2
-rw-r--r--contrib/valgrind/monero.supp9
2 files changed, 10 insertions, 1 deletions
diff --git a/contrib/epee/include/net/abstract_tcp_server2.inl b/contrib/epee/include/net/abstract_tcp_server2.inl
index f51ca88bf..3dca30006 100644
--- a/contrib/epee/include/net/abstract_tcp_server2.inl
+++ b/contrib/epee/include/net/abstract_tcp_server2.inl
@@ -1010,7 +1010,7 @@ POP_WARNINGS
boost::unique_lock<boost::mutex> lock(local_shared_context->connect_mut);
auto connect_callback = [](boost::system::error_code ec_, boost::shared_ptr<local_async_context> shared_context)
{
- shared_context->connect_mut.lock(); shared_context->ec = ec_; shared_context->connect_mut.unlock(); shared_context->cond.notify_one();
+ shared_context->connect_mut.lock(); shared_context->ec = ec_; shared_context->cond.notify_one(); shared_context->connect_mut.unlock();
};
sock_.async_connect(remote_endpoint, boost::bind<void>(connect_callback, _1, local_shared_context));
diff --git a/contrib/valgrind/monero.supp b/contrib/valgrind/monero.supp
index 1c400076e..16e34e82f 100644
--- a/contrib/valgrind/monero.supp
+++ b/contrib/valgrind/monero.supp
@@ -8,3 +8,12 @@
fun:_ULx86_64_step
...
}
+
+{
+ boost unlocks before signalling cond var
+ Helgrind:Misc
+ ...
+ fun:pthread_cond_signal@*
+ fun:maybe_unlock_and_signal_one<boost::asio::detail::scoped_lock<boost::asio::detail::posix_mutex> >
+ ...
+}