Skip to contentSkip to conversation

Patch "cpuidle: fix broadcast control when broadcast can not be entered" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message Dec 21, 2017

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

cpuidle: fix broadcast control when broadcast can not be entered

to the 4.4-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:
cpuidle-fix-broadcast-control-when-broadcast-can-not-be-entered.patch
and it can be found in the queue-4.4 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 foo@baz Thu Dec 21 10:35:49 CET 2017

From: Nicholas Piggin <[email protected]>
Date: Fri, 1 Sep 2017 14:29:56 +1000
Subject: cpuidle: fix broadcast control when broadcast can not be entered

From: Nicholas Piggin <[email protected]>

[ Upstream commit f187851b9b4a76952b1158b86434563dd2031103 ]

When failing to enter broadcast timer mode for an idle state that requires it, a new state is selected that does not require broadcast, but the broadcast variable remains set. This causes tick_broadcast_exit to be called despite not having entered broadcast mode.

This causes the WARN_ON_ONCE(!irqs_disabled()) to trigger in some cases. It does not appear to cause problems for code today, but seems to violate the interface so should be fixed.

---
 drivers/cpuidle/cpuidle.c |    1 +
 1 file changed, 1 insertion(+)
drivers/cpuidle/cpuidle.c +1 -0
@@ -189,6 +189,7 @@ int cpuidle_enter_state(struct cpuidle_d
 			return -EBUSY;
 		}
 		target_state = &drv->states[index];
+		broadcast = false;
 	}
 
 	/* Take note of the planned idle state. */

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

queue-4.4/cpuidle-fix-broadcast-control-when-broadcast-can-not-be-entered.patch