summaryrefslogtreecommitdiffstats
path: root/drivers/opp
diff options
context:
space:
mode:
authorTobias Jordan <Tobias.Jordan@elektrobit.com>2017-10-04 08:05:03 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-10-11 01:53:22 +0200
commit7978db344719dab1e56d05e6fc04aaaddcde0a5e (patch)
tree9b2954ce4f427c391cfaac988cc48925023bc447 /drivers/opp
parentPM / OPP: Move error message to debug level (diff)
downloadlinux-7978db344719dab1e56d05e6fc04aaaddcde0a5e.tar.xz
linux-7978db344719dab1e56d05e6fc04aaaddcde0a5e.zip
PM / OPP: Add missing of_node_put(np)
The for_each_available_child_of_node() loop in _of_add_opp_table_v2() doesn't drop the reference to "np" on errors. Fix that. Fixes: 274659029c9d (PM / OPP: Add support to parse "operating-points-v2" bindings) Cc: 4.3+ <stable@vger.kernel.org> # 4.3+ Signed-off-by: Tobias Jordan <Tobias.Jordan@elektrobit.com> [ VK: Improved commit log. ] Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Reviewed-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/opp')
-rw-r--r--drivers/opp/of.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/opp/of.c b/drivers/opp/of.c
index 0b718886479b..87509cb69f79 100644
--- a/drivers/opp/of.c
+++ b/drivers/opp/of.c
@@ -397,6 +397,7 @@ static int _of_add_opp_table_v2(struct device *dev, struct device_node *opp_np)
dev_err(dev, "%s: Failed to add OPP, %d\n", __func__,
ret);
_dev_pm_opp_remove_table(opp_table, dev, false);
+ of_node_put(np);
goto put_opp_table;
}
}