New issue
Advanced search Search tips

Issue 845010 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug



Sign in to add a comment

TaskSchedulerImplTest.IdentifiableStacks fails on CrWinASan

Project Member Reported by thakis@chromium.org, May 20 2018

Issue description

Since here: https://chromium-review.googlesource.com/1047846

https://ci.chromium.org/buildbot/chromium.clang/CrWinAsan/553

https://logs.chromium.org/v/?s=chromium%2Fbb%2Fchromium.clang%2FCrWinAsan%2F623%2F%2B%2Frecipes%2Fsteps%2Fbase_unittests%2F0%2Flogs%2FTaskSchedulerImplTest.IdentifiableStacks%2F0


[ RUN      ] TaskSchedulerImplTest.IdentifiableStacks
=================================================================
==3020==ERROR: AddressSanitizer: access-violation on unknown address 0x00000000 (pc 0x0225673a bp 0x0939f418 sp 0x0939f32c T92)
==3020==The signal is caused by a READ memory access.
==3020==Hint: address points to the zero page.
==3020==*** WARNING: Failed to initialize DbgHelp!              ***
==3020==*** Most likely this means that the app is already      ***
==3020==*** using DbgHelp, possibly with incompatible flags.    ***
==3020==*** Due to technical reasons, symbolization might crash ***
==3020==*** or produce wrong results.                           ***
    #0 0x2256739 in base::PostDelayedTaskWithTraits C:\b\c\b\CrWinAsan\src\base\task_scheduler\post_task.cc:76
    #1 0x2256fb3 in base::PostTaskWithTraits C:\b\c\b\CrWinAsan\src\base\task_scheduler\post_task.cc:65
    #2 0x2419c13 in base::internal::ServiceThread::PerformHeartbeatLatencyReport C:\b\c\b\CrWinAsan\src\base\task_scheduler\service_thread.cc:43
    #3 0x241be73 in base::Timer::RunScheduledTask C:\b\c\b\CrWinAsan\src\base\timer\timer.cc:263
    #4 0x2254193 in base::debug::TaskAnnotator::RunTask C:\b\c\b\CrWinAsan\src\base\debug\task_annotator.cc:101
    #5 0x24e6112 in base::internal::IncomingTaskQueue::RunTask C:\b\c\b\CrWinAsan\src\base\message_loop\incoming_task_queue.cc:124
    #6 0x21a703a in base::MessageLoop::RunTask C:\b\c\b\CrWinAsan\src\base\message_loop\message_loop.cc:319
    #7 0x21a8135 in base::MessageLoop::DeferOrRunPendingTask C:\b\c\b\CrWinAsan\src\base\message_loop\message_loop.cc:329
    #8 0x21a8cd5 in base::MessageLoop::DoDelayedWork C:\b\c\b\CrWinAsan\src\base\message_loop\message_loop.cc:413
    #9 0x24ea83c in base::MessagePumpDefault::Run C:\b\c\b\CrWinAsan\src\base\message_loop\message_pump_default.cc:41
    #10 0x21a62d3 in base::MessageLoop::Run C:\b\c\b\CrWinAsan\src\base\message_loop\message_loop.cc:271
    #11 0x21aebc0 in base::RunLoop::Run C:\b\c\b\CrWinAsan\src\base\run_loop.cc:131
    #12 0x225f02a in base::Thread::Run C:\b\c\b\CrWinAsan\src\base\threading\thread.cc:255
    #13 0x2419e18 in base::internal::ServiceThread::Run C:\b\c\b\CrWinAsan\src\base\task_scheduler\service_thread.cc:30
    #14 0x225f4ba in base::Thread::ThreadMain C:\b\c\b\CrWinAsan\src\base\threading\thread.cc:337
    #15 0x22002cb in base::`anonymous namespace'::ThreadFunc C:\b\c\b\CrWinAsan\src\base\threading\platform_thread_win.cc:91
    #16 0x29d9a94 in __asan::AsanThread::ThreadStart c:\b\c\b\crwinasan\src\third_party\llvm\projects\compiler-rt\lib\asan\asan_thread.cc:262
    #17 0x29d857e in asan_thread_start c:\b\c\b\crwinasan\src\third_party\llvm\projects\compiler-rt\lib\asan\asan_win.cc:136
    #18 0x76c03379 in BaseThreadInitThunk+0x11 (C:\Windows\syswow64\kernel32.dll+0x7dd73379)
    #19 0x774292b1 in RtlInitializeExceptionChain+0x62 (C:\Windows\SysWOW64\ntdll.dll+0x7dea92b1)
    #20 0x77429284 in RtlInitializeExceptionChain+0x35 (C:\Windows\SysWOW64\ntdll.dll+0x7dea9284)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: access-violation C:\b\c\b\CrWinAsan\src\base\task_scheduler\post_task.cc:76 in base::PostDelayedTaskWithTraits
