ANDROID: uid_cputime: fix cputime overflow

Converting cputime_t to usec caused overflow when the value is greater
than 1 hour. Use msec and convert to unsigned long long to support bigger
range.

Bug: 22461683

Change-Id: I853fe3e8e7dbf0d3e2cc5c6f9688a5a6e1f1fb3e
Signed-off-by: Jin Qian <jinqian@google.com>
This commit is contained in:
Jin Qian
2015-07-13 18:16:55 -07:00
committed by Dmitry Shmidt
parent 40b78cc953
commit be7074f158

View File

@@ -119,10 +119,12 @@ static int uid_stat_show(struct seq_file *m, void *v)
uid_entry->active_stime;
unsigned long long total_power = uid_entry->power +
uid_entry->active_power;
seq_printf(m, "%d: %u %u %llu\n", uid_entry->uid,
cputime_to_usecs(total_utime),
cputime_to_usecs(total_stime),
total_power);
seq_printf(m, "%d: %llu %llu %llu\n", uid_entry->uid,
(unsigned long long)jiffies_to_msecs(
cputime_to_jiffies(total_utime)) * USEC_PER_MSEC,
(unsigned long long)jiffies_to_msecs(
cputime_to_jiffies(total_stime)) * USEC_PER_MSEC,
total_power);
}
mutex_unlock(&uid_lock);