summaryrefslogtreecommitdiff
path: root/arch/mips/cavium-octeon
diff options
context:
space:
mode:
authorLiang He <windhl@126.com>2022-07-01 20:41:12 +0800
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>2022-07-05 11:16:03 +0200
commit7a9f743ceead60ed454c46fbc3085ee9a79cbebb (patch)
tree4ae608dee80c8e6f20407ace5b0214cc5af3e408 /arch/mips/cavium-octeon
parent5f7e2f3e7ce78719c438e9240ea7aa6779632068 (diff)
downloadlwn-7a9f743ceead60ed454c46fbc3085ee9a79cbebb.tar.gz
lwn-7a9f743ceead60ed454c46fbc3085ee9a79cbebb.zip
mips: cavium-octeon: Fix missing of_node_put() in octeon2_usb_clocks_start
We should call of_node_put() for the reference 'uctl_node' returned by of_get_parent() which will increase the refcount. Otherwise, there will be a refcount leak bug. Signed-off-by: Liang He <windhl@126.com> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Diffstat (limited to 'arch/mips/cavium-octeon')
-rw-r--r--arch/mips/cavium-octeon/octeon-platform.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips/cavium-octeon/octeon-platform.c b/arch/mips/cavium-octeon/octeon-platform.c
index a994022e32c9..ce05c0dd3acd 100644
--- a/arch/mips/cavium-octeon/octeon-platform.c
+++ b/arch/mips/cavium-octeon/octeon-platform.c
@@ -86,11 +86,12 @@ static void octeon2_usb_clocks_start(struct device *dev)
"refclk-frequency", &clock_rate);
if (i) {
dev_err(dev, "No UCTL \"refclk-frequency\"\n");
+ of_node_put(uctl_node);
goto exit;
}
i = of_property_read_string(uctl_node,
"refclk-type", &clock_type);
-
+ of_node_put(uctl_node);
if (!i && strcmp("crystal", clock_type) == 0)
is_crystal_clock = true;
}