From: Michael Froman Date: Fri, 9 Jul 2021 18:14:00 -0500 Subject: Bug 1654112 - mutex changes to fix tsan errors. r=ng Differential Revision: https://phabricator.services.mozilla.com/D119674 Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/3d5503acf9a4b22e02c4300f29e4fbfed406ea2c --- rtc_base/logging.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rtc_base/logging.cc b/rtc_base/logging.cc index ad2303735e..9c2d3b0a39 100644 --- a/rtc_base/logging.cc +++ b/rtc_base/logging.cc @@ -275,8 +275,8 @@ void LogMessage::LogTimestamps(bool on) { } void LogMessage::LogToDebug(LoggingSeverity min_sev) { - g_dbg_sev = min_sev; webrtc::MutexLock lock(&GetLoggingLock()); + g_dbg_sev = min_sev; UpdateMinLogSeverity(); } @@ -460,6 +460,9 @@ void LogMessage::OutputToDebug(const LogLineRef& log_line) { // static bool LogMessage::IsNoop(LoggingSeverity severity) { + // Added MutexLock to fix tsan warnings on accessing g_dbg_sev. (mjf) + // See https://bugs.chromium.org/p/chromium/issues/detail?id=1228729 + webrtc::MutexLock lock(&GetLoggingLock()); if (severity >= g_dbg_sev || severity >= g_min_sev) return false; return streams_empty_.load(std::memory_order_relaxed);