From 927063b8920c275ad6599b4cafc7b8742f5cc626 Mon Sep 17 00:00:00 2001 From: Tim Duesterhus Date: Fri, 21 Feb 2020 13:02:03 +0100 Subject: [PATCH] CLEANUP: conn: Do not pass a pointer to likely Move the `!` inside the likely and negate it to unlikely. The previous version should not have caused issues, because it is converted to a boolean / integral value before being passed to __builtin_expect(), but it's certainly unusual. [wt: this was not a bug but purposely written like this to improve code generation on older compilers but not needed anymore as described here: https://www.mail-archive.com/haproxy@formilux.org/msg36392.html ] --- include/proto/connection.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/proto/connection.h b/include/proto/connection.h index c7caeea2b..fb264d2b5 100644 --- a/include/proto/connection.h +++ b/include/proto/connection.h @@ -400,12 +400,12 @@ static inline struct conn_stream *cs_new(struct connection *conn) struct conn_stream *cs; cs = pool_alloc(pool_head_connstream); - if (!likely(cs)) + if (unlikely(!cs)) return NULL; if (!conn) { conn = conn_new(); - if (!likely(conn)) { + if (unlikely(!conn)) { cs_free(cs); return NULL; }