timers: fix itimer/many thread hang, fix #2
authorIngo Molnar <mingo@elte.hu>
Sun, 14 Sep 2008 15:03:52 +0000 (17:03 +0200)
committerIngo Molnar <mingo@elte.hu>
Sun, 14 Sep 2008 15:02:43 +0000 (17:02 +0200)
fix the UP build:

In file included from arch/x86/kernel/asm-offsets_32.c:9,
                 from arch/x86/kernel/asm-offsets.c:3:
include/linux/sched.h: In function ‘thread_group_cputime_clone_thread’:
include/linux/sched.h:2272: warning: no return statement in function returning non-void
include/linux/sched.h: In function ‘thread_group_cputime_account_user’:
include/linux/sched.h:2284: error: invalid type argument of ‘->’ (have ‘struct task_cputime’)
include/linux/sched.h:2284: error: invalid type argument of ‘->’ (have ‘struct task_cputime’)
include/linux/sched.h: In function ‘thread_group_cputime_account_system’:
include/linux/sched.h:2291: error: invalid type argument of ‘->’ (have ‘struct task_cputime’)
include/linux/sched.h:2291: error: invalid type argument of ‘->’ (have ‘struct task_cputime’)
include/linux/sched.h: In function ‘thread_group_cputime_account_exec_runtime’:
include/linux/sched.h:2298: error: invalid type argument of ‘->’ (have ‘struct task_cputime’)
distcc[14501] ERROR: compile arch/x86/kernel/asm-offsets.c on a/30 failed
make[1]: *** [arch/x86/kernel/asm-offsets.s] Error 1

Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/sched.h

index 26d7a5f..ed355f0 100644 (file)
@@ -2251,6 +2251,7 @@ static inline void thread_group_cputime_free(struct signal_struct *sig)
 static inline int thread_group_cputime_clone_thread(struct task_struct *curr,
                                                     struct task_struct *tsk)
 {
+       return 0;
 }
 
 static inline void thread_group_cputime(struct task_struct *tsk,
@@ -2263,21 +2264,21 @@ static inline void thread_group_cputime_account_user(
        struct thread_group_cputime *tgtimes,
        cputime_t cputime)
 {
-       tgtimes->totals->utime = cputime_add(tgtimes->totals->utime, cputime);
+       tgtimes->totals.utime = cputime_add(tgtimes->totals.utime, cputime);
 }
 
 static inline void thread_group_cputime_account_system(
        struct thread_group_cputime *tgtimes,
        cputime_t cputime)
 {
-       tgtimes->totals->stime = cputime_add(tgtimes->totals->stime, cputime);
+       tgtimes->totals.stime = cputime_add(tgtimes->totals.stime, cputime);
 }
 
 static inline void thread_group_cputime_account_exec_runtime(
        struct thread_group_cputime *tgtimes,
        unsigned long long ns)
 {
-       tgtimes->totals->sum_exec_runtime += ns;
+       tgtimes->totals.sum_exec_runtime += ns;
 }
 
 #endif /* CONFIG_SMP */