FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
devices.c File Reference
+ Include dependency graph for devices.c:

Go to the source code of this file.

Functions

static uword device_input_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
 
 VNET_FEATURE_ARC_INIT (device_input, static)
 
 VNET_FEATURE_INIT (l2_patch, static)
 
 VNET_FEATURE_INIT (worker_handoff, static)
 
 VNET_FEATURE_INIT (span_input, static)
 
 VNET_FEATURE_INIT (p2p_ethernet_node, static)
 
 VNET_FEATURE_INIT (ethernet_input, static)
 
static clib_error_tvnet_device_init (vlib_main_t *vm)
 

Variables

vnet_device_main_t vnet_device_main
 
vlib_node_registration_t device_input_node
 (constructor) VLIB_REGISTER_NODE (device_input_node) More...
 
const u32 device_input_next_node_advance [((VNET_DEVICE_INPUT_N_NEXT_NODES/CLIB_CACHE_LINE_BYTES)+1) *CLIB_CACHE_LINE_BYTES]
 
const u32 device_input_next_node_flags [((VNET_DEVICE_INPUT_N_NEXT_NODES/CLIB_CACHE_LINE_BYTES)+1) *CLIB_CACHE_LINE_BYTES]
 

Function Documentation

◆ device_input_fn()

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

Definition at line 25 of file devices.c.

◆ vnet_device_init()

static clib_error_t* vnet_device_init ( vlib_main_t vm)
static

Definition at line 105 of file devices.c.

+ Here is the call graph for this function:

◆ VNET_FEATURE_ARC_INIT()

VNET_FEATURE_ARC_INIT ( device_input  ,
static   
)

◆ VNET_FEATURE_INIT() [1/5]

VNET_FEATURE_INIT ( ethernet_input  ,
static   
)

◆ VNET_FEATURE_INIT() [2/5]

VNET_FEATURE_INIT ( l2_patch  ,
static   
)

◆ VNET_FEATURE_INIT() [3/5]

VNET_FEATURE_INIT ( p2p_ethernet_node  ,
static   
)

◆ VNET_FEATURE_INIT() [4/5]

VNET_FEATURE_INIT ( span_input  ,
static   
)

◆ VNET_FEATURE_INIT() [5/5]

VNET_FEATURE_INIT ( worker_handoff  ,
static   
)

Variable Documentation

◆ device_input_next_node_advance

◆ device_input_next_node_flags

Initial value:
=
{
[VNET_DEVICE_INPUT_NEXT_IP4_INPUT] = VNET_BUFFER_F_L3_HDR_OFFSET_VALID,
[VNET_DEVICE_INPUT_NEXT_IP4_NCS_INPUT] = VNET_BUFFER_F_L3_HDR_OFFSET_VALID,
[VNET_DEVICE_INPUT_NEXT_IP6_INPUT] = VNET_BUFFER_F_L3_HDR_OFFSET_VALID,
[VNET_DEVICE_INPUT_NEXT_MPLS_INPUT] = VNET_BUFFER_F_L3_HDR_OFFSET_VALID,
}

Definition at line 57 of file devices.c.

◆ device_input_node

vlib_node_registration_t device_input_node
Initial value:
= {
.function = device_input_fn,
.name = "device-input",
.runtime_data_bytes = sizeof (vnet_hw_if_rx_node_runtime_t),
.state = VLIB_NODE_STATE_DISABLED,
}

(constructor) VLIB_REGISTER_NODE (device_input_node)

Definition at line 32 of file devices.c.

◆ vnet_device_main

vnet_device_main_t vnet_device_main

Definition at line 22 of file devices.c.

device_input_fn
static uword device_input_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
Definition: devices.c:25
VLIB_NODE_TYPE_INPUT
@ VLIB_NODE_TYPE_INPUT
Definition: node.h:76
state
vl_api_dhcp_client_state_t state
Definition: dhcp.api:201
VNET_DEVICE_INPUT_NEXT_IP6_INPUT
@ VNET_DEVICE_INPUT_NEXT_IP6_INPUT
Definition: devices.h:26
VNET_DEVICE_INPUT_NEXT_IP4_INPUT
@ VNET_DEVICE_INPUT_NEXT_IP4_INPUT
Definition: devices.h:25
ethernet_header_t
Definition: packet.h:52
VNET_DEVICE_INPUT_NEXT_MPLS_INPUT
@ VNET_DEVICE_INPUT_NEXT_MPLS_INPUT
Definition: devices.h:27
VNET_DEVICE_INPUT_NEXT_IP4_NCS_INPUT
@ VNET_DEVICE_INPUT_NEXT_IP4_NCS_INPUT
Definition: devices.h:24
VNET_DEVICE_INPUT_NEXT_NODES
#define VNET_DEVICE_INPUT_NEXT_NODES
Definition: devices.h:39
vnet_hw_if_rx_node_runtime_t
Definition: interface.h:752
VNET_DEVICE_INPUT_N_NEXT_NODES
@ VNET_DEVICE_INPUT_N_NEXT_NODES
Definition: devices.h:36
type
vl_api_fib_path_type_t type
Definition: fib_types.api:123