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)

Reply via email to