Hi, On Wed, May 13, 2020 at 11:46:50AM +0200, Willy Tarreau wrote: > On Mon, May 11, 2020 at 03:20:03PM +0200, William Dauchy wrote: > > Since commit d4604adeaa8c ("MAJOR: threads/fd: Make fd stuffs > > thread-safe"), we init pollers per thread using a helper. It was still > > correct for mono-thread mode until commit cd7879adc2c4 ("BUG/MEDIUM: > > threads: Run the poll loop on the main thread too"). We now use a deinit > > helper for all threads, making those free uneeded. > > > > Only poll and select are affected by this very minor issue. > > > > it could be backported from v1.8 to v2.1. > > > > Fixes: cd7879adc2c4 ("BUG/MEDIUM: threads: Run the poll loop on the main > > thread too") > > Signed-off-by: William Dauchy <w.dau...@criteo.com> > > Applied, thank you William. >
This one breaks clang builds because it removes the fail_revt label but it is still declared as a local label, and clang errors on it. Please find a patch attached. Jérôme
>From 7549f1648f4e32ded652eabc07cd1dd7f0e7f38f Mon Sep 17 00:00:00 2001 From: Jerome Magnin <jmag...@haproxy.com> Date: Wed, 13 May 2020 15:11:02 +0200 Subject: [PATCH] BUILD: select: only declare existing local labels to appease clang Commit 42a50bd19 ("BUG/MINOR: pollers: remove uneeded free in global init") removed the 'fail_revt' label from the _do_init() function in src/ev_select.c but left the local label declaration, which makes clang unhappy and unable to build. This should be backported where 42a50bd19 is backported. --- src/ev_select.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ev_select.c b/src/ev_select.c index d02669f0f..8bf712585 100644 --- a/src/ev_select.c +++ b/src/ev_select.c @@ -253,7 +253,7 @@ static void deinit_select_per_thread() */ static int _do_init(struct poller *p) { - __label__ fail_swevt, fail_srevt, fail_revt; + __label__ fail_swevt, fail_srevt; int fd_set_bytes; p->private = NULL; -- 2.26.2