session: Fix out of order mq 43/23543/2
authorNathan Skrzypczak <nathan.skrzypczak@gmail.com>
Tue, 19 Nov 2019 15:48:58 +0000 (16:48 +0100)
committerFlorin Coras <florin.coras@gmail.com>
Tue, 19 Nov 2019 17:45:22 +0000 (17:45 +0000)
Type: fix

Change-Id: I522db62db50fc0fa46a6dd7cddd32e2f09b5e5a6
Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
src/vnet/session/session.c

index 0751739..06306a6 100644 (file)
@@ -36,7 +36,8 @@ session_send_evt_to_thread (void *data, void *args, u32 thread_index,
   mq = session_main_get_vpp_event_queue (thread_index);
   if (PREDICT_FALSE (svm_msg_q_lock (mq)))
     return -1;
-  if (PREDICT_FALSE (svm_msg_q_ring_is_full (mq, SESSION_MQ_IO_EVT_RING)))
+  if (PREDICT_FALSE (svm_msg_q_is_full (mq)
+                    || svm_msg_q_ring_is_full (mq, SESSION_MQ_IO_EVT_RING)))
     {
       svm_msg_q_unlock (mq);
       return -2;