From a053512a7f48d74f5d69daa0f9918ecfcecc0122 Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Tue, 28 Nov 2023 21:50:21 +0100 Subject: [PATCH] BUG/MEDIUM: master/cli: Properly pin the master CLI on thread 1 / group 1 A previous fix was pushed for that (13fb7170be "BUG/MEDIUM: master/cli: Pin the master CLI on the first thread of the group 1" ). Unfortunately, instead of the master CLI, it is the sockpairs between the master and the workers that were pinned to the first thread of the group 1. So the crash is still there. So, again, to fix the bug the master CLI is now pinned on the first thread of the first group. patch should fix the issue #2259 and must be backported to 2.8. --- src/cli.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/cli.c b/src/cli.c index 98e261e08..efc55bc75 100644 --- a/src/cli.c +++ b/src/cli.c @@ -3229,6 +3229,9 @@ struct bind_conf *mworker_cli_proxy_new_listener(char *line) bind_conf->nice = -64; /* we want to boost priority for local stats */ bind_conf->options |= BC_O_UNLIMITED; /* don't make the peers subject to global limits */ + /* Pin master CLI on the first thread of the first group only */ + thread_set_pin_grp1(&bind_conf->thread_set, 1); + list_for_each_entry(l, &bind_conf->listeners, by_bind) { l->rx.flags |= RX_F_MWORKER; /* we are keeping this FD in the master */ global.maxsock++; /* for the listening socket */