denoland/rusty_v8

`clear_kept_objects` is flaky when run in parallel

mmastrac opened this issue · 1 comments

It appears to cause issues w/GC on objects in other tests, but it's not clear what's happening.

AddressSanitizer:DEADLYSIGNAL
=================================================================
==74371==ERROR: AddressSanitizer: BUS on unknown address (pc 0x0001037307a8 bp 0x00016dfde370 sp 0x00016dfde330 T30)
==74371==The signal is caused by a READ memory access.
==74371==Hint: this fault was caused by a dereference of a high value address (see register values below).  Disassemble the provided pc to learn which register was used.
    #0 0x1037307a8 in void v8::internal::CallIterateBody::apply<v8::internal::FixedArray::BodyDescriptor, false, v8::internal::IterateAndScavengePromotedObjectsVisitor>(v8::internal::Tagged<v8::internal::Map>, v8::internal::Tagged<v8::internal::HeapObject>, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)+0xa4 (test_api-7d0c30222dff9c05:arm64+0x1010e87a8)
    #1 0x10371b520 in v8::internal::Scavenger::IterateAndScavengePromotedObject(v8::internal::Tagged<v8::internal::HeapObject>, v8::internal::Tagged<v8::internal::Map>, int)+0x240 (test_api-7d0c30222dff9c05:arm64+0x1010d3520)
    #2 0x103711278 in v8::internal::Scavenger::Process(v8::JobDelegate*)+0x7c8 (test_api-7d0c30222dff9c05:arm64+0x1010c9278)
    #3 0x1037106e8 in v8::internal::ScavengerCollector::JobTask::ProcessItems(v8::JobDelegate*, v8::internal::Scavenger*)+0x188 (test_api-7d0c30222dff9c05:arm64+0x1010c86e8)
    #4 0x10370fbf8 in v8::internal::ScavengerCollector::JobTask::Run(v8::JobDelegate*)+0x4cc (test_api-7d0c30222dff9c05:arm64+0x1010c7bf8)
    #5 0x1029b6f4c in v8::platform::DefaultJobState::Join()+0x4c0 (test_api-7d0c30222dff9c05:arm64+0x10036ef4c)
    #6 0x1029b8170 in v8::platform::DefaultJobHandle::Join()+0x34 (test_api-7d0c30222dff9c05:arm64+0x100370170)
    #7 0x103714d88 in v8::internal::ScavengerCollector::CollectGarbage()+0x180c (test_api-7d0c30222dff9c05:arm64+0x1010ccd88)
    #8 0x1035460a4 in v8::internal::Heap::Scavenge()+0x558 (test_api-7d0c30222dff9c05:arm64+0x100efe0a4)
    #9 0x103542ebc in v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::internal::GarbageCollectionReason, char const*)+0xa28 (test_api-7d0c30222dff9c05:arm64+0x100efaebc)
    #10 0x103584fc8 in v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags)::$_1::operator()() const+0x848 (test_api-7d0c30222dff9c05:arm64+0x100f3cfc8)
    #11 0x103584718 in void heap::base::Stack::SetMarkerAndCallbackImpl<v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags)::$_1>(heap::base::Stack*, void*, void const*)+0x50 (test_api-7d0c30222dff9c05:arm64+0x100f3c718)
    #12 0x1055cc89c in PushAllRegistersAndIterateStack+0x24 (test_api-7d0c30222dff9c05:arm64+0x102f8489c)
    #13 0x103536c18 in v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags)+0x560 (test_api-7d0c30222dff9c05:arm64+0x100eeec18)
    #14 0x103515564 in v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment)+0x110 (test_api-7d0c30222dff9c05:arm64+0x100ecd564)
    #15 0x103515690 in v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment)+0x40 (test_api-7d0c30222dff9c05:arm64+0x100ecd690)
    #16 0x10348a784 in v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin)+0xc8 (test_api-7d0c30222dff9c05:arm64+0x100e42784)
    #17 0x104707410 in v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*)+0x32c (test_api-7d0c30222dff9c05:arm64+0x1020bf410)
    #18 0x107fec54c in Builtins_CEntry_Return1_ArgvOnStack_NoBuiltinExit+0x6c (test_api-7d0c30222dff9c05:arm64+0x1059a454c)
    #19 0x16fc0126c  (<unknown module>)
    #20 0x107d73f34 in Builtins_JSEntryTrampoline+0xb4 (test_api-7d0c30222dff9c05:arm64+0x10572bf34)
    #21 0x107d73b70 in Builtins_JSEntry+0xb0 (test_api-7d0c30222dff9c05:arm64+0x10572bb70)
    #22 0x10324e990 in v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&)+0x1e40 (test_api-7d0c30222dff9c05:arm64+0x100c06990)
    #23 0x103251658 in v8::internal::Execution::CallScript(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>)+0x4b8 (test_api-7d0c30222dff9c05:arm64+0x100c09658)
    #24 0x102b93438 in v8::Script::Run(v8::Local<v8::Context>, v8::Local<v8::Data>)+0x7f0 (test_api-7d0c30222dff9c05:arm64+0x10054b438)
    #25 0x102909db0 in v8__Script__Run+0x1cc (test_api-7d0c30222dff9c05:arm64+0x1002c1db0)
    #26 0x10267e870 in v8::script::_$LT$impl$u20$v8..data..Script$GT$::run::h5d737f7e1ae64d76 script.rs:94
    #27 0x10274c4a0 in test_api::eval::h445ed9d6b4fb1a78 test_api.rs:1013
    #28 0x1026b2a54 in core::ops::function::FnOnce::call_once::h3cd26f28f1972dcc function.rs:250
    #29 0x102820ae8 in test::__rust_begin_short_backtrace::ha9521ff2de856d43+0x6c (test_api-7d0c30222dff9c05:arm64+0x1001d8ae8)
    #30 0x10283c9d0 in test::types::RunnableTest::run::h2494993ec4987e7c+0xdc (test_api-7d0c30222dff9c05:arm64+0x1001f49d0)
    #31 0x10284b010 in std::panicking::try::do_call::hc6e1b68e810a63f5+0xc0 (test_api-7d0c30222dff9c05:arm64+0x100203010)
    #32 0x102850e4c in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x100208e4c)
    #33 0x10284a3f8 in std::panicking::try::h580fcb96ee12c25b+0xd0 (test_api-7d0c30222dff9c05:arm64+0x1002023f8)
    #34 0x102820ffc in test::run_test_in_process::h59eb1300ffced283+0x314 (test_api-7d0c30222dff9c05:arm64+0x1001d8ffc)
    #35 0x102880fc4 in std::sys_common::backtrace::__rust_begin_short_backtrace::h6aa7b42b28770e08+0x2b4 (test_api-7d0c30222dff9c05:arm64+0x100238fc4)
    #36 0x102850e4c in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x100208e4c)
    #37 0x10284a760 in std::panicking::try::h838572bf1cfd06a3+0xac (test_api-7d0c30222dff9c05:arm64+0x100202760)
    #38 0x102823f78 in core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h57eed3fb0aa7b091+0x16c (test_api-7d0c30222dff9c05:arm64+0x1001dbf78)
    #39 0x108584328 in _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h6fa687b9afbead50+0x68 (test_api-7d0c30222dff9c05:arm64+0x105f3c328)
    #40 0x1085506a0 in std::sys::pal::unix::thread::Thread::new::thread_start::ha269b5915b029379+0xb4 (test_api-7d0c30222dff9c05:arm64+0x105f086a0)
    #41 0x10e997ec8 in asan_thread_start(void*)+0x48 (librustc-nightly_rt.asan.dylib:arm64+0x4bec8)
    #42 0x196517fa4 in _pthread_start+0x90 (libsystem_pthread.dylib:arm64+0x6fa4)
    #43 0xa606000196512d9c  (<unknown module>)

