From f43c015a210ac578977de34f536bcbcb3d8fa1ab Mon Sep 17 00:00:00 2001 From: Debian PHP Maintainers Date: Sat, 2 May 2015 10:26:56 +0200 Subject: [PATCH] php-fpm-do-reload-on-SIGHUP Gbp-Pq: Name 0022-php-fpm-do-reload-on-SIGHUP.patch --- sapi/fpm/fpm/fpm_events.c | 5 +++++ sapi/fpm/fpm/fpm_signals.c | 3 +++ sapi/fpm/php-fpm.8.in | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/sapi/fpm/fpm/fpm_events.c b/sapi/fpm/fpm/fpm_events.c index 4cc56067..de60589a 100644 --- a/sapi/fpm/fpm/fpm_events.c +++ b/sapi/fpm/fpm/fpm_events.c @@ -132,6 +132,11 @@ static void fpm_got_signal(struct fpm_event_s *ev, short which, void *arg) /* {{ zlog(ZLOG_NOTICE, "Reloading in progress ..."); fpm_pctl(FPM_PCTL_STATE_RELOADING, FPM_PCTL_ACTION_SET); break; + case 'H' : /* SIGHUP */ + zlog(ZLOG_DEBUG, "received SIGHUP"); + zlog(ZLOG_NOTICE, "Reloading in progress ..."); + fpm_pctl(FPM_PCTL_STATE_RELOADING, FPM_PCTL_ACTION_SET); + break; } if (fpm_globals.is_child) { diff --git a/sapi/fpm/fpm/fpm_signals.c b/sapi/fpm/fpm/fpm_signals.c index 6aad4403..845385e0 100644 --- a/sapi/fpm/fpm/fpm_signals.c +++ b/sapi/fpm/fpm/fpm_signals.c @@ -160,6 +160,7 @@ static void sig_handler(int signo) /* {{{ */ [SIGINT] = 'I', [SIGUSR1] = '1', [SIGUSR2] = '2', + [SIGHUP] = 'H', [SIGQUIT] = 'Q', [SIGCHLD] = 'C' }; @@ -209,6 +210,7 @@ int fpm_signals_init_main(void) 0 > sigaction(SIGINT, &act, 0) || 0 > sigaction(SIGUSR1, &act, 0) || 0 > sigaction(SIGUSR2, &act, 0) || + 0 > sigaction(SIGHUP, &act, 0) || 0 > sigaction(SIGCHLD, &act, 0) || 0 > sigaction(SIGQUIT, &act, 0)) { @@ -242,6 +244,7 @@ int fpm_signals_init_child(void) 0 > sigaction(SIGINT, &act_dfl, 0) || 0 > sigaction(SIGUSR1, &act_dfl, 0) || 0 > sigaction(SIGUSR2, &act_dfl, 0) || + 0 > sigaction(SIGHUP, &act_dfl, 0) || 0 > sigaction(SIGCHLD, &act_dfl, 0) || 0 > sigaction(SIGQUIT, &act, 0)) { diff --git a/sapi/fpm/php-fpm.8.in b/sapi/fpm/php-fpm.8.in index 0001a03a..15873df2 100644 --- a/sapi/fpm/php-fpm.8.in +++ b/sapi/fpm/php-fpm.8.in @@ -152,7 +152,7 @@ Once started, php-fpm then responds to several POSIX signals: .TP .B SIGUSR1 \fPre-open log file .TP -.B SIGUSR2 \fPgraceful reload of all workers + reload of fpm conf/binary +.B SIGUSR2,SIGHUP \fPgraceful reload of all workers + reload of fpm conf/binary .RE .PD 1 .P -- 2.30.2