diff options
author | Len Brown <len.brown@intel.com> | 2011-01-12 18:06:19 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2011-01-12 18:06:19 -0500 |
commit | 43952886f0b8b3c344c3392b88de067d5fa5419a (patch) | |
tree | c1a738f11a479246c09976902be5b73aaf731722 /drivers/cpuidle | |
parent | 56dbed129df3fdd4caf9018b6e7599ee258a5420 (diff) | |
parent | f77cfe4ea21760268c0277fa3e4b02dfd2a2c2f4 (diff) | |
download | linux-stable-43952886f0b8b3c344c3392b88de067d5fa5419a.tar.gz linux-stable-43952886f0b8b3c344c3392b88de067d5fa5419a.tar.bz2 linux-stable-43952886f0b8b3c344c3392b88de067d5fa5419a.zip |
Merge branch 'cpuidle-perf-events' into idle-test
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r-- | drivers/cpuidle/cpuidle.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index a2d5b95a6d64..bf5092455a8f 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c @@ -96,7 +96,15 @@ static void cpuidle_idle_call(void) /* enter the state and update stats */ dev->last_state = target_state; + + trace_power_start(POWER_CSTATE, next_state, dev->cpu); + trace_cpu_idle(next_state, dev->cpu); + dev->last_residency = target_state->enter(dev, target_state); + + trace_power_end(dev->cpu); + trace_cpu_idle(PWR_EVENT_EXIT, dev->cpu); + if (dev->last_state) target_state = dev->last_state; @@ -106,8 +114,6 @@ static void cpuidle_idle_call(void) /* give the governor an opportunity to reflect on the outcome */ if (cpuidle_curr_governor->reflect) cpuidle_curr_governor->reflect(dev); - trace_power_end(smp_processor_id()); - trace_cpu_idle(PWR_EVENT_EXIT, smp_processor_id()); } /** |