[PATCH v2] drivers/clk/clk: check return value of clk_pm_runtime_get()

Li Zhong posted 1 patch 3 years, 7 months ago
drivers/clk/clk.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
[PATCH v2] drivers/clk/clk: check return value of clk_pm_runtime_get()
Posted by Li Zhong 3 years, 7 months ago
clk_pm_runtime_get() could fail. Check the return status.

Signed-off-by: Li Zhong <floridsleeves@gmail.com>
---
 drivers/clk/clk.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index 7fc191c15507..09353f7bf052 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -2981,8 +2981,12 @@ static void clk_summary_show_subtree(struct seq_file *s, struct clk_core *c,
 				     int level)
 {
 	struct clk_core *child;
+	int ret;
+    
+    ret = clk_pm_runtime_get(c);
+    if (ret)
+        return;
 
-	clk_pm_runtime_get(c);
 	clk_summary_show_one(s, c, level);
 	clk_pm_runtime_put(c);
 
-- 
2.25.1
Re: [PATCH v2] drivers/clk/clk: check return value of clk_pm_runtime_get()
Posted by Stephen Boyd 3 years, 6 months ago
Quoting Li Zhong (2022-09-03 15:41:25)
> clk_pm_runtime_get() could fail. Check the return status.
> 
> Signed-off-by: Li Zhong <floridsleeves@gmail.com>
> ---
>  drivers/clk/clk.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
> index 7fc191c15507..09353f7bf052 100644
> --- a/drivers/clk/clk.c
> +++ b/drivers/clk/clk.c
> @@ -2981,8 +2981,12 @@ static void clk_summary_show_subtree(struct seq_file *s, struct clk_core *c,
>                                      int level)
>  {
>         struct clk_core *child;
> +       int ret;
> +    
> +    ret = clk_pm_runtime_get(c);
> +    if (ret)
> +        return;
>  
> -       clk_pm_runtime_get(c);

The patch is malformed. It can't be applied, sorry. Also, shouldn't we
print something if we can't runtime PM get?

>         clk_summary_show_one(s, c, level);
>         clk_pm_runtime_put(c);
>