X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvcl%2Fvcl_private.h;h=d1a40b933a7c5cc803b22ddf2d6fb86de53604ba;hb=aa27eb95b7ee3bb69b62166d5e418e973cbbdcfa;hp=ba9094cd96b19547030b1d8a607329eb2f7a5a64;hpb=ab2f6dbf9f7b7164a9810f4c80c8abf8463e42ad;p=vpp.git diff --git a/src/vcl/vcl_private.h b/src/vcl/vcl_private.h index ba9094cd96b..d1a40b933a7 100644 --- a/src/vcl/vcl_private.h +++ b/src/vcl/vcl_private.h @@ -18,7 +18,6 @@ #include #include -#include #include #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 _ @@ -153,6 +153,7 @@ typedef struct /* Socket configuration state */ u8 is_vep; u8 is_vep_session; + u8 has_rx_evt; u32 attr; u32 wait_cont_idx; vppcom_epoll_t vep; @@ -257,6 +258,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 +290,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 +302,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;