==74371==Register values:
 x[0] = 0x00007ef700000007   x[1] = 0x00007ef700180011   x[2] = 0x0000000000028014   x[3] = 0x000000016dfde3f0  
 x[4] = 0x000000016dfde3d0   x[5] = 0x0000000000000001   x[6] = 0x0000000000000000   x[7] = 0x0000000000000001  
 x[8] = 0x0000000000000000   x[9] = 0x0000000000000008  x[10] = 0x0000000000000003  x[11] = 0x000000010372a934  
x[12] = 0x00000000000000aa  x[13] = 0x0000000000000000  x[14] = 0xf3f3f3f3f3000000  x[15] = 0x0000000000000000  
x[16] = 0x0000000196546640  x[17] = 0x0000000000000002  x[18] = 0x0000000000000000  x[19] = 0x000000016dfde3f0  
x[20] = 0x0000000000028014  x[21] = 0x00007ef700180011  x[22] = 0x0000007000020000  x[23] = 0x00007ef700000000  
x[24] = 0x000000002158f358  x[25] = 0x0000000000000000  x[26] = 0x000000016dfde3a0  x[27] = 0x0000007000020000  
x[28] = 0x000000016dfde380     fp = 0x000000016dfde370     lr = 0x000000010371b524     sp = 0x000000016dfde330  
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: BUS (test_api-7d0c30222dff9c05:arm64+0x1010e87a8) in void v8::internal::CallIterateBody::apply<v8::internal::FixedArray::BodyDescriptor, false, v8::internal::IterateAndScavengePromotedObjectsVisitor>(v8::internal::Tagged<v8::internal::Map>, v8::internal::Tagged<v8::internal::HeapObject>, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)+0xa4
Thread T30 created by T0 here:
    #0 0x10e992d88 in pthread_create+0x58 (librustc-nightly_rt.asan.dylib:arm64+0x46d88)
    #1 0x1085501fc in std::sys::pal::unix::thread::Thread::new::hf7308806234300b9+0x24c (test_api-7d0c30222dff9c05:arm64+0x105f081fc)
    #2 0x1028235b8 in std::thread::Builder::spawn_unchecked_::h51fd6400171670f4+0x548 (test_api-7d0c30222dff9c05:arm64+0x1001db5b8)
    #3 0x102823c9c in std::thread::Builder::spawn::hc6223dad15744429+0xb4 (test_api-7d0c30222dff9c05:arm64+0x1001dbc9c)
    #4 0x10281fe74 in test::run_test::h4f731115b9edea4d+0x844 (test_api-7d0c30222dff9c05:arm64+0x1001d7e74)
    #5 0x10281d094 in test::run_tests::hbb934641be6aea20+0x1a4c (test_api-7d0c30222dff9c05:arm64+0x1001d5094)
    #6 0x10282bb10 in test::console::run_tests_console::h92f19551e7517720+0x7a4 (test_api-7d0c30222dff9c05:arm64+0x1001e3b10)
    #7 0x1028197bc in test::test_main::he2f08c0ac031415f+0x3dc (test_api-7d0c30222dff9c05:arm64+0x1001d17bc)
    #8 0x10281a2f4 in test::test_main_static::h443b12ef7ce0f57c+0x144 (test_api-7d0c30222dff9c05:arm64+0x1001d22f4)
    #9 0x1027b5ca0 in std::sys_common::backtrace::__rust_begin_short_backtrace::hfde20c67d23e9134 backtrace.rs:155
    #10 0x10264c14c in std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::he2f20da7dcf9e70a rt.rs:159
    #11 0x1085a8ef8 in std::panicking::try::do_call::h702dca479a1bf178+0x5c (test_api-7d0c30222dff9c05:arm64+0x105f60ef8)
    #12 0x1085aa510 in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x105f62510)
    #13 0x1085a8698 in std::panicking::try::h56a08353bad3e7fc+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f60698)
    #14 0x1085a9090 in std::panicking::try::do_call::hf4b2a25d8e9bc9af+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f61090)
    #15 0x1085aa510 in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x105f62510)
    #16 0x1085a83d8 in std::panicking::try::h034545844065da2f+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f603d8)
    #17 0x10854afcc in std::rt::lang_start_internal::hf6e9b4f1acde8908+0xf4 (test_api-7d0c30222dff9c05:arm64+0x105f02fcc)
    #18 0x10264c0c4 in std::rt::lang_start::he1592764f08a41fe rt.rs:158
    #19 0x1027b40ac in main+0x1c (test_api-7d0c30222dff9c05:arm64+0x10016c0ac)
    #20 0x1961bff24  (<unknown module>)
    #21 0xf414fffffffffffc  (<unknown module>)

==74371==ABORTING
error: test failed, to rerun pass `--test test_api`

Another ASAN failure:

AddressSanitizer:DEADLYSIGNAL
=================================================================
==92568==ERROR: AddressSanitizer: BUS on unknown address (pc 0x0001053e9b30 bp 0x00016dcf25b0 sp 0x00016dcf2570 T21)
==92568==The signal is caused by a READ memory access.
==92568==Hint: this fault was caused by a dereference of a high value address (see register values below).  Disassemble the provided pc to learn which register was used.
    #0 0x1053e9b30 in void v8::internal::CallIterateBody::apply<v8::internal::FixedArray::BodyDescriptor, false, v8::internal::IterateAndScavengePromotedObjectsVisitor>(v8::internal::Tagged<v8::internal::Map>, v8::internal::Tagged<v8::internal::HeapObject>, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)+0xa4 (test_api-7d0c30222dff9c05:arm64+0x1010e5b30)
    #1 0x1053d48a8 in v8::internal::Scavenger::IterateAndScavengePromotedObject(v8::internal::Tagged<v8::internal::HeapObject>, v8::internal::Tagged<v8::internal::Map>, int)+0x240 (test_api-7d0c30222dff9c05:arm64+0x1010d08a8)
    #2 0x1053ca600 in v8::internal::Scavenger::Process(v8::JobDelegate*)+0x7c8 (test_api-7d0c30222dff9c05:arm64+0x1010c6600)
    #3 0x1053c9a70 in v8::internal::ScavengerCollector::JobTask::ProcessItems(v8::JobDelegate*, v8::internal::Scavenger*)+0x188 (test_api-7d0c30222dff9c05:arm64+0x1010c5a70)
    #4 0x1053c92e8 in v8::internal::ScavengerCollector::JobTask::Run(v8::JobDelegate*)+0x834 (test_api-7d0c30222dff9c05:arm64+0x1010c52e8)
    #5 0x104672d2c in v8::platform::DefaultJobWorker::Run()+0x2e0 (test_api-7d0c30222dff9c05:arm64+0x10036ed2c)
    #6 0x104677ca4 in v8::platform::DefaultWorkerThreadsTaskRunner::WorkerThread::Run()+0x1fc (test_api-7d0c30222dff9c05:arm64+0x100373ca4)
    #7 0x1046619d8 in v8::base::ThreadEntry(void*)+0x12c (test_api-7d0c30222dff9c05:arm64+0x10035d9d8)
    #8 0x11064bec8 in asan_thread_start(void*)+0x48 (librustc-nightly_rt.asan.dylib:arm64+0x4bec8)
    #9 0x196517fa4 in _pthread_start+0x90 (libsystem_pthread.dylib:arm64+0x6fa4)
    #10 0x859800196512d9c  (<unknown module>)

