Skip to content

Commit

Permalink
Merge branch 'pm-cpufreq-fixes'
Browse files Browse the repository at this point in the history
* pm-cpufreq-fixes:
  cpufreq: Abort cpufreq_update_current_freq() for cpufreq_suspended set
  intel_pstate: Avoid getting stuck in high P-states when idle
  • Loading branch information
Rafael J. Wysocki committed Apr 21, 2016
2 parents c3b46c7 + c9d9c92 commit 395da12
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 0 deletions.
3 changes: 3 additions & 0 deletions drivers/cpufreq/cpufreq.c
Original file line number Diff line number Diff line change
Expand Up @@ -1491,6 +1491,9 @@ static unsigned int cpufreq_update_current_freq(struct cpufreq_policy *policy)
{
unsigned int new_freq;

if (cpufreq_suspended)
return 0;

new_freq = cpufreq_driver->get(policy->cpu);
if (!new_freq)
return 0;
Expand Down
4 changes: 4 additions & 0 deletions drivers/cpufreq/intel_pstate.c
Original file line number Diff line number Diff line change
Expand Up @@ -1130,6 +1130,10 @@ static inline int32_t get_target_pstate_use_performance(struct cpudata *cpu)
sample_ratio = div_fp(int_tofp(pid_params.sample_rate_ns),
int_tofp(duration_ns));
core_busy = mul_fp(core_busy, sample_ratio);
} else {
sample_ratio = div_fp(100 * cpu->sample.mperf, cpu->sample.tsc);
if (sample_ratio < int_tofp(1))
core_busy = 0;
}

cpu->sample.busy_scaled = core_busy;
Expand Down

0 comments on commit 395da12

Please sign in to comment.