timer: fix lag delay
For periodic timers, if the lag gets introduced, the current code added additional delay when the next peridoc timer was initialized by not taking into account the delay added, with this fix the code would start the next occurrence of timer keeping in account the lag added. Corrected the behavior. Fixes: 9b15ba89 ("timer: use a skip list") Signed-off-by: Karmarkar Suyash <skarmarkar@sonusnet.com> Acked-by: Robert Sanford <rsanford@akamai.com>
This commit is contained in:
parent
db8c96c551
commit
0778cfe864
@ -613,7 +613,7 @@ void rte_timer_manage(void)
|
||||
status.owner = (int16_t)lcore_id;
|
||||
rte_wmb();
|
||||
tim->status.u32 = status.u32;
|
||||
__rte_timer_reset(tim, cur_time + tim->period,
|
||||
__rte_timer_reset(tim, tim->expire + tim->period,
|
||||
tim->period, lcore_id, tim->f, tim->arg, 1);
|
||||
rte_spinlock_unlock(&priv_timer[lcore_id].list_lock);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user