FD.io VPP
v18.01.2-1-g9b554f3
Vector Packet Processing
|
Go to the source code of this file.
Data Structures | |
struct | bier_fmask_db_t_ |
Global Table of fmask objects The key into this table includes the table's key and the fmask's key, so there could be a DB per-table. More... | |
Typedefs | |
typedef struct bier_fmask_db_t_ | bier_fmask_db_t |
Global Table of fmask objects The key into this table includes the table's key and the fmask's key, so there could be a DB per-table. More... | |
Functions | |
u32 | bier_fmask_get_index (const bier_fmask_t *bfm) |
static void | bier_fmask_db_mk_key (index_t bti, const fib_route_path_t *rpath, bier_fmask_id_t *key) |
u32 | bier_fmask_db_find (index_t bti, const fib_route_path_t *rpath) |
u32 | bier_fmask_db_find_or_create_and_lock (index_t bti, const fib_route_path_t *rpath) |
void | bier_fmask_db_remove (const bier_fmask_id_t *fmid) |
clib_error_t * | bier_fmask_db_module_init (vlib_main_t *vm) |
Variables | |
static bier_fmask_db_t | bier_fmask_db |
Single fmask DB. More... | |
typedef struct bier_fmask_db_t_ bier_fmask_db_t |
Global Table of fmask objects The key into this table includes the table's key and the fmask's key, so there could be a DB per-table.
But it is more efficient at forwarding time to extract the fmask from a single global table which is hot in dcache.
The table's key is part of this DB key, since the fmasks therein build up their forwarding mask based on the routes that resolve through it, so cross polination would be bad.
u32 bier_fmask_db_find | ( | index_t | bti, |
const fib_route_path_t * | rpath | ||
) |
u32 bier_fmask_db_find_or_create_and_lock | ( | index_t | bti, |
const fib_route_path_t * | rpath | ||
) |
Definition at line 106 of file bier_fmask_db.c.
|
static |
clib_error_t* bier_fmask_db_module_init | ( | vlib_main_t * | vm | ) |
void bier_fmask_db_remove | ( | const bier_fmask_id_t * | fmid | ) |
Definition at line 136 of file bier_fmask_db.c.
u32 bier_fmask_get_index | ( | const bier_fmask_t * | bfm | ) |
Definition at line 49 of file bier_fmask_db.c.
|
static |
Single fmask DB.
Definition at line 45 of file bier_fmask_db.c.