FD.io VPP
v16.09
Vector Packet Processing
|
Go to the source code of this file.
Data Structures | |
struct | vlib_thread_registration_ |
struct | vlib_frame_queue_elt_t |
struct | vlib_worker_thread_t |
struct | vlib_frame_queue_t |
struct | vlib_efd_t |
struct | vlib_thread_main_t |
Macros | |
#define | VLIB_MAX_CPUS 256 |
#define | VLIB_CPU_MASK (VLIB_MAX_CPUS - 1) /* 0x3f, max */ |
#define | VLIB_OFFSET_MASK (~VLIB_CPU_MASK) |
#define | VLIB_LOG2_THREAD_STACK_SIZE (20) |
#define | VLIB_THREAD_STACK_SIZE (1<<VLIB_LOG2_THREAD_STACK_SIZE) |
#define | BARRIER_SYNC_DELAY (0.030000) |
#define | BARRIER_SYNC_TIMEOUT (600.1) |
#define | foreach_vlib_main(body) |
#define | VLIB_EFD_DISABLED 0 |
#define | VLIB_EFD_DISCARD_ENABLED (1 << 0) |
#define | VLIB_EFD_MONITOR_ENABLED (1 << 1) |
#define | VLIB_EFD_DEF_WORKER_HI_THRESH_PCT 90 |
#define | VLIB_REGISTER_THREAD(x, ...) |
Typedefs | |
typedef void( | vlib_thread_function_t) (void *arg) |
typedef struct vlib_thread_registration_ | vlib_thread_registration_t |
typedef struct vlib_efd_t | vlib_efd_t |
Variables | |
vlib_main_t ** | vlib_mains |
vlib_worker_thread_t * | vlib_worker_threads |
vlib_frame_queue_t ** | vlib_frame_queues |
vlib_thread_main_t | vlib_thread_main |
#define foreach_vlib_main | ( | body | ) |
#define VLIB_CPU_MASK (VLIB_MAX_CPUS - 1) /* 0x3f, max */ |
#define VLIB_OFFSET_MASK (~VLIB_CPU_MASK) |
#define VLIB_REGISTER_THREAD | ( | x, | |
... | |||
) |
#define VLIB_THREAD_STACK_SIZE (1<<VLIB_LOG2_THREAD_STACK_SIZE) |
typedef struct vlib_efd_t vlib_efd_t |
typedef struct vlib_thread_registration_ vlib_thread_registration_t |
enum vlib_fork_fixup_t |
u64 dispatch_node | ( | vlib_main_t * | vm, |
vlib_node_runtime_t * | node, | ||
vlib_node_type_t | type, | ||
vlib_node_state_t | dispatch_state, | ||
vlib_frame_t * | frame, | ||
u64 | last_time_stamp | ||
) |
u64 dispatch_pending_node | ( | vlib_main_t * | vm, |
vlib_pending_frame_t * | p, | ||
u64 | last_time_stamp | ||
) |
vlib_worker_thread_t* vlib_alloc_thread | ( | vlib_main_t * | vm | ) |
void vlib_create_worker_threads | ( | vlib_main_t * | vm, |
int | n, | ||
void(*)(void *) | thread_function | ||
) |
int vlib_frame_queue_dequeue | ( | int | thread_id, |
vlib_main_t * | vm, | ||
vlib_node_main_t * | nm | ||
) |
int vlib_frame_queue_enqueue | ( | vlib_main_t * | vm, |
u32 | node_runtime_index, | ||
u32 | frame_queue_index, | ||
vlib_frame_t * | frame, | ||
vlib_frame_queue_msg_type_t | type | ||
) |
void vlib_set_thread_name | ( | char * | name | ) |
|
inlinestatic |
clib_error_t* vlib_thread_init | ( | vlib_main_t * | vm | ) |
|
inlinestatic |
void vlib_worker_thread_barrier_release | ( | vlib_main_t * | vm | ) |
void vlib_worker_thread_barrier_sync | ( | vlib_main_t * | vm | ) |
void vlib_worker_thread_fork_fixup | ( | vlib_fork_fixup_t | which | ) |
void vlib_worker_thread_init | ( | vlib_worker_thread_t * | w | ) |
void vlib_worker_thread_node_runtime_update | ( | void | ) |
vlib_frame_queue_t** vlib_frame_queues |
vlib_main_t** vlib_mains |
vlib_thread_main_t vlib_thread_main |
vlib_worker_thread_t* vlib_worker_threads |