From d282e2c1991bf5ae1ce82b22def4a8685c8611bd Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Sat, 16 Aug 2025 08:23:49 -0400 Subject: [PATCH] vcl: fix read ready for cl udp On fork, cl listeners are not ready, i.e., listen and fifos are pending, so read ready crashes. Type: fix Change-Id: I965bbd7f72706831767615564a88f5dbad38b11e Signed-off-by: Florin Coras --- src/vcl/vcl_private.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/vcl/vcl_private.c b/src/vcl/vcl_private.c index dcd827f2a61..714ecdadb66 100644 --- a/src/vcl/vcl_private.c +++ b/src/vcl/vcl_private.c @@ -403,6 +403,10 @@ vcl_session_read_ready (vcl_session_t * s) session_dgram_pre_hdr_t ph; u32 max_deq; + /* CL listener that's not yet ready */ + if (vcl_session_is_cl (s) && !s->rx_fifo) + return 0; + max_deq = svm_fifo_max_dequeue_cons (s->rx_fifo); if (max_deq <= SESSION_CONN_HDR_LEN) return 0; @@ -442,6 +446,10 @@ vcl_session_read_ready2 (vcl_session_t *s) if (s->is_dgram) { + /* CL listener that's not yet ready */ + if (vcl_session_is_cl (s) && !s->rx_fifo) + return 0; + if (svm_fifo_max_dequeue_cons (s->rx_fifo) <= SESSION_CONN_HDR_LEN) return 0; -- 2.16.6