![]() Thread overview: 66+ messages / expand mbox. SYSCALL_DEFINE1(timer_getoverrun, timer_t, timer_id) * the call back to do_schedule_next_timer(). * is not queued) or at the actual delivery time (as we are informed by * the signal is delivered, either at the notify time (if the info block * accumulating overruns on the next timer. * Not really bad, but not that we -701,7 +701,7 SYSCALL_DEFINE2(timer_gettime, timer_t, timer_id, * and re-schedules it while ->sigq is pending. * do_schedule_next_timer() locks the timer * We re-queue ->sigq and drop ->it_lock(). + * si_sys_private it calls posixtimer_rearm(). * si_sys_private it calls do_schedule_next_timer(). * If dequeue_signal() sees the "right" value of + * dequeue_signal()->posixtimer_rearm(). * dequeue_signal()->do_schedule_next_timer(). * FIXME: if ->sigq is queued we can race with Unsigned long -336,12 +336,12 int posix_timer_event(struct k_itimer *timr, int si_private) +void posixtimer_rearm(struct siginfo *info) void do_schedule_next_timer(struct siginfo *info) * we require that the it_requeue_pending flag be set. * To protect against the timer going away while the interrupt is queued, +++ -305,7 +305,7 static void schedule_next_timer(struct k_itimer *timr) Void posix_cpu_timer_schedule(struct k_itimer *timer)ĭiff -git a/kernel/time/posix-timers.c b/kernel/time/posix-timers.c * when the last timer signal was delivered and we have to reload the timer. + * This is called from the signal code (via posixtimer_rearm) * This is called from the signal code (via do_schedule_next_timer) +++ -981,7 +981,7 static void check_process_timers(struct task_struct *tsk, ![]() ITIMERPROF This timer is marking process virtual time plus time spent while the system is running on behalf of the process. ![]() A SIGVTALRM signal is generated after each interval of time. Process virtual time is the amount of time spent while executing in the process, and can be thought of as a CPU timer. +++ -630,7 +630,7 int dequeue_signal(struct task_struct *tsk, sigset_t *mask, siginfo_t *info)ĭiff -git a/kernel/time/posix-cpu-timers.c b/kernel/time/posix-cpu-timers.c This timer is marking process virtual time. +void posixtimer_rearm(struct siginfo *info) ĭiff -git a/kernel/signal.c b/kernel/signal.c Void update_rlimit_cpu(struct task_struct *task, unsigned long rlim_new) +++ -112,6 +112,6 long clock_nanosleep_restart(struct restart_block *restart_block) Kernel/time/posix-timers.c | 10 +++++-Ĥ files changed, 8 insertions(+), 8 deletions(-)ĭiff -git a/include/linux/posix-timers.h b/include/linux/posix-timers.h Posix-timers: Rename do_schedule_next_timer Posix-timers: Rename do_schedule_next_timer - tip-bot for Thomas Gleixner All of help / color / mirror / Atom feed From: tip-bot for Thomas Gleixner ![]()
0 Comments
Leave a Reply. |