diff options
author | Florin Coras <fcoras@cisco.com> | 2018-01-31 06:52:17 -0800 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2018-02-05 21:45:28 +0000 |
commit | a332c46a51f9b4e13963340dfee1318e7513c124 (patch) | |
tree | fde1056972c5b164987bd15ce0530a3d48d1bbd7 /src/vnet/session/application.h | |
parent | e71eb5922a293eca36dbd323970741daaca3c5c7 (diff) |
session: segment manager refactor
- use valloc as a 'central' segment baseva manager
- use per segment manager segment pools and use rwlocks to guard them
- add session test that exercises segment creation
- embed segment manager properties into application since they're shared
- fix rw locks
Change-Id: I761164c147275d9e8a926f1eda395e090d231f9a
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src/vnet/session/application.h')
-rw-r--r-- | src/vnet/session/application.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/vnet/session/application.h b/src/vnet/session/application.h index afe738f199c..36ae6fce8b2 100644 --- a/src/vnet/session/application.h +++ b/src/vnet/session/application.h @@ -97,7 +97,7 @@ typedef struct _application u8 first_segment_manager_in_use; /** Segment manager properties. Shared by all segment managers */ - u32 sm_properties; + segment_manager_properties_t sm_properties; u16 proxied_transports; } application_t; @@ -132,7 +132,7 @@ segment_manager_t *application_get_connect_segment_manager (application_t * int application_is_proxy (application_t * app); int application_is_builtin (application_t * app); int application_is_builtin_proxy (application_t * app); -int application_add_segment_notify (u32 app_index, u32 fifo_segment_index); +int application_add_segment_notify (u32 app_index, ssvm_private_t * fs); u32 application_session_table (application_t * app, u8 fib_proto); u32 application_local_session_table (application_t * app); u8 *application_name_from_index (u32 app_index); @@ -146,6 +146,11 @@ stream_session_t *application_first_listener (application_t * app, void application_setup_proxy (application_t * app); void application_remove_proxy (application_t * app); +segment_manager_properties_t *application_get_segment_manager_properties (u32 + app_index); +segment_manager_properties_t + * application_segment_manager_properties (application_t * app); + #endif /* SRC_VNET_SESSION_APPLICATION_H_ */ /* |