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

Reply via email to