diff options
Diffstat (limited to 'kernel/sched/cpufreq_schedutil.c')
-rw-r--r-- | kernel/sched/cpufreq_schedutil.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c index 29a397067ffa..45fcf21ad685 100644 --- a/kernel/sched/cpufreq_schedutil.c +++ b/kernel/sched/cpufreq_schedutil.c | |||
@@ -528,16 +528,7 @@ static int sugov_init(struct cpufreq_policy *policy) | |||
528 | goto stop_kthread; | 528 | goto stop_kthread; |
529 | } | 529 | } |
530 | 530 | ||
531 | if (policy->transition_delay_us) { | 531 | tunables->rate_limit_us = cpufreq_policy_transition_delay_us(policy); |
532 | tunables->rate_limit_us = policy->transition_delay_us; | ||
533 | } else { | ||
534 | unsigned int lat; | ||
535 | |||
536 | tunables->rate_limit_us = LATENCY_MULTIPLIER; | ||
537 | lat = policy->cpuinfo.transition_latency / NSEC_PER_USEC; | ||
538 | if (lat) | ||
539 | tunables->rate_limit_us *= lat; | ||
540 | } | ||
541 | 532 | ||
542 | policy->governor_data = sg_policy; | 533 | policy->governor_data = sg_policy; |
543 | sg_policy->tunables = tunables; | 534 | sg_policy->tunables = tunables; |
@@ -655,6 +646,7 @@ static void sugov_limits(struct cpufreq_policy *policy) | |||
655 | static struct cpufreq_governor schedutil_gov = { | 646 | static struct cpufreq_governor schedutil_gov = { |
656 | .name = "schedutil", | 647 | .name = "schedutil", |
657 | .owner = THIS_MODULE, | 648 | .owner = THIS_MODULE, |
649 | .dynamic_switching = true, | ||
658 | .init = sugov_init, | 650 | .init = sugov_init, |
659 | .exit = sugov_exit, | 651 | .exit = sugov_exit, |
660 | .start = sugov_start, | 652 | .start = sugov_start, |