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 _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel