FD.io VPP  v16.09
Vector Packet Processing
handoff.h File Reference
+ Include dependency graph for handoff.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define MPLS_BOTTOM_OF_STACK_BIT_MASK   0x00000100U
 
#define MPLS_LABEL_MASK   0xFFFFF000U
 

Enumerations

enum  handoff_dispatch_next_t {
  HANDOFF_DISPATCH_NEXT_IP4_INPUT, HANDOFF_DISPATCH_NEXT_IP6_INPUT, HANDOFF_DISPATCH_NEXT_MPLS_INPUT, HANDOFF_DISPATCH_NEXT_ETHERNET_INPUT,
  HANDOFF_DISPATCH_NEXT_DROP, HANDOFF_DISPATCH_N_NEXT
}
 

Functions

static void vlib_put_handoff_queue_elt (vlib_frame_queue_elt_t *hf)
 
static vlib_frame_queue_elt_tvlib_get_handoff_queue_elt (u32 vlib_worker_index)
 
static vlib_frame_queue_tis_vlib_handoff_queue_congested (u32 vlib_worker_index, u32 queue_hi_thresh, vlib_frame_queue_t **handoff_queue_by_worker_index)
 
static vlib_frame_queue_elt_tdpdk_get_handoff_queue_elt (u32 vlib_worker_index, vlib_frame_queue_elt_t **handoff_queue_elt_by_worker_index)
 
static u64 ipv4_get_key (ip4_header_t *ip)
 
static u64 ipv6_get_key (ip6_header_t *ip)
 
static u64 mpls_get_key (mpls_unicast_header_t *m)
 
static u64 eth_get_key (ethernet_header_t *h0)
 

Macro Definition Documentation

#define MPLS_BOTTOM_OF_STACK_BIT_MASK   0x00000100U

Definition at line 138 of file handoff.h.

#define MPLS_LABEL_MASK   0xFFFFF000U

Definition at line 139 of file handoff.h.

Enumeration Type Documentation

Enumerator
HANDOFF_DISPATCH_NEXT_IP4_INPUT 
HANDOFF_DISPATCH_NEXT_IP6_INPUT 
HANDOFF_DISPATCH_NEXT_MPLS_INPUT 
HANDOFF_DISPATCH_NEXT_ETHERNET_INPUT 
HANDOFF_DISPATCH_NEXT_DROP 
HANDOFF_DISPATCH_N_NEXT 

Definition at line 25 of file handoff.h.

Function Documentation

static vlib_frame_queue_elt_t* dpdk_get_handoff_queue_elt ( u32  vlib_worker_index,
vlib_frame_queue_elt_t **  handoff_queue_elt_by_worker_index 
)
inlinestatic

Definition at line 99 of file handoff.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u64 eth_get_key ( ethernet_header_t h0)
inlinestatic

Definition at line 214 of file handoff.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static u64 ipv4_get_key ( ip4_header_t ip)
inlinestatic

Definition at line 116 of file handoff.h.

+ Here is the caller graph for this function:

static u64 ipv6_get_key ( ip6_header_t ip)
inlinestatic

Definition at line 126 of file handoff.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static vlib_frame_queue_t* is_vlib_handoff_queue_congested ( u32  vlib_worker_index,
u32  queue_hi_thresh,
vlib_frame_queue_t **  handoff_queue_by_worker_index 
)
inlinestatic

Definition at line 71 of file handoff.h.

static u64 mpls_get_key ( mpls_unicast_header_t m)
inlinestatic

Definition at line 142 of file handoff.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static vlib_frame_queue_elt_t* vlib_get_handoff_queue_elt ( u32  vlib_worker_index)
inlinestatic

Definition at line 43 of file handoff.h.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void vlib_put_handoff_queue_elt ( vlib_frame_queue_elt_t hf)
inlinestatic

Definition at line 36 of file handoff.h.

+ Here is the caller graph for this function: