On 2021-08-02 11:17:38 +0200, Vincent Lefevre wrote: > I think that this could mean 3 things: > * The SIGCHLD handler was not active (but I don't see why the use > of strace would have change the behavior). Since there are several > "signal(SIGCHLD, ...)" calls, a closer look may be needed, though. > * An issue with the compiler optimizations (same remark)? > * An issue with the new Linux kernel (possibly related to VMs)? > The recent upgrade of the kernel and strace could indeed have > an effect on that.
If I recompile with -O0, the issue disappears. The issue still occurs when I compile with -O1. So, it could be a bug in the GCC optimizations, though this needs to be confirmed; it could also be incorrect code in screen.c, which is affected by the compiler optimizations (e.g. a missing volatile somewhere else). I still don't know why the issue disappears after a "strace" on the SCREEN process. Perhaps optimizations yield a race condition. -- Vincent Lefèvre <vinc...@vinc17.net> - Web: <https://www.vinc17.net/> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)