==92568==Register values:
 x[0] = 0x00007e8500000007   x[1] = 0x00007e8500680011   x[2] = 0x0000000000050014   x[3] = 0x000000016dcf2630  
 x[4] = 0x000000016dcf2610   x[5] = 0x0000000000000001   x[6] = 0x0000000000000000   x[7] = 0x0000000000000001  
 x[8] = 0x0000000000000000   x[9] = 0x0000000000000008  x[10] = 0x0000000000000003  x[11] = 0x00000001053e3cbc  
x[12] = 0x00000000000000aa  x[13] = 0x0000000000000000  x[14] = 0xf3f3f3f3f3000000  x[15] = 0x0000000000000000  
x[16] = 0x0000000196546640  x[17] = 0x0000000000000002  x[18] = 0x0000000000000000  x[19] = 0x000000016dcf2630  
x[20] = 0x0000000000050014  x[21] = 0x00007e8500680011  x[22] = 0x0000007000020000  x[23] = 0x00007e8500000000  
x[24] = 0x0000000021926358  x[25] = 0x0000000000000000  x[26] = 0x000000016dcf25e0  x[27] = 0x0000007000020000  
x[28] = 0x000000016dcf25c0     fp = 0x000000016dcf25b0     lr = 0x00000001053d48ac     sp = 0x000000016dcf2570  
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: BUS (test_api-7d0c30222dff9c05:arm64+0x1010e5b30) in void v8::internal::CallIterateBody::apply<v8::internal::FixedArray::BodyDescriptor, false, v8::internal::IterateAndScavengePromotedObjectsVisitor>(v8::internal::Tagged<v8::internal::Map>, v8::internal::Tagged<v8::internal::HeapObject>, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)+0xa4
Thread T21 created by T1 here:
    #0 0x110646d88 in pthread_create+0x58 (librustc-nightly_rt.asan.dylib:arm64+0x46d88)
    #1 0x104661788 in v8::base::Thread::Start()+0x184 (test_api-7d0c30222dff9c05:arm64+0x10035d788)
    #2 0x104676c5c in v8::platform::DefaultWorkerThreadsTaskRunner::DefaultWorkerThreadsTaskRunner(unsigned int, double (*)(), v8::base::Thread::Priority)+0x274 (test_api-7d0c30222dff9c05:arm64+0x100372c5c)
    #3 0x1046737c0 in v8::platform::DefaultPlatform::EnsureBackgroundTaskRunnerInitialized()+0x114 (test_api-7d0c30222dff9c05:arm64+0x10036f7c0)
    #4 0x1046735e0 in v8::platform::DefaultPlatform::DefaultPlatform(int, v8::platform::IdleTaskSupport, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>, v8::platform::PriorityMode)+0x1c0 (test_api-7d0c30222dff9c05:arm64+0x10036f5e0)
    #5 0x1045f071c in UnprotectedDefaultPlatform::UnprotectedDefaultPlatform(int, v8::platform::IdleTaskSupport, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>, v8::platform::PriorityMode)+0x1cc (test_api-7d0c30222dff9c05:arm64+0x1002ec71c)
    #6 0x1045f0070 in UnprotectedDefaultPlatform::UnprotectedDefaultPlatform(int, v8::platform::IdleTaskSupport, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>, v8::platform::PriorityMode)+0x1a0 (test_api-7d0c30222dff9c05:arm64+0x1002ec070)
    #7 0x1045ef920 in std::Cr::__unique_if<UnprotectedDefaultPlatform>::__unique_single std::Cr::make_unique[abi:v160000]<UnprotectedDefaultPlatform, int&, v8::platform::IdleTaskSupport&, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>, v8::platform::PriorityMode&>(int&, v8::platform::IdleTaskSupport&, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>&&, v8::platform::PriorityMode&)+0x280 (test_api-7d0c30222dff9c05:arm64+0x1002eb920)
    #8 0x1045cafc4 in UnprotectedDefaultPlatform::New(int, v8::platform::IdleTaskSupport, v8::platform::InProcessStackDumping, std::Cr::unique_ptr<v8::TracingController, std::Cr::default_delete<v8::TracingController>>, v8::platform::PriorityMode)+0x644 (test_api-7d0c30222dff9c05:arm64+0x1002c6fc4)
    #9 0x1045ca8a4 in v8__Platform__NewUnprotectedDefaultPlatform+0x180 (test_api-7d0c30222dff9c05:arm64+0x1002c68a4)
    #10 0x10447bca0 in std::sync::once::Once::call_once::_$u7b$$u7b$closure$u7d$$u7d$::h313ab984d0ca34bd once.rs:149
    #11 0x10a2d2e30 in std::sys::sync::once::queue::Once::call::hf8ba36cdd497ac09+0x25c (test_api-7d0c30222dff9c05:arm64+0x105fcee30)
    #12 0x10447bfac in test_api::setup::parallel_test::h0b5e0b1207c72589 test_api.rs:36
    #13 0x1043f6cd8 in core::ops::function::FnOnce::call_once::hefd9bf2d82dbaf9c function.rs:250
    #14 0x1044d9ea8 in test::__rust_begin_short_backtrace::ha9521ff2de856d43+0x6c (test_api-7d0c30222dff9c05:arm64+0x1001d5ea8)
    #15 0x1044f5d90 in test::types::RunnableTest::run::h2494993ec4987e7c+0xdc (test_api-7d0c30222dff9c05:arm64+0x1001f1d90)
    #16 0x1045043d0 in std::panicking::try::do_call::hc6e1b68e810a63f5+0xc0 (test_api-7d0c30222dff9c05:arm64+0x1002003d0)
    #17 0x10450a20c in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x10020620c)
    #18 0x1045037b8 in std::panicking::try::h580fcb96ee12c25b+0xd0 (test_api-7d0c30222dff9c05:arm64+0x1001ff7b8)
    #19 0x1044da3bc in test::run_test_in_process::h59eb1300ffced283+0x314 (test_api-7d0c30222dff9c05:arm64+0x1001d63bc)
    #20 0x10453a384 in std::sys_common::backtrace::__rust_begin_short_backtrace::h6aa7b42b28770e08+0x2b4 (test_api-7d0c30222dff9c05:arm64+0x100236384)
    #21 0x10450a20c in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x10020620c)
    #22 0x104503b20 in std::panicking::try::h838572bf1cfd06a3+0xac (test_api-7d0c30222dff9c05:arm64+0x1001ffb20)
    #23 0x1044dd338 in core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h57eed3fb0aa7b091+0x16c (test_api-7d0c30222dff9c05:arm64+0x1001d9338)
    #24 0x10a23c328 in _$LT$alloc..boxed..Box$LT$F$C$A$GT$$u20$as$u20$core..ops..function..FnOnce$LT$Args$GT$$GT$::call_once::h6fa687b9afbead50+0x68 (test_api-7d0c30222dff9c05:arm64+0x105f38328)
    #25 0x10a2086a0 in std::sys::pal::unix::thread::Thread::new::thread_start::ha269b5915b029379+0xb4 (test_api-7d0c30222dff9c05:arm64+0x105f046a0)
    #26 0x11064bec8 in asan_thread_start(void*)+0x48 (librustc-nightly_rt.asan.dylib:arm64+0x4bec8)
    #27 0x196517fa4 in _pthread_start+0x90 (libsystem_pthread.dylib:arm64+0x6fa4)
    #28 0x6040000196512d9c  (<unknown module>)

