New issue
Advanced search Search tips

Issue 876561 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 25
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

"ResponsivenessWatcherRealIOThreadTest.MessageLoopObserver" is flaky

Project Member Reported by chromium...@appspot.gserviceaccount.com, Aug 21

Issue description

"ResponsivenessWatcherRealIOThreadTest.MessageLoopObserver" is flaky.

This issue was created automatically by the chromium-try-flakes app. Please find the right owner to fix the respective test/step and assign this issue to them. If the step/test is infrastructure-related, please add Infra-Troopers label and change issue status to Untriaged. When done, please remove the issue from Sheriff Bug Queue by removing the Sheriff-Chromium label.

We have detected 5 recent flakes. List of all flakes can be found at https://chromium-try-flakes.appspot.com/all_flake_occurrences?key=ahVzfmNocm9taXVtLXRyeS1mbGFrZXNyRAsSBUZsYWtlIjlSZXNwb25zaXZlbmVzc1dhdGNoZXJSZWFsSU9UaHJlYWRUZXN0Lk1lc3NhZ2VMb29wT2JzZXJ2ZXIM.

Flaky tests should be disabled within 30 minutes unless culprit CL is found and reverted. Please see more details here: https://sites.google.com/a/chromium.org/dev/developers/tree-sheriffs/sheriffing-bug-queues#triaging-auto-filed-flakiness-bugs
 
Owner: erikc...@chromium.org
Status: Assigned (was: Untriaged)
erikchen@, since you're the author of the test, could you take look? 
Labels: -Pri-1 -Sheriff-Chromium Pri-2
Disabling test in crrev.com/c/1184908, so lowering priority and removing from sheriff queue.
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 22

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d95fb439825e9937a271933247b8e687610ebb99

commit d95fb439825e9937a271933247b8e687610ebb99
Author: Guido Urdaneta <guidou@chromium.org>
Date: Wed Aug 22 13:26:04 2018

Disable ResponsivenessWatcherRealIOThreadTest.MessageLoopObserver on Linux TSAN

This test is flaky on Linux TSAN.

Bug:  876561 
Change-Id: Ie389a8cf31a40513057d32d6ce89e44765e7c0ee
TBR: erikchen@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/1184908
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Commit-Queue: Guido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#584997}
[modify] https://crrev.com/d95fb439825e9937a271933247b8e687610ebb99/content/browser/scheduler/responsiveness/watcher_unittest.cc

