Details
-
User Story
-
Resolution: Done
-
P1: Critical
-
None
-
None
-
-
890ddd254087da9a6008e9fe5639ffd3a35f1b8b (qt/qtbase/wip/cmake)
Description
Both me and liaqi are sometimes experiencing hangs while building. Apparently it happened in the Coin test runs as well.
It seems to be automoc hanging.
Attaching a process sample from Activity Monitor.
Call graph: 2931 Thread_1040072 DispatchQueue_1: com.apple.main-thread (serial) + 2931 start (in libdyld.dylib) + 1 [0x7fff5d19fed9] + 2931 main (in cmake) + 375 [0x109350497] cmakemain.cxx:199 + 2931 do_command(int, char const* const*) (in cmake) + 1240 [0x109353768] cmakemain.cxx:116 + 2931 cmcmd::ExecuteCMakeCommand(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) (in cmake) + 47450 [0x10937294a] cmcmd.cxx:1027 + 2931 cmQtAutoGenerator::Run(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) (in cmake) + 2898 [0x109a761a2] cmQtAutoGenerator.cxx:706 + 2931 cmQtAutoGeneratorMocUic::Process() (in cmake) + 61 [0x109b0836d] cmQtAutoGeneratorMocUic.cxx:1513 + 2931 uv_run (in cmake) + 207 [0x10a48e6df] core.c:374 + 2931 uv__io_poll (in cmake) + 1995 [0x10a4a993b] kqueue.c:214 + 2931 kevent (in libsystem_kernel.dylib) + 10 [0x7fff5d2df716] 2931 Thread_1040114 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 + 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040117 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 143 [0x109af33bf] cmQtAutoGeneratorMocUic.cxx:1094 + 2931 cmQtAutoGeneratorMocUic::JobMocT::Process(cmQtAutoGeneratorMocUic::WorkerT&) (in cmake) + 4575 [0x109ae78df] cmQtAutoGeneratorMocUic.cxx:698 + 2931 cmQtAutoGeneratorMocUic::JobMocT::GenerateMoc(cmQtAutoGeneratorMocUic::WorkerT&) (in cmake) + 4831 [0x109aee3ff] cmQtAutoGeneratorMocUic.cxx:856 + 2931 cmQtAutoGeneratorMocUic::WorkerT::RunProcess(cmQtAutoGen::GenT, cmQtAutoGenerator::ProcessResultT&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) (in cmake) + 2739 [0x109ae6623] cmQtAutoGeneratorMocUic.cxx:1083 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040120 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 + 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040122 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 143 [0x109af33bf] cmQtAutoGeneratorMocUic.cxx:1094 + 2931 cmQtAutoGeneratorMocUic::JobMocT::Process(cmQtAutoGeneratorMocUic::WorkerT&) (in cmake) + 4575 [0x109ae78df] cmQtAutoGeneratorMocUic.cxx:698 + 2931 cmQtAutoGeneratorMocUic::JobMocT::GenerateMoc(cmQtAutoGeneratorMocUic::WorkerT&) (in cmake) + 4831 [0x109aee3ff] cmQtAutoGeneratorMocUic.cxx:856 + 2931 cmQtAutoGeneratorMocUic::WorkerT::RunProcess(cmQtAutoGen::GenT, cmQtAutoGenerator::ProcessResultT&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) (in cmake) + 2739 [0x109ae6623] cmQtAutoGeneratorMocUic.cxx:1083 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040123 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 + 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040124 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 + 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040127 + 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] + 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] + 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] + 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 + 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 + 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 + 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] + 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] + 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] 2931 Thread_1040128 2931 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] 2931 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] 2931 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] 2931 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 2931 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 2931 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 2931 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] 2931 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] 2931 __psynch_cvwait (in libsystem_kernel.dylib) + 10 [0x7fff5d2dc7de] Total number in stack (recursive counted multiple, when >=5): 8 __psynch_cvwait (in libsystem_kernel.dylib) + 0 [0x7fff5d2dc7d4] 8 _pthread_body (in libsystem_pthread.dylib) + 126 [0x7fff5d393305] 8 _pthread_cond_wait (in libsystem_pthread.dylib) + 724 [0x7fff5d396593] 8 _pthread_start (in libsystem_pthread.dylib) + 70 [0x7fff5d39626f] 8 std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) (in libc++.1.dylib) + 18 [0x7fff5a874bda] 8 thread_start (in libsystem_pthread.dylib) + 13 [0x7fff5d392415] 8 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (cmQtAutoGeneratorMocUic::WorkerT::*)(), cmQtAutoGeneratorMocUic::WorkerT*> >(void*) (in cmake) + 661 [0x109b2def5] type_traits:4369 6 cmQtAutoGeneratorMocUic::WorkerSwapJob(std::__1::unique_ptr<cmQtAutoGeneratorMocUic::JobT, std::__1::default_delete<cmQtAutoGeneratorMocUic::JobT> >&) (in cmake) + 822 [0x109af3db6] cmQtAutoGeneratorMocUic.cxx:1797 6 cmQtAutoGeneratorMocUic::WorkerT::Loop() (in cmake) + 53 [0x109af3365] cmQtAutoGeneratorMocUic.cxx:1092 Sort by top of stack, same collapsed (when >= 5): __psynch_cvwait (in libsystem_kernel.dylib) 23448 kevent (in libsystem_kernel.dylib) 2931
Attachments
For Gerrit Dashboard: QTBUG-74636 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
256773,2 | Fix AUTOMOC and friends to run only once the tools are built | wip/cmake | qt/qtbase | Status: MERGED | +2 | 0 |