ata: libata: make ata_host_suspend() *void*
authorSergey Shtylyov <s.shtylyov@omp.ru>
Wed, 2 Feb 2022 20:58:21 +0000 (23:58 +0300)
committerDamien Le Moal <damien.lemoal@opensource.wdc.com>
Sat, 19 Feb 2022 02:18:35 +0000 (11:18 +0900)
ata_host_suspend() always returns 0, so the result checks in many drivers
look pointless.  Let's make this function return *void* instead of *int*.

Found by Linux Verification Center (linuxtesting.org) with the SVACE static
analysis tool.

Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
16 files changed:
drivers/ata/ahci.c
drivers/ata/ata_piix.c
drivers/ata/libahci_platform.c
drivers/ata/libata-core.c
drivers/ata/pata_arasan_cf.c
drivers/ata/pata_cs5520.c
drivers/ata/pata_imx.c
drivers/ata/pata_macio.c
drivers/ata/pata_mpc52xx.c
drivers/ata/pata_samsung_cf.c
drivers/ata/pata_triflex.c
drivers/ata/sata_fsl.c
drivers/ata/sata_highbank.c
drivers/ata/sata_mv.c
drivers/ata/sata_rcar.c
include/linux/libata.h

index edca4e8..51045fd 100644 (file)
@@ -891,7 +891,8 @@ static int ahci_pci_device_suspend(struct device *dev)
        }
 
        ahci_pci_disable_interrupts(host);
-       return ata_host_suspend(host, PMSG_SUSPEND);
+       ata_host_suspend(host, PMSG_SUSPEND);
+       return 0;
 }
 
 static int ahci_pci_device_resume(struct device *dev)
index 27b0d90..ade5e89 100644 (file)
@@ -993,11 +993,8 @@ static int piix_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg)
 {
        struct ata_host *host = pci_get_drvdata(pdev);
        unsigned long flags;
-       int rc = 0;
 
-       rc = ata_host_suspend(host, mesg);
-       if (rc)
-               return rc;
+       ata_host_suspend(host, mesg);
 
        /* Some braindamaged ACPI suspend implementations expect the
         * controller to be awake on entry; otherwise, it burns cpu
index 1829644..65227ef 100644 (file)
@@ -733,7 +733,8 @@ int ahci_platform_suspend_host(struct device *dev)
        if (hpriv->flags & AHCI_HFLAG_SUSPEND_PHYS)
                ahci_platform_disable_phys(hpriv);
 
-       return ata_host_suspend(host, PMSG_SUSPEND);
+       ata_host_suspend(host, PMSG_SUSPEND);
+       return 0;
 }
 EXPORT_SYMBOL_GPL(ahci_platform_suspend_host);
 
index 3ceda1f..0ddb49f 100644 (file)
@@ -5170,10 +5170,9 @@ EXPORT_SYMBOL_GPL(ata_sas_port_resume);
  *
  *     Suspend @host.  Actual operation is performed by port suspend.
  */
-int ata_host_suspend(struct ata_host *host, pm_message_t mesg)
+void ata_host_suspend(struct ata_host *host, pm_message_t mesg)
 {
        host->dev->power.power_state = mesg;
-       return 0;
 }
 EXPORT_SYMBOL_GPL(ata_host_suspend);
 
@@ -6090,11 +6089,8 @@ EXPORT_SYMBOL_GPL(ata_pci_device_do_resume);
 int ata_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg)
 {
        struct ata_host *host = pci_get_drvdata(pdev);
-       int rc = 0;
 
-       rc = ata_host_suspend(host, mesg);
-       if (rc)
-               return rc;
+       ata_host_suspend(host, mesg);
 
        ata_pci_device_do_suspend(pdev, mesg);
 
index 24c3d5e..e89617e 100644 (file)
@@ -937,7 +937,8 @@ static int arasan_cf_suspend(struct device *dev)
                dmaengine_terminate_all(acdev->dma_chan);
 
        cf_exit(acdev);
-       return ata_host_suspend(host, PMSG_SUSPEND);
+       ata_host_suspend(host, PMSG_SUSPEND);
+       return 0;
 }
 
 static int arasan_cf_resume(struct device *dev)
