aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-timechart.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/perf/builtin-timechart.c')
-rw-r--r--tools/perf/builtin-timechart.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/tools/perf/builtin-timechart.c b/tools/perf/builtin-timechart.c
index 5a52ed9fc10b..9bcc38f0b706 100644
--- a/tools/perf/builtin-timechart.c
+++ b/tools/perf/builtin-timechart.c
@@ -300,8 +300,9 @@ struct trace_entry {
struct power_entry {
struct trace_entry te;
- s64 type;
- s64 value;
+ u64 type;
+ u64 value;
+ u64 cpu_id;
};
#define TASK_COMM_LEN 16
@@ -454,8 +455,8 @@ static void sched_switch(int cpu, u64 timestamp, struct trace_entry *te)
if (p->current->state != TYPE_NONE)
pid_put_sample(sw->next_pid, p->current->state, cpu, p->current->state_since, timestamp);
- p->current->state_since = timestamp;
- p->current->state = TYPE_RUNNING;
+ p->current->state_since = timestamp;
+ p->current->state = TYPE_RUNNING;
}
if (prev_p->current) {
@@ -498,13 +499,13 @@ static int process_sample_event(event_t *event, struct perf_session *session)
return 0;
if (strcmp(event_str, "power:power_start") == 0)
- c_state_start(data.cpu, data.time, pe->value);
+ c_state_start(pe->cpu_id, data.time, pe->value);
if (strcmp(event_str, "power:power_end") == 0)
- c_state_end(data.cpu, data.time);
+ c_state_end(pe->cpu_id, data.time);
if (strcmp(event_str, "power:power_frequency") == 0)
- p_state_change(data.cpu, data.time, pe->value);
+ p_state_change(pe->cpu_id, data.time, pe->value);
if (strcmp(event_str, "sched:sched_wakeup") == 0)
sched_wakeup(data.cpu, data.time, data.pid, te);