From: Amaury Denoyelle Date: Thu, 16 May 2024 15:37:46 +0000 (+0200) Subject: BUG/MINOR: rhttp: fix task_wakeup state X-Git-Tag: v3.0-dev13~44 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=808daa7cfb46019fff0e0bf4580985568f145c17;p=thirdparty%2Fhaproxy.git BUG/MINOR: rhttp: fix task_wakeup state TASK_WOKEN_ANY was incorrectly used as argument to task_wakeup() for rhttp preconnect task. This value is used as a flag. Replace it by proper individual values. This is labelled as a bug but it has no known impact. This should be backported up to 2.9. --- diff --git a/src/connection.c b/src/connection.c index 97378632c3..0570474175 100644 --- a/src/connection.c +++ b/src/connection.c @@ -134,7 +134,7 @@ fail: /* If connection is interrupted without CO_FL_ERROR, receiver task won't free it. */ BUG_ON(!(conn->flags & CO_FL_ERROR)); - task_wakeup(l->rx.rhttp.task, TASK_WOKEN_ANY); + task_wakeup(l->rx.rhttp.task, TASK_WOKEN_RES); } return -1; } else @@ -2796,7 +2796,7 @@ int conn_reverse(struct connection *conn) conn->target = &l->obj_type; conn->flags |= CO_FL_ACT_REVERSING; - task_wakeup(l->rx.rhttp.task, TASK_WOKEN_ANY); + task_wakeup(l->rx.rhttp.task, TASK_WOKEN_RES); } /* Invert source and destination addresses if already set. */ diff --git a/src/proto_rhttp.c b/src/proto_rhttp.c index 55f10ec3a8..736351375f 100644 --- a/src/proto_rhttp.c +++ b/src/proto_rhttp.c @@ -387,7 +387,7 @@ void rhttp_enable_listener(struct listener *l) l->rx.rhttp.state = LI_PRECONN_ST_INIT; } - task_wakeup(l->rx.rhttp.task, TASK_WOKEN_ANY); + task_wakeup(l->rx.rhttp.task, TASK_WOKEN_INIT); } void rhttp_disable_listener(struct listener *l)