Skip to contentSkip to conversation

Patch "cpufreq: Avoid false-positive WARN_ON()s in cpufreq_update_policy()" has been added to the 4.6-stable tree

PATCH [email protected] 1 participant 1 message Aug 3, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

cpufreq: Avoid false-positive WARN_ON()s in cpufreq_update_policy()

to the 4.6-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
cpufreq-avoid-false-positive-warn_on-s-in-cpufreq_update_policy.patch
and it can be found in the queue-4.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 742c87bf27d3b715820da6f8a81d6357adbf18f8 Mon Sep 17 00:00:00 2001

From: "Rafael J. Wysocki" <[email protected]>
Date: Tue, 28 Jun 2016 03:29:29 +0200
Subject: cpufreq: Avoid false-positive WARN_ON()s in cpufreq_update_policy()

From: Rafael J. Wysocki <[email protected]>

commit 742c87bf27d3b715820da6f8a81d6357adbf18f8 upstream.

CPU notifications from the firmware coming in when cpufreq is suspended cause cpufreq_update_current_freq() to return 0 which triggers the WARN_ON() in cpufreq_update_policy() for no reason.

Avoid that by checking cpufreq_suspended before calling cpufreq_update_current_freq().

Fixes c9d9c929e674 (cpufreq: Abort cpufreq_update_current_freq() for cpufreq_suspended set)
---
 drivers/cpufreq/cpufreq.c |    4 ++++
 1 file changed, 4 insertions(+)
drivers/cpufreq/cpufreq.c +4 -0
@@ -2169,6 +2169,10 @@ int cpufreq_update_policy(unsigned int c
 	 * -> ask driver for current freq and notify governors about a change
 	 */
 	if (cpufreq_driver->get && !cpufreq_driver->setpolicy) {
+		if (cpufreq_suspended) {
+			ret = -EAGAIN;
+			goto unlock;
+		}
 		new_policy.cur = cpufreq_update_current_freq(policy);
 		if (WARN_ON(!new_policy.cur)) {
 			ret = -EIO;

Patches currently in stable-queue which might be from [email protected] are

queue-4.6/cpufreq-avoid-false-positive-warn_on-s-in-cpufreq_update_policy.patch