power-supply: Return early if "power-supplies" property isn't valid
authorViresh Kumar <viresh.kumar@linaro.org>
Thu, 4 Sep 2014 12:01:23 +0000 (17:31 +0530)
committerSebastian Reichel <sre@kernel.org>
Tue, 16 Sep 2014 09:01:27 +0000 (11:01 +0200)
If power-supply's DT node doesn't have a valid "power-supplies" entry, then
power_supply_check_supplies() should return early instead of trying to allocate
memory for "supplied_from" array.

Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
drivers/power/power_supply_core.c

index 10f0b57f00d90abf7447dea6e6dfb533340c0b57..414384a4ab520dc46f13ba0310e900ba927ba5fe 100644 (file)
@@ -226,6 +226,10 @@ static int power_supply_check_supplies(struct power_supply *psy)
                of_node_put(np);
        } while (np);
 
+       /* Missing valid "power-supplies" entries */
+       if (cnt == 1)
+               return 0;
+
        /* All supplies found, allocate char ** array for filling */
        psy->supplied_from = devm_kzalloc(psy->dev, sizeof(psy->supplied_from),
                                          GFP_KERNEL);