OSDN Git Service

ANDROID: cpufreq: times: skip printing invalid frequencies
authorConnor O'Brien <connoro@google.com>
Tue, 3 Apr 2018 23:05:37 +0000 (16:05 -0700)
committerConnor O'Brien <connoro@google.com>
Tue, 3 Apr 2018 23:59:42 +0000 (16:59 -0700)
The header of /proc/uid_time_in_state should match the logic used for
the rest of the file by skipping invalid frequency table entries.

Test: Read /proc/uid_time_in_state and check for invalid frequencies
in header.
Signed-off-by: Connor O'Brien <connoro@google.com>
Change-Id: I96888e7b71f4928383ff7080c98c988d5fe1a95c

drivers/cpufreq/cpufreq_times.c

index dd4ff65..e5df7a4 100644 (file)
@@ -203,8 +203,12 @@ static int uid_time_in_state_seq_show(struct seq_file *m, void *v)
                        if (!freqs || freqs == last_freqs)
                                continue;
                        last_freqs = freqs;
-                       for (i = 0; i < freqs->max_state; i++)
+                       for (i = 0; i < freqs->max_state; i++) {
+                               if (freqs->freq_table[i] ==
+                                   CPUFREQ_ENTRY_INVALID)
+                                       continue;
                                seq_printf(m, " %d", freqs->freq_table[i]);
+                       }
                }
                seq_putc(m, '\n');
        }