Hi,everyone

First of all, thank you for reading my email.

When I read the code of time library,I meet one point that I don't understand 
fully.

In the function rte_timer_manage(),if a periodic timer expire, before calling 
the function __rte_timer_reset(), its state is changed to RTE_TIMER_PENDING, 
and all layers of skiplist's pending_head is modified to point to unexpired 
timers' list, that is , the timer to reset is not involved in the 
skiplist--priv_timer[tim_lcore].pending_head.

But in the function __rte_timer_reset() called by rte_timer_manage(), if the 
timer's previous state(after calling timer_set_config_state()) is 
RTE_TIMER_PENDING, it will call timer_del() to remove the timer from the 
skiplist -- priv_timer[tim_lcore].pending_head, however, the timer is already 
not in the skiplist now.

That is what I don't understand fully,if anyone knows about it, please tell me.

Thanks.

Titen

Reply via email to