index 24ce866..f4289a5 100644 (file)
@@ -259,11 +259,8 @@ static int cs5520_reinit_one(struct pci_dev *pdev)
 static int cs5520_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg)
 {
        struct ata_host *host = pci_get_drvdata(pdev);
-       int rc = 0;
 
-       rc = ata_host_suspend(host, mesg);
-       if (rc)
-               return rc;
+       ata_host_suspend(host, mesg);
 
        pci_save_state(pdev);
        return 0;
index 2e53872..1509392 100644 (file)
@@ -223,17 +223,14 @@ static int pata_imx_suspend(struct device *dev)
 {
        struct ata_host *host = dev_get_drvdata(dev);
        struct pata_imx_priv *priv = host->private_data;
-       int ret;
 
-       ret = ata_host_suspend(host, PMSG_SUSPEND);
-       if (!ret) {
-               __raw_writel(0, priv->host_regs + PATA_IMX_ATA_INT_EN);
-               priv->ata_ctl =
-                       __raw_readl(priv->host_regs + PATA_IMX_ATA_CONTROL);
-               clk_disable_unprepare(priv->clk);
-       }
+       ata_host_suspend(host, PMSG_SUSPEND);
 
-       return ret;
+       __raw_writel(0, priv->host_regs + PATA_IMX_ATA_INT_EN);
+       priv->ata_ctl = __raw_readl(priv->host_regs + PATA_IMX_ATA_CONTROL);
+       clk_disable_unprepare(priv->clk);
+
+       return 0;
 }
 
 static int pata_imx_resume(struct device *dev)
index 16e8aa1..3c3509f 100644 (file)
@@ -853,12 +853,8 @@ static int pata_macio_slave_config(struct scsi_device *sdev)
 #ifdef CONFIG_PM_SLEEP
 static int pata_macio_do_suspend(struct pata_macio_priv *priv, pm_message_t mesg)
 {
-       int rc;
-
        /* First, core libata suspend to do most of the work */
-       rc = ata_host_suspend(priv->host, mesg);
-       if (rc)
-               return rc;
+       ata_host_suspend(priv->host, mesg);
 
        /* Restore to default timings */
        pata_macio_default_timings(priv);
index f1d352d..c1b138d 100644 (file)
@@ -824,7 +824,8 @@ mpc52xx_ata_suspend(struct platform_device *op, pm_message_t state)
 {
        struct ata_host *host = platform_get_drvdata(op);
 
-       return ata_host_suspend(host, state);
+       ata_host_suspend(host, state);
+       return 0;
 }
 
 static int
index 3da0e8e..377cd6b 100644 (file)
@@ -608,7 +608,8 @@ static int pata_s3c_suspend(struct device *dev)
 {
        struct ata_host *host = dev_get_drvdata(dev);
 
-       return ata_host_suspend(host, PMSG_SUSPEND);
+       ata_host_suspend(host, PMSG_SUSPEND);
+       return 0;
 }
 
 static int pata_s3c_resume(struct device *dev)
index 8a03359..782162d 100644 (file)
@@ -198,11 +198,8 @@ static const struct pci_device_id triflex[] = {
 static int triflex_ata_pci_device_suspend(struct pci_dev *pdev, pm_message_t mesg)
 {
        struct ata_host *host = pci_get_drvdata(pdev);
-       int rc = 0;
 
-       rc = ata_host_suspend(host, mesg);
-       if (rc)
-               return rc;
+       ata_host_suspend(host, mesg);
 
        /*
         * We must not disable or powerdown the device.
index da01521..cfe93c4 100644 (file)
@@ -1546,7 +1546,9 @@ static int sata_fsl_remove(struct platform_device *ofdev)
 static int sata_fsl_suspend(struct platform_device *op, pm_message_t state)
 {
        struct ata_host *host = platform_get_drvdata(op);
-       return ata_host_suspend(host, state);
+
+       ata_host_suspend(host, state);
+       return 0;
 }
 
 static int sata_fsl_resume(struct platform_device *op)
index b29d3f1..077bce7 100644 (file)
@@ -587,7 +587,8 @@ static int ahci_highbank_suspend(struct device *dev)
        writel(ctl, mmio + HOST_CTL);
        readl(mmio + HOST_CTL); /* flush */
 
-       return ata_host_suspend(host, PMSG_SUSPEND);
+       ata_host_suspend(host, PMSG_SUSPEND);
+       return 0;
 }
 
 static int ahci_highbank_resume(struct device *dev)
index 53446b9..3b2a0d2 100644 (file)
@@ -4235,10 +4235,10 @@ static int mv_platform_remove(struct platform_device *pdev)
 static int mv_platform_suspend(struct platform_device *pdev, pm_message_t state)
 {
        struct ata_host *host = platform_get_drvdata(pdev);
+
        if (host)
-               return ata_host_suspend(host, state);
-       else
-               return 0;
+               ata_host_suspend(host, state);
+       return 0;
 }
 
 static int mv_platform_resume(struct platform_device *pdev)
index 3d96b6f..be8bfef 100644 (file)
@@ -945,19 +945,17 @@ static int sata_rcar_suspend(struct device *dev)
        struct ata_host *host = dev_get_drvdata(dev);
        struct sata_rcar_priv *priv = host->private_data;
        void __iomem *base = priv->base;
-       int ret;
 
-       ret = ata_host_suspend(host, PMSG_SUSPEND);
-       if (!ret) {
-               /* disable interrupts */
-               iowrite32(0, base + ATAPI_INT_ENABLE_REG);
-               /* mask */
-               iowrite32(priv->sataint_mask, base + SATAINTMASK_REG);
+       ata_host_suspend(host, PMSG_SUSPEND);
 
-               pm_runtime_put(dev);
-       }
+       /* disable interrupts */
+       iowrite32(0, base + ATAPI_INT_ENABLE_REG);
+       /* mask */
+       iowrite32(priv->sataint_mask, base + SATAINTMASK_REG);
 
-       return ret;
+       pm_runtime_put(dev);
+
+       return 0;
 }
 
 static int sata_rcar_resume(struct device *dev)
index 605756f..a49e75c 100644 (file)
@@ -1080,7 +1080,7 @@ extern int ata_sas_scsi_ioctl(struct ata_port *ap, struct scsi_device *dev,
 extern bool ata_link_online(struct ata_link *link);
 extern bool ata_link_offline(struct ata_link *link);
 #ifdef CONFIG_PM
-extern int ata_host_suspend(struct ata_host *host, pm_message_t mesg);
+extern void ata_host_suspend(struct ata_host *host, pm_message_t mesg);
 extern void ata_host_resume(struct ata_host *host);
 extern void ata_sas_port_suspend(struct ata_port *ap);
 extern void ata_sas_port_resume(struct ata_port *ap);