regulator: mc13783: bail out without platform data
Sascha Hauer [Wed, 29 Feb 2012 08:01:40 +0000 (09:01 +0100)]
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 8e9b90a..6c0face 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);