Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
api: export ip_types.api for out-of-tree plugins
[vpp.git]
/
src
/
vnet
/
interface.c
diff --git
a/src/vnet/interface.c
b/src/vnet/interface.c
index
37f27ea
..
8af2b58
100644
(file)
--- a/
src/vnet/interface.c
+++ b/
src/vnet/interface.c
@@
-287,9
+287,6
@@
call_sw_interface_add_del_callbacks (vnet_main_t * vnm, u32 sw_if_index,
(vnm, sw_if_index, is_create, vnm->sw_interface_add_del_functions);
}
(vnm, sw_if_index, is_create, vnm->sw_interface_add_del_functions);
}
-#define VNET_INTERFACE_SET_FLAGS_HELPER_IS_CREATE (1 << 0)
-#define VNET_INTERFACE_SET_FLAGS_HELPER_WANT_REDISTRIBUTE (1 << 1)
-
static clib_error_t *
vnet_hw_interface_set_flags_helper (vnet_main_t * vnm, u32 hw_if_index,
vnet_hw_interface_flags_t flags,
static clib_error_t *
vnet_hw_interface_set_flags_helper (vnet_main_t * vnm, u32 hw_if_index,
vnet_hw_interface_flags_t flags,
@@
-837,7
+834,7
@@
vnet_register_interface (vnet_main_t * vnm,
/* The new class may differ from the old one.
* Functions have to be updated. */
node = vlib_get_node (vm, hw->output_node_index);
/* The new class may differ from the old one.
* Functions have to be updated. */
node = vlib_get_node (vm, hw->output_node_index);
- node->function = vnet_interface_output_node
_multiarch_select ()
;
+ node->function = vnet_interface_output_node;
node->format_trace = format_vnet_interface_output_trace;
/* *INDENT-OFF* */
foreach_vlib_main ({
node->format_trace = format_vnet_interface_output_trace;
/* *INDENT-OFF* */
foreach_vlib_main ({
@@
-887,13
+884,14
@@
vnet_register_interface (vnet_main_t * vnm,
r.flags = 0;
r.name = output_node_name;
r.flags = 0;
r.name = output_node_name;
- r.function = vnet_interface_output_node
_multiarch_select ()
;
+ r.function = vnet_interface_output_node;
r.format_trace = format_vnet_interface_output_trace;
{
static char *e[] = {
"interface is down",
"interface is deleted",
r.format_trace = format_vnet_interface_output_trace;
{
static char *e[] = {
"interface is down",
"interface is deleted",
+ "no buffers to segment GSO",
};
r.n_errors = ARRAY_LEN (e);
};
r.n_errors = ARRAY_LEN (e);
@@
-1328,6
+1326,11
@@
vnet_interface_init (vlib_main_t * vm)
}
}
}
}
+ im->gso_interface_count = 0;
+ /* init per-thread data */
+ vec_validate_aligned (im->per_thread_data, vlib_num_workers (),
+ CLIB_CACHE_LINE_BYTES);
+
if ((error = vlib_call_init_function (vm, vnet_interface_cli_init)))
return error;
if ((error = vlib_call_init_function (vm, vnet_interface_cli_init)))
return error;