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…
Reference in New Issue
Block a user