This is a workaround for following VPP error:
"Program terminated with signal SIGUSR1, User defined signal 1."
It changes mode of timers used by ODP schedule mode.
By default inline_timers is false and timer_res_init (odp_timer.c) is
called to adjust timer resolution. This function uses SIGUSR1 during
the process which collides with VPP as it uses the same signal for
communication with clients. This patch causes inline_timers to be set
and disables adjustment of timer resolution.
Change-Id: Ic2225ba736f506a86832519f9c4154cee9c06056
Signed-off-by: Michal Mazur <[email protected]>
odp_pool_capability_t capa;
odp_shm_t shm;
odp_instance_t instance;
+ odp_init_t init_params;
- if (odp_init_global (&instance, NULL, NULL))
+ odp_init_param_init (&init_params);
+ init_params.not_used.feat.timer = 0;
+ init_params.not_used.feat.schedule = 0;
+ if (odp_init_global (&instance, &init_params, NULL))
clib_warning ("Error: ODP global init failed");
if (odp_init_local (instance, ODP_THREAD_CONTROL) != 0)