regulator: mc13783: bail out without platform data
authorSascha Hauer <s.hauer@pengutronix.de>
Wed, 29 Feb 2012 08:01:40 +0000 (09:01 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sun, 11 Mar 2012 20:48:44 +0000 (20:48 +0000)
the platform data pointer is used without checking it. Bail out
in the driver instead of crashing the kernel.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
drivers/regulator/mc13783-regulator.c

index 8e9b90ad88ae35cea58ef488c41ba1383da918e2..6c0face87ffe834db5d69fb19d85f3e1d4ace9b5 100644 (file)
@@ -344,6 +344,9 @@ static int __devinit mc13783_regulator_probe(struct platform_device *pdev)
 
        dev_dbg(&pdev->dev, "%s id %d\n", __func__, pdev->id);
 
+       if (!pdata)
+               return -EINVAL;
+
        priv = devm_kzalloc(&pdev->dev, sizeof(*priv) +
                        pdata->num_regulators * sizeof(priv->regulators[0]),
                        GFP_KERNEL);