From: Florin Coras Date: Sat, 30 Sep 2023 19:56:13 +0000 (-0700) Subject: vcl: allow reads after transport cleanup X-Git-Tag: v26.02-rc0~272 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=12771c35b4bea2ab37ac2e20659c07918b7f574f;p=vpp.git vcl: allow reads after transport cleanup Type: improvement Signed-off-by: Florin Coras Change-Id: Ia464aae418999cc09bc38fe9fadd3b164f4e0067 --- diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c index 35af7f73046..0671a37ea29 100644 --- a/src/vcl/vppcom.c +++ b/src/vcl/vppcom.c @@ -2119,7 +2119,9 @@ vppcom_session_read_internal (uint32_t session_handle, void *buf, int n, VDBG (0, "session %u[0x%llx] is not open! state 0x%x (%s)", s->session_index, s->vpp_handle, s->session_state, vcl_session_state_str (s->session_state)); - return vcl_session_closed_error (s); + rx_fifo = vcl_session_is_ct (s) ? s->ct_rx_fifo : s->rx_fifo; + if (svm_fifo_is_empty_cons (rx_fifo)) + return vcl_session_closed_error (s); } if (PREDICT_FALSE (s->flags & VCL_SESSION_F_RD_SHUTDOWN))