mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-12-06 10:11:00 +01:00
BUG/MINOR: mworker: wrong signals during startup
Since the new master-worker model in 3.1, signals are registered in step_init_3(). However, those signals were supposed to be registered only for the worker or the standalone mode. It would call the wrong callback in the master even during configuration parsing. The patch set the signals handler to NULL for the master so it does nothing until they really are registered. Must be backported as far as 3.1.
This commit is contained in:
parent
709cde6d08
commit
9bf01a0d29
@ -2452,11 +2452,17 @@ static void step_init_2(int argc, char** argv)
|
|||||||
*/
|
*/
|
||||||
static void step_init_3(void)
|
static void step_init_3(void)
|
||||||
{
|
{
|
||||||
|
if (master) {
|
||||||
signal_register_fct(SIGQUIT, dump, SIGQUIT);
|
signal_register_fct(SIGQUIT, NULL, 0);
|
||||||
signal_register_fct(SIGUSR1, sig_soft_stop, SIGUSR1);
|
signal_register_fct(SIGUSR1, NULL, 0);
|
||||||
signal_register_fct(SIGHUP, sig_dump_state, SIGHUP);
|
signal_register_fct(SIGHUP, NULL, 0);
|
||||||
signal_register_fct(SIGUSR2, NULL, 0);
|
signal_register_fct(SIGUSR2, NULL, 0);
|
||||||
|
} else {
|
||||||
|
signal_register_fct(SIGQUIT, dump, SIGQUIT);
|
||||||
|
signal_register_fct(SIGUSR1, sig_soft_stop, SIGUSR1);
|
||||||
|
signal_register_fct(SIGHUP, sig_dump_state, SIGHUP);
|
||||||
|
signal_register_fct(SIGUSR2, NULL, 0);
|
||||||
|
}
|
||||||
|
|
||||||
/* Always catch SIGPIPE even on platforms which define MSG_NOSIGNAL.
|
/* Always catch SIGPIPE even on platforms which define MSG_NOSIGNAL.
|
||||||
* Some recent FreeBSD setups report broken pipes, and MSG_NOSIGNAL
|
* Some recent FreeBSD setups report broken pipes, and MSG_NOSIGNAL
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user