X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvcl%2Fvppcom.c;fp=src%2Fvcl%2Fvppcom.c;h=e929fa1b6e30c26abc5e339c96ebe14c4f9bbf46;hb=ae036d3b7d911788a9ead084bf89dd72c763d9f1;hp=4b2f1f15fbef970677f3c7ddbbe216a68020e3fc;hpb=604c627dc31473ead17d5011fb43d6609af2b752;p=vpp.git diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c index 4b2f1f15fbe..e929fa1b6e3 100644 --- a/src/vcl/vppcom.c +++ b/src/vcl/vppcom.c @@ -2052,13 +2052,13 @@ vppcom_session_read_internal (uint32_t session_handle, void *buf, int n, if (svm_fifo_is_empty_cons (rx_fifo)) { + if (is_ct) + svm_fifo_unset_event (s->rx_fifo); + svm_fifo_unset_event (rx_fifo); if (is_nonblocking) { if (vcl_session_is_closing (s)) return vcl_session_closing_error (s); - if (is_ct) - svm_fifo_unset_event (s->rx_fifo); - svm_fifo_unset_event (rx_fifo); return VPPCOM_EWOULDBLOCK; } while (svm_fifo_is_empty_cons (rx_fifo)) @@ -2164,11 +2164,13 @@ vppcom_session_read_segments (uint32_t session_handle, if (svm_fifo_is_empty_cons (rx_fifo)) { + if (is_ct) + svm_fifo_unset_event (s->rx_fifo); + svm_fifo_unset_event (rx_fifo); if (is_nonblocking) { - if (is_ct) - svm_fifo_unset_event (s->rx_fifo); - svm_fifo_unset_event (rx_fifo); + if (vcl_session_is_closing (s)) + return vcl_session_closing_error (s); return VPPCOM_EWOULDBLOCK; } while (svm_fifo_is_empty_cons (rx_fifo))