X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=vpp%2Fvnet%2Fmain.c;h=6dac33cb0e4763b0cc6ea412bc47e1217fba9b0e;hb=fc6e693d0a3e3518b7b8de270542d2b5f9a17150;hp=ce4973883d43275671a6b3d238f3adfd06a9ded3;hpb=a8d77eda738855480c3028664028c7a448d52424;p=vpp.git diff --git a/vpp/vnet/main.c b/vpp/vnet/main.c index ce4973883d4..6dac33cb0e4 100644 --- a/vpp/vnet/main.c +++ b/vpp/vnet/main.c @@ -67,6 +67,13 @@ rte_delay_us_override (unsigned us) } return 0; // no override } + +static void +rte_delay_us_override_cb (unsigned us) +{ + if (rte_delay_us_override (us) == 0) + rte_delay_us_block (us); +} #endif static void @@ -79,6 +86,13 @@ vpe_main_init (vlib_main_t * vm) /* Turn off network stack components which we don't want */ vlib_mark_init_function_complete (vm, srp_init); + +#if DPDK +#if RTE_VERSION >= RTE_VERSION_NUM(16, 11, 0, 0) + /* register custom delay function */ + rte_delay_us_callback_register (rte_delay_us_override_cb); +#endif +#endif } /* @@ -248,11 +262,7 @@ defaulted: { vm->init_functions_called = hash_create (0, /* value bytes */ 0); vpe_main_init (vm); -#if DPDK -#if !DPDK_SHARED_LIB - dpdk_pmd_constructor_init (); -#endif -#else +#if DPDK == 0 unix_physmem_init (vm, 0 /* fail_if_physical_memory_not_present */ ); #endif vlib_set_get_handoff_structure_cb (&vnet_get_handoff_structure);