thermal: rcar_gen3_thermal: Replace devm_add_action() followed by failure action...
authorFuqian Huang <huangfq.daxian@gmail.com>
Mon, 8 Jul 2019 12:34:09 +0000 (20:34 +0800)
committerZhang Rui <rui.zhang@intel.com>
Wed, 28 Aug 2019 09:51:26 +0000 (17:51 +0800)
devm_add_action_or_reset() is introduced as a helper function which
internally calls devm_add_action(). If devm_add_action() fails
then it will execute the action mentioned and return the error code.
This reduce source code size (avoid writing the action twice)
and reduce the likelyhood of bugs.

Signed-off-by: Fuqian Huang <huangfq.daxian@gmail.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
drivers/thermal/rcar_gen3_thermal.c

index a564633..755d2b5 100644 (file)
@@ -443,9 +443,8 @@ static int rcar_gen3_thermal_probe(struct platform_device *pdev)
                if (ret)
                        goto error_unregister;
 
-               ret = devm_add_action(dev, rcar_gen3_hwmon_action, zone);
+               ret = devm_add_action_or_reset(dev, rcar_gen3_hwmon_action, zone);
                if (ret) {
-                       rcar_gen3_hwmon_action(zone);
                        goto error_unregister;
                }