aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/session
diff options
context:
space:
mode:
authorhanlin <hanlin_wang@163.com>2020-07-13 11:09:15 +0800
committerFlorin Coras <florin.coras@gmail.com>2020-08-12 01:57:18 +0000
commita3a489691d7f2813702fae2d915120743b860d62 (patch)
tree23a22a25ebe051be37244c45fc3a0732cc296e0d /src/vnet/session
parent40c07ce7a78af69f7354222d4663a65cd5572049 (diff)
vcl: support multi-threads with session migration
Currently, mutlti-threads only support one dispatch thread and multiple worker threads, eventually only dispatch thread is a vcl worker and can interact with epoll. This patch will register all threads as vcl worker, and then each thread can interact with epoll now. Moreover, session migration also supported, such as socket created in thread A and used (bind, connect and etc.) in thread B. Type: feature Signed-off-by: hanlin <hanlin_wang@163.com> Change-Id: Iab0b43a33466968c1423d7d20faf1460c8589d91
Diffstat (limited to 'src/vnet/session')
-rw-r--r--src/vnet/session/application_interface.h2
-rw-r--r--src/vnet/session/session_types.h1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/vnet/session/application_interface.h b/src/vnet/session/application_interface.h
index d1897934d61..cddc031ec0d 100644
--- a/src/vnet/session/application_interface.h
+++ b/src/vnet/session/application_interface.h
@@ -531,7 +531,7 @@ typedef struct session_app_wrk_rpc_msg_
{
u32 client_index; /**< app client index */
u32 wrk_index; /**< dst worker index */
- u8 data[252]; /**< rpc data */
+ u8 data[64]; /**< rpc data */
} __clib_packed session_app_wrk_rpc_msg_t;
typedef struct app_session_event_
diff --git a/src/vnet/session/session_types.h b/src/vnet/session/session_types.h
index b3a7eb2bb60..8cea29a8642 100644
--- a/src/vnet/session/session_types.h
+++ b/src/vnet/session/session_types.h
@@ -384,6 +384,7 @@ typedef enum
_(APP_DEL_SEGMENT, app_del_segment) \
_(MIGRATED, migrated) \
_(CLEANUP, cleanup) \
+ _(APP_WRK_RPC, app_wrk_rpc) \
/* Deprecated and will be removed. Use types above */
#define FIFO_EVENT_APP_RX SESSION_IO_EVT_RX