FD.io VPP
v17.10-9-gd594711
Vector Packet Processing
|
Go to the source code of this file.
Variables | |
u32 | segment_name_counter = 0 |
Counter used to build segment names. More... | |
segment_manager_t * | segment_managers = 0 |
Pool of segment managers. More... | |
u32 * | private_segment_indices |
Process private segment index. More... | |
u32 | default_fifo_size = 1 << 16 |
Default fifo and segment size. More... | |
u32 | default_segment_size = 1 << 20 |
static vlib_cli_command_t | segment_manager_show_command |
(constructor) VLIB_CLI_COMMAND (segment_manager_show_command) More... | |
unix_shared_memory_queue_t* segment_manager_alloc_queue | ( | segment_manager_t * | sm, |
u32 | queue_size | ||
) |
Allocates shm queue in the first segment.
Definition at line 497 of file segment_manager.c.
int segment_manager_alloc_session_fifos | ( | segment_manager_t * | sm, |
svm_fifo_t ** | server_rx_fifo, | ||
svm_fifo_t ** | server_tx_fifo, | ||
u32 * | fifo_segment_index | ||
) |
Definition at line 338 of file segment_manager.c.
|
static |
void segment_manager_dealloc_fifos | ( | u32 | svm_segment_index, |
svm_fifo_t * | rx_fifo, | ||
svm_fifo_t * | tx_fifo | ||
) |
Definition at line 441 of file segment_manager.c.
void segment_manager_dealloc_queue | ( | segment_manager_t * | sm, |
unix_shared_memory_queue_t * | q | ||
) |
Frees shm queue allocated in the first segment.
Definition at line 522 of file segment_manager.c.
void segment_manager_del | ( | segment_manager_t * | sm | ) |
Removes segment manager.
Since the fifos allocated in the segment keep backpointers to the sessions prior to removing the segment, we call session disconnect. This subsequently propagates into transport.
Definition at line 298 of file segment_manager.c.
|
static |
Definition at line 221 of file segment_manager.c.
void segment_manager_del_sessions | ( | segment_manager_t * | sm | ) |
Initiate disconnects for all sessions 'owned' by a segment manager.
Definition at line 244 of file segment_manager.c.
Definition at line 42 of file segment_manager.c.
u8 segment_manager_has_fifos | ( | segment_manager_t * | sm | ) |
Definition at line 197 of file segment_manager.c.
int segment_manager_init | ( | segment_manager_t * | sm, |
segment_manager_properties_t * | properties, | ||
u32 | first_seg_size | ||
) |
Initializes segment manager based on options provided.
Returns error if svm segment allocation fails.
Definition at line 174 of file segment_manager.c.
void segment_manager_init_del | ( | segment_manager_t * | sm | ) |
Definition at line 326 of file segment_manager.c.
segment_manager_t* segment_manager_new | ( | ) |
|
static |
int session_manager_add_first_segment | ( | segment_manager_t * | sm, |
u32 | segment_size | ||
) |
Definition at line 149 of file segment_manager.c.
int session_manager_add_segment | ( | segment_manager_t * | sm | ) |
Definition at line 131 of file segment_manager.c.
|
inlinestatic |
Definition at line 51 of file segment_manager.c.
u32 default_fifo_size = 1 << 16 |
u32 default_segment_size = 1 << 20 |
Definition at line 39 of file segment_manager.c.
u32* private_segment_indices |
Process private segment index.
Definition at line 33 of file segment_manager.c.
|
static |
(constructor) VLIB_CLI_COMMAND (segment_manager_show_command)
Definition at line 622 of file segment_manager.c.
segment_manager_t* segment_managers = 0 |
Pool of segment managers.
Definition at line 28 of file segment_manager.c.
u32 segment_name_counter = 0 |
Counter used to build segment names.
Definition at line 23 of file segment_manager.c.