Cedric Blancher
2013-06-12 17:03:53 UTC
David, it is possible that ksh93 has similar issues? I noticed that
even in ast-ksh.20130611 ksh93's job handling does not make use of the
siginfo data provided with the CHLD signal and polls the child process
list instead.
Ced
---------- Forwarded message ----------
From: Chet Ramey <chet.ramey at case.edu>
Date: 24 May 2013 16:00
Subject: Re: deadlock in waitchld()
To: Roman Rakus <rrakus at redhat.com>
Cc: bug-bash at gnu.org, chet.ramey at case.edu
fixed. The problem is in the trap handling code, not wait_for(). The trap
problem ends up corrupting the jobs data structure, which is why wait_for
misbehaves.
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU chet at case.edu http://cnswww.cns.cwru.edu/~chet/
even in ast-ksh.20130611 ksh93's job handling does not make use of the
siginfo data provided with the CHLD signal and polls the child process
list instead.
Ced
---------- Forwarded message ----------
From: Chet Ramey <chet.ramey at case.edu>
Date: 24 May 2013 16:00
Subject: Re: deadlock in waitchld()
To: Roman Rakus <rrakus at redhat.com>
Cc: bug-bash at gnu.org, chet.ramey at case.edu
The race is in do-while loop in wait_for(). At the start of wait_for() we
are blocking SIGCHLD, however echo process ends during the loop and we
don't register it (don't handle SIGCHLD, which is sent).
Looking at the code, there is MUST_UNBLOCK_CHLD. May it make any harm to
enable it by default?
I spent a lot of time looking at this yesterday, and I have it pretty muchare blocking SIGCHLD, however echo process ends during the loop and we
don't register it (don't handle SIGCHLD, which is sent).
Looking at the code, there is MUST_UNBLOCK_CHLD. May it make any harm to
enable it by default?
fixed. The problem is in the trap handling code, not wait_for(). The trap
problem ends up corrupting the jobs data structure, which is why wait_for
misbehaves.
Chet
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU chet at case.edu http://cnswww.cns.cwru.edu/~chet/
--
Cedric Blancher <cedric.blancher at googlemail.com>
Institute Pasteur
Cedric Blancher <cedric.blancher at googlemail.com>
Institute Pasteur