session: use msg queue for events
[vpp.git] / src / vnet / session-apps / echo_client.h
index 344e438..db5ba16 100644 (file)
@@ -30,6 +30,7 @@
 
 typedef struct
 {
+  CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
   app_session_t data;
   u64 bytes_to_send;
   u64 bytes_sent;
@@ -37,7 +38,7 @@ typedef struct
   u64 bytes_received;
   u64 vpp_session_handle;
   u8 thread_index;
-} session_t;
+} eclient_session_t;
 
 typedef struct
 {
@@ -45,7 +46,7 @@ typedef struct
    * Application setup parameters
    */
   svm_queue_t *vl_input_queue;         /**< vpe input queue */
-  svm_queue_t **vpp_event_queue;
+  svm_msg_q_t **vpp_event_queue;
 
   u32 cli_node_index;                  /**< cli process node index */
   u32 my_client_index;                 /**< loopback API client handle */
@@ -64,10 +65,12 @@ typedef struct
   u32 private_segment_size;            /**< size of private fifo segs */
   u32 tls_engine;                      /**< TLS engine mbedtls/openssl */
   u8 is_dgram;
+  u32 no_copy;                         /**< Don't memcpy data to tx fifo */
+
   /*
    * Test state variables
    */
-  session_t *sessions;                 /**< Session pool, shared */
+  eclient_session_t *sessions;         /**< Session pool, shared */
   clib_spinlock_t sessions_lock;
   u8 **rx_buf;                         /**< intermediate rx buffers */
   u8 *connect_test_data;               /**< Pre-computed test data */