diff options
author | Viresh Kumar <viresh.kumar@linaro.org> | 2013-10-03 21:26:46 +0530 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-10-30 01:21:22 +0100 |
commit | 47182668ca140ae067d5961ec8c59edf646b36c7 (patch) | |
tree | 1890c804601f6eb8dad535120011bab430ad475e /drivers/cpuidle/cpuidle.c | |
parent | b171a85648e7055c6680c259a9a87806a56a24c3 (diff) | |
download | linux-stable-47182668ca140ae067d5961ec8c59edf646b36c7.tar.gz linux-stable-47182668ca140ae067d5961ec8c59edf646b36c7.tar.bz2 linux-stable-47182668ca140ae067d5961ec8c59edf646b36c7.zip |
cpuidle: rearrange __cpuidle_register_device() to keep minimal exit points
This patch rearranges __cpuidle_register_device() a bit in order to
reduce the number of exit points in that function.
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpuidle/cpuidle.c')
-rw-r--r-- | drivers/cpuidle/cpuidle.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 211e504263fa..8c91badff00b 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c @@ -383,13 +383,12 @@ static int __cpuidle_register_device(struct cpuidle_device *dev) list_add(&dev->device_list, &cpuidle_detected_devices); ret = cpuidle_coupled_register_device(dev); - if (ret) { + if (ret) __cpuidle_unregister_device(dev); - return ret; - } + else + dev->registered = 1; - dev->registered = 1; - return 0; + return ret; } /** |