FD.io VPP  v18.04-17-g3a0d853
Vector Packet Processing
bier_fmask.c File Reference
+ Include dependency graph for bier_fmask.c:

Go to the source code of this file.

Functions

static index_t bier_fmask_get_index (const bier_fmask_t *bfm)
 
static void bier_fmask_bits_init (bier_fmask_bits_t *bits, bier_hdr_len_id_t hlid)
 
static void bier_fmask_stack (bier_fmask_t *bfm)
 
void bier_fmask_contribute_forwarding (index_t bfmi, dpo_id_t *dpo)
 
u32 bier_fmask_child_add (fib_node_index_t bfmi, fib_node_type_t child_type, fib_node_index_t child_index)
 
void bier_fmask_child_remove (fib_node_index_t bfmi, u32 sibling_index)
 
static void bier_fmask_init (bier_fmask_t *bfm, const bier_fmask_id_t *fmid, const fib_route_path_t *rpaths)
 
static void bier_fmask_destroy (bier_fmask_t *bfm)
 
void bier_fmask_unlock (index_t bfmi)
 
void bier_fmask_lock (index_t bfmi)
 
index_t bier_fmask_create_and_lock (const bier_fmask_id_t *fmid, const fib_route_path_t *rpaths)
 
void bier_fmask_link (index_t bfmi, bier_bp_t bp)
 
void bier_fmask_unlink (index_t bfmi, bier_bp_t bp)
 
u8format_bier_fmask (u8 *s, va_list *ap)
 
static fib_node_tbier_fmask_get_node (fib_node_index_t index)
 
static bier_fmask_tbier_fmask_get_from_node (fib_node_t *node)
 
static void bier_fmask_last_lock_gone (fib_node_t *node)
 
static fib_node_back_walk_rc_t bier_fmask_back_walk_notify (fib_node_t *node, fib_node_back_walk_ctx_t *ctx)
 
static void bier_fmask_dpo_lock (dpo_id_t *dpo)
 
static void bier_fmask_dpo_unlock (dpo_id_t *dpo)
 
static void bier_fmask_dpo_mem_show (void)
 
clib_error_tbier_fmask_module_init (vlib_main_t *vm)
 
static clib_error_tbier_fmask_show (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 

Variables

static const char *const bier_fmask_attr_names [] = BIER_FMASK_ATTR_NAMES
 
bier_fmask_tbier_fmask_pool
 
static const fib_node_vft_t bier_fmask_vft
 
static const dpo_vft_t bier_fmask_dpo_vft
 
static const char *const bier_fmask_mpls_nodes []
 
static const char *const *const bier_fmask_nodes [DPO_PROTO_NUM]
 
static vlib_cli_command_t show_bier_fmask
 (constructor) VLIB_CLI_COMMAND (show_bier_fmask) More...
 

Function Documentation

static fib_node_back_walk_rc_t bier_fmask_back_walk_notify ( fib_node_t node,
fib_node_back_walk_ctx_t ctx 
)
static

Definition at line 405 of file bier_fmask.c.

+ Here is the call graph for this function:

static void bier_fmask_bits_init ( bier_fmask_bits_t bits,
bier_hdr_len_id_t  hlid 
)
static

Definition at line 47 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 bier_fmask_child_add ( fib_node_index_t  bfmi,
fib_node_type_t  child_type,
fib_node_index_t  child_index 
)

Definition at line 136 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void bier_fmask_child_remove ( fib_node_index_t  bfmi,
u32  sibling_index 
)

Definition at line 147 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void bier_fmask_contribute_forwarding ( index_t  bfmi,
dpo_id_t dpo 
)

Definition at line 115 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

index_t bier_fmask_create_and_lock ( const bier_fmask_id_t fmid,
const fib_route_path_t rpaths 
)

Definition at line 267 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void bier_fmask_destroy ( bier_fmask_t bfm)
static

Definition at line 223 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void bier_fmask_dpo_lock ( dpo_id_t dpo)
static

Definition at line 434 of file bier_fmask.c.

static void bier_fmask_dpo_mem_show ( void  )
static

Definition at line 444 of file bier_fmask.c.

+ Here is the call graph for this function:

static void bier_fmask_dpo_unlock ( dpo_id_t dpo)
static

Definition at line 439 of file bier_fmask.c.

static bier_fmask_t* bier_fmask_get_from_node ( fib_node_t node)
static

Definition at line 383 of file bier_fmask.c.

+ Here is the caller graph for this function:

static index_t bier_fmask_get_index ( const bier_fmask_t bfm)
inlinestatic

Definition at line 41 of file bier_fmask.c.

+ Here is the caller graph for this function:

static fib_node_t* bier_fmask_get_node ( fib_node_index_t  index)
static

Definition at line 376 of file bier_fmask.c.

+ Here is the call graph for this function:

static void bier_fmask_init ( bier_fmask_t bfm,
const bier_fmask_id_t fmid,
const fib_route_path_t rpaths 
)
static

Definition at line 161 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void bier_fmask_last_lock_gone ( fib_node_t node)
static

Definition at line 394 of file bier_fmask.c.

+ Here is the call graph for this function:

void bier_fmask_link ( index_t  bfmi,
bier_bp_t  bp 
)

Definition at line 288 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void bier_fmask_lock ( index_t  bfmi)

Definition at line 252 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

clib_error_t* bier_fmask_module_init ( vlib_main_t vm)

Definition at line 471 of file bier_fmask.c.

+ Here is the call graph for this function:

static clib_error_t* bier_fmask_show ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 482 of file bier_fmask.c.

+ Here is the call graph for this function:

static void bier_fmask_stack ( bier_fmask_t bfm)
static

Definition at line 75 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void bier_fmask_unlink ( index_t  bfmi,
bier_bp_t  bp 
)

Definition at line 308 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void bier_fmask_unlock ( index_t  bfmi)

Definition at line 237 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u8* format_bier_fmask ( u8 s,
va_list *  ap 
)

Definition at line 328 of file bier_fmask.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

const char* const bier_fmask_attr_names[] = BIER_FMASK_ATTR_NAMES
static

Definition at line 33 of file bier_fmask.c.

const dpo_vft_t bier_fmask_dpo_vft
static
Initial value:
= {
.dv_lock = bier_fmask_dpo_lock,
.dv_unlock = bier_fmask_dpo_unlock,
.dv_mem_show = bier_fmask_dpo_mem_show,
.dv_format = format_bier_fmask,
}
u8 * format_bier_fmask(u8 *s, va_list *ap)
Definition: bier_fmask.c:328
static void bier_fmask_dpo_lock(dpo_id_t *dpo)
Definition: bier_fmask.c:434
static void bier_fmask_dpo_mem_show(void)
Definition: bier_fmask.c:444
static void bier_fmask_dpo_unlock(dpo_id_t *dpo)
Definition: bier_fmask.c:439

Definition at line 452 of file bier_fmask.c.

const char* const bier_fmask_mpls_nodes[]
static
Initial value:
=
{
"bier-output",
}
#define NULL
Definition: clib.h:55

Definition at line 459 of file bier_fmask.c.

const char* const* const bier_fmask_nodes[DPO_PROTO_NUM]
static
Initial value:
=
{
}
static const char *const bier_fmask_mpls_nodes[]
Definition: bier_fmask.c:459

Definition at line 464 of file bier_fmask.c.

bier_fmask_t* bier_fmask_pool

Definition at line 38 of file bier_fmask.c.

const fib_node_vft_t bier_fmask_vft
static
Initial value:
= {
.fnv_get = bier_fmask_get_node,
.fnv_last_lock = bier_fmask_last_lock_gone,
.fnv_back_walk = bier_fmask_back_walk_notify,
}
static fib_node_back_walk_rc_t bier_fmask_back_walk_notify(fib_node_t *node, fib_node_back_walk_ctx_t *ctx)
Definition: bier_fmask.c:405
static fib_node_t * bier_fmask_get_node(fib_node_index_t index)
Definition: bier_fmask.c:376
static void bier_fmask_last_lock_gone(fib_node_t *node)
Definition: bier_fmask.c:394

Definition at line 427 of file bier_fmask.c.

vlib_cli_command_t show_bier_fmask
static
Initial value:
= {
.path = "show bier fmask",
.short_help = "show bier fmask",
.function = bier_fmask_show,
}
static clib_error_t * bier_fmask_show(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: bier_fmask.c:482

(constructor) VLIB_CLI_COMMAND (show_bier_fmask)

Definition at line 518 of file bier_fmask.c.