FD.io VPP  v20.01-48-g3e0dafb74
Vector Packet Processing
node.c File Reference
+ Include dependency graph for node.c:

Go to the source code of this file.

Macros

#define STACK_ALIGN   (clib_mem_get_page_size())
 

Functions

vlib_node_tvlib_get_node_by_name (vlib_main_t *vm, u8 *name)
 
static void node_set_elog_name (vlib_main_t *vm, uword node_index)
 
static void vlib_worker_thread_node_rename (u32 node_index)
 
void vlib_node_rename (vlib_main_t *vm, u32 node_index, char *fmt,...)
 
static void vlib_node_runtime_update (vlib_main_t *vm, u32 node_index, u32 next_index)
 
uword vlib_node_get_next (vlib_main_t *vm, uword node_index, uword next_node_index)
 
uword vlib_node_add_next_with_slot (vlib_main_t *vm, uword node_index, uword next_node_index, uword slot)
 
uword vlib_node_add_named_next_with_slot (vlib_main_t *vm, uword node, char *name, uword slot)
 
static void node_elog_init (vlib_main_t *vm, uword ni)
 
static void register_node (vlib_main_t *vm, vlib_node_registration_t *r)
 
u32 vlib_register_node (vlib_main_t *vm, vlib_node_registration_t *r)
 
static uword null_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
void vlib_register_all_static_nodes (vlib_main_t *vm)
 
void vlib_node_get_nodes (vlib_main_t *vm, u32 max_threads, int include_stats, int barrier_sync, vlib_node_t ****node_dupsp, vlib_main_t ***stat_vmsp)
 Get list of nodes. More...
 
clib_error_tvlib_node_main_init (vlib_main_t *vm)
 
u32 vlib_process_create (vlib_main_t *vm, char *name, vlib_node_function_t *f, u32 log2_n_stack_bytes)
 Create a vlib process. More...
 

Macro Definition Documentation

◆ STACK_ALIGN

#define STACK_ALIGN   (clib_mem_get_page_size())

Definition at line 315 of file node.c.

Function Documentation

◆ node_elog_init()

static void node_elog_init ( vlib_main_t vm,
uword  ni 
)
static

Definition at line 297 of file node.c.

+ Here is the call graph for this function:

◆ node_set_elog_name()

static void node_set_elog_name ( vlib_main_t vm,
uword  node_index 
)
static

Definition at line 59 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ null_node_fn()

static uword null_node_fn ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 
)
static

Definition at line 535 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ register_node()

static void register_node ( vlib_main_t vm,
vlib_node_registration_t r 
)
static

Definition at line 321 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_get_node_by_name()

vlib_node_t* vlib_get_node_by_name ( vlib_main_t vm,
u8 name 
)

Definition at line 45 of file node.c.

+ Here is the call graph for this function:

◆ vlib_node_add_named_next_with_slot()

uword vlib_node_add_named_next_with_slot ( vlib_main_t vm,
uword  node,
char *  name,
uword  slot 
)

Definition at line 270 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_node_add_next_with_slot()

uword vlib_node_add_next_with_slot ( vlib_main_t vm,
uword  node_index,
uword  next_node_index,
uword  slot 
)

Definition at line 199 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_node_get_next()

uword vlib_node_get_next ( vlib_main_t vm,
uword  node_index,
uword  next_node_index 
)

Definition at line 178 of file node.c.

+ Here is the caller graph for this function:

◆ vlib_node_get_nodes()

void vlib_node_get_nodes ( vlib_main_t vm,
u32  max_threads,
int  include_stats,
int  barrier_sync,
vlib_node_t ****  node_dupsp,
vlib_main_t ***  stat_vmsp 
)

Get list of nodes.

Definition at line 577 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_node_main_init()

clib_error_t* vlib_node_main_init ( vlib_main_t vm)

Definition at line 639 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_node_rename()

void vlib_node_rename ( vlib_main_t vm,
u32  node_index,
char *  fmt,
  ... 
)

Definition at line 102 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_node_runtime_update()

static void vlib_node_runtime_update ( vlib_main_t vm,
u32  node_index,
u32  next_index 
)
static

Definition at line 122 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_process_create()

u32 vlib_process_create ( vlib_main_t vm,
char *  name,
vlib_node_function_t f,
u32  log2_n_stack_bytes 
)

Create a vlib process.

Parameters
vm&vlib_global_main
fthe process node function
log2_n_stack_bytessize of the process stack, defaults to 16K
Returns
newly-create node index
Warning
call only on the main thread. Barrier sync required

Definition at line 769 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_register_all_static_nodes()

void vlib_register_all_static_nodes ( vlib_main_t vm)

Definition at line 548 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_register_node()

u32 vlib_register_node ( vlib_main_t vm,
vlib_node_registration_t r 
)

Definition at line 528 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vlib_worker_thread_node_rename()

static void vlib_worker_thread_node_rename ( u32  node_index)
static

Definition at line 76 of file node.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: