summaryrefslogtreecommitdiffstats
path: root/src/vnet/session/session.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2022-03-21 10:38:01 -0700
committerFlorin Coras <fcoras@cisco.com>2022-03-21 12:53:15 -0700
commite09bd48e354d8701091437cafda6b29163ed2d58 (patch)
treeaa4aa9bb79b36c11dc70ae3fa3bd8092ad417b7b /src/vnet/session/session.h
parent38659d8f2c588500f4e844195e0c59ab1cf6107f (diff)
session: linked list of events to be handled by main
Minimize amount of rpcs from first worker to main Type: improvement Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I3794ff028a17d18b7bff69ede2b62e1e2d45ae77
Diffstat (limited to 'src/vnet/session/session.h')
-rw-r--r--src/vnet/session/session.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vnet/session/session.h b/src/vnet/session/session.h
index 0ea621aa385..71f6d35d43b 100644
--- a/src/vnet/session/session.h
+++ b/src/vnet/session/session.h
@@ -155,6 +155,9 @@ typedef struct session_worker_
/** Main thread loops in poll mode without a connect */
u32 no_connect_loops;
+ /** List head for first worker evts pending handling on main */
+ clib_llist_index_t evts_pending_main;
+
#if SESSION_DEBUG
/** last event poll time by thread */
clib_time_type_t last_event_poll;
@@ -786,6 +789,7 @@ void session_wrk_enable_adaptive_mode (session_worker_t *wrk);
fifo_segment_t *session_main_get_wrk_mqs_segment (void);
void session_node_enable_disable (u8 is_en);
clib_error_t *vnet_session_enable_disable (vlib_main_t * vm, u8 is_en);
+void session_wrk_handle_evts_main_rpc ();
session_t *session_alloc_for_connection (transport_connection_t * tc);
session_t *session_alloc_for_half_open (transport_connection_t *tc);