[PATCH next] accel/rocket: Fix some error checking in rocket_core_init()

Dan Carpenter posted 1 patch 1 month, 1 week ago
drivers/accel/rocket/rocket_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH next] accel/rocket: Fix some error checking in rocket_core_init()
Posted by Dan Carpenter 1 month, 1 week ago
The problem is that pm_runtime_get_sync() can return 1 on success so
checking for zero doesn't work.  Use the pm_runtime_resume_and_get()
function instead.  The pm_runtime_resume_and_get() function does
additional cleanup as well so that's a bonus as well.

Fixes: 0810d5ad88a1 ("accel/rocket: Add job submission IOCTL")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 drivers/accel/rocket/rocket_core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/accel/rocket/rocket_core.c b/drivers/accel/rocket/rocket_core.c
index 72fb5e5798fa..abe7719c1db4 100644
--- a/drivers/accel/rocket/rocket_core.c
+++ b/drivers/accel/rocket/rocket_core.c
@@ -74,7 +74,7 @@ int rocket_core_init(struct rocket_core *core)
 
 	pm_runtime_enable(dev);
 
-	err = pm_runtime_get_sync(dev);
+	err = pm_runtime_resume_and_get(dev);
 	if (err) {
 		rocket_job_fini(core);
 		return err;
-- 
2.47.2
Re: [PATCH next] accel/rocket: Fix some error checking in rocket_core_init()
Posted by Tomeu Vizoso 1 month ago
On Thu, Aug 21, 2025 at 2:30 PM Dan Carpenter <dan.carpenter@linaro.org> wrote:
>
> The problem is that pm_runtime_get_sync() can return 1 on success so
> checking for zero doesn't work.  Use the pm_runtime_resume_and_get()
> function instead.  The pm_runtime_resume_and_get() function does
> additional cleanup as well so that's a bonus as well.
>
> Fixes: 0810d5ad88a1 ("accel/rocket: Add job submission IOCTL")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
>  drivers/accel/rocket/rocket_core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Thanks, Dan, I have applied it to drm-misc-next.

Regards,

Tomeu

> diff --git a/drivers/accel/rocket/rocket_core.c b/drivers/accel/rocket/rocket_core.c
> index 72fb5e5798fa..abe7719c1db4 100644
> --- a/drivers/accel/rocket/rocket_core.c
> +++ b/drivers/accel/rocket/rocket_core.c
> @@ -74,7 +74,7 @@ int rocket_core_init(struct rocket_core *core)
>
>         pm_runtime_enable(dev);
>
> -       err = pm_runtime_get_sync(dev);
> +       err = pm_runtime_resume_and_get(dev);
>         if (err) {
>                 rocket_job_fini(core);
>                 return err;
> --
> 2.47.2
>