Lines Matching refs:t
188 void start_one_shot_timer(struct fast_timer *t, in start_one_shot_timer() argument
201 do_gettimeofday_fast(&t->tv_set); in start_one_shot_timer()
207 if (tmp == t) { in start_one_shot_timer()
219 t->delay_us = delay_us; in start_one_shot_timer()
220 t->function = function; in start_one_shot_timer()
221 t->data = data; in start_one_shot_timer()
222 t->name = name; in start_one_shot_timer()
224 t->tv_expires.tv_usec = t->tv_set.tv_usec + delay_us % 1000000; in start_one_shot_timer()
225 t->tv_expires.tv_jiff = t->tv_set.tv_jiff + delay_us / 1000000 / HZ; in start_one_shot_timer()
226 if (t->tv_expires.tv_usec > 1000000) { in start_one_shot_timer()
227 t->tv_expires.tv_usec -= 1000000; in start_one_shot_timer()
228 t->tv_expires.tv_jiff += HZ; in start_one_shot_timer()
231 timer_added_log[fast_timers_added % NUM_TIMER_STATS] = *t; in start_one_shot_timer()
236 if (tmp == NULL || fasttime_cmp(&t->tv_expires, &tmp->tv_expires) < 0) { in start_one_shot_timer()
238 t->prev = NULL; in start_one_shot_timer()
239 t->next = fast_timer_list; in start_one_shot_timer()
241 fast_timer_list->prev = t; in start_one_shot_timer()
242 fast_timer_list = t; in start_one_shot_timer()
244 timer_started_log[fast_timers_started % NUM_TIMER_STATS] = *t; in start_one_shot_timer()
250 fasttime_cmp(&t->tv_expires, &tmp->next->tv_expires) > 0) in start_one_shot_timer()
253 t->prev = tmp; in start_one_shot_timer()
254 t->next = tmp->next; in start_one_shot_timer()
257 tmp->next->prev = t; in start_one_shot_timer()
259 tmp->next = t; in start_one_shot_timer()
268 static inline int fast_timer_pending (const struct fast_timer * t) in fast_timer_pending() argument
270 return (t->next != NULL) || (t->prev != NULL) || (t == fast_timer_list); in fast_timer_pending()
273 static inline int detach_fast_timer (struct fast_timer *t) in detach_fast_timer() argument
276 if (!fast_timer_pending(t)) in detach_fast_timer()
278 next = t->next; in detach_fast_timer()
279 prev = t->prev; in detach_fast_timer()
290 int del_fast_timer(struct fast_timer * t) in del_fast_timer() argument
296 ret = detach_fast_timer(t); in del_fast_timer()
297 t->next = t->prev = NULL; in del_fast_timer()
324 struct fast_timer *t; in timer_trig_handler() local
356 t = fast_timer_list; in timer_trig_handler()
357 while (t) { in timer_trig_handler()
365 if (fasttime_cmp(&t->tv_expires, &tv) <= 0) { in timer_trig_handler()
368 timer_expired_log[fast_timers_expired % NUM_TIMER_STATS] = *t; in timer_trig_handler()
373 if (t->prev) in timer_trig_handler()
374 t->prev->next = t->next; in timer_trig_handler()
376 fast_timer_list = t->next; in timer_trig_handler()
377 if (t->next) in timer_trig_handler()
378 t->next->prev = t->prev; in timer_trig_handler()
379 t->prev = NULL; in timer_trig_handler()
380 t->next = NULL; in timer_trig_handler()
388 f = t->function; in timer_trig_handler()
389 d = t->data; in timer_trig_handler()
404 t = fast_timer_list; in timer_trig_handler()
405 if (t != NULL) { in timer_trig_handler()
413 if (time_after_eq(t->tv_expires.tv_jiff, tv.tv_jiff)) in timer_trig_handler()
414 us = ((t->tv_expires.tv_jiff - tv.tv_jiff) * in timer_trig_handler()
415 1000000 / HZ + t->tv_expires.tv_usec - in timer_trig_handler()
421 timer_started_log[fast_timers_started % NUM_TIMER_STATS] = *t; in timer_trig_handler()
437 if (!t) in timer_trig_handler()
452 struct fast_timer t; in schedule_usleep() local
457 start_one_shot_timer(&t, wake_up_func, (unsigned long)&sleep_wait, us, in schedule_usleep()
461 wait_event(sleep_wait, !fast_timer_pending(&t)); in schedule_usleep()
476 struct fast_timer *t, *nextt; in proc_fasttimer_show() local
525 t = &timer_started_log[cur]; in proc_fasttimer_show()
527 t->name, in proc_fasttimer_show()
528 (unsigned long)t->tv_set.tv_jiff, in proc_fasttimer_show()
529 (unsigned long)t->tv_set.tv_usec, in proc_fasttimer_show()
530 (unsigned long)t->tv_expires.tv_jiff, in proc_fasttimer_show()
531 (unsigned long)t->tv_expires.tv_usec, in proc_fasttimer_show()
532 t->delay_us, in proc_fasttimer_show()
533 t->data); in proc_fasttimer_show()
545 t = &timer_added_log[(fast_timers_added - i - 1) % NUM_TIMER_STATS]; in proc_fasttimer_show()
547 t->name, in proc_fasttimer_show()
548 (unsigned long)t->tv_set.tv_jiff, in proc_fasttimer_show()
549 (unsigned long)t->tv_set.tv_usec, in proc_fasttimer_show()
550 (unsigned long)t->tv_expires.tv_jiff, in proc_fasttimer_show()
551 (unsigned long)t->tv_expires.tv_usec, in proc_fasttimer_show()
552 t->delay_us, in proc_fasttimer_show()
553 t->data); in proc_fasttimer_show()
563 t = &timer_expired_log[(fast_timers_expired - i - 1) % NUM_TIMER_STATS]; in proc_fasttimer_show()
565 t->name, in proc_fasttimer_show()
566 (unsigned long)t->tv_set.tv_jiff, in proc_fasttimer_show()
567 (unsigned long)t->tv_set.tv_usec, in proc_fasttimer_show()
568 (unsigned long)t->tv_expires.tv_jiff, in proc_fasttimer_show()
569 (unsigned long)t->tv_expires.tv_usec, in proc_fasttimer_show()
570 t->delay_us, in proc_fasttimer_show()
571 t->data); in proc_fasttimer_show()
580 t = fast_timer_list; in proc_fasttimer_show()
581 while (t != NULL){ in proc_fasttimer_show()
582 nextt = t->next; in proc_fasttimer_show()
585 t->name, in proc_fasttimer_show()
586 (unsigned long)t->tv_set.tv_jiff, in proc_fasttimer_show()
587 (unsigned long)t->tv_set.tv_usec, in proc_fasttimer_show()
588 (unsigned long)t->tv_expires.tv_jiff, in proc_fasttimer_show()
589 (unsigned long)t->tv_expires.tv_usec, in proc_fasttimer_show()
590 t->delay_us, in proc_fasttimer_show()
591 t->data); in proc_fasttimer_show()
595 if (t->next != nextt) in proc_fasttimer_show()
597 t = nextt; in proc_fasttimer_show()
742 struct fast_timer *t = &tr[j]; in fast_timer_test() local
745 t->name, in fast_timer_test()
746 t->tv_set.tv_jiff, in fast_timer_test()
747 t->tv_set.tv_usec, in fast_timer_test()
748 t->tv_expires.tv_jiff, in fast_timer_test()
749 t->tv_expires.tv_usec, in fast_timer_test()
750 t->data, in fast_timer_test()
751 t->function in fast_timer_test()
755 t->delay_us, in fast_timer_test()
759 (tv_exp[j].tv_jiff - t->tv_expires.tv_jiff) * in fast_timer_test()
761 t->tv_expires.tv_usec); in fast_timer_test()