Labels: Sheriff-Chromium
Detected 6 new flakes for test/step "ResponsivenessWatcherRealIOThreadTest.MessageLoopObserver". To see the actual flakes, please visit https://chromium-try-flakes.appspot.com/all_flake_occurrences?key=ahVzfmNocm9taXVtLXRyeS1mbGFrZXNyRAsSBUZsYWtlIjlSZXNwb25zaXZlbmVzc1dhdGNoZXJSZWFsSU9UaHJlYWRUZXN0Lk1lc3NhZ2VMb29wT2JzZXJ2ZXIM. This message was posted automatically by the chromium-try-flakes app. Since flakiness is ongoing, the issue was moved back into Sheriff Bug Queue (unless already there).
Labels: -Sheriff-Chromium
Removing Sheriff-Chromium because it looks an owner is assigned.
"""
[ RUN      ] ResponsivenessWatcherRealIOThreadTest.MessageLoopObserver
==================
WARNING: ThreadSanitizer: data race (pid=19938)
  Write of size 1 at 0x7b3c0016e080 by thread T5:
    #0 base::internal::MessageLoopTaskRunner::SetAddQueueTimeToTasks(bool) base/message_loop/message_loop_task_runner.cc:112:28 (content_unittests+0x7c9a996)
    #1 base::MessageLoop::SetAddQueueTimeToTasks(bool) base/message_loop/message_loop.cc:280:28 (content_unittests+0x7c94e4a)
    #2 base::MessageLoopCurrent::SetAddQueueTimeToTasks(bool) base/message_loop/message_loop_current.cc:79:13 (content_unittests+0x7c98c88)
    #3 ~MessageLoopObserver content/browser/scheduler/responsiveness/message_loop_observer.cc:20:36 (content_unittests+0x68afec4)
    #4 content::responsiveness::MessageLoopObserver::~MessageLoopObserver() content/browser/scheduler/responsiveness/message_loop_observer.cc:18 (content_unittests+0x68afec4)
    #5 operator() buildtools/third_party/libc++/trunk/include/memory:2321:5 (content_unittests+0x68b0cc6)
    #6 reset buildtools/third_party/libc++/trunk/include/memory:2634 (content_unittests+0x68b0cc6)
    #7 content::responsiveness::Watcher::TearDownOnIOThread() content/browser/scheduler/responsiveness/watcher.cc:106 (content_unittests+0x68b0cc6)
    #8 Invoke<void (content::responsiveness::Watcher::*)(), content::responsiveness::Watcher *> base/bind_internal.h:516:12 (content_unittests+0x68b2bb8)
    #9 MakeItSo<void (content::responsiveness::Watcher::*)(), content::responsiveness::Watcher *> base/bind_internal.h:616 (content_unittests+0x68b2bb8)
    #10 RunImpl<void (content::responsiveness::Watcher::*)(), std::__1::tuple<base::internal::UnretainedWrapper<content::responsiveness::Watcher> >, 0> base/bind_internal.h:689 (content_unittests+0x68b2bb8)
    #11 base::internal::Invoker<base::internal::BindState<void (content::responsiveness::Watcher::*)(), base::internal::UnretainedWrapper<content::responsiveness::Watcher> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:658 (content_unittests+0x68b2bb8)
    #12 Run base/callback.h:99:12 (content_unittests+0x7c97eb8)
    #13 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:101 (content_unittests+0x7c97eb8)
    #14 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:434:46 (content_unittests+0x7c95d96)
    #15 DeferOrRunPendingTask base/message_loop/message_loop.cc:445:5 (content_unittests+0x7c962db)
    #16 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:517 (content_unittests+0x7c962db)
    #17 base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_libevent.cc:210:31 (content_unittests+0x7daa7a4)
    #18 base::MessageLoop::Run(bool) base/message_loop/message_loop.cc:386:12 (content_unittests+0x7c95647)
    #19 non-virtual thunk to base::MessageLoop::Run(bool) base/message_loop/message_loop.cc (content_unittests+0x7c95734)
    #20 base::RunLoop::Run() base/run_loop.cc:102:14 (content_unittests+0x7cca9ef)
    #21 base::Thread::Run(base::RunLoop*) base/threading/thread.cc:262:13 (content_unittests+0x7d444db)
    #22 content::BrowserProcessSubThread::IOThreadRun(base::RunLoop*) content/browser/browser_process_sub_thread.cc:175:11 (content_unittests+0x6222116)
    #23 content::BrowserProcessSubThread::Run(base::RunLoop*) content/browser/browser_process_sub_thread.cc:127:7 (content_unittests+0x6222023)
    #24 base::Thread::ThreadMain() base/threading/thread.cc:357:3 (content_unittests+0x7d44afe)
    #25 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:76:13 (content_unittests+0x7da3358)

  Previous read of size 1 at 0x7b3c0016e080 by main thread:
    #0 base::internal::MessageLoopTaskRunner::AddToIncomingQueue(base::Location const&, base::OnceCallback<void ()>, base::TimeDelta, base::Nestable) base/message_loop/message_loop_task_runner.cc:130:7 (content_unittests+0x7c9a059)
    #1 base::internal::MessageLoopTaskRunner::PostDelayedTask(base::Location const&, base::OnceCallback<void ()>, base::TimeDelta) base/message_loop/message_loop_task_runner.cc:55:10 (content_unittests+0x7c99d5b)
    #2 content::(anonymous namespace)::PostTaskHelper(content::BrowserThread::ID, base::Location const&, base::OnceCallback<void ()>, base::TimeDelta, bool) content/browser/browser_thread_impl.cc:156:46 (content_unittests+0x62235f2)
    #3 content::BrowserThread::PostTask(content::BrowserThread::ID, base::Location const&, base::OnceCallback<void ()>) content/browser/browser_thread_impl.cc:280:10 (content_unittests+0x6223328)
    #4 content::TestBrowserThreadBundle::RunIOThreadUntilIdle() content/public/test/test_browser_thread_bundle.cc:142:3 (content_unittests+0x6df3c0f)
    #5 content::responsiveness::ResponsivenessWatcherRealIOThreadTest::TearDown() content/browser/scheduler/responsiveness/watcher_unittest.cc:188:33 (content_unittests+0x2d972de)
    #6 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x4641df8)
    #7 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2682:11 (content_unittests+0x4642cbc)
    #8 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2800:28 (content_unittests+0x4643546)
    #9 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5124:43 (content_unittests+0x4653916)
    #10 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x46531fa)
    #11 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2331:46 (content_unittests+0x6e654d5)
    #12 base::TestSuite::Run() base/test/test_suite.cc:277 (content_unittests+0x6e654d5)
    #13 content::UnitTestTestSuite::Run() content/public/test/unittest_test_suite.cc:64:23 (content_unittests+0x6dfc5b1)
    #14 Invoke<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:516:12 (content_unittests+0x38e4398)
    #15 MakeItSo<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:616 (content_unittests+0x38e4398)
    #16 RunImpl<int (content::UnitTestTestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, 0> base/bind_internal.h:689 (content_unittests+0x38e4398)
    #17 base::internal::Invoker<base::internal::BindState<int (content::UnitTestTestSuite::*)(), base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:658 (content_unittests+0x38e4398)
    #18 Run base/callback.h:99:12 (content_unittests+0x6e707f8)
    #19 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:224 (content_unittests+0x6e707f8)
    #20 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:575:10 (content_unittests+0x6e70607)
    #21 main content/test/run_all_unittests.cc:20:10 (content_unittests+0x38e4300)

  Location is heap block of size 232 at 0x7b3c0016dfa0 allocated by main thread:
    #0 operator new(unsigned long) /b/swarming/w/ir/kitchen-workdir/src/third_party/llvm/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:65:3 (content_unittests+0x1dd9a4d)
    #1 MakeRefCounted<base::internal::MessageLoopTaskRunner, std::__1::unique_ptr<base::MessageLoop::Controller, std::__1::default_delete<base::MessageLoop::Controller> > > base/memory/scoped_refptr.h:91:12 (content_unittests+0x7c93c63)
    #2 base::MessageLoop::MessageLoop(base::MessageLoop::Type, base::OnceCallback<std::__1::unique_ptr<base::MessagePump, std::__1::default_delete<base::MessagePump> > ()>) base/message_loop/message_loop.cc:312 (content_unittests+0x7c93c63)
    #3 base::MessageLoop::CreateUnbound(base::MessageLoop::Type, base::OnceCallback<std::__1::unique_ptr<base::MessagePump, std::__1::default_delete<base::MessagePump> > ()>) base/message_loop/message_loop.cc:303:25 (content_unittests+0x7c94f5d)
    #4 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:102:7 (content_unittests+0x7d437b8)
    #5 StartIOThreadUnregistered content/public/test/test_browser_thread.cc:73:3 (content_unittests+0x6df32b9)
    #6 content::TestBrowserThread::StartIOThread() content/public/test/test_browser_thread.cc:66 (content_unittests+0x6df32b9)
    #7 content::TestBrowserThreadBundle::CreateBrowserThreads() content/public/test/test_browser_thread_bundle.cc:117:17 (content_unittests+0x6df3a95)
    #8 content::TestBrowserThreadBundle::Init() content/public/test/test_browser_thread_bundle.cc:109:5 (content_unittests+0x6df368a)
    #9 content::TestBrowserThreadBundle::TestBrowserThreadBundle(int) content/public/test/test_browser_thread_bundle.cc:28:3 (content_unittests+0x6df340c)
    #10 ResponsivenessWatcherRealIOThreadTest content/browser/scheduler/responsiveness/watcher_unittest.cc:170:9 (content_unittests+0x2d97607)
    #11 ResponsivenessWatcherRealIOThreadTest_MessageLoopObserver_Test content/browser/scheduler/responsiveness/watcher_unittest.cc:200 (content_unittests+0x2d97607)
    #12 testing::internal::TestFactoryImpl<content::responsiveness::ResponsivenessWatcherRealIOThreadTest_MessageLoopObserver_Test>::CreateTest() third_party/googletest/src/googletest/include/gtest/internal/gtest-internal.h:468 (content_unittests+0x2d97607)
    #13 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x4642bfe)
    #14 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2800:28 (content_unittests+0x4643546)
    #15 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5124:43 (content_unittests+0x4653916)
    #16 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x46531fa)
    #17 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2331:46 (content_unittests+0x6e654d5)
    #18 base::TestSuite::Run() base/test/test_suite.cc:277 (content_unittests+0x6e654d5)
    #19 content::UnitTestTestSuite::Run() content/public/test/unittest_test_suite.cc:64:23 (content_unittests+0x6dfc5b1)
    #20 Invoke<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:516:12 (content_unittests+0x38e4398)
    #21 MakeItSo<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:616 (content_unittests+0x38e4398)
    #22 RunImpl<int (content::UnitTestTestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, 0> base/bind_internal.h:689 (content_unittests+0x38e4398)
    #23 base::internal::Invoker<base::internal::BindState<int (content::UnitTestTestSuite::*)(), base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:658 (content_unittests+0x38e4398)
    #24 Run base/callback.h:99:12 (content_unittests+0x6e707f8)
    #25 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:224 (content_unittests+0x6e707f8)
    #26 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:575:10 (content_unittests+0x6e70607)
    #27 main content/test/run_all_unittests.cc:20:10 (content_unittests+0x38e4300)

  Thread T5 'Chrome_IOThread' (tid=19944, running) created by main thread at:
    #0 pthread_create /b/swarming/w/ir/kitchen-workdir/src/third_party/llvm/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:965:3 (content_unittests+0x1d6fa65)
    #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:115:13 (content_unittests+0x7da2e06)
    #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:200:10 (content_unittests+0x7da2cc5)
    #3 base::Thread::StartWithOptions(base::Thread::Options const&) base/threading/thread.cc:119:15 (content_unittests+0x7d4399c)
    #4 StartIOThreadUnregistered content/public/test/test_browser_thread.cc:73:3 (content_unittests+0x6df32b9)
    #5 content::TestBrowserThread::StartIOThread() content/public/test/test_browser_thread.cc:66 (content_unittests+0x6df32b9)
    #6 content::TestBrowserThreadBundle::CreateBrowserThreads() content/public/test/test_browser_thread_bundle.cc:117:17 (content_unittests+0x6df3a95)
    #7 content::TestBrowserThreadBundle::Init() content/public/test/test_browser_thread_bundle.cc:109:5 (content_unittests+0x6df368a)
    #8 content::TestBrowserThreadBundle::TestBrowserThreadBundle(int) content/public/test/test_browser_thread_bundle.cc:28:3 (content_unittests+0x6df340c)
    #9 ResponsivenessWatcherRealIOThreadTest content/browser/scheduler/responsiveness/watcher_unittest.cc:170:9 (content_unittests+0x2d97607)
    #10 ResponsivenessWatcherRealIOThreadTest_MessageLoopObserver_Test content/browser/scheduler/responsiveness/watcher_unittest.cc:200 (content_unittests+0x2d97607)
    #11 testing::internal::TestFactoryImpl<content::responsiveness::ResponsivenessWatcherRealIOThreadTest_MessageLoopObserver_Test>::CreateTest() third_party/googletest/src/googletest/include/gtest/internal/gtest-internal.h:468 (content_unittests+0x2d97607)
    #12 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x4642bfe)
    #13 testing::TestCase::Run() third_party/googletest/src/googletest/src/gtest.cc:2800:28 (content_unittests+0x4643546)
    #14 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5124:43 (content_unittests+0x4653916)
    #15 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc (content_unittests+0x46531fa)
    #16 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2331:46 (content_unittests+0x6e654d5)
    #17 base::TestSuite::Run() base/test/test_suite.cc:277 (content_unittests+0x6e654d5)
    #18 content::UnitTestTestSuite::Run() content/public/test/unittest_test_suite.cc:64:23 (content_unittests+0x6dfc5b1)
    #19 Invoke<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:516:12 (content_unittests+0x38e4398)
    #20 MakeItSo<int (content::UnitTestTestSuite::*)(), content::UnitTestTestSuite *> base/bind_internal.h:616 (content_unittests+0x38e4398)
    #21 RunImpl<int (content::UnitTestTestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, 0> base/bind_internal.h:689 (content_unittests+0x38e4398)
    #22 base::internal::Invoker<base::internal::BindState<int (content::UnitTestTestSuite::*)(), base::internal::UnretainedWrapper<content::UnitTestTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:658 (content_unittests+0x38e4398)
    #23 Run base/callback.h:99:12 (content_unittests+0x6e707f8)
    #24 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:224 (content_unittests+0x6e707f8)
    #25 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:575:10 (content_unittests+0x6e70607)
    #26 main content/test/run_all_unittests.cc:20:10 (content_unittests+0x38e4300)

SUMMARY: ThreadSanitizer: data race base/message_loop/message_loop_task_runner.cc:112:28 in base::internal::MessageLoopTaskRunner::SetAddQueueTimeToTasks(bool)
"""
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3821487b682ba7a30328aef352b5f6ef99ac3b93

commit 3821487b682ba7a30328aef352b5f6ef99ac3b93
Author: Erik Chen <erikchen@chromium.org>
Date: Thu Oct 25 12:28:37 2018

Reenable ResponsivenessWatcherRealIOThreadTest on Linux TSAN.

The data race was fixed here: https://chromium-review.googlesource.com/1240634

Bug:  876561 
Change-Id: I4f7d8a26d026993f933c20d8d3db1c2abedcedb9
Reviewed-on: https://chromium-review.googlesource.com/c/1296612
Reviewed-by: Timothy Dresser <tdresser@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602677}
[modify] https://crrev.com/3821487b682ba7a30328aef352b5f6ef99ac3b93/content/browser/scheduler/responsiveness/watcher_unittest.cc

Status: Fixed (was: Assigned)

Sign in to add a comment