From 1d0b7069f25326c59b8993104a37d5177d95f335 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Tue, 30 Oct 2018 11:01:08 +0100 Subject: [PATCH] BUG/MAJOR: stream-int: don't call si_cs_recv() in stream_int_chk_rcv_conn() This one causes some events to be lost. It has already been tested in an experimental branch but was not merged until being certain it was needed. Fred figured that requesting /?k=1&s=447392 from httpterm through haproxy-master was enough to stall the transfer. No backport is needed, this only affects 1.9-dev5. --- src/stream_interface.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/stream_interface.c b/src/stream_interface.c index dbc9d167a4..b719c746db 100644 --- a/src/stream_interface.c +++ b/src/stream_interface.c @@ -964,13 +964,9 @@ static void stream_int_chk_rcv_conn(struct stream_interface *si) si->flags |= SI_FL_WAIT_ROOM; } else { - struct conn_stream *cs = objt_cs(si->end); /* (re)start reading */ si->flags &= ~SI_FL_WAIT_ROOM; - if (cs) { - si_cs_recv(cs); - tasklet_wakeup(si->wait_event.task); - } + tasklet_wakeup(si->wait_event.task); } } -- 2.47.3