pata_at91: call clk_put() on ata_host_activate() failure
Sergei Shtylyov [Mon, 10 Oct 2011 15:09:17 +0000 (19:09 +0400)]
pata_at91_probe() forgets to call clk_put() iff ata_host_activate() fails...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>

drivers/ata/pata_at91.c

index 960c725..c6d1409 100644 (file)
@@ -414,10 +414,13 @@ static int __devinit pata_at91_probe(struct platform_device *pdev)
 
        host->private_data = info;
 
-       return ata_host_activate(host, irq ? gpio_to_irq(irq) : 0,
+       ret = ata_host_activate(host, irq ? gpio_to_irq(irq) : 0,
                        irq ? ata_sff_interrupt : NULL,
                        irq_flags, &pata_at91_sht);
 
+       if (!ret)
+               return 0;
+
 err_put:
        clk_put(info->mck);
        return ret;