From: Ruchi Kandoi Date: Fri, 31 Jul 2015 17:17:54 +0000 (-0700) Subject: uid_cputime: Iterates over all the threads instead of processes. X-Git-Tag: firefly_0821_release~3678^2~17 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=ba53469fa91f604a523fb027d1bf868e483a5d8b;p=firefly-linux-kernel-4.4.55.git uid_cputime: Iterates over all the threads instead of processes. Bug: 22833116 Change-Id: I775a18f61bd2f4df2bec23d01bd49421d0969f87 Signed-off-by: Ruchi Kandoi (cherry picked from commit eb9cf7d0d416edc93edfe6e784189f02c82701a1) --- diff --git a/drivers/misc/uid_cputime.c b/drivers/misc/uid_cputime.c index 75843985c0e8..43298a43ecc3 100644 --- a/drivers/misc/uid_cputime.c +++ b/drivers/misc/uid_cputime.c @@ -75,7 +75,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; cputime_t utime; cputime_t stime; unsigned long bkt; @@ -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(from_kuid_munged( current_user_ns(), task_uid(task))); if (!uid_entry) { @@ -109,7 +109,7 @@ static int uid_stat_show(struct seq_file *m, void *v) uid_entry->active_utime += utime; uid_entry->active_stime += stime; uid_entry->active_power += task->cpu_power; - } + } while_each_thread(temp, task); read_unlock(&tasklist_lock); hash_for_each(hash_table, bkt, uid_entry, hash) {