On Sat, Sep 21, 2013 at 6:21 PM, Viresh Kumar viresh.kumar@linaro.org wrote:
In cpuidle_coupled_register_device() we do following: if (WARN_ON(!cpumask_equal(&dev->coupled_cpus, &coupled->coupled_cpus))) coupled->prevent++;
This is only required to be done when we are using 'coupled' from an existing cpuidle_device and not when we have just done this:
coupled->coupled_cpus = dev->coupled_cpus
So, move this compare statement to the right place.
Signed-off-by: Viresh Kumar viresh.kumar@linaro.org
I don't agree with this. This patch is a tiny optimization in code that is rarely called, and it moves a final sanity check somewhere that it might get missed if the code were later refactored.
drivers/cpuidle/coupled.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/cpuidle/coupled.c b/drivers/cpuidle/coupled.c index e952936..19a89eb 100644 --- a/drivers/cpuidle/coupled.c +++ b/drivers/cpuidle/coupled.c @@ -642,6 +642,10 @@ int cpuidle_coupled_register_device(struct cpuidle_device *dev) other_dev = per_cpu(cpuidle_devices, cpu); if (other_dev && other_dev->coupled) { coupled = other_dev->coupled;
if (WARN_ON(!cpumask_equal(&dev->coupled_cpus,
&coupled->coupled_cpus)))
coupled->prevent++; goto have_coupled; } }
@@ -655,9 +659,6 @@ int cpuidle_coupled_register_device(struct cpuidle_device *dev)
have_coupled: dev->coupled = coupled;
if (WARN_ON(!cpumask_equal(&dev->coupled_cpus, &coupled->coupled_cpus)))
coupled->prevent++;
cpuidle_coupled_update_online_cpus(coupled); coupled->refcnt++;
-- 1.7.12.rc2.18.g61b472e
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/