vcl: remove vcl_event
[vpp.git] / src / vcl / vcl_private.h
index ba9094c..5975f15 100644 (file)
@@ -18,7 +18,6 @@
 
 #include <vnet/session/application_interface.h>
 #include <vcl/vppcom.h>
-#include <vcl/vcl_event.h>
 #include <vcl/vcl_debug.h>
 
 #if (CLIB_DEBUG > 0)
@@ -139,6 +138,7 @@ do {                                            \
 
 typedef struct
 {
+  CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
 #define _(type, name) type name;
   foreach_app_session_field
 #undef _
@@ -257,6 +257,12 @@ typedef struct vcl_worker_
 
   /** Vector acting as buffer for mq messages */
   svm_msg_q_msg_t *mq_msg_vector;
+
+  /** Vector of unhandled events */
+  session_event_t *unhandled_evts_vector;
+
+  /** Used also as a thread stop key buffer */
+  pthread_t thread_id;
 } vcl_worker_t;
 
 typedef struct vppcom_main_t_
@@ -283,6 +289,9 @@ typedef struct vppcom_main_t_
   /** Workers */
   vcl_worker_t *workers;
 
+  /** Lock to protect worker registrations */
+  clib_spinlock_t workers_lock;
+
 #ifdef VCL_ELOG
   /* VPP Event-logger */
   elog_main_t elog_main;
@@ -292,13 +301,6 @@ typedef struct vppcom_main_t_
   /* VNET_API_ERROR_FOO -> "Foo" hash table */
   uword *error_string_by_error_number;
 
-  /* Obsolete */
-
-  /* Event thread */
-  vce_event_thread_t event_thread;
-
-  /* IO thread */
-  vppcom_session_io_thread_t session_io_thread;
 } vppcom_main_t;
 
 extern vppcom_main_t *vcm;