ds1wm: should check for IS_ERR(clk) instead of NULL

On the error condition clk_get() returns ERR_PTR(..), so checking for NULL
doesn't work.  ds1wm module causes a kernel oops when ds1wm clock isn't
registered.

This patch converts NULL check to IS_ERR(), plus uses PTR_ERR()
for the return code.

Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Acked-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Anton Vorontsov 2008-03-04 14:28:43 -08:00 committed by Linus Torvalds
parent 4874cc1b51
commit fbc357df2e

View File

@ -17,6 +17,7 @@
#include <linux/pm.h> #include <linux/pm.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/err.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/ds1wm.h> #include <linux/ds1wm.h>
@ -374,8 +375,8 @@ static int ds1wm_probe(struct platform_device *pdev)
goto err1; goto err1;
ds1wm_data->clk = clk_get(&pdev->dev, "ds1wm"); ds1wm_data->clk = clk_get(&pdev->dev, "ds1wm");
if (!ds1wm_data->clk) { if (IS_ERR(ds1wm_data->clk)) {
ret = -ENOENT; ret = PTR_ERR(ds1wm_data->clk);
goto err2; goto err2;
} }