diff options
author | Michal Meloun <mmel@FreeBSD.org> | 2020-07-12 07:42:21 +0000 |
---|---|---|
committer | Michal Meloun <mmel@FreeBSD.org> | 2020-07-12 07:42:21 +0000 |
commit | a9be5d7515f96cfce750984e21458e11e9d755a7 (patch) | |
tree | e987625f131036d912d2f4fb3665a3d96082f264 /sys/dev/extres | |
parent | 6e9862526a4c20db0505fb02aa1b9e7ea019ad2d (diff) | |
download | src-a9be5d7515f96cfce750984e21458e11e9d755a7.tar.gz src-a9be5d7515f96cfce750984e21458e11e9d755a7.zip |
Assigned clocks: fix off-by-one bug, don't leak allocated memory.
MFC after: 1 week
Notes
Notes:
svn path=/head/; revision=363122
Diffstat (limited to 'sys/dev/extres')
-rw-r--r-- | sys/dev/extres/clk/clk.c | 6 |
1 files 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); } |