Thread T1 created by T0 here:
    #0 0x110646d88 in pthread_create+0x58 (librustc-nightly_rt.asan.dylib:arm64+0x46d88)
    #1 0x10a2081fc in std::sys::pal::unix::thread::Thread::new::hf7308806234300b9+0x24c (test_api-7d0c30222dff9c05:arm64+0x105f041fc)
    #2 0x1044dc978 in std::thread::Builder::spawn_unchecked_::h51fd6400171670f4+0x548 (test_api-7d0c30222dff9c05:arm64+0x1001d8978)
    #3 0x1044dd05c in std::thread::Builder::spawn::hc6223dad15744429+0xb4 (test_api-7d0c30222dff9c05:arm64+0x1001d905c)
    #4 0x1044d9234 in test::run_test::h4f731115b9edea4d+0x844 (test_api-7d0c30222dff9c05:arm64+0x1001d5234)
    #5 0x1044d6454 in test::run_tests::hbb934641be6aea20+0x1a4c (test_api-7d0c30222dff9c05:arm64+0x1001d2454)
    #6 0x1044e4ed0 in test::console::run_tests_console::h92f19551e7517720+0x7a4 (test_api-7d0c30222dff9c05:arm64+0x1001e0ed0)
    #7 0x1044d2b7c in test::test_main::he2f08c0ac031415f+0x3dc (test_api-7d0c30222dff9c05:arm64+0x1001ceb7c)
    #8 0x1044d36b4 in test::test_main_static::h443b12ef7ce0f57c+0x144 (test_api-7d0c30222dff9c05:arm64+0x1001cf6b4)
    #9 0x10446fea0 in std::sys_common::backtrace::__rust_begin_short_backtrace::hfde20c67d23e9134 backtrace.rs:155
    #10 0x10430814c in std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::he2f20da7dcf9e70a rt.rs:159
    #11 0x10a260ef8 in std::panicking::try::do_call::h702dca479a1bf178+0x5c (test_api-7d0c30222dff9c05:arm64+0x105f5cef8)
    #12 0x10a262510 in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x105f5e510)
    #13 0x10a260698 in std::panicking::try::h56a08353bad3e7fc+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f5c698)
    #14 0x10a261090 in std::panicking::try::do_call::hf4b2a25d8e9bc9af+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f5d090)
    #15 0x10a262510 in __rust_try+0x1c (test_api-7d0c30222dff9c05:arm64+0x105f5e510)
    #16 0x10a2603d8 in std::panicking::try::h034545844065da2f+0xbc (test_api-7d0c30222dff9c05:arm64+0x105f5c3d8)
    #17 0x10a202fcc in std::rt::lang_start_internal::hf6e9b4f1acde8908+0xf4 (test_api-7d0c30222dff9c05:arm64+0x105efefcc)
    #18 0x1043080c4 in std::rt::lang_start::he1592764f08a41fe rt.rs:158
    #19 0x10446e2ac in main+0x1c (test_api-7d0c30222dff9c05:arm64+0x10016a2ac)
    #20 0x1961bff24  (<unknown module>)
    #21 0xec367ffffffffffc  (<unknown module>)

==92568==ABORTING
error: test failed, to rerun pass `--test test_api`