Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tsan report in GC when accessing PageSpace::phase() in vm/dart_2/transferable_test #49323

Closed
mkustermann opened this issue Jun 24, 2022 · 0 comments
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening

Comments

@mkustermann
Copy link
Member

From this log:


/==================================================================\
| vm/dart_2/transferable_test broke (Pass -> Crash, expected Pass) |
\==================================================================/

--- Command "vm_compile_to_kernel" (took 52.000921s):
DART_CONFIGURATION=ReleaseTSANX64 /b/s/w/ir/cache/builder/sdk/pkg/vm/tool/gen_kernel --aot --platform=out/ReleaseTSANX64/vm_platform_strong.dill -o /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.dill /b/s/w/ir/cache/builder/sdk/runtime/tests/vm/dart_2/transferable_test.dart -Dtest_runner.configuration=dartkp-tsan-linux-release-x64 --packages=/b/s/w/ir/cache/builder/sdk/.dart_tool/package_config.json -Ddart.vm.product=false

exit code:
0

--- Command "precompiler" (took 01:17.000021s):
DART_CONFIGURATION=ReleaseTSANX64 out/ReleaseTSANX64/gen_snapshot --snapshot-kind=app-aot-assembly --assembly=/b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.S -Dtest_runner.configuration=dartkp-tsan-linux-release-x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.dart_tool/package_config.json /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.dill

exit code:
0

--- Command "remove_kernel_file" (took 46ms):
DART_CONFIGURATION=ReleaseTSANX64 rm /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.dill

exit code:
0

--- Command "assemble" (took 02.000967s):
DART_CONFIGURATION=ReleaseTSANX64 gcc -m64 -shared -o /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.aotsnapshot /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.S

exit code:
0

--- Command "remove_assembly" (took 31ms):
DART_CONFIGURATION=ReleaseTSANX64 rm /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.S

exit code:
0

--- Command "vm" (took 28.000482s):
DART_CONFIGURATION=ReleaseTSANX64 out/ReleaseTSANX64/dart_precompiled_runtime -Dtest_runner.configuration=dartkp-tsan-linux-release-x64 --ignore-unrecognized-flags --packages=/b/s/w/ir/cache/builder/sdk/.dart_tool/package_config.json /b/s/w/ir/cache/builder/sdk/out/ReleaseTSANX64/generated_compilations/dartkp-tsan-linux-release-x64/runtime_tests_vm_dart_2_transferable_test/out.aotsnapshot

exit code:
-6

stdout:
--- standard
13ms since last checkin
1605ms since last checkin
20ms since last checkin
11ms since last checkin
20ms since last checkin
16ms since last checkin
13ms since last checkin
...
939ms since last checkin
16ms since last checkin
191ms since last checkin
2366ms for round-trip
standard(13546 ms)/transferable(12617 ms): 1.0736308155662995x

