Go to the source code of this file.
|
u8 * | format_vnet_interface_output_trace (u8 *s, va_list *va) |
|
static void | vnet_interface_output_trace (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, uword n_buffers) |
|
static_always_inline uword | vnet_interface_output_node_inline (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, vnet_main_t *vnm, vnet_hw_interface_t *hi, int do_tx_offloads) |
|
static_always_inline void | vnet_interface_pcap_tx_trace (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, int sw_if_index_from_buffer) |
|
static vlib_node_function_t | CLIB_MULTIARCH_FN (vnet_interface_output_node) |
|
static uword CLIB_MULTIARCH_FN() | vnet_interface_output_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
| CLIB_MARCH_FN_REGISTRATION (vnet_interface_output_node) |
|
vlib_node_function_t * | vnet_interface_output_node_get (vlib_main_t *vm) |
|
VLIB_NODE_FN() | vnet_per_buffer_interface_output_node (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static u8 * | format_vnet_error_trace (u8 *s, va_list *va) |
|
static void | interface_trace_buffers (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static void | drop_catchup_trace (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_buffer_t *b) |
|
static_always_inline uword | interface_drop_punt (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame, vnet_error_disposition_t disposition) |
|
static void | pcap_drop_trace (vlib_main_t *vm, vnet_interface_main_t *im, vnet_pcap_t *pp, vlib_frame_t *f) |
|
void | vnet_pcap_drop_trace_filter_add_del (u32 error_index, int is_add) |
|
VLIB_NODE_FN() | interface_drop (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
VLIB_NODE_FN() | interface_punt (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|
static uword | interface_tx_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame) |
|
| VNET_FEATURE_ARC_INIT (interface_output, static) |
|
| VNET_FEATURE_INIT (span_tx, static) |
|
| VNET_FEATURE_INIT (ipsec_if_tx, static) |
|
| VNET_FEATURE_INIT (interface_tx, static) |
|
clib_error_t * | vnet_per_buffer_interface_output_hw_interface_add_del (vnet_main_t *vnm, u32 hw_if_index, u32 is_create) |
|
| VNET_HW_INTERFACE_ADD_DEL_FUNCTION (vnet_per_buffer_interface_output_hw_interface_add_del) |
|
void | vnet_set_interface_output_node (vnet_main_t *vnm, u32 hw_if_index, u32 node_index) |
| Set interface output node - for interface registered without its output/tx nodes created because its VNET_DEVICE_CLASS did not specify any tx_function. More...
|
|
◆ vnet_error_trace_t
◆ vnet_error_disposition_t
Enumerator |
---|
VNET_ERROR_DISPOSITION_DROP | |
VNET_ERROR_DISPOSITION_PUNT | |
VNET_ERROR_N_DISPOSITION | |
Definition at line 749 of file interface_output.c.
◆ CLIB_MARCH_FN_REGISTRATION()
◆ CLIB_MULTIARCH_FN()
◆ drop_catchup_trace()
◆ format_vnet_error_trace()
static u8* format_vnet_error_trace |
( |
u8 * |
s, |
|
|
va_list * |
va |
|
) |
| |
|
static |
◆ format_vnet_interface_output_trace()
u8* format_vnet_interface_output_trace |
( |
u8 * |
s, |
|
|
va_list * |
va |
|
) |
| |
◆ interface_drop()
◆ interface_drop_punt()
◆ interface_punt()
◆ interface_trace_buffers()
◆ interface_tx_node_fn()
◆ pcap_drop_trace()
◆ VNET_FEATURE_ARC_INIT()
VNET_FEATURE_ARC_INIT |
( |
interface_output |
, |
|
|
static |
|
|
) |
| |
◆ VNET_FEATURE_INIT() [1/3]
VNET_FEATURE_INIT |
( |
span_tx |
, |
|
|
static |
|
|
) |
| |
◆ VNET_FEATURE_INIT() [2/3]
VNET_FEATURE_INIT |
( |
ipsec_if_tx |
, |
|
|
static |
|
|
) |
| |
◆ VNET_FEATURE_INIT() [3/3]
◆ VNET_HW_INTERFACE_ADD_DEL_FUNCTION()
◆ vnet_interface_output_node()
◆ vnet_interface_output_node_get()
◆ vnet_interface_output_node_inline()
◆ vnet_interface_output_trace()
◆ vnet_interface_pcap_tx_trace()
◆ vnet_pcap_drop_trace_filter_add_del()
void vnet_pcap_drop_trace_filter_add_del |
( |
u32 |
error_index, |
|
|
int |
is_add |
|
) |
| |
◆ vnet_per_buffer_interface_output_hw_interface_add_del()
◆ vnet_per_buffer_interface_output_node()
◆ vnet_set_interface_output_node()
void vnet_set_interface_output_node |
( |
vnet_main_t * |
vnm, |
|
|
u32 |
hw_if_index, |
|
|
u32 |
node_index |
|
) |
| |
Set interface output node - for interface registered without its output/tx nodes created because its VNET_DEVICE_CLASS did not specify any tx_function.
This is typically the case for tunnel interfaces.
Definition at line 1240 of file interface_output.c.
◆ interface_drop
Initial value:= {
.name = "error-drop",
.vector_size =
sizeof (
u32),
.n_next_nodes = 1,
.next_nodes = {
[0] = "drop",
},
}
vl_api_wireguard_peer_flags_t flags
#define VLIB_NODE_FLAG_TRACE_SUPPORTED
static u8 * format_vnet_error_trace(u8 *s, va_list *va)
(constructor) VLIB_REGISTER_NODE (interface_drop)
Definition at line 1100 of file interface_output.c.
◆ interface_punt
Initial value:= {
.name = "error-punt",
.vector_size =
sizeof (
u32),
.n_next_nodes = 1,
.next_nodes = {
[0] = "punt",
},
}
vl_api_wireguard_peer_flags_t flags
#define VLIB_NODE_FLAG_TRACE_SUPPORTED
static u8 * format_vnet_error_trace(u8 *s, va_list *va)
(constructor) VLIB_REGISTER_NODE (interface_punt)
Definition at line 1113 of file interface_output.c.
◆ interface_tx
Initial value:= {
.name = "interface-tx",
.vector_size =
sizeof (
u32),
.n_next_nodes = 1,
.next_nodes = {
[0] = "error-drop",
},
}
static uword interface_tx_node_fn(vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *from_frame)
(constructor) VLIB_REGISTER_NODE (interface_tx)
Definition at line 1179 of file interface_output.c.
◆ vnet_per_buffer_interface_output_node
Initial value:= {
.name = "interface-output",
.vector_size =
sizeof (
u32),
}
(constructor) VLIB_REGISTER_NODE (vnet_per_buffer_interface_output_node)
Definition at line 1126 of file interface_output.c.