On Tue, Jan 9, 2024 at 1:34 PM Дмитрий Чудинов <dmitri.chudi...@gmail.com> wrote: > > had the same issue as Ross in all Ubuntu versions. > Quick fix for me was to add #undef HAVE_FORK in efl_check.h.
https://libcheck.github.io/check/doc/check_html/check_4.html#No-Fork-Mode > > вт, 9 янв. 2024 г. в 14:24, Carsten Haitzler <ras...@rasterman.com>: > > > On Mon, 8 Jan 2024 23:20:16 -0800 Ross Vandegrift <r...@kallisti.us> said: > > > > > On Mon, Jan 08, 2024 at 11:08:55PM +0000, Carsten Haitzler wrote: > > > > try run the above eina test suite and pipe to something that makes it > > > > timeout... and strace it - or gdb attach to it and find out where it's > > > > sitting? it should complete in < 1 sec so launch and immediately try > > and > > > > strace and/or gdb attach and find out where it's at - if it is still > > around. > > > > > > > > is somehow a forked child not coming back that it expects to... ? > > > > > > Yea, it's something like this. I found out it hangs for exactly 60s, > > which > > > lead me to timeout.c. I also learned strace -f triggers the issue. > > > CK_FORK=no fixes the hang as well. > > > > > > I added debug printfs to efl_check.h and timeout.c - when eina_suite > > tries to > > > kill timeout, it kills the wrong pid: > > > > > > $ ./build/src/tests/eina/eina_suite fp > > > Running suite(s): eina_init_module > > > 100%: Checks: 0, Failures: 0, Errors: 0 > > > -------------------- efl_check forked timeout: 296393 <----- > > > -------------------- efl_check forked timeout: 0 > > > Running suite(s): Eina > > > -------------------- timeout.c my pid: 296396 <----- > > > Max delta(multiplication): 0.007627 (0.061668%) > > > Max delta(division): 0.000173 (0.740211%) > > > 100%: Checks: 4, Failures: 0, Errors: 0 > > > -------------------- efl_check killing timeout child: 296393 > > > -------------------- efl_check cleared timeout_pid: 0 > > > > > > So eina_suite.c gets the wrong pid from fork(). In a simple standalone > > > program, fork() behaves as expected. > > > > > > I'm going to compare the arch & debian check packages for any suspicious > > > differences. And maybe walk through more carefully with gdb. But I'm > > out of > > > time tonight. > > > > > > Ross > > > > some more testing. i ran: > > > > ./src/tests/eina/eina_suite | wc -l > > > > and... guess what... eina_suite has gone but wc is still there waiting. > > this is far deeper... is there some cgroup, selinux or something thing > > getting in the way? is it a kernel bug? a glibc bug? i just have to say.. i > > the efl test process is gone - and wc is still waiting the problem is > > somewhere in the plumbing between these IMHO... at least that's what my > > brain is thinking right now. pstree: > > > > │ │ │ │ > > ├─terminology─┬─zsh───wc > > │ │ │ │ │ > > └─3*[{terminology}] > > > > :( > > > > > > -- > > ------------- Codito, ergo sum - "I code, therefore I am" -------------- > > Carsten Haitzler - ras...@rasterman.com > > > > > > > > _______________________________________________ > > enlightenment-devel mailing list > > enlightenment-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel