Message ID | 20211211184449.18211-1-W_Armin@gmx.de (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | hwmon: (raspberrypi) Exit immediately in case of error in init | expand |
On Sat, Dec 11, 2021 at 07:44:49PM +0100, Armin Wolf wrote: > Exit immediately if devm_hwmon_device_register_with_info() > fails since registering a delayed work whould be useless > in such a case anyway. > > Signed-off-by: Armin Wolf <W_Armin@gmx.de> Applied. Thanks, Guenter > --- > drivers/hwmon/raspberrypi-hwmon.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > -- > 2.30.2 > > diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c > index 573f53d52912..1650d3b4c26e 100644 > --- a/drivers/hwmon/raspberrypi-hwmon.c > +++ b/drivers/hwmon/raspberrypi-hwmon.c > @@ -120,6 +120,8 @@ static int rpi_hwmon_probe(struct platform_device *pdev) > data, > &rpi_chip_info, > NULL); > + if (IS_ERR(data->hwmon_dev)) > + return PTR_ERR(data->hwmon_dev); > > ret = devm_delayed_work_autocancel(dev, &data->get_values_poll_work, > get_values_poll); > @@ -127,10 +129,9 @@ static int rpi_hwmon_probe(struct platform_device *pdev) > return ret; > platform_set_drvdata(pdev, data); > > - if (!PTR_ERR_OR_ZERO(data->hwmon_dev)) > - schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); > + schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); > > - return PTR_ERR_OR_ZERO(data->hwmon_dev); > + return 0; > } > > static struct platform_driver rpi_hwmon_driver = {
diff --git a/drivers/hwmon/raspberrypi-hwmon.c b/drivers/hwmon/raspberrypi-hwmon.c index 573f53d52912..1650d3b4c26e 100644 --- a/drivers/hwmon/raspberrypi-hwmon.c +++ b/drivers/hwmon/raspberrypi-hwmon.c @@ -120,6 +120,8 @@ static int rpi_hwmon_probe(struct platform_device *pdev) data, &rpi_chip_info, NULL); + if (IS_ERR(data->hwmon_dev)) + return PTR_ERR(data->hwmon_dev); ret = devm_delayed_work_autocancel(dev, &data->get_values_poll_work, get_values_poll); @@ -127,10 +129,9 @@ static int rpi_hwmon_probe(struct platform_device *pdev) return ret; platform_set_drvdata(pdev, data); - if (!PTR_ERR_OR_ZERO(data->hwmon_dev)) - schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); + schedule_delayed_work(&data->get_values_poll_work, 2 * HZ); - return PTR_ERR_OR_ZERO(data->hwmon_dev); + return 0; } static struct platform_driver rpi_hwmon_driver = {
Exit immediately if devm_hwmon_device_register_with_info() fails since registering a delayed work whould be useless in such a case anyway. Signed-off-by: Armin Wolf <W_Armin@gmx.de> --- drivers/hwmon/raspberrypi-hwmon.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) -- 2.30.2