From cc5c51e7f0732067f105d13c6d355fcab5965c2f Mon Sep 17 00:00:00 2001 From: Jakub Zelenka Date: Sat, 11 May 2019 20:07:39 +0100 Subject: [PATCH] Fix bug #77934 (php-fpm kill -USR2 not working) --- NEWS | 1 + sapi/fpm/fpm/fpm_signals.c | 2 +- .../bug77934-reload-process-control.phpt | 44 +++++++++++++++++++ 3 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 sapi/fpm/tests/bug77934-reload-process-control.phpt diff --git a/NEWS b/NEWS index f774605940..c89f43a24b 100644 --- a/NEWS +++ b/NEWS @@ -3,6 +3,7 @@ PHP NEWS ?? ??? 2019, PHP 7.2.19 - FPM: + . Fixed bug #77934 (php-fpm kill -USR2 not working). (Jakub Zelenka) . Fixed bug #77921 (static.php.net doesn't work anymore). (Peter Kokot) - GD: diff --git a/sapi/fpm/fpm/fpm_signals.c b/sapi/fpm/fpm/fpm_signals.c index 0df119be38..4c9f9664f6 100644 --- a/sapi/fpm/fpm/fpm_signals.c +++ b/sapi/fpm/fpm/fpm_signals.c @@ -143,7 +143,7 @@ static void sig_soft_quit(int signo) /* {{{ */ int saved_errno = errno; /* closing fastcgi listening socket will force fcgi_accept() exit immediately */ - close(0); + close(fpm_globals.listening_socket); if (0 > socket(AF_UNIX, SOCK_STREAM, 0)) { zlog(ZLOG_WARNING, "failed to create a new socket"); } diff --git a/sapi/fpm/tests/bug77934-reload-process-control.phpt b/sapi/fpm/tests/bug77934-reload-process-control.phpt new file mode 100644 index 0000000000..d223403f99 --- /dev/null +++ b/sapi/fpm/tests/bug77934-reload-process-control.phpt @@ -0,0 +1,44 @@ +--TEST-- +FPM: bug77934 - php-fpm kill -USR2 not working +--SKIPIF-- + +--FILE-- +start(); +$tester->expectLogStartNotices(); +$tester->signal('USR2'); +$tester->expectLogNotice('Reloading in progress ...'); +$tester->expectLogNotice('reloading: .*'); +$tester->expectLogNotice('using inherited socket fd=\d+, "127.0.0.1:\d+"'); +$tester->expectLogStartNotices(); +$tester->terminate(); +$tester->expectLogTerminatingNotices(); +$tester->close(); + +?> +Done +--EXPECT-- +Done +--CLEAN-- + -- 2.40.0