Lines Matching refs:it
88 if (timer->it.cpu.incr == 0) in bump_cpu_timer()
91 if (now < timer->it.cpu.expires) in bump_cpu_timer()
94 incr = timer->it.cpu.incr; in bump_cpu_timer()
95 delta = now + incr - timer->it.cpu.expires; in bump_cpu_timer()
105 timer->it.cpu.expires += incr; in bump_cpu_timer()
328 INIT_LIST_HEAD(&new_timer->it.cpu.entry); in posix_cpu_timer_create()
348 new_timer->it.cpu.task = p; in posix_cpu_timer_create()
370 struct task_struct *p = timer->it.cpu.task; in posix_cpu_timer_del()
384 WARN_ON_ONCE(!list_empty(&timer->it.cpu.entry)); in posix_cpu_timer_del()
386 if (timer->it.cpu.firing) in posix_cpu_timer_del()
389 list_del(&timer->it.cpu.entry); in posix_cpu_timer_del()
449 struct task_struct *p = timer->it.cpu.task; in arm_timer()
452 struct cpu_timer_list *const nt = &timer->it.cpu; in arm_timer()
509 timer->it.cpu.expires = 0; in cpu_timer_fire()
516 timer->it.cpu.expires = 0; in cpu_timer_fire()
517 } else if (timer->it.cpu.incr == 0) { in cpu_timer_fire()
522 timer->it.cpu.expires = 0; in cpu_timer_fire()
605 struct task_struct *p = timer->it.cpu.task; in posix_cpu_timer_set()
632 old_incr = timer->it.cpu.incr; in posix_cpu_timer_set()
633 old_expires = timer->it.cpu.expires; in posix_cpu_timer_set()
634 if (unlikely(timer->it.cpu.firing)) { in posix_cpu_timer_set()
635 timer->it.cpu.firing = -1; in posix_cpu_timer_set()
638 list_del_init(&timer->it.cpu.entry); in posix_cpu_timer_set()
670 if (val < timer->it.cpu.expires) { in posix_cpu_timer_set()
671 old_expires = timer->it.cpu.expires - val; in posix_cpu_timer_set()
702 timer->it.cpu.expires = new_expires; in posix_cpu_timer_set()
712 timer->it.cpu.incr = timespec_to_sample(timer->it_clock, in posix_cpu_timer_set()
748 struct task_struct *p = timer->it.cpu.task; in posix_cpu_timer_get()
756 timer->it.cpu.incr, &itp->it_interval); in posix_cpu_timer_get()
758 if (timer->it.cpu.expires == 0) { /* Timer not armed at all. */ in posix_cpu_timer_get()
784 timer->it.cpu.expires = 0; in posix_cpu_timer_get()
785 sample_to_timespec(timer->it_clock, timer->it.cpu.expires, in posix_cpu_timer_get()
793 if (now < timer->it.cpu.expires) { in posix_cpu_timer_get()
795 timer->it.cpu.expires - now, in posix_cpu_timer_get()
897 static void check_cpu_itimer(struct task_struct *tsk, struct cpu_itimer *it, in check_cpu_itimer() argument
901 if (!it->expires) in check_cpu_itimer()
904 if (cur_time >= it->expires) { in check_cpu_itimer()
905 if (it->incr) { in check_cpu_itimer()
906 it->expires += it->incr; in check_cpu_itimer()
907 it->error += it->incr_error; in check_cpu_itimer()
908 if (it->error >= onecputick) { in check_cpu_itimer()
909 it->expires -= cputime_one_jiffy; in check_cpu_itimer()
910 it->error -= onecputick; in check_cpu_itimer()
913 it->expires = 0; in check_cpu_itimer()
922 if (it->expires && (!*expires || it->expires < *expires)) { in check_cpu_itimer()
923 *expires = it->expires; in check_cpu_itimer()
957 check_cpu_itimer(tsk, &sig->it[CPUCLOCK_PROF], &prof_expires, ptime, in check_process_timers()
959 check_cpu_itimer(tsk, &sig->it[CPUCLOCK_VIRT], &virt_expires, utime, in check_process_timers()
1006 struct task_struct *p = timer->it.cpu.task; in posix_cpu_timer_schedule()
1035 timer->it.cpu.expires = 0; in posix_cpu_timer_schedule()
1179 list_for_each_entry_safe(timer, next, &firing, it.cpu.entry) { in run_posix_cpu_timers()
1183 list_del_init(&timer->it.cpu.entry); in run_posix_cpu_timers()
1184 cpu_firing = timer->it.cpu.firing; in run_posix_cpu_timers()
1185 timer->it.cpu.firing = 0; in run_posix_cpu_timers()
1248 struct timespec *rqtp, struct itimerspec *it) in do_cpu_nanosleep() argument
1265 memset(it, 0, sizeof *it); in do_cpu_nanosleep()
1266 it->it_value = *rqtp; in do_cpu_nanosleep()
1269 error = posix_cpu_timer_set(&timer, flags, it, NULL); in do_cpu_nanosleep()
1276 if (timer.it.cpu.expires == 0) { in do_cpu_nanosleep()
1298 sample_to_timespec(which_clock, timer.it.cpu.expires, rqtp); in do_cpu_nanosleep()
1299 error = posix_cpu_timer_set(&timer, 0, &zero_it, it); in do_cpu_nanosleep()
1319 if ((it->it_value.tv_sec | it->it_value.tv_nsec) == 0) { in do_cpu_nanosleep()
1338 struct itimerspec it; in posix_cpu_nsleep() local
1349 error = do_cpu_nanosleep(which_clock, flags, rqtp, &it); in posix_cpu_nsleep()
1358 if (rmtp && copy_to_user(rmtp, &it.it_value, sizeof *rmtp)) in posix_cpu_nsleep()
1373 struct itimerspec it; in posix_cpu_nsleep_restart() local
1378 error = do_cpu_nanosleep(which_clock, TIMER_ABSTIME, &t, &it); in posix_cpu_nsleep_restart()
1385 if (rmtp && copy_to_user(rmtp, &it.it_value, sizeof *rmtp)) in posix_cpu_nsleep_restart()