Thread (11 messages) flat view 11 messages, 4 authors, 2016-06-08

Re: [PATCH V3 8/9] cpufreq: Keep policy->freq_table sorted in ascending order

From: Rafael J. Wysocki <hidden>
Date: 2016-06-06 12:06:35
Also in: linux-pm, lkml

On Monday, June 06, 2016 09:22:31 AM Viresh Kumar wrote:
On 03-06-16, 16:48, Steve Muckle wrote:
quoted
On Fri, Jun 03, 2016 at 07:05:14PM +0530, Viresh Kumar wrote:
...
quoted
@@ -468,20 +469,15 @@ unsigned int acpi_cpufreq_fast_switch(struct cpufreq_policy *policy,
 	struct acpi_cpufreq_data *data = policy->driver_data;
 	struct acpi_processor_performance *perf;
 	struct cpufreq_frequency_table *entry;
-	unsigned int next_perf_state, next_freq, freq;
+	unsigned int next_perf_state, next_freq, index;
 
 	/*
 	 * Find the closest frequency above target_freq.
-	 *
-	 * The table is sorted in the reverse order with respect to the
-	 * frequency and all of the entries are valid (see the initialization).
 	 */
-	entry = policy->freq_table;
-	do {
-		entry++;
-		freq = entry->frequency;
-	} while (freq >= target_freq && freq != CPUFREQ_TABLE_END);
-	entry--;
+	index = cpufreq_frequency_table_target(policy, target_freq,
+					       CPUFREQ_RELATION_L);
Can we call cpufreq_find_index_l directly here? Seems like we could
phase out cpufreq_frequency_table_target() for the most part and call
the helpers directly. It would avoid some code bloat, an unnecessary
switch statement and an error check for an invalid frequency table which
seems unnecessary for every frequency table lookup.
I agree with that, though that requires larger changes across multiple
sites.
What changes and where?
I hope it will be fine if I do it in a separate patch on top of
all this. Right ?
Depending.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help