[issue11185] test_wait4 error on AIX
Charles-Francois Natali
report at bugs.python.org
Sun Mar 6 11:57:11 CET 2011
Charles-Francois Natali <neologix at free.fr> added the comment:
If test_wait3 and test_fork1 pass, then yes, it's probably an issue with AIX's wait4.
See http://fixunix.com/aix/84872-sigchld-recursion.html:
"""
Replace the wait4() call with a waitpid() call...
....like this:
for(n=0;waitpid(-1, &status, WNOHANG) > 0; n++) ;
Or, compile the existing code with the BSD library:
cc -o demo demo.c -D_BSD -lbsd
Both will work...
The current problem is that child process is not "seen" by the wait4()
call,
so that when "signal" is rearmed, it immediately goes (recursively)
into the
child_handler() function.
"""
So it seems that under AIX, posix_wait4 should be compiled with -D_BSD -lbsd.
Could you try this ?
If this doesn't do the trick, then avoiding passing WNOHANG could be the second option.
----------
nosy: +neologix
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue11185>
_______________________________________
More information about the Python-bugs-list
mailing list