Re: [PATCH 13/13] cpufreq: make sure frequency transitions are serialized

From: Viresh Kumar
Date: Mon Jun 24 2013 - 09:16:45 EST


On 24 June 2013 18:53, Rafael J. Wysocki <rjw@xxxxxxx> 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--;

Attachment: 0001-cpufreq-make-sure-frequency-transitions-are-serializ.patch
Description: Binary data