Skip to content

Commit

Permalink
Cleanup and update comments
Browse files Browse the repository at this point in the history
Signed-off-by: Aleksandr Ivanov <[email protected]>
  • Loading branch information
alexander-e1off committed Jul 24, 2024
1 parent b55fb17 commit b40630e
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 16 deletions.
17 changes: 8 additions & 9 deletions etc/tsansup.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,21 @@ race:BloombergLP::bdlma::ConcurrentPool::deleteObject
# attempts to explain why there is no race.
race:BloombergLP::bcema_Pool<*>::allocate

# Not sure what the problem is here, but tsan can't show the other stack, so
# there's nothing to look into
#race:__tsan_atomic32_fetch_add

# Don't warn about using cout from multiple threads
race:std::basic_ostream<char, *>& bsl::operator<< <*>(std::basic_ostream<*>&, bsl::basic_string<*> const&)

# Looks like ball::LoggerManager uses a plain ptr to store its singleton, and
# it makes tsan warn in some cases
race:BloombergLP::ball::LoggerManager::isInitialized()

# Suppress TSan report in a routine used in bmqimp::Brokersession test driver.
# It is a benign race in the test driver, but should be looked into at some
# point.
#race:TestSession::waitForChannelClose
#race:TestSession::arriveAtStepWithCfgs
# Suppress sporadically appearing data race in bmqimp::Brokersession test driver.
# In TestSession::arriveAtStepWithCfgs() there is a call of queue->setOptions() method,
# at nearly same time in other thread bmqimp::BrokerSession::onConfigureQueueResponse() calls
# queue->options().suspendsOnBadHostHealth() method which is detected as data race.
# bmqt::QueueOptions and bmqimp::Queue classes are not thread safe by design,
# and bmqimp::BrokerSession::onConfigureQueueResponse() cllback access them in
# not thread-safe manner, probably also by design, assuming that it will be called again
# if something is changed. Further investigation is required, suppress it for now.
race:BloombergLP::bmqt::QueueOptions::suspendsOnBadHostHealth

# Since we use mqbmock::Dispatcher in unit tests, this method does not get
Expand Down
8 changes: 2 additions & 6 deletions etc/ubsansup.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,2 @@
# bmqp::Crc32c carries out misaligned access of Int64 in one of the internal
# routines, but only on x86/64. Misaligned accesses are handled gracefully by
# this hardware, unlike SPARC. So we simply suppress this warning. Other
# option is to update the code, which can be done by someone feeling
# adventurous.
# alignment:crc32c1024SseInt
# UndefinedBehaviorSanitizer suppressions file for BMQ.
# See details https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html#runtime-suppressions.
4 changes: 3 additions & 1 deletion src/groups/mwc/mwcio/mwcio_testchannel.h
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,9 @@ class TestChannel : public Channel {
/// Pops a close-call from those written to the channel (FIFO ordering).
CloseCall popCloseCall();

bool closeCallsEmpty();
/// Lock mutex and return `true` if d_closeCalls collection is empty,
/// `false` otherwise.
bool closeCallsEmpty();

CloseSignaler& closeSignaler();

Expand Down

0 comments on commit b40630e

Please sign in to comment.