2023-02-27 03:14:19

by void0red

[permalink] [raw]
Subject: [PATCH] power: supply: mt6360: add a check of devm_work_autocancel in mt6360_charger_probe

From: Kang Chen <[email protected]>

devm_work_autocancel may fails, add a check and return early.

Signed-off-by: Kang Chen <[email protected]>
---
drivers/power/supply/mt6360_charger.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/power/supply/mt6360_charger.c b/drivers/power/supply/mt6360_charger.c
index 92e48e3a4..1305cba61 100644
--- a/drivers/power/supply/mt6360_charger.c
+++ b/drivers/power/supply/mt6360_charger.c
@@ -796,7 +796,9 @@ static int mt6360_charger_probe(struct platform_device *pdev)
mci->vinovp = 6500000;
mutex_init(&mci->chgdet_lock);
platform_set_drvdata(pdev, mci);
- devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
+ ret = devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
+ if (ret)
+ return dev_err_probe(&pdev->dev, ret, "Failed to set delayed work\n");

ret = device_property_read_u32(&pdev->dev, "richtek,vinovp-microvolt", &mci->vinovp);
if (ret)
--
2.34.1



2023-05-15 23:02:38

by Sebastian Reichel

[permalink] [raw]
Subject: Re: [PATCH] power: supply: mt6360: add a check of devm_work_autocancel in mt6360_charger_probe

Hi,

On Mon, Feb 27, 2023 at 11:14:10AM +0800, void0red wrote:
> From: Kang Chen <[email protected]>
>
> devm_work_autocancel may fails, add a check and return early.
>
> Signed-off-by: Kang Chen <[email protected]>
> ---

Thanks, queued to my fixes branch with Fixes tag added.

-- Sebastian

> drivers/power/supply/mt6360_charger.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/power/supply/mt6360_charger.c b/drivers/power/supply/mt6360_charger.c
> index 92e48e3a4..1305cba61 100644
> --- a/drivers/power/supply/mt6360_charger.c
> +++ b/drivers/power/supply/mt6360_charger.c
> @@ -796,7 +796,9 @@ static int mt6360_charger_probe(struct platform_device *pdev)
> mci->vinovp = 6500000;
> mutex_init(&mci->chgdet_lock);
> platform_set_drvdata(pdev, mci);
> - devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
> + ret = devm_work_autocancel(&pdev->dev, &mci->chrdet_work, mt6360_chrdet_work);
> + if (ret)
> + return dev_err_probe(&pdev->dev, ret, "Failed to set delayed work\n");
>
> ret = device_property_read_u32(&pdev->dev, "richtek,vinovp-microvolt", &mci->vinovp);
> if (ret)
> --
> 2.34.1
>


Attachments:
(No filename) (1.19 kB)
signature.asc (849.00 B)
Download all attachments