[PATCH] D70447: [Support] ThreadPoolExecutor fixes for Windows/MinGW
Stella Stamenova via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 2 11:27:14 PDT 2021
stella.stamenova added subscribers: int3, stella.stamenova.
stella.stamenova added a comment.
Herald added a subscriber: dexonsmith.
@thakis @int3 I spent some more time trying to diagnose the recent issues with lld and macho and I am starting to think that the problem is the race condition that this change was meant to fix. I am not sure why this is no longer "fixed", but the callstack and intermittent failure on Windows in debug seem to match the issue:
2021-09-02T10:02:23.0425691Z # command stderr:
2021-09-02T10:02:23.0426059Z PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
2021-09-02T10:02:23.0426250Z
2021-09-02T10:02:23.0426749Z #0 0x00007ff7b76e2b50 std::_Iterator_base12::_Orphan_me_unlocked(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory:1202:0
2021-09-02T10:02:23.0427127Z
2021-09-02T10:02:23.0427617Z #1 0x00007ff7b76e2afa std::_Iterator_base12::_Orphan_me_locked(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory:1215:0
2021-09-02T10:02:23.0427973Z
2021-09-02T10:02:23.0428466Z #2 0x00007ff7b76e2c7f std::_Iterator_base12::_Orphan_me_v2(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory:1163:0
2021-09-02T10:02:23.0428826Z
2021-09-02T10:02:23.0429346Z #3 0x00007ff7b76e0484 std::_Iterator_base12::~_Iterator_base12(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory:1132:0
2021-09-02T10:02:23.0429687Z
2021-09-02T10:02:23.0430356Z #4 0x00007ff7b7fd6884 std::_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class lld::macho::LinkEditSection *>>>::~_Vector_const_iterator<class std::_Vector_val<struct std::_Simple_types<class lld::macho::LinkEditSection *>>>(void) (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0xb96884)
2021-09-02T10:02:23.0430896Z
2021-09-02T10:02:23.0431547Z #5 0x00007ff7b7fd68e4 std::_Vector_iterator<class std::_Vector_val<struct std::_Simple_types<class lld::macho::LinkEditSection *>>>::~_Vector_iterator<class std::_Vector_val<struct std::_Simple_types<class lld::macho::LinkEditSection *>>>(void) (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0xb968e4)
2021-09-02T10:02:23.0432069Z
2021-09-02T10:02:23.0432514Z #6 0x00007ff7b7fbc19b <lambda_c567cf7a7ebd717fdb2c0648998ac190>::~<lambda_c567cf7a7ebd717fdb2c0648998ac190> (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0xb7c19b)
2021-09-02T10:02:23.0432837Z
2021-09-02T10:02:23.0433372Z #7 0x00007ff7b7fc0c5b std::_Func_impl_no_alloc<<lambda_c567cf7a7ebd717fdb2c0648998ac190>,void>::~_Func_impl_no_alloc<<lambda_c567cf7a7ebd717fdb2c0648998ac190>,void> (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0xb80c5b)
2021-09-02T10:02:23.0433797Z
2021-09-02T10:02:23.0434285Z #8 0x00007ff7b7fc0c88 std::_Func_impl_no_alloc<<lambda_c567cf7a7ebd717fdb2c0648998ac190>,void>::`scalar deleting destructor' (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0xb80c88)
2021-09-02T10:02:23.0434602Z
2021-09-02T10:02:23.0435172Z #9 0x00007ff7b7fc0c1a std::_Func_impl_no_alloc<<lambda_c567cf7a7ebd717fdb2c0648998ac190>,void>::_Delete_this C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:937:0
2021-09-02T10:02:23.0435580Z
2021-09-02T10:02:23.0436062Z #10 0x00007ff7b76e33dc std::_Func_class<void>::_Tidy(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:1047:0
2021-09-02T10:02:23.0436411Z
2021-09-02T10:02:23.0436906Z #11 0x00007ff7b76dff84 std::_Func_class<void>::~_Func_class<void>(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:973:0
2021-09-02T10:02:23.0437251Z
2021-09-02T10:02:23.0437656Z #12 0x00007ff7b76e01b4 std::function<(void)>::~function<(void)>(void) (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0x2a01b4)
2021-09-02T10:02:23.0437895Z
2021-09-02T10:02:23.0438626Z #13 0x00007ff7bc4bfc57 <lambda_723fb941fa194635c9894a04ff313f20>::~<lambda_723fb941fa194635c9894a04ff313f20> (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0x507fc57)
2021-09-02T10:02:23.0438947Z
2021-09-02T10:02:23.0439491Z #14 0x00007ff7bc4bfeeb std::_Func_impl_no_alloc<<lambda_723fb941fa194635c9894a04ff313f20>,void>::~_Func_impl_no_alloc<<lambda_723fb941fa194635c9894a04ff313f20>,void> (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0x507feeb)
2021-09-02T10:02:23.0439895Z
2021-09-02T10:02:23.0440372Z #15 0x00007ff7bc4bff18 std::_Func_impl_no_alloc<<lambda_723fb941fa194635c9894a04ff313f20>,void>::`scalar deleting destructor' (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0x507ff18)
2021-09-02T10:02:23.0440692Z
2021-09-02T10:02:23.0441276Z #16 0x00007ff7bc4bfeaa std::_Func_impl_no_alloc<<lambda_723fb941fa194635c9894a04ff313f20>,void>::_Delete_this C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:937:0
2021-09-02T10:02:23.0441677Z
2021-09-02T10:02:23.0442156Z #17 0x00007ff7b76e33dc std::_Func_class<void>::_Tidy(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:1047:0
2021-09-02T10:02:23.0442511Z
2021-09-02T10:02:23.0443008Z #18 0x00007ff7b76dff84 std::_Func_class<void>::~_Func_class<void>(void) C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\functional:973:0
2021-09-02T10:02:23.0443354Z
2021-09-02T10:02:23.0443755Z #19 0x00007ff7b76e01b4 std::function<(void)>::~function<(void)>(void) (d:\a\_work\1\b\llvm\debug\bin\ld64.lld.exe+0x2a01b4)
2021-09-02T10:02:23.0443993Z
2021-09-02T10:02:23.0444469Z #20 0x00007ff7bc4bf6c5 llvm::parallel::detail::`anonymous namespace'::ThreadPoolExecutor::work D:\a\_work\1\s\llvm-project\llvm\lib\Support\Parallel.cpp:109:0
2021-09-02T10:02:23.0444779Z
2021-09-02T10:02:23.0445211Z #21 0x00007ff7bc4bf8c9 <lambda_c9242529638530c2607074b83d50e781>::operator() D:\a\_work\1\s\llvm-project\llvm\lib\Support\Parallel.cpp:52:0
2021-09-02T10:02:23.0445508Z
2021-09-02T10:02:23.0446030Z #22 0x00007ff7bc4c2bd4 std::invoke<<lambda_c9242529638530c2607074b83d50e781> > C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\type_traits:1586:0
2021-09-02T10:02:23.0446394Z
2021-09-02T10:02:23.0446941Z #23 0x00007ff7bc4c1a78 std::thread::_Invoke<std::tuple<<lambda_c9242529638530c2607074b83d50e781> >,0> C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\thread:56:0
2021-09-02T10:02:23.0447320Z
2021-09-02T10:02:23.0447640Z #24 0x00007ffa4e434c7c (C:\Windows\SYSTEM32\ucrtbased.dll+0x74c7c)
2021-09-02T10:02:23.0447794Z
2021-09-02T10:02:23.0448087Z #25 0x00007ffa610e7974 (C:\Windows\System32\KERNEL32.DLL+0x17974)
2021-09-02T10:02:23.0448290Z
2021-09-02T10:02:23.0448628Z #26 0x00007ffa61a2a2f1 (C:\Windows\SYSTEM32\ntdll.dll+0x5a2f1)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70447/new/
https://reviews.llvm.org/D70447
More information about the llvm-commits
mailing list