stderr:
==================
WARNING: ThreadSanitizer: data race (pid=18234)
  Read of size 4 at 0x7b6800000fa8 by thread T7:
    #0 dart::PageSpace::phase() const ../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.h:500:32 (dart_precompiled_runtime+0xa6dbd0)
    #1 dart::Heap::CollectOldSpaceGarbage(dart::Thread*, dart::GCType, dart::GCReason) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:489:20 (dart_precompiled_runtime+0xa6dbd0)
    #2 dart::Heap::CheckConcurrentMarking(dart::Thread*, dart::GCReason, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:583:7 (dart_precompiled_runtime+0xa6d59f)
    #3 dart::Heap::CheckExternalGC(dart::Thread*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:196:5 (dart_precompiled_runtime+0xa6d0d2)
    #4 dart::Heap::AllocatedExternal(long, dart::Heap::Space) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:159:5 (dart_precompiled_runtime+0xa6cf81)
    #5 dart::FinalizablePersistentHandle::SetExternalSize(long, dart::IsolateGroup*) ../../out/ReleaseTSANX64/../../runtime/vm/dart_api_state.h:232:28 (dart_precompiled_runtime+0x93e0b4)
    #6 dart::FinalizablePersistentHandle::New(dart::IsolateGroup*, dart::Object const&, void*, void (*)(void*, void*), long, bool) ../../out/ReleaseTSANX64/../../runtime/vm/dart_api_state.h:813:8 (dart_precompiled_runtime+0x93e0b4)
    #7 dart::TransferableTypedData::New(unsigned char*, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/object.cc:25493:7 (dart_precompiled_runtime+0x93e0b4)
    #8 dart::DN_HelperTransferableTypedData_factory(dart::Isolate*, dart::Thread*, dart::Zone*, dart::NativeArguments*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/lib/isolate.cc:1274:10 (dart_precompiled_runtime+0x7fb7f2)
    #9 dart::BootstrapNatives::DN_TransferableTypedData_factory(dart::Thread*, dart::Zone*, dart::NativeArguments*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/lib/isolate.cc:1213:1 (dart_precompiled_runtime+0x7fb7f2)
    #10 dart::NativeEntry::BootstrapNativeCallWrapper(_Dart_NativeArguments*, void (*)(_Dart_NativeArguments*)) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/native_entry.cc:140:37 (dart_precompiled_runtime+0x8b1bc8)
    #11 Stub_CallBootstrapNative /b/s/w/ir/x/t/ccNbf3Rg.o (out.aotsnapshot+0x329d) (BuildId: 4c57a69ecfb2f8d8c1e6b9811c46cdb272981e21)
    #12 dart::DartEntry::InvokeFunction(dart::Function const&, dart::Array const&, dart::Array const&, unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:145:10 (dart_precompiled_runtime+0x8408a9)
    #13 dart::DartEntry::InvokeFunction(dart::Function const&, dart::Array const&) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:37:10 (dart_precompiled_runtime+0x8444e6)
    #14 dart::DartLibraryCalls::HandleMessage(long, dart::Instance const&) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:732:28 (dart_precompiled_runtime+0x8444e6)
    #15 dart::IsolateMessageHandler::HandleMessage(std::__2::unique_ptr<dart::Message, std::__2::default_delete<dart::Message>>) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/isolate.cc:1428:15 (dart_precompiled_runtime+0x8783b8)
    #16 dart::MessageHandler::HandleMessages(dart::MonitorLocker*, bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:240:16 (dart_precompiled_runtime+0x88d1c5)
    #17 dart::MessageHandler::TaskCallback() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:450:18 (dart_precompiled_runtime+0x88dcbf)
    #18 dart::MessageHandlerTask::Run() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:31:15 (dart_precompiled_runtime+0x88e793)
    #19 dart::ThreadPool::WorkerLoop(dart::ThreadPool::Worker*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:158:15 (dart_precompiled_runtime+0xa4786c)
    #20 dart::ThreadPool::Worker::Main(unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:330:9 (dart_precompiled_runtime+0xa48345)
    #21 dart::ThreadStart(void*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:154:5 (dart_precompiled_runtime+0x991bcd)

  Previous write of size 4 at 0x7b6800000fa8 by thread T4 (mutexes: write M0):
    #0 dart::PageSpace::set_phase(dart::PageSpace::Phase) ../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.h:501:38 (dart_precompiled_runtime+0xa94fa9)
    #1 dart::ConcurrentSweeperTask::Run() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/sweeper.cc:149:18 (dart_precompiled_runtime+0xa94fa9)
    #2 dart::ThreadPool::WorkerLoop(dart::ThreadPool::Worker*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:158:15 (dart_precompiled_runtime+0xa4786c)
    #3 dart::ThreadPool::Worker::Main(unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:330:9 (dart_precompiled_runtime+0xa48345)
    #4 dart::ThreadStart(void*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:154:5 (dart_precompiled_runtime+0x991bcd)

  Location is heap block of size 1368 at 0x7b6800000c00 allocated by main thread:
    #0 operator new(unsigned long) ../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/compiler-rt/lib/tsan/rtl/tsan_new_delete.cpp:64:3 (dart_precompiled_runtime+0x6358e6)
    #1 dart::Heap::Init(dart::IsolateGroup*, bool, long, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:689:30 (dart_precompiled_runtime+0xa6fd4c)
    #2 dart::IsolateGroup::CreateHeap(bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/isolate.cc:472:3 (dart_precompiled_runtime+0x872499)
    #3 Dart_CreateIsolateGroup ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_api_impl.cc:1394:10 (dart_precompiled_runtime+0xe8c9fa)
    #4 dart::bin::CreateIsolateGroupAndSetupHelper(bool, char const*, char const*, char const*, Dart_IsolateFlags*, void*, char**, int*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:819:13 (dart_precompiled_runtime+0x63e463)
    #5 dart::bin::RunMainIsolate(char const*, char const*, dart::bin::CommandLineOptions*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1022:26 (dart_precompiled_runtime+0x63e017)
    #6 dart::bin::main(int, char**) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1403:9 (dart_precompiled_runtime+0x63f182)
    #7 main ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1442:3 (dart_precompiled_runtime+0x63fbae)

  Mutex M0 (0x7b6800000f40) created at:
    #0 pthread_mutex_init ../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1316:3 (dart_precompiled_runtime+0x5b857f)
    #1 dart::Monitor::Monitor() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:372:12 (dart_precompiled_runtime+0x992236)
    #2 dart::PageSpace::PageSpace(dart::Heap*, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.cc:234:7 (dart_precompiled_runtime+0xa7b2e8)
    #3 dart::Heap::Heap(dart::IsolateGroup*, bool, long, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:50:7 (dart_precompiled_runtime+0xa6b80e)
    #4 dart::Heap::Init(dart::IsolateGroup*, bool, long, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:689:34 (dart_precompiled_runtime+0xa6fd63)
    #5 dart::IsolateGroup::CreateHeap(bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/isolate.cc:472:3 (dart_precompiled_runtime+0x872499)
    #6 Dart_CreateIsolateGroup ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_api_impl.cc:1394:10 (dart_precompiled_runtime+0xe8c9fa)
    #7 dart::bin::CreateIsolateGroupAndSetupHelper(bool, char const*, char const*, char const*, Dart_IsolateFlags*, void*, char**, int*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:819:13 (dart_precompiled_runtime+0x63e463)
    #8 dart::bin::RunMainIsolate(char const*, char const*, dart::bin::CommandLineOptions*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1022:26 (dart_precompiled_runtime+0x63e017)
    #9 dart::bin::main(int, char**) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1403:9 (dart_precompiled_runtime+0x63f182)
    #10 main ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1442:3 (dart_precompiled_runtime+0x63fbae)

  Thread T7 'DartWorker' (tid=18242, running) created by thread T5 at:
    #0 pthread_create ../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1022:3 (dart_precompiled_runtime+0x5b6dad)
    #1 dart::OSThread::Start(char const*, void (*)(unsigned long), unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:173:12 (dart_precompiled_runtime+0x991a6c)
    #2 dart::ThreadPool::Worker::StartThread() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:296:16 (dart_precompiled_runtime+0xa46f54)
    #3 dart::ThreadPool::RunImpl(std::__2::unique_ptr<dart::ThreadPool::Task, std::__2::default_delete<dart::ThreadPool::Task>>) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:94:17 (dart_precompiled_runtime+0xa46f54)
    #4 bool dart::ThreadPool::Run<dart::SpawnIsolateTask, dart::Isolate*&, std::__2::unique_ptr<dart::IsolateSpawnState, std::__2::default_delete<dart::IsolateSpawnState>>>(dart::Isolate*&, std::__2::unique_ptr<dart::IsolateSpawnState, std::__2::default_delete<dart::IsolateSpawnState>>&&) ../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.h:46:12 (dart_precompiled_runtime+0x7f9800)
    #5 dart::DN_HelperIsolate_spawnFunction(dart::Isolate*, dart::Thread*, dart::Zone*, dart::NativeArguments*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/lib/isolate.cc:984:36 (dart_precompiled_runtime+0x7f9800)
    #6 dart::BootstrapNatives::DN_Isolate_spawnFunction(dart::Thread*, dart::Zone*, dart::NativeArguments*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/lib/isolate.cc:930:1 (dart_precompiled_runtime+0x7f9800)
    #7 dart::NativeEntry::BootstrapNativeCallWrapper(_Dart_NativeArguments*, void (*)(_Dart_NativeArguments*)) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/native_entry.cc:140:37 (dart_precompiled_runtime+0x8b1bc8)
    #8 dart::NativeEntry::LinkNativeCall(_Dart_NativeArguments*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/native_entry.cc:322:5 (dart_precompiled_runtime+0x8b203d)
    #9 dart::NativeEntry::BootstrapNativeCallWrapper(_Dart_NativeArguments*, void (*)(_Dart_NativeArguments*)) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/native_entry.cc:125:5 (dart_precompiled_runtime+0x8b1c50)
    #10 Stub_CallBootstrapNative /b/s/w/ir/x/t/ccNbf3Rg.o (out.aotsnapshot+0x329d) (BuildId: 4c57a69ecfb2f8d8c1e6b9811c46cdb272981e21)
    #11 dart::DartEntry::InvokeFunction(dart::Function const&, dart::Array const&, dart::Array const&, unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:145:10 (dart_precompiled_runtime+0x8408a9)
    #12 dart::DartEntry::InvokeFunction(dart::Function const&, dart::Array const&) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:37:10 (dart_precompiled_runtime+0x8444e6)
    #13 dart::DartLibraryCalls::HandleMessage(long, dart::Instance const&) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_entry.cc:732:28 (dart_precompiled_runtime+0x8444e6)
    #14 dart::IsolateMessageHandler::HandleMessage(std::__2::unique_ptr<dart::Message, std::__2::default_delete<dart::Message>>) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/isolate.cc:1428:15 (dart_precompiled_runtime+0x8783b8)
    #15 dart::MessageHandler::HandleMessages(dart::MonitorLocker*, bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:240:16 (dart_precompiled_runtime+0x88d1c5)
    #16 dart::MessageHandler::TaskCallback() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:450:18 (dart_precompiled_runtime+0x88dcbf)
    #17 dart::MessageHandlerTask::Run() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/message_handler.cc:31:15 (dart_precompiled_runtime+0x88e793)
    #18 dart::ThreadPool::WorkerLoop(dart::ThreadPool::Worker*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:158:15 (dart_precompiled_runtime+0xa4786c)
    #19 dart::ThreadPool::Worker::Main(unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:330:9 (dart_precompiled_runtime+0xa48345)
    #20 dart::ThreadStart(void*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:154:5 (dart_precompiled_runtime+0x991bcd)

  Thread T4 'DartWorker' (tid=18239, running) created by main thread at:
    #0 pthread_create ../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/../staging/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-x86_64-unknown-linux-gnu-bins/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:1022:3 (dart_precompiled_runtime+0x5b6dad)
    #1 dart::OSThread::Start(char const*, void (*)(unsigned long), unsigned long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/os_thread_linux.cc:173:12 (dart_precompiled_runtime+0x991a6c)
    #2 dart::ThreadPool::Worker::StartThread() ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:296:16 (dart_precompiled_runtime+0xa46f54)
    #3 dart::ThreadPool::RunImpl(std::__2::unique_ptr<dart::ThreadPool::Task, std::__2::default_delete<dart::ThreadPool::Task>>) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.cc:94:17 (dart_precompiled_runtime+0xa46f54)
    #4 bool dart::ThreadPool::Run<dart::ConcurrentMarkTask, dart::GCMarker*, dart::IsolateGroup* const&, dart::PageSpace*&, dart::MarkingVisitorBase<true>*&>(dart::GCMarker*&&, dart::IsolateGroup* const&, dart::PageSpace*&, dart::MarkingVisitorBase<true>*&) ../../out/ReleaseTSANX64/../../runtime/vm/thread_pool.h:46:12 (dart_precompiled_runtime+0xa73d60)
    #5 dart::GCMarker::StartConcurrentMark(dart::PageSpace*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/marker.cc:920:42 (dart_precompiled_runtime+0xa73d60)
    #6 dart::PageSpace::CollectGarbageHelper(dart::Thread*, bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.cc:1203:14 (dart_precompiled_runtime+0xa81f15)
    #7 dart::PageSpace::CollectGarbage(dart::Thread*, bool, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.cc:1147:3 (dart_precompiled_runtime+0xa818e6)
    #8 dart::Heap::StartConcurrentMarking(dart::Thread*, dart::GCReason) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:615:14 (dart_precompiled_runtime+0xa6e654)
    #9 dart::Heap::CheckConcurrentMarking(dart::Thread*, dart::GCReason, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:600:9 (dart_precompiled_runtime+0xa6d56f)
    #10 dart::Scavenger::TryAllocateNewTLAB(dart::Thread*, long, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/scavenger.cc:1683:12 (dart_precompiled_runtime+0xa8b177)
    #11 dart::Scavenger::TryAllocate(dart::Thread*, long) ../../out/ReleaseTSANX64/../../runtime/vm/heap/scavenger.h:286:5 (dart_precompiled_runtime+0xa6c369)
    #12 dart::Heap::AllocateNew(dart::Thread*, long) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.cc:73:27 (dart_precompiled_runtime+0xa6c369)
    #13 dart::Heap::Allocate(dart::Thread*, long, dart::Heap::Space) ../../out/ReleaseTSANX64/../../runtime/vm/heap/heap.h:70:16 (dart_precompiled_runtime+0x8cab89)
    #14 dart::Object::Allocate(long, long, dart::Heap::Space, bool) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/object.cc:2712:25 (dart_precompiled_runtime+0x8cab89)
    #15 dart::OneByteString::New(long, dart::Heap::Space) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/object.cc:23894:21 (dart_precompiled_runtime+0x9332fc)
    #16 dart::String::FromUTF8(unsigned char const*, long, dart::Heap::Space) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/object.cc:23139:43 (dart_precompiled_runtime+0x9332fc)
    #17 dart::String::New(char const*, dart::Heap::Space) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/object.cc:23130:10 (dart_precompiled_runtime+0x8befab)
    #18 Dart_NewStringFromCString ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/vm/dart_api_impl.cc:2873:28 (dart_precompiled_runtime+0xe9e8c6)
    #19 dart::bin::RunMainIsolate(char const*, char const*, dart::bin::CommandLineOptions*) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1071:31 (dart_precompiled_runtime+0x63e079)
    #20 dart::bin::main(int, char**) ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1403:9 (dart_precompiled_runtime+0x63f182)
    #21 main ../../out/ReleaseTSANX64/../../out/ReleaseTSANX64/../../runtime/bin/main.cc:1442:3 (dart_precompiled_runtime+0x63fbae)

SUMMARY: ThreadSanitizer: data race ../../out/ReleaseTSANX64/../../runtime/vm/heap/pages.h:500:32 in dart::PageSpace::phase() const
==================
ThreadSanitizer: reported 1 warnings

--- Re-run this test:
python3 tools/test.py -n dartkp-tsan-linux-release-x64 vm/dart_2/transferable_test

/cc @aam @rmacnak-google

@mkustermann mkustermann added area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening labels Jun 24, 2022
copybara-service bot pushed a commit that referenced this issue Jun 24, 2022
TEST=tsan
Bug: #49323
Change-Id: I6e98cbd33b69332a01db4fdcceb0b3da164e725e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/249760
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-vm Use area-vm for VM related issues, including code coverage, and the AOT and JIT backends. gardening
Projects
None yet
Development

No branches or pull requests

2 participants