2020-03-17 06:34:53

by Jeffy Chen

[permalink] [raw]
Subject: [PATCH v2] arch_topology: Fix putting invalid cpu clk

Add a sanity check before putting the cpu clk.

Fixes: b8fe128dad8f (“arch_topology: Adjust initial CPU capacities with current freq")
Signed-off-by: Jeffy Chen <[email protected]>
---

Changes in v2:
Correct fixes commit's commit id

drivers/base/arch_topology.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
index 8a9fe2bc8635..4d0a0038b476 100644
--- a/drivers/base/arch_topology.c
+++ b/drivers/base/arch_topology.c
@@ -176,11 +176,11 @@ bool __init topology_parse_cpu_capacity(struct device_node *cpu_node, int cpu)
* frequency (by keeping the initial freq_factor value).
*/
cpu_clk = of_clk_get(cpu_node, 0);
- if (!PTR_ERR_OR_ZERO(cpu_clk))
+ if (!PTR_ERR_OR_ZERO(cpu_clk)) {
per_cpu(freq_factor, cpu) =
clk_get_rate(cpu_clk) / 1000;
-
- clk_put(cpu_clk);
+ clk_put(cpu_clk);
+ }
} else {
if (raw_capacity) {
pr_err("cpu_capacity: missing %pOF raw capacity\n",
--
2.11.0




2020-03-17 06:43:12

by Sudeep Holla

[permalink] [raw]
Subject: Re: [PATCH v2] arch_topology: Fix putting invalid cpu clk

On Tue, Mar 17, 2020 at 02:33:08PM +0800, Jeffy Chen wrote:
> Add a sanity check before putting the cpu clk.
>
> Fixes: b8fe128dad8f (“arch_topology: Adjust initial CPU capacities with current freq")


Interesting, I had NACKed the original patch in v1 IIRC.
I was against for adding clk into arch topology as not all platform
control CPUFreq via clk APIs. Anyways, as fix this makes sense, but
I need to take a look and find ways to remove it if possible, but that's
for some other time.

--
Regards,
Sudeep