]> Pileus Git - ~andy/linux/commitdiff
timers: fix itimer/many thread hang, cleanups
authorIngo Molnar <mingo@elte.hu>
Sun, 14 Sep 2008 15:11:46 +0000 (17:11 +0200)
committerIngo Molnar <mingo@elte.hu>
Sun, 14 Sep 2008 15:11:46 +0000 (17:11 +0200)
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/sched.h
kernel/posix-cpu-timers.c

index ed355f02d3293bbbca404044cc3d676d7e545ed7..7ce8d4e5356517e92b403f6189f211fd1500c7d0 100644 (file)
@@ -430,7 +430,7 @@ struct pacct_struct {
  * @utime:             time spent in user mode, in &cputime_t units
  * @stime:             time spent in kernel mode, in &cputime_t units
  * @sum_exec_runtime:  total time spent on the CPU, in nanoseconds
- * 
+ *
  * This structure groups together three kinds of CPU time that are
  * tracked for threads and thread groups.  Most things considering
  * CPU time want to group these counts together and treat all three
index dba1c334c3e874b69d77b536a04f9b05d3ff71a4..9a7ea049fcdcab38d43203a61d137775e170bd16 100644 (file)
@@ -94,7 +94,7 @@ void update_rlimit_cpu(unsigned long rlim_new)
 
        cputime = secs_to_cputime(rlim_new);
        if (cputime_eq(current->signal->it_prof_expires, cputime_zero) ||
-            cputime_lt(current->signal->it_prof_expires, cputime)) {
+           cputime_lt(current->signal->it_prof_expires, cputime)) {
                spin_lock_irq(&current->sighand->siglock);
                set_process_cpu_timer(current, CPUCLOCK_PROF, &cputime, NULL);
                spin_unlock_irq(&current->sighand->siglock);
@@ -1372,9 +1372,9 @@ void run_posix_cpu_timers(struct task_struct *tsk)
         * tsk->signal is non-NULL; this probably can't happen but cover the
         * possibility anyway.
         */
-       if (unlikely(!sig) || !fastpath_timer_check(tsk, sig)) {
+       if (unlikely(!sig) || !fastpath_timer_check(tsk, sig))
                return;
-       }
+
        sighand = lock_task_sighand(tsk, &flags);
        if (likely(sighand)) {
                /*