Loading drivers/cpufreq/cpufreq_interactive.c +17 −17 Original line number Original line Diff line number Diff line Loading @@ -1140,6 +1140,22 @@ static struct notifier_block cpufreq_interactive_idle_nb = { .notifier_call = cpufreq_interactive_idle_notifier, .notifier_call = cpufreq_interactive_idle_notifier, }; }; static void save_tunables(struct cpufreq_policy *policy, struct cpufreq_interactive_tunables *tunables) { int cpu; struct cpufreq_interactive_cpuinfo *pcpu; if (have_governor_per_policy()) cpu = cpumask_first(policy->related_cpus); else cpu = 0; pcpu = &per_cpu(cpuinfo, cpu); WARN_ON(pcpu->cached_tunables && pcpu->cached_tunables != tunables); pcpu->cached_tunables = tunables; } static struct cpufreq_interactive_tunables *alloc_tunable( static struct cpufreq_interactive_tunables *alloc_tunable( struct cpufreq_policy *policy) struct cpufreq_policy *policy) { { Loading @@ -1165,25 +1181,10 @@ static struct cpufreq_interactive_tunables *alloc_tunable( spin_lock_init(&tunables->target_loads_lock); spin_lock_init(&tunables->target_loads_lock); spin_lock_init(&tunables->above_hispeed_delay_lock); spin_lock_init(&tunables->above_hispeed_delay_lock); save_tunables(policy, tunables); return tunables; return tunables; } } static void save_tunables(struct cpufreq_policy *policy, struct cpufreq_interactive_tunables *tunables) { int cpu; struct cpufreq_interactive_cpuinfo *pcpu; if (have_governor_per_policy()) cpu = cpumask_first(policy->related_cpus); else cpu = 0; pcpu = &per_cpu(cpuinfo, cpu); WARN_ON(pcpu->cached_tunables && pcpu->cached_tunables != tunables); pcpu->cached_tunables = tunables; } static struct cpufreq_interactive_tunables *restore_tunables( static struct cpufreq_interactive_tunables *restore_tunables( struct cpufreq_policy *policy) struct cpufreq_policy *policy) { { Loading Loading @@ -1270,7 +1271,6 @@ static int cpufreq_governor_interactive(struct cpufreq_policy *policy, get_sysfs_attr()); get_sysfs_attr()); if (!have_governor_per_policy()) if (!have_governor_per_policy()) cpufreq_put_global_kobject(); cpufreq_put_global_kobject(); save_tunables(policy, tunables); common_tunables = NULL; common_tunables = NULL; } } Loading Loading
drivers/cpufreq/cpufreq_interactive.c +17 −17 Original line number Original line Diff line number Diff line Loading @@ -1140,6 +1140,22 @@ static struct notifier_block cpufreq_interactive_idle_nb = { .notifier_call = cpufreq_interactive_idle_notifier, .notifier_call = cpufreq_interactive_idle_notifier, }; }; static void save_tunables(struct cpufreq_policy *policy, struct cpufreq_interactive_tunables *tunables) { int cpu; struct cpufreq_interactive_cpuinfo *pcpu; if (have_governor_per_policy()) cpu = cpumask_first(policy->related_cpus); else cpu = 0; pcpu = &per_cpu(cpuinfo, cpu); WARN_ON(pcpu->cached_tunables && pcpu->cached_tunables != tunables); pcpu->cached_tunables = tunables; } static struct cpufreq_interactive_tunables *alloc_tunable( static struct cpufreq_interactive_tunables *alloc_tunable( struct cpufreq_policy *policy) struct cpufreq_policy *policy) { { Loading @@ -1165,25 +1181,10 @@ static struct cpufreq_interactive_tunables *alloc_tunable( spin_lock_init(&tunables->target_loads_lock); spin_lock_init(&tunables->target_loads_lock); spin_lock_init(&tunables->above_hispeed_delay_lock); spin_lock_init(&tunables->above_hispeed_delay_lock); save_tunables(policy, tunables); return tunables; return tunables; } } static void save_tunables(struct cpufreq_policy *policy, struct cpufreq_interactive_tunables *tunables) { int cpu; struct cpufreq_interactive_cpuinfo *pcpu; if (have_governor_per_policy()) cpu = cpumask_first(policy->related_cpus); else cpu = 0; pcpu = &per_cpu(cpuinfo, cpu); WARN_ON(pcpu->cached_tunables && pcpu->cached_tunables != tunables); pcpu->cached_tunables = tunables; } static struct cpufreq_interactive_tunables *restore_tunables( static struct cpufreq_interactive_tunables *restore_tunables( struct cpufreq_policy *policy) struct cpufreq_policy *policy) { { Loading Loading @@ -1270,7 +1271,6 @@ static int cpufreq_governor_interactive(struct cpufreq_policy *policy, get_sysfs_attr()); get_sysfs_attr()); if (!have_governor_per_policy()) if (!have_governor_per_policy()) cpufreq_put_global_kobject(); cpufreq_put_global_kobject(); save_tunables(policy, tunables); common_tunables = NULL; common_tunables = NULL; } } Loading