Thread T92 created by T0 here:
    #0 0x29d8682 in __asan_wrap_CreateThread c:\b\c\b\crwinasan\src\third_party\llvm\projects\compiler-rt\lib\asan\asan_win.cc:146
    #1 0x21ffaac in base::`anonymous namespace'::CreateThreadInternal C:\b\c\b\CrWinAsan\src\base\threading\platform_thread_win.cc:130
    #2 0x21ff983 in base::PlatformThread::CreateWithPriority C:\b\c\b\CrWinAsan\src\base\threading\platform_thread_win.cc:207
    #3 0x225e13b in base::Thread::StartWithOptions C:\b\c\b\CrWinAsan\src\base\threading\thread.cc:112
    #4 0x241de5b in base::internal::TaskSchedulerImpl::Start C:\b\c\b\CrWinAsan\src\base\task_scheduler\task_scheduler_impl.cc:85
    #5 0x1c05495 in base::internal::`anonymous namespace'::TaskSchedulerImplTest::StartTaskScheduler+0x335 (e:\b\swarm_slave\w\ir\out\Release\base_unittests.exe+0x14d5495)
    #6 0x1c13310 in base::internal::TaskSchedulerImplTest_IdentifiableStacks_Test::TestBody C:\b\c\b\CrWinAsan\src\base\task_scheduler\task_scheduler_impl_unittest.cc:686
    #7 0x2165571 in testing::internal::HandleExceptionsInMethodIfSupported<testing::Test,void> C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:2475
    #8 0x21650d8 in testing::Test::Run C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:2491
    #9 0x21674f2 in testing::TestInfo::Run C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:2667
    #10 0x216878f in testing::TestCase::Run C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:2785
    #11 0x218244d in testing::internal::UnitTestImpl::RunAllTests C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:5047
    #12 0x2181be1 in testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,bool> C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:2475
    #13 0x2181880 in testing::UnitTest::Run C:\b\c\b\CrWinAsan\src\third_party\googletest\src\googletest\src\gtest.cc:4663
    #14 0x28d8f5e in base::TestSuite::Run C:\b\c\b\CrWinAsan\src\base\test\test_suite.cc:275
    #15 0x28dbbab in base::`anonymous namespace'::LaunchUnitTestsInternal C:\b\c\b\CrWinAsan\src\base\test\launcher\unit_test_launcher.cc:225
    #16 0x28db7ba in base::LaunchUnitTests C:\b\c\b\CrWinAsan\src\base\test\launcher\unit_test_launcher.cc:576
    #17 0x28d8bac in main C:\b\c\b\CrWinAsan\src\base\test\run_all_base_unittests.cc:12
    #18 0x29f38cb in __scrt_common_main_seh f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283
    #19 0x76c03379 in BaseThreadInitThunk+0x11 (C:\Windows\syswow64\kernel32.dll+0x7dd73379)
    #20 0x774292b1 in RtlInitializeExceptionChain+0x62 (C:\Windows\SysWOW64\ntdll.dll+0x7dea92b1)
    #21 0x77429284 in RtlInitializeExceptionChain+0x35 (C:\Windows\SysWOW64\ntdll.dll+0x7dea9284)
==3020==ABORTING
 

Comment 1 by thakis@chromium.org, May 22 2018

Ping, what's the status here? The CrWinASan bots have been red for two weeks now.

Comment 2 by gab@chromium.org, May 23 2018

Status: Started (was: Assigned)
I just saw this, looking.

Comment 3 by gab@chromium.org, May 23 2018

