On 24 June 2013 18:53, Rafael J. Wysocki rjw@sisk.pl wrote:
You can do
if (WARN(transition_ongoing, "<text>")) return;
and below analogously.
Ahh.. stupid code.. Check if this fixup is fine (attached too)
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index 6624694..6ca7eac 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c @@ -267,10 +267,9 @@ void __cpufreq_notify_transition(struct cpufreq_policy *policy, switch (state) {
case CPUFREQ_PRECHANGE: - if (transition_ongoing) { - WARN(1, "In middle of another frequency transition\n"); + if (WARN(transition_ongoing, + "In middle of another frequency transition\n")) return; - }
transition_ongoing++;
@@ -293,10 +292,9 @@ void __cpufreq_notify_transition(struct cpufreq_policy *policy, break;
case CPUFREQ_POSTCHANGE: - if (!transition_ongoing) { - WARN(1, "No frequency transition in progress\n"); + if (WARN(!transition_ongoing, + "No frequency transition in progress\n")) return; - }
transition_ongoing--;