src/dpdk/lib/librte_timer/rte_timer.c
static void
timer_get_prev_entries_for_node(struct rte_timer *tim, unsigned tim_lcore,
				struct rte_timer **prev,
				struct priv_timer *priv_timer)
{
	int i;

	/* to get a specific entry in the list, look for just lower than the time
	 * values, and then increment on each level individually if necessary
	 */
	timer_get_prev_entries(tim->expire - 1, tim_lcore, prev, priv_timer);
	for (i = priv_timer[tim_lcore].curr_skiplist_depth - 1; i >= 0; i--) {
		while (prev[i]->sl_next[i] != NULL &&
				prev[i]->sl_next[i] != tim &&
				prev[i]->sl_next[i]->expire <= tim->expire)
			prev[i] = prev[i]->sl_next[i];
	}
}
/*
 * Given a timer node in the skiplist, find the previous entries for it at
 * all skiplist levels.
 */
Given a timer node in the skiplist, find the previous entries for it at
all skiplist levels.
Given a timer node in the skiplist find the previous entries for it at all skiplist levels .
static void
timer_get_prev_entries_for_node(struct rte_timer *tim, unsigned tim_lcore,
				struct rte_timer **prev,
				struct priv_timer *priv_timer)
{
	int i;
	timer_get_prev_entries(tim->expire - 1, tim_lcore, prev, priv_timer);
	for (i = priv_timer[tim_lcore].curr_skiplist_depth - 1; i >= 0; i--) {
		while (prev[i]->sl_next[i] != NULL &&
				prev[i]->sl_next[i] != tim &&
				prev[i]->sl_next[i]->expire <= tim->expire)
			prev[i] = prev[i]->sl_next[i];
	}
}
static void timer_get_prev_entries_for_node ( struct rte_timer * tim , unsigned tim_lcore , struct rte_timer * * prev , struct priv_timer * priv_timer ) { int i ; timer_get_prev_entries ( tim -> expire - 1 , tim_lcore , prev , priv_timer ) ; for ( i = priv_timer [ tim_lcore ] . curr_skiplist_depth - 1 ; i >= 0 ; i -- ) { while ( prev [ i ] -> sl_next [ i ] != NULL && prev [ i ] -> sl_next [ i ] != tim && prev [ i ] -> sl_next [ i ] -> expire <= tim -> expire ) prev [ i ] = prev [ i ] -> sl_next [ i ] ; } }
Given a timer node in the skiplist, find the previous entries for it at
 all skiplist levels.
Given a timer node in the skiplist find the previous entries for it at all skiplist levels .
/* to get a specific entry in the list, look for just lower than the time
	 * values, and then increment on each level individually if necessary
	 */