pata_at91: call clk_put() on ata_host_activate() failure
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Mon, 10 Oct 2011 15:09:17 +0000 (19:09 +0400)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 14 Oct 2011 17:01:39 +0000 (13:01 -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 960c725713951632869b9bc01585374ea2e5ae4d..c6d14090a42b1eb3957527a9b937434077b48314 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;