FD.io VPP  v20.09-64-g4f7b92f0a
Vector Packet Processing
device.c File Reference
+ Include dependency graph for device.c:

Go to the source code of this file.

Data Structures

struct  gdb_af_xdp_pair_t
 

Macros

#define XDP_FLAGS_REPLACE   0
 

Functions

gdb_af_xdp_pair_t gdb_af_xdp_get_prod (const struct xsk_ring_prod *prod)
 
gdb_af_xdp_pair_t gdb_af_xdp_get_cons (const struct xsk_ring_cons *cons)
 
static clib_error_taf_xdp_mac_change (vnet_hw_interface_t *hw, const u8 *old, const u8 *new)
 
static u32 af_xdp_flag_change (vnet_main_t *vnm, vnet_hw_interface_t *hw, u32 flags)
 
void af_xdp_delete_if (vlib_main_t *vm, af_xdp_device_t *ad)
 
static int af_xdp_load_program (af_xdp_create_if_args_t *args, af_xdp_device_t *ad)
 
static int af_xdp_create_queue (vlib_main_t *vm, af_xdp_create_if_args_t *args, af_xdp_device_t *ad, int qid, int rxq_num, int txq_num)
 
static int af_xdp_get_numa (const char *ifname)
 
static clib_error_taf_xdp_device_rxq_read_ready (clib_file_t *f)
 
void af_xdp_create_if (vlib_main_t *vm, af_xdp_create_if_args_t *args)
 
static clib_error_taf_xdp_interface_admin_up_down (vnet_main_t *vnm, u32 hw_if_index, u32 flags)
 
static void af_xdp_set_interface_next_node (vnet_main_t *vnm, u32 hw_if_index, u32 node_index)
 
static void af_xdp_clear (u32 dev_instance)
 
 VNET_DEVICE_CLASS (af_xdp_device_class)
 
clib_error_taf_xdp_init (vlib_main_t *vm)
 

Variables

af_xdp_main_t af_xdp_main
 
static char * af_xdp_tx_func_error_strings []
 

Macro Definition Documentation

◆ XDP_FLAGS_REPLACE

#define XDP_FLAGS_REPLACE   0

Function Documentation

◆ af_xdp_clear()

static void af_xdp_clear ( u32  dev_instance)
static

Definition at line 502 of file device.c.

+ Here is the call graph for this function:

◆ af_xdp_create_if()

void af_xdp_create_if ( vlib_main_t vm,
af_xdp_create_if_args_t args 
)

Definition at line 305 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_create_queue()

static int af_xdp_create_queue ( vlib_main_t vm,
af_xdp_create_if_args_t args,
af_xdp_device_t ad,
int  qid,
int  rxq_num,
int  txq_num 
)
static

Definition at line 172 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_delete_if()

void af_xdp_delete_if ( vlib_main_t vm,
af_xdp_device_t ad 
)

Definition at line 89 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_device_rxq_read_ready()

static clib_error_t* af_xdp_device_rxq_read_ready ( clib_file_t f)
static

Definition at line 293 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_flag_change()

static u32 af_xdp_flag_change ( vnet_main_t vnm,
vnet_hw_interface_t hw,
u32  flags 
)
static

Definition at line 65 of file device.c.

+ Here is the caller graph for this function:

◆ af_xdp_get_numa()

static int af_xdp_get_numa ( const char *  ifname)
static

Definition at line 275 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_init()

clib_error_t* af_xdp_init ( vlib_main_t vm)

Definition at line 525 of file device.c.

+ Here is the call graph for this function:

◆ af_xdp_interface_admin_up_down()

static clib_error_t* af_xdp_interface_admin_up_down ( vnet_main_t vnm,
u32  hw_if_index,
u32  flags 
)
static

Definition at line 451 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_load_program()

static int af_xdp_load_program ( af_xdp_create_if_args_t args,
af_xdp_device_t ad 
)
static

Definition at line 127 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_mac_change()

static clib_error_t* af_xdp_mac_change ( vnet_hw_interface_t hw,
const u8 old,
const u8 new 
)
static

Definition at line 53 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ af_xdp_set_interface_next_node()

static void af_xdp_set_interface_next_node ( vnet_main_t vnm,
u32  hw_if_index,
u32  node_index 
)
static

Definition at line 476 of file device.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gdb_af_xdp_get_cons()

gdb_af_xdp_pair_t gdb_af_xdp_get_cons ( const struct xsk_ring_cons *  cons)

Definition at line 46 of file device.c.

◆ gdb_af_xdp_get_prod()

gdb_af_xdp_pair_t gdb_af_xdp_get_prod ( const struct xsk_ring_prod *  prod)

Definition at line 39 of file device.c.

◆ VNET_DEVICE_CLASS()

VNET_DEVICE_CLASS ( af_xdp_device_class  )
+ Here is the caller graph for this function:

Variable Documentation

◆ af_xdp_main

af_xdp_main_t af_xdp_main

Definition at line 30 of file device.c.

◆ af_xdp_tx_func_error_strings

char* af_xdp_tx_func_error_strings[]
static
Initial value:
= {
#define _(n,s)
}
#define foreach_af_xdp_tx_func_error
Definition: af_xdp.h:164

Definition at line 495 of file device.c.