aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwanghanlin <wanghanlin@corp.netease.com>2019-12-16 19:14:39 +0800
committerFlorin Coras <florin.coras@gmail.com>2019-12-17 07:49:40 +0000
commit96453fd2417ebd1d69354a7fb692976129cea80e (patch)
treeec417e7692833025f1a5335b43f5d187d1cf6fc6
parentecb9d18c59f65c87430d6a7c53ee1e525d75d430 (diff)
vcl: RX event may lost when accept session repeatedly
Type: fix Some applications may call accept repeatedly to process all connect request until get EAGIAIN error. Subsequent call may get RX event of previous accepted session, then should process it rather than just discard it. Signed-off-by: wanghanlin <wanghanlin@corp.netease.com> Change-Id: Ice53442de66289a62591b79a9cc31e883e894c23
-rw-r--r--src/vcl/vppcom.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vcl/vppcom.c b/src/vcl/vppcom.c
index d9a227d4e0a..a854011fa0d 100644
--- a/src/vcl/vppcom.c
+++ b/src/vcl/vppcom.c
@@ -1470,7 +1470,7 @@ vppcom_session_accept (uint32_t listen_session_handle, vppcom_endpt_t * ep,
e = svm_msg_q_msg_data (wrk->app_event_queue, &msg);
if (e->event_type != SESSION_CTRL_EVT_ACCEPTED)
{
- VDBG (0, "discarded event: %u", e->event_type);
+ vcl_handle_mq_event (wrk, e);
svm_msg_q_free_msg (wrk->app_event_queue, &msg);
continue;
}