diff mbox series

clk: ti: dra7-atl: fix leak of of_nodes

Message ID 20240826-clk-fix-leak-v1-1-f55418a13aa6@baylibre.com (mailing list archive)
State New
Headers show
Series clk: ti: dra7-atl: fix leak of of_nodes | expand

Commit Message

David Lechner Aug. 26, 2024, 3:35 p.m. UTC
This fix leaking the of_node references in of_dra7_atl_clk_probe().

The docs for of_parse_phandle_with_args() say that the caller must call
of_node_put() on the returned node. This adds the missing of_node_put()
to fix the leak.

Fixes: 9ac33b0ce81f ("CLK: TI: Driver for DRA7 ATL (Audio Tracking Logic)")
Signed-off-by: David Lechner <dlechner@baylibre.com>
---
 drivers/clk/ti/clk-dra7-atl.c | 1 +
 1 file changed, 1 insertion(+)


---
base-commit: 1ca4237ad9ce29b0c66fe87862f1da54ac56a1e8
change-id: 20240826-clk-fix-leak-b547c87321a2

Best regards,

Comments

Markus Elfring Aug. 26, 2024, 4:12 p.m. UTC | #1
> This fix leaking the of_node references in of_dra7_atl_clk_probe().
…

Can other change description be more desirable?
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.11-rc5#n94

Regards,
Markus
Stephen Boyd Aug. 28, 2024, 8:18 p.m. UTC | #2
Quoting David Lechner (2024-08-26 08:35:29)
> This fix leaking the of_node references in of_dra7_atl_clk_probe().
> 
> The docs for of_parse_phandle_with_args() say that the caller must call
> of_node_put() on the returned node. This adds the missing of_node_put()
> to fix the leak.
> 
> Fixes: 9ac33b0ce81f ("CLK: TI: Driver for DRA7 ATL (Audio Tracking Logic)")
> Signed-off-by: David Lechner <dlechner@baylibre.com>
> ---

Applied to clk-next
diff mbox series

Patch

diff --git a/drivers/clk/ti/clk-dra7-atl.c b/drivers/clk/ti/clk-dra7-atl.c
index d964e3affd42..0eab7f3e2eab 100644
--- a/drivers/clk/ti/clk-dra7-atl.c
+++ b/drivers/clk/ti/clk-dra7-atl.c
@@ -240,6 +240,7 @@  static int of_dra7_atl_clk_probe(struct platform_device *pdev)
 		}
 
 		clk = of_clk_get_from_provider(&clkspec);
+		of_node_put(clkspec.np);
 		if (IS_ERR(clk)) {
 			pr_err("%s: failed to get atl clock %d from provider\n",
 			       __func__, i);