ata: sata_dwc_460ex: Convert to platform remove callback returning void
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Mon, 31 Jul 2023 09:16:32 +0000 (11:16 +0200)
committerDamien Le Moal <dlemoal@kernel.org>
Wed, 2 Aug 2023 08:55:52 +0000 (17:55 +0900)
The .remove() callback for a platform driver returns an int which makes
many driver authors wrongly assume it's possible to do error handling by
returning an error code. However the value returned is ignored (apart
from emitting a warning) and this typically results in resource leaks.
To improve here there is a quest to make the remove callback return
void. In the first step of this quest all drivers are converted to
.remove_new() which already returns void. Eventually after all drivers
are converted, .remove_new() is renamed to .remove().

Trivially convert this driver from always returning zero in the remove
callback to the void returning variant.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
drivers/ata/sata_dwc_460ex.c

index d699c5f35153d7e6f11fe18d2f7e86f74791b21c..52f5168e4db542ad6626da8dd6ba00cc8833eada 100644 (file)
@@ -1210,7 +1210,7 @@ error_out:
        return err;
 }
 
-static int sata_dwc_remove(struct platform_device *ofdev)
+static void sata_dwc_remove(struct platform_device *ofdev)
 {
        struct device *dev = &ofdev->dev;
        struct ata_host *host = dev_get_drvdata(dev);
@@ -1226,7 +1226,6 @@ static int sata_dwc_remove(struct platform_device *ofdev)
 #endif
 
        dev_dbg(dev, "done\n");
-       return 0;
 }
 
 static const struct of_device_id sata_dwc_match[] = {
@@ -1241,7 +1240,7 @@ static struct platform_driver sata_dwc_driver = {
                .of_match_table = sata_dwc_match,
        },
        .probe = sata_dwc_probe,
-       .remove = sata_dwc_remove,
+       .remove_new = sata_dwc_remove,
 };
 
 module_platform_driver(sata_dwc_driver);