Status: Unconfirmed
Owner: ----
Labels: Type-Bug Pri-2 OS-All Area-Misc
New issue 23432 by ramosian.glider: A benign data race in
logging::LogMessage::~LogMessage()
http://code.google.com/p/chromium/issues/detail?id=23432
Chrome Version : r27610
ThreadSanitizer bots report a possible benign data race on the global
logging::min_log_level variable (base/logging.cc:51). It is written in
logging::SetMinLogLevel() and read in logging::GetMinLogLevel() and
logging::LogMessage::~LogMessage(), neither of the accessors use any locks.
The data race is observed in ipc_tests when trying to set the logging level
while destroying an instance of LogMessage:
==86150== WARNING: Possible data race during write of size 4 at 0xC140C4:
{{{
==86150== T179 (locks held: {}):
==86150== #0 logging::SetMinLogLevel(int)
src/xcodebuild/Debug/ipc_tests
==86150== #1 (anonymous namespace)::BadServer::Run()
src/xcodebuild/Debug/ipc_tests
==86150== #2 (anonymous namespace)::Worker::OnStart()
src/xcodebuild/Debug/ipc_tests
==86150== #3 void DispatchToMethod<(anonymous namespace)::Worker, void
((anonymous namespace)::Worker::*)()>((anonymous namespace)::Worker*, void
((anonymous namespace)::Worker::*)(), Tuple0 const&)
src/xcodebuild/Debug/ipc_tests
==86150== #4 RunnableMethod<(anonymous namespace)::Worker, void
((anonymous namespace)::Worker::*)(), Tuple0>::Run()
src/xcodebuild/Debug/ipc_tests
==86150== #5 MessageLoop::RunTask(Task*) src/xcodebuild/Debug/ipc_tests
==86150== #6
MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&)
src/xcodebuild/Debug/ipc_tests
==86150== #7 MessageLoop::DoWork() src/xcodebuild/Debug/ipc_tests
==86150== #8
base::MessagePumpDefault::Run(base::MessagePump::Delegate*)
src/xcodebuild/Debug/ipc_tests
==86150== #9 MessageLoop::RunInternal() src/xcodebuild/Debug/ipc_tests
==86150== #10 MessageLoop::RunHandler() src/xcodebuild/Debug/ipc_tests
==86150== #11 MessageLoop::Run() src/xcodebuild/Debug/ipc_tests
==86150== #12 base::Thread::Run(MessageLoop*)
src/xcodebuild/Debug/ipc_tests
==86150== #13 base::Thread::ThreadMain() src/xcodebuild/Debug/ipc_tests
==86150== #14 ThreadFunc(void*) src/xcodebuild/Debug/ipc_tests
==86150== #15 ThreadSanitizerStartThread
/Users/glider/src/tsan-chromium/valgrind-current/tsan/ts_valgrind_intercepts.c:504
==86150== Concurrent read(s) happened at (OR AFTER) these points:
==86150== T181 (locks held: {}):
==86150== #0 logging::LogMessage::~LogMessage()
src/xcodebuild/Debug/ipc_tests
==86150== #1 logging::LogMessage::~LogMessage()
src/xcodebuild/Debug/ipc_tests
==86150== #2 bool IPC::MessageWithReply<Tuple1<int>, Tuple1<int&>
> ::DispatchDelayReply<(anonymous namespace)::Worker, void ((anonymous
namespace)::Worker::*)(int, IPC::Message*)>(IPC::Message const*, (anonymous
namespace)::Worker*, void ((anonymous namespace)::Worker::*)(int,
IPC::Message*)) src/xcodebuild/Debug/ipc_tests
==86150== #3 (anonymous
namespace)::Worker::OnMessageReceived(IPC::Message const&)
src/xcodebuild/Debug/ipc_tests
==86150== #4
IPC::ChannelProxy::Context::OnDispatchMessage(IPC::Message const&)
src/xcodebuild/Debug/ipc_tests
==86150== #5
IPC::SyncChannel::ReceivedSyncMsgQueue::DispatchMessages()
src/xcodebuild/Debug/ipc_tests
==86150== #6 IPC::SyncChannel::SyncContext::DispatchMessages()
src/xcodebuild/Debug/ipc_tests
==86150== #7
IPC::SyncChannel::OnWaitableEventSignaled(base::WaitableEvent*)
src/xcodebuild/Debug/ipc_tests
==86150== #8 base::AsyncCallbackTask::Run()
src/xcodebuild/Debug/ipc_tests
==86150== #9 MessageLoop::RunTask(Task*) src/xcodebuild/Debug/ipc_tests
This is a benign race that may potentially lead to losing a small amount of
log messages while changing the log level.
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---