diff options
author | Florin Coras <fcoras@cisco.com> | 2019-01-02 19:31:22 -0800 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2019-01-05 21:53:16 +0000 |
commit | 30e79c2e388a98160a3660f4f03103890c9b1b7c (patch) | |
tree | 0b108f43d95e28304924cc6e1d43900b3046c8de /src/vnet/session/application.h | |
parent | 3c1cf2c1716f436e5da4a106dd2b9a3df5d3a4a3 (diff) |
vcl/session: add api for changing session app worker
In case of multi process apps, after forking, the parent may decide to
close part or all of the sessions it shares with the child. Because the
sessions have fifos allocated in the parent's segment manager, they must
be moved to the child's segment manager.
Change-Id: I85b4c8c8545005724023ee14043647719cef61dd
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/session/application.h')
-rw-r--r-- | src/vnet/session/application.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/vnet/session/application.h b/src/vnet/session/application.h index e33f2ff797e..1d2064df62e 100644 --- a/src/vnet/session/application.h +++ b/src/vnet/session/application.h @@ -225,12 +225,15 @@ int app_worker_alloc_and_init (application_t * app, app_worker_t ** wrk); app_worker_t *app_worker_get (u32 wrk_index); app_worker_t *app_worker_get_if_valid (u32 wrk_index); application_t *app_worker_get_app (u32 wrk_index); +int app_worker_own_session (app_worker_t * app_wrk, stream_session_t * s); void app_worker_free (app_worker_t * app_wrk); int app_worker_open_session (app_worker_t * app, session_endpoint_t * tep, u32 api_context); segment_manager_t *app_worker_get_listen_segment_manager (app_worker_t *, stream_session_t *); segment_manager_t *app_worker_get_connect_segment_manager (app_worker_t *); +segment_manager_t + * app_worker_get_or_alloc_connect_segment_manager (app_worker_t *); int app_worker_alloc_connects_segment_manager (app_worker_t * app); int app_worker_add_segment_notify (u32 app_or_wrk, u64 segment_handle); u32 app_worker_n_listeners (app_worker_t * app); |