提交 8fb28231 编写于 作者: A Axel Lin 提交者: Haojian Zhuang

ARM: pxa: fix error handling in pxa2xx_drv_pcmcia_probe

If pxa2xx_drv_pcmcia_add_one fails, it will go to err1 error path.
Add a missing clk_put in the error path.

Checking the ret value after the for loop is redundant, it is always false.
Thus remove the redundant checking.
Signed-off-by: NAxel Lin <axel.lin@gmail.com>
Acked-by: NEric Miao <eric.y.miao@gmail.com>
Acked-by: NMarek Vasut <marek.vasut@gmail.com>
Signed-off-by: NHaojian Zhuang <haojian.zhuang@gmail.com>
上级 be9bac9d
...@@ -328,21 +328,15 @@ static int pxa2xx_drv_pcmcia_probe(struct platform_device *dev) ...@@ -328,21 +328,15 @@ static int pxa2xx_drv_pcmcia_probe(struct platform_device *dev)
goto err1; goto err1;
} }
if (ret) { pxa2xx_configure_sockets(&dev->dev);
while (--i >= 0) dev_set_drvdata(&dev->dev, sinfo);
soc_pcmcia_remove_one(&sinfo->skt[i]);
kfree(sinfo);
clk_put(clk);
} else {
pxa2xx_configure_sockets(&dev->dev);
dev_set_drvdata(&dev->dev, sinfo);
}
return 0; return 0;
err1: err1:
while (--i >= 0) while (--i >= 0)
soc_pcmcia_remove_one(&sinfo->skt[i]); soc_pcmcia_remove_one(&sinfo->skt[i]);
clk_put(clk);
kfree(sinfo); kfree(sinfo);
err0: err0:
return ret; return ret;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册