session: re-set tx fifo event if out of buffers 46/23346/4
authorFlorin Coras <fcoras@cisco.com>
Fri, 8 Nov 2019 23:32:05 +0000 (15:32 -0800)
committerJohn Lo <loj@cisco.com>
Sun, 10 Nov 2019 03:33:31 +0000 (03:33 +0000)
Type: fix

Change-Id: I7416e827fbc5c63d082273656441c81dd6246d8a
Signed-off-by: Florin Coras <fcoras@cisco.com>
src/vnet/session/session_node.c

index 865c8b7..e1114b7 100644 (file)
@@ -903,7 +903,8 @@ session_tx_fifo_read_and_snd_i (session_worker_t * wrk,
     {
       if (n_bufs)
        vlib_buffer_free (vm, wrk->tx_buffers, n_bufs);
-      session_evt_add_head_old (wrk, elt);
+      if (svm_fifo_set_event (ctx->s->tx_fifo))
+       session_evt_add_head_old (wrk, elt);
       vlib_node_increment_counter (wrk->vm, node->node_index,
                                   SESSION_QUEUE_ERROR_NO_BUFFER, 1);
       return SESSION_TX_NO_BUFFERS;