https://chromium-review.googlesource.com/#/c/chromium/src/+/1070465 fixes it, can't have been two weeks though as the cause of the code causing this landed a few days ago.
Project Member

Comment 4 by bugdroid1@chromium.org, May 23 2018

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

commit bb37d4ce0d659c19dc56d4df3bf974a05a2c02f0
Author: Gabriel Charette <gab@chromium.org>
Date: Wed May 23 19:42:33 2018

[TaskScheduler] Fix flaky TaskSchedulerImplTests.

Caused by heartbeat latency report without a registered TaskSheduler
instance.

Repro'ed flake locally by changing the timer to 1us. This CL fixes it.

R=fdoray@chromium.org

Bug:  845010 
Change-Id: I59df70da2cd8ee0da5197cd3f95b8a0954f11050
Reviewed-on: https://chromium-review.googlesource.com/1070465
Reviewed-by: François Doray <fdoray@chromium.org>
Commit-Queue: Gabriel Charette <gab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561212}
[modify] https://crrev.com/bb37d4ce0d659c19dc56d4df3bf974a05a2c02f0/base/task_scheduler/service_thread.cc

Comment 5 by gab@chromium.org, May 23 2018

Status: Fixed (was: Started)
Status: Assigned (was: Fixed)
Doesn't look like the fix worked: https://ci.chromium.org/buildbot/chromium.clang/CrWinAsan/?limit=200

Comment 8 by gab@chromium.org, Jun 1 2018

Status: Started (was: Assigned)
https://chromium-review.googlesource.com/c/chromium/src/+/1082607
Project Member

Comment 9 by bugdroid1@chromium.org, Jun 1 2018

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

commit 03959e220d59ef69b58e3a73f0ab219386aefb27
Author: Gabriel Charette <gab@chromium.org>
Date: Fri Jun 01 16:29:49 2018

[Flaky tests] Disable TaskSchedulerImplTest.IdentifiableStacks on WinASan

The test was fixed by crrev.com/561212 but invoking StackTrace()
multiple times on a WinASan build appears to be too slow and the test
flakily hangs now.

We know this works on ASan because a similar test with fewer calls
passes (i.e. TaskSchedulerServiceThreadTest.StackHasIdentifyingFrame).

We don't need to run this on WinASAN, Windows coverage is sufficient, so
let's just disable it on WinASan.

R=fdoray@chromium.org

Bug:  845010 
Change-Id: I09c8b50ca44bd897e945a1178c0728fd116f5688
Reviewed-on: https://chromium-review.googlesource.com/1082607
Reviewed-by: François Doray <fdoray@chromium.org>
Commit-Queue: Gabriel Charette <gab@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563669}
[modify] https://crrev.com/03959e220d59ef69b58e3a73f0ab219386aefb27/base/task_scheduler/task_scheduler_impl_unittest.cc

Comment 10 by gab@chromium.org, Jun 1 2018

Labels: Test-Disabled Test-Flaky
Status: Fixed (was: Started)
Fails on https://ci.chromium.org/buildbot/chromium.clang/ToTWinCFI/1216 and https://ci.chromium.org/buildbot/chromium.clang/ToTWinCFI64/ too which doesn't define ADDRESS_SANITIZER (you can use BUILDFLAG(CFI_CAST_CHECK) from "base/cfi_buildflags.h" to check for CFI if the plan is just to disable)
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 1 2018

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

commit 016068a43a3b5a7ad3a89390b496178bceb4363a
Author: Gabriel Charette <gab@chromium.org>
Date: Fri Jun 01 20:49:43 2018

[Flaky tests] Also disable TaskSchedulerImplTest.IdentifiableStacks on WinCFI

Same as crrev.com/563669 for CFI per  crbug.com/845010#c11 

Bug:  845010 
Change-Id: I0b27de6932b782bedc6a9b61d2e7d4a268e1666e
Reviewed-on: https://chromium-review.googlesource.com/1082817
Commit-Queue: François Doray <fdoray@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#563783}
[modify] https://crrev.com/016068a43a3b5a7ad3a89390b496178bceb4363a/base/task_scheduler/task_scheduler_impl_unittest.cc

Sign in to add a comment