FD.io VPP  v20.05.1-6-gf53edbc3b
Vector Packet Processing
mdata.c File Reference

buffer metadata change tracker More...

+ Include dependency graph for mdata.c:

Go to the source code of this file.

Macros

#define REPLY_MSG_ID_BASE   mmp->msg_id_base
 
#define foreach_primary_metadata_field
 
#define foreach_opaque_metadata_field
 
#define foreach_opaque2_metadata_field
 

Functions

static void mdata_trace_callback (vlib_main_t *vm, u64 *c0, u64 *c1, vlib_node_runtime_t *node, vlib_frame_t *frame, int before_or_after)
 Metadata tracking callback before_or_after: 0 => before, 1=> after. More...
 
int mdata_enable_disable (mdata_main_t *mmp, int enable_disable)
 
static clib_error_tmdata_enable_disable_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 
static void vl_api_mdata_enable_disable_t_handler (vl_api_mdata_enable_disable_t *mp)
 
static clib_error_tmdata_init (vlib_main_t *vm)
 
 VLIB_PLUGIN_REGISTER ()
 
static u8format_buffer_metadata_changes (u8 *s, va_list *args)
 
static clib_error_tshow_metadata_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
 

Variables

mdata_main_t mdata_main
 
static mdata_t mdata_none
 
static vlib_cli_command_t mdata_enable_disable_command
 (constructor) VLIB_CLI_COMMAND (mdata_enable_disable_command) More...
 
static vlib_cli_command_t show_metadata_command
 (constructor) VLIB_CLI_COMMAND (show_metadata_command) More...
 

Detailed Description

buffer metadata change tracker

Definition in file mdata.c.

Macro Definition Documentation

◆ foreach_opaque2_metadata_field

#define foreach_opaque2_metadata_field
Value:
_(qos.bits) \
_(qos.source) \
_(loop_counter) \
_(gbp.flags) \
_(gbp.sclass) \
_(gso_size) \
_(gso_l4_hdr_sz) \
_(pg_replay_timestamp)

Definition at line 348 of file mdata.c.

◆ foreach_opaque_metadata_field

#define foreach_opaque_metadata_field

Definition at line 275 of file mdata.c.

◆ foreach_primary_metadata_field

#define foreach_primary_metadata_field
Value:
_(current_data) \
_(current_length) \
_(flags) \
_(flow_id) \
_(ref_count) \
_(buffer_pool_index) \
_(error) \
_(next_buffer) \
_(current_config_index) \
typedef punt_reason
Definition: punt.api:135
u32 flags
Definition: vhost_user.h:248

Definition at line 263 of file mdata.c.

◆ REPLY_MSG_ID_BASE

#define REPLY_MSG_ID_BASE   mmp->msg_id_base

Definition at line 30 of file mdata.c.

Function Documentation

◆ format_buffer_metadata_changes()

static u8* format_buffer_metadata_changes ( u8 s,
va_list *  args 
)
static

Definition at line 359 of file mdata.c.

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

◆ mdata_enable_disable()

int mdata_enable_disable ( mdata_main_t mmp,
int  enable_disable 
)

Definition at line 132 of file mdata.c.

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

◆ mdata_enable_disable_command_fn()

static clib_error_t* mdata_enable_disable_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 166 of file mdata.c.

+ Here is the call graph for this function:

◆ mdata_init()

static clib_error_t* mdata_init ( vlib_main_t vm)
static

Definition at line 238 of file mdata.c.

+ Here is the call graph for this function:

◆ mdata_trace_callback()

static void mdata_trace_callback ( vlib_main_t vm,
u64 c0,
u64 c1,
vlib_node_runtime_t node,
vlib_frame_t frame,
int  before_or_after 
)
static

Metadata tracking callback before_or_after: 0 => before, 1=> after.

Definition at line 45 of file mdata.c.

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

◆ show_metadata_command_fn()

static clib_error_t* show_metadata_command_fn ( vlib_main_t vm,
unformat_input_t input,
vlib_cli_command_t cmd 
)
static

Definition at line 450 of file mdata.c.

+ Here is the call graph for this function:

◆ vl_api_mdata_enable_disable_t_handler()

static void vl_api_mdata_enable_disable_t_handler ( vl_api_mdata_enable_disable_t mp)
static

Definition at line 223 of file mdata.c.

+ Here is the call graph for this function:

◆ VLIB_PLUGIN_REGISTER()

VLIB_PLUGIN_REGISTER ( )

Variable Documentation

◆ mdata_enable_disable_command

vlib_cli_command_t mdata_enable_disable_command
static
Initial value:
=
{
.path = "buffer metadata tracking",
.short_help = "buffer metadata tracking [on][off]",
}
static clib_error_t * mdata_enable_disable_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: mdata.c:166

(constructor) VLIB_CLI_COMMAND (mdata_enable_disable_command)

Definition at line 213 of file mdata.c.

◆ mdata_main

mdata_main_t mdata_main

Definition at line 33 of file mdata.c.

◆ mdata_none

mdata_t mdata_none
static

Definition at line 39 of file mdata.c.

◆ show_metadata_command

vlib_cli_command_t show_metadata_command
static
Initial value:
=
{
.path = "show buffer metadata",
.short_help = "show buffer metadata",
}
static clib_error_t * show_metadata_command_fn(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
Definition: mdata.c:450

(constructor) VLIB_CLI_COMMAND (show_metadata_command)

Definition at line 480 of file mdata.c.