X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fip%2Fip6_input.c;h=0450064eafea74838f62d59a66b5674259ca514e;hb=2466f5068f044ddfcb1f300f1f20122030b52221;hp=977d2703d191c8d1c44eeb8268f3f12da3c6912b;hpb=49433adb9145bfd3a9cbaa99b01c6c14aeda71a4;p=vpp.git diff --git a/src/vnet/ip/ip6_input.c b/src/vnet/ip/ip6_input.c index 977d2703d19..0450064eafe 100644 --- a/src/vnet/ip/ip6_input.c +++ b/src/vnet/ip/ip6_input.c @@ -62,8 +62,8 @@ format_ip6_input_trace (u8 * s, va_list * va) /* Validate IP v6 packets and pass them either to forwarding code or drop exception packets. */ -static uword -ip6_input (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame) +VLIB_NODE_FN (ip6_input_node) (vlib_main_t * vm, vlib_node_runtime_t * node, + vlib_frame_t * frame) { vnet_main_t *vnm = vnet_get_main (); ip6_main_t *im = &ip6_main; @@ -218,15 +218,16 @@ ip6_input (vlib_main_t * vm, vlib_node_runtime_t * node, vlib_frame_t * frame) return frame->n_vectors; } +#ifndef CLIB_MARCH_VARIANT char *ip6_error_strings[] = { #define _(sym,string) string, foreach_ip6_error #undef _ }; +#endif /* CLIB_MARCH_VARIANT */ /* *INDENT-OFF* */ VLIB_REGISTER_NODE (ip6_input_node) = { - .function = ip6_input, .name = "ip6-input", .vector_size = sizeof (u32), @@ -246,8 +247,6 @@ VLIB_REGISTER_NODE (ip6_input_node) = { }; /* *INDENT-ON* */ -VLIB_NODE_FUNCTION_MULTIARCH (ip6_input_node, ip6_input); - static clib_error_t * ip6_init (vlib_main_t * vm) { @@ -277,16 +276,9 @@ ip6_main_loop_enter (vlib_main_t * vm) { ip6_main_t *im = &ip6_main; vlib_thread_main_t *tm = &vlib_thread_main; - u32 n_vlib_mains = tm->n_vlib_mains; - int i; - vec_validate (im->nd_throttle_bitmaps, n_vlib_mains); - vec_validate (im->nd_throttle_seeds, n_vlib_mains); - vec_validate (im->nd_throttle_last_seed_change_time, n_vlib_mains); + throttle_init (&im->nd_throttle, tm->n_vlib_mains, 1e-3); - for (i = 0; i < n_vlib_mains; i++) - vec_validate (im->nd_throttle_bitmaps[i], - (ND_THROTTLE_BITS / BITS (uword)) - 1); return 0; }