Improvements to tcp rx path and debugging
[vpp.git] / src / vnet / tcp / builtin_server.c
index 8e958ac..3416678 100644 (file)
@@ -99,8 +99,7 @@ builtin_session_disconnect_callback (stream_session_t * s)
 void
 builtin_session_reset_callback (stream_session_t * s)
 {
-  clib_warning ("called.. ");
-
+  clib_warning ("Reset session %U", format_stream_session, s, 2);
   stream_session_cleanup (s);
 }
 
@@ -214,19 +213,15 @@ builtin_server_rx_callback (stream_session_t * s)
          q = bsm->vpp_queue[thread_index];
          if (PREDICT_FALSE (q->cursize == q->maxsize))
            clib_warning ("out of event queue space");
-         else if (unix_shared_memory_queue_add (q, (u8 *) & evt, 0     /* don't wait for mutex */
-                  ))
+         else if (unix_shared_memory_queue_add (q, (u8 *) & evt, 0))
            clib_warning ("failed to enqueue self-tap");
 
-         bsm->rx_retries[thread_index][s->session_index]++;
          if (bsm->rx_retries[thread_index][s->session_index] == 500000)
            {
              clib_warning ("session stuck: %U", format_stream_session, s, 2);
            }
-       }
-      else
-       {
-         bsm->rx_retries[thread_index][s->session_index] = 0;
+         if (bsm->rx_retries[thread_index][s->session_index] < 500001)
+           bsm->rx_retries[thread_index][s->session_index]++;
        }
 
       return 0;
@@ -308,7 +303,7 @@ create_api_loopback (vlib_main_t * vm)
 
   /* Wait for reply */
   bsm->node_index = vlib_get_current_process (vm)->node_runtime.node_index;
-  vlib_process_wait_for_event_or_clock (vm, 1.0);
+  vlib_process_wait_for_event_or_clock (vm, 2.0);
   event_type = vlib_process_get_events (vm, &event_data);
   switch (event_type)
     {