Thread (34 messages) flat view 34 messages, 3 authors, 2016-03-01

[BUG FIX] PM / cpu_domains: Check for NULL callbacks

From: rafael@kernel.org (Rafael J. Wysocki)
Date: 2016-02-18 17:46:42
Also in: linux-arm-msm, linux-pm

On Thu, Feb 18, 2016 at 6:29 PM, Lina Iyer [off-list ref] wrote:
quoted hunk ↗ jump to hunk
Check for NULL platform callback before calling.

Signed-off-by: Lina Iyer <redacted>
---
 drivers/base/power/cpu_domains.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/base/power/cpu_domains.c b/drivers/base/power/cpu_domains.c
index 7069411..bcaa474 100644
--- a/drivers/base/power/cpu_domains.c
+++ b/drivers/base/power/cpu_domains.c
@@ -157,16 +157,22 @@ static int cpu_pd_power_on(struct generic_pm_domain *genpd)
 {
        struct cpu_pm_domain *pd = to_cpu_pd(genpd);

-       return pd->ops.power_on();
+       if (pd->ops.power_on)
+               return pd->ops.power_on();
+
+       return 0;
 }
I usually write things like that as

return pd->ops.power_on ? pd->ops.power_on() : 0;

That gets the job done in just one line of code instead of 4 and in
one statement instead of 3.

Thanks,
Rafael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help