From a9be5d7515f96cfce750984e21458e11e9d755a7 Mon Sep 17 00:00:00 2001 From: Michal Meloun Date: Sun, 12 Jul 2020 07:42:21 +0000 Subject: [PATCH] Assigned clocks: fix off-by-one bug, don't leak allocated memory. MFC after: 1 week --- sys/dev/extres/clk/clk.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/dev/extres/clk/clk.c b/sys/dev/extres/clk/clk.c index a6c8cdcd9863..acb4a2cfecb0 100644 --- a/sys/dev/extres/clk/clk.c +++ b/sys/dev/extres/clk/clk.c @@ -1420,15 +1420,17 @@ clk_set_assigned(device_t dev, phandle_t node) } /* First set it's parent if needed */ - if (i <= nparents) + if (i < nparents) clk_set_assigned_parent(dev, clk, i); /* Then set a new frequency */ - if (i <= nrates && rates[i] != 0) + if (i < nrates && rates[i] != 0) clk_set_assigned_rates(dev, clk, rates[i]); clk_release(clk); } + if (rates != NULL) + OF_prop_free(rates); return (0); }