Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9eb59573 authored by Andi Kleen's avatar Andi Kleen Committed by Dave Jones
Browse files

[CPUFREQ] Don't take semaphore in cpufreq_quick_get()



I don't see any reason to take an expensive lock in cpufreq_quick_get()
Reading policy->cur is a single atomic operation and after
the lock is dropped again the state could change any time anyways.

So don't take the lock in the first place.

This also makes this function interrupt safe which is useful
for some code of mine.

Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Cc: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Signed-off-by: default avatarDave Jones <davej@redhat.com>
parent 562d94d9
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -1111,12 +1111,7 @@ unsigned int cpufreq_quick_get(unsigned int cpu)
	unsigned int ret_freq = 0;

	if (policy) {
		if (unlikely(lock_policy_rwsem_read(cpu)))
			return ret_freq;

		ret_freq = policy->cur;

		unlock_policy_rwsem_read(cpu);
		cpufreq_cpu_put(policy);
	}