| From foo@baz Sun May 27 17:33:38 CEST 2018 |
| From: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| Date: Fri, 26 Jan 2018 23:13:44 +0100 |
| Subject: regulator: of: Add a missing 'of_node_put()' in an error handling path of 'of_regulator_match()' |
| |
| From: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| |
| [ Upstream commit 30966861a7a2051457be8c49466887d78cc47e97 ] |
| |
| If an unlikely failure in 'of_get_regulator_init_data()' occurs, we must |
| release the reference on the current 'child' node before returning. |
| |
| Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| Signed-off-by: Mark Brown <broonie@kernel.org> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/regulator/of_regulator.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/regulator/of_regulator.c |
| +++ b/drivers/regulator/of_regulator.c |
| @@ -282,6 +282,7 @@ int of_regulator_match(struct device *de |
| dev_err(dev, |
| "failed to parse DT for regulator %s\n", |
| child->name); |
| + of_node_put(child); |
| return -EINVAL; |
| } |
| match->of_node = of_node_get(child); |