summary refs log tree commit diff
diff options
context:
space:
mode:
authorLiang He <windhl@126.com>2022-07-18 21:36:31 +0800
committerViresh Kumar <viresh.kumar@linaro.org>2022-07-19 10:35:18 +0530
commitce736cf71b5ab8ad9b741dc7a4a07e41c27d1421 (patch)
treec69e9e0fbda66560642b6310cbc04b496c5c17ee
parent1e5fb38442ebaabb65057c2e58355ee36c2a178f (diff)
downloadlinux-ce736cf71b5ab8ad9b741dc7a4a07e41c27d1421.tar.gz
OPP: Don't drop opp_table->np reference while it is still in use
The OPP table contains a reference of the DT node, opp_table->np,
throughout its lifetime. We shouldn't drop the refcount for the same
from _of_init_opp_table(), but do that while removing the OPP table
finally.

Signed-off-by: Liang He <windhl@126.com>
[ Viresh: Updated subject / commit log and drop reference from
	  _of_clear_opp_table() ]
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
-rw-r--r--drivers/opp/of.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/opp/of.c b/drivers/opp/of.c
index 8367823a2001..e4002b075422 100644
--- a/drivers/opp/of.c
+++ b/drivers/opp/of.c
@@ -242,12 +242,12 @@ void _of_init_opp_table(struct opp_table *opp_table, struct device *dev,
 	opp_table->np = opp_np;
 
 	_opp_table_alloc_required_tables(opp_table, dev, opp_np);
-	of_node_put(opp_np);
 }
 
 void _of_clear_opp_table(struct opp_table *opp_table)
 {
 	_opp_table_free_required_tables(opp_table);
+	of_node_put(opp_table->np);
 }
 
 /*