#50265 [Opn->Fbk]: endless loop waiting for child process
ID: 50265
Updated by: jani@php.net
Reported By: mg at fork dot pl
-Status: Open
+Status: Feedback
Bug Type: CGI related
Operating System: Linux
PHP Version: 5.2.11
New Comment:
1 child is in endless loop or what? Try attach to such process with gdb
and see what the backtrace says.
Previous Comments:
------------------------------------------------------------------------
[2009-11-24 03:02:09] mg at fork dot pl
I rebuilt php and started up, but as I don't know what exactly causes
the problem we'll have to wait until it happens...
I started it like
% PHP_FCGI_CHILDREN=2 PHP_FCGI_MAX_REQUESTS=100 php-cgi -e -b
127.0.0.1:30004 -c /.../php.ini
Process group 2720
Forking, 0 running
Forking, 1 running
Wait for kids, pid 2720
Forking, 1 running
Wait for kids, pid 2720
Forking, 1 running
Wait for kids, pid 2720
Forking, 1 running
Wait for kids, pid 2720
pstree -uap shows
`-php-cgi,2720 -e -b 127.0.0.1:30004 -c /.../php.ini
|-php-cgi,13821 -e -b 127.0.0.1:30004 -c /.../php.ini
`-php-cgi,13822 -e -b 127.0.0.1:30004 -c /.../php.ini
------------------------------------------------------------------------
[2009-11-23 10:16:14] jani@php.net
Try enable fastcgi debugging with DEBUG_FASTCGI when you compile PHP
and provide the log of the failing run.
------------------------------------------------------------------------
[2009-11-23 02:24:21] mg at fork dot pl
Description:
------------
fast-cgi php process loops forever during wait()ing for child process
while there's no more child processes.
Actual result:
--------------
in cgi_main.c there's loop:
1631 while (1) {
1632 if (wait(&status) >= 0) {
1633 running--;
1634 break;
1635 } else if (exit_signal) {
1636 break;
1637 }
1638 }
wait returns -1 as strace shows:
wait4(-1, 0xbff2d2a4, 0, NULL) = -1 ECHILD (No child
processes)
and loop never breaks (as apparently exit_signal is set to 0).
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=50265&edit=1
Thread (8 messages)