2022-04-12 19:51:29

by Miaoqian Lin

[permalink] [raw]
Subject: [PATCH] watchdog: rti-wdt: Fix pm_runtime_get_sync() error checking

If the device is already in a runtime PM enabled state
pm_runtime_get_sync() will return 1, so a test for negative
value should be used to check for errors.

Fixes: 2d63908bdbfb ("watchdog: Add K3 RTI watchdog support")
Signed-off-by: Miaoqian Lin <[email protected]>
---
drivers/watchdog/rti_wdt.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/watchdog/rti_wdt.c b/drivers/watchdog/rti_wdt.c
index db843f825860..00ebeffc674f 100644
--- a/drivers/watchdog/rti_wdt.c
+++ b/drivers/watchdog/rti_wdt.c
@@ -226,7 +226,7 @@ static int rti_wdt_probe(struct platform_device *pdev)

pm_runtime_enable(dev);
ret = pm_runtime_get_sync(dev);
- if (ret) {
+ if (ret < 0) {
pm_runtime_put_noidle(dev);
pm_runtime_disable(&pdev->dev);
return dev_err_probe(dev, ret, "runtime pm failed\n");
--
2.17.1


2022-04-12 22:18:03

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH] watchdog: rti-wdt: Fix pm_runtime_get_sync() error checking

On 4/12/22 00:08, Miaoqian Lin wrote:
> If the device is already in a runtime PM enabled state
> pm_runtime_get_sync() will return 1, so a test for negative
> value should be used to check for errors.
>
> Fixes: 2d63908bdbfb ("watchdog: Add K3 RTI watchdog support")
> Signed-off-by: Miaoqian Lin <[email protected]>

Reviewed-by: Guenter Roeck <[email protected]>

> ---
> drivers/watchdog/rti_wdt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/watchdog/rti_wdt.c b/drivers/watchdog/rti_wdt.c
> index db843f825860..00ebeffc674f 100644
> --- a/drivers/watchdog/rti_wdt.c
> +++ b/drivers/watchdog/rti_wdt.c
> @@ -226,7 +226,7 @@ static int rti_wdt_probe(struct platform_device *pdev)
>
> pm_runtime_enable(dev);
> ret = pm_runtime_get_sync(dev);
> - if (ret) {
> + if (ret < 0) {
> pm_runtime_put_noidle(dev);
> pm_runtime_disable(&pdev->dev);
> return dev_err_probe(dev, ret, "runtime pm failed\n");