FD.io VPP  v18.07.1-19-g511ce25
Vector Packet Processing
receive_dpo.c File Reference
+ Include dependency graph for receive_dpo.c:

Go to the source code of this file.

Functions

static receive_dpo_treceive_dpo_alloc (void)
 
static receive_dpo_treceive_dpo_get_from_dpo (const dpo_id_t *dpo)
 
void receive_dpo_add_or_lock (dpo_proto_t proto, u32 sw_if_index, const ip46_address_t *nh_addr, dpo_id_t *dpo)
 
static void receive_dpo_lock (dpo_id_t *dpo)
 
static void receive_dpo_unlock (dpo_id_t *dpo)
 
static u8format_receive_dpo (u8 *s, va_list *ap)
 
static void receive_dpo_mem_show (void)
 
void receive_dpo_module_init (void)
 

Variables

receive_dpo_treceive_dpo_pool
 The data-path object representing receiveing the packet, i.e. More...
 
static const dpo_vft_t receive_vft
 
static const char *const receive_ip4_nodes []
 The per-protocol VLIB graph nodes that are assigned to a receive object. More...
 
static const char *const receive_ip6_nodes []
 
static const char *const *const receive_nodes [DPO_PROTO_NUM]
 

Function Documentation

static u8* format_receive_dpo ( u8 s,
va_list *  ap 
)
static

Definition at line 98 of file receive_dpo.c.

+ Here is the call graph for this function:

void receive_dpo_add_or_lock ( dpo_proto_t  proto,
u32  sw_if_index,
const ip46_address_t *  nh_addr,
dpo_id_t dpo 
)

Definition at line 56 of file receive_dpo.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static receive_dpo_t* receive_dpo_alloc ( void  )
static

Definition at line 29 of file receive_dpo.c.

+ Here is the caller graph for this function:

static receive_dpo_t* receive_dpo_get_from_dpo ( const dpo_id_t dpo)
static

Definition at line 40 of file receive_dpo.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void receive_dpo_lock ( dpo_id_t dpo)
static

Definition at line 75 of file receive_dpo.c.

+ Here is the call graph for this function:

static void receive_dpo_mem_show ( void  )
static

Definition at line 126 of file receive_dpo.c.

+ Here is the call graph for this function:

void receive_dpo_module_init ( void  )

Definition at line 167 of file receive_dpo.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void receive_dpo_unlock ( dpo_id_t dpo)
static

Definition at line 84 of file receive_dpo.c.

+ Here is the call graph for this function:

Variable Documentation

receive_dpo_t* receive_dpo_pool

The data-path object representing receiveing the packet, i.e.

it's for-us pool of all receive DPOs

Definition at line 26 of file receive_dpo.c.

const char* const receive_ip4_nodes[]
static
Initial value:
=
{
"ip4-local",
}
#define NULL
Definition: clib.h:55

The per-protocol VLIB graph nodes that are assigned to a receive object.

this means that these graph nodes are ones from which a receive is the parent object in the DPO-graph.

Definition at line 148 of file receive_dpo.c.

const char* const receive_ip6_nodes[]
static
Initial value:
=
{
"ip6-local",
}
#define NULL
Definition: clib.h:55

Definition at line 153 of file receive_dpo.c.

const char* const* const receive_nodes[DPO_PROTO_NUM]
static
Initial value:
=
{
}
#define NULL
Definition: clib.h:55
static const char *const receive_ip4_nodes[]
The per-protocol VLIB graph nodes that are assigned to a receive object.
Definition: receive_dpo.c:148
static const char *const receive_ip6_nodes[]
Definition: receive_dpo.c:153

Definition at line 159 of file receive_dpo.c.

const dpo_vft_t receive_vft
static
Initial value:
= {
.dv_lock = receive_dpo_lock,
.dv_unlock = receive_dpo_unlock,
.dv_format = format_receive_dpo,
.dv_mem_show = receive_dpo_mem_show,
}
static void receive_dpo_unlock(dpo_id_t *dpo)
Definition: receive_dpo.c:84
static u8 * format_receive_dpo(u8 *s, va_list *ap)
Definition: receive_dpo.c:98
static void receive_dpo_lock(dpo_id_t *dpo)
Definition: receive_dpo.c:75
static void receive_dpo_mem_show(void)
Definition: receive_dpo.c:126

Definition at line 134 of file receive_dpo.c.