rtc: mxc: fix memory leak
[safe/jmp/linux-2.6] / drivers / rtc / rtc-mxc.c
index 6bd5072..8710f94 100644 (file)
@@ -396,8 +396,11 @@ static int __init mxc_rtc_probe(struct platform_device *pdev)
        pdata->ioaddr = ioremap(res->start, resource_size(res));
 
        clk = clk_get(&pdev->dev, "ckil");
-       if (IS_ERR(clk))
-               return PTR_ERR(clk);
+       if (IS_ERR(clk)) {
+               iounmap(pdata->ioaddr);
+               ret = PTR_ERR(clk);
+               goto exit_free_pdata;
+       }
 
        rate = clk_get_rate(clk);
        clk_put(clk);