hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/clk/clk-conf.c
....@@ -33,9 +33,12 @@
3333 else
3434 return rc;
3535 }
36
- if (clkspec.np == node && !clk_supplier)
36
+ if (clkspec.np == node && !clk_supplier) {
37
+ of_node_put(clkspec.np);
3738 return 0;
39
+ }
3840 pclk = of_clk_get_from_provider(&clkspec);
41
+ of_node_put(clkspec.np);
3942 if (IS_ERR(pclk)) {
4043 if (PTR_ERR(pclk) != -EPROBE_DEFER)
4144 pr_warn("clk: couldn't get parent clock %d for %pOF\n",
....@@ -48,10 +51,12 @@
4851 if (rc < 0)
4952 goto err;
5053 if (clkspec.np == node && !clk_supplier) {
54
+ of_node_put(clkspec.np);
5155 rc = 0;
5256 goto err;
5357 }
5458 clk = of_clk_get_from_provider(&clkspec);
59
+ of_node_put(clkspec.np);
5560 if (IS_ERR(clk)) {
5661 if (PTR_ERR(clk) != -EPROBE_DEFER)
5762 pr_warn("clk: couldn't get assigned clock %d for %pOF\n",
....@@ -93,10 +98,13 @@
9398 else
9499 return rc;
95100 }
96
- if (clkspec.np == node && !clk_supplier)
101
+ if (clkspec.np == node && !clk_supplier) {
102
+ of_node_put(clkspec.np);
97103 return 0;
104
+ }
98105
99106 clk = of_clk_get_from_provider(&clkspec);
107
+ of_node_put(clkspec.np);
100108 if (IS_ERR(clk)) {
101109 if (PTR_ERR(clk) != -EPROBE_DEFER)
102110 pr_warn("clk: couldn't get clock %d for %pOF\n",