FD.io VPP  v19.04.4-rc0-5-ge88582fac
Vector Packet Processing
handoff.c File Reference
+ Include dependency graph for handoff.c:

Go to the source code of this file.

Data Structures

struct  per_inteface_handoff_data_t
struct  handoff_main_t
struct  worker_handoff_trace_t


#define foreach_worker_handoff_error   _(CONGESTION_DROP, "congestion drop")


enum  worker_handoff_error_t { WORKER_HANDOFF_N_ERROR }


static u8format_worker_handoff_trace (u8 *s, va_list *args)
VLIB_NODE_FN() worker_handoff_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame)
int interface_handoff_enable_disable (vlib_main_t *vm, u32 sw_if_index, uword *bitmap, int enable_disable)
static clib_error_tset_interface_handoff_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
clib_error_thandoff_init (vlib_main_t *vm)


handoff_main_t handoff_main
static char * worker_handoff_error_strings []
vlib_node_registration_t worker_handoff_node
 (constructor) VLIB_REGISTER_NODE (worker_handoff_node) More...
static vlib_cli_command_t set_interface_handoff_command
 (constructor) VLIB_CLI_COMMAND (set_interface_handoff_command) More...

Macro Definition Documentation

◆ foreach_worker_handoff_error

#define foreach_worker_handoff_error   _(CONGESTION_DROP, "congestion drop")

Definition at line 56 of file handoff.c.

Enumeration Type Documentation

◆ worker_handoff_error_t


Definition at line 59 of file handoff.c.

Function Documentation

◆ format_worker_handoff_trace()

static u8* format_worker_handoff_trace ( u8 s,
va_list *  args 

Definition at line 75 of file handoff.c.

+ Here is the call graph for this function:

◆ handoff_init()

clib_error_t* handoff_init ( vlib_main_t vm)

Definition at line 308 of file handoff.c.

+ Here is the call graph for this function:

◆ interface_handoff_enable_disable()

int interface_handoff_enable_disable ( vlib_main_t vm,
u32  sw_if_index,
uword bitmap,
int  enable_disable 

Definition at line 181 of file handoff.c.

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

◆ set_interface_handoff_command_fn()

static clib_error_t* set_interface_handoff_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 

Definition at line 229 of file handoff.c.

+ Here is the call graph for this function:

◆ worker_handoff_node()

VLIB_NODE_FN() worker_handoff_node ( vlib_main_t vm,
vlib_node_runtime_t node,
vlib_frame_t frame 

Definition at line 87 of file handoff.c.

+ Here is the call graph for this function:

Variable Documentation

◆ handoff_main

handoff_main_t handoff_main

Definition at line 46 of file handoff.c.

◆ set_interface_handoff_command

vlib_cli_command_t set_interface_handoff_command
Initial value:
= {
.path = "set interface handoff",
.short_help =
"set interface handoff <interface-name> workers <workers-list> [symmetrical|asymmetrical]",
static clib_error_t * set_interface_handoff_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: handoff.c:229

(constructor) VLIB_CLI_COMMAND (set_interface_handoff_command)

Definition at line 299 of file handoff.c.

◆ worker_handoff_error_strings

char* worker_handoff_error_strings[]
Initial value:
= {
#define _(sym,string)
#define foreach_worker_handoff_error
Definition: handoff.c:56

Definition at line 67 of file handoff.c.

◆ worker_handoff_node

vlib_node_registration_t worker_handoff_node
Initial value:
= {
.name = "worker-handoff",
.vector_size = sizeof (u32),
.format_trace = format_worker_handoff_trace,
.error_strings = worker_handoff_error_strings,
.n_next_nodes = 1,
.next_nodes = {
[0] = "error-drop",
static u8 * format_worker_handoff_trace(u8 *s, va_list *args)
Definition: handoff.c:75
unsigned int u32
Definition: types.h:88
static char * worker_handoff_error_strings[]
Definition: handoff.c:67
#define ARRAY_LEN(x)
Definition: clib.h:62

(constructor) VLIB_REGISTER_NODE (worker_handoff_node)

Definition at line 163 of file handoff.c.