of_node_put() was called twice in power_supply_check_supplies() whereas a single call will also work. Rearrange code a bit to make that feasible.
Signed-off-by: Viresh Kumar viresh.kumar@linaro.org --- drivers/power/power_supply_core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/power/power_supply_core.c b/drivers/power/power_supply_core.c index 7657335..8a86cd1 100644 --- a/drivers/power/power_supply_core.c +++ b/drivers/power/power_supply_core.c @@ -218,12 +218,12 @@ static int power_supply_check_supplies(struct power_supply *psy) break;
ret = power_supply_find_supply_from_node(np); + of_node_put(np); + if (ret) { dev_dbg(psy->dev, "Failed to find supply, defer!\n"); - of_node_put(np); return -EPROBE_DEFER; } - of_node_put(np); } while (np);
/* Missing valid "power-supplies" entries */