diff --git a/drivers/misc/uid_cputime.c b/drivers/misc/uid_cputime.c index 18096f679fe..98de3ce62e3 100644 --- a/drivers/misc/uid_cputime.c +++ b/drivers/misc/uid_cputime.c @@ -76,7 +76,7 @@ static struct uid_entry *find_or_register_uid(uid_t uid) static int uid_stat_show(struct seq_file *m, void *v) { struct uid_entry *uid_entry; - struct task_struct *task; + struct task_struct *task, *temp; unsigned long bkt; struct hlist_node *node; @@ -89,7 +89,7 @@ static int uid_stat_show(struct seq_file *m, void *v) } read_lock(&tasklist_lock); - for_each_process(task) { + do_each_thread(temp, task) { uid_entry = find_or_register_uid(task_uid(task)); if (!uid_entry) { read_unlock(&tasklist_lock); @@ -105,7 +105,7 @@ static int uid_stat_show(struct seq_file *m, void *v) uid_entry->active_utime += task->utime; uid_entry->active_stime += task->stime; uid_entry->active_power += task->cpu_power; - } + } while_each_thread(temp, task); read_unlock(&tasklist_lock); hash_for_each(hash_table, bkt, node, uid_entry, hash) {