Re: Obsolete Bug in file drivers/mfd/pcf50633-core.c

From: Lee Jones
Date: Mon Jun 23 2014 - 04:47:52 EST


On Fri, 20 Jun 2014, Nick Krause wrote:
> There seems to be a obsolete bug in this file that has been reported about
> a NULL
> check for platform_device_add_data() in function pcf50633_probe(). This
> bug seems
> to be fixed by the lines I wrote in my comment on Bugzilla. The attached
> link should
> give you an idea of if closing this bug is a good idea.
> https://bugzilla.kernel.org/show_bug.cgi?id=78521
> <https://bugzilla.kernel.org/show_bug.cgi?id=78521>
> Thanks Nick

This bug was fixed by Alan Cox 2 years ago:

commit 18273c5b463d9f98ef81f1a6217a7f4168dd809a
Author: Alan Cox <alan@xxxxxxxxxxxxxxxxxxx>
Date: Fri Jul 13 16:43:32 2012 +0100

mfd: Add missing out of memory check for pcf50633

Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=44561
Reported-by: <rucsoftsec@xxxxxxxxx>
Cc: Lars-Peter Clausen <lars@xxxxxxxxxx>
Signed-off-by: Alan Cox <alan@xxxxxxxxxxxxxxx>
Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

diff --git a/drivers/mfd/pcf50633-core.c b/drivers/mfd/pcf50633-core.c
index 29c122b..45ce1fb 100644
--- a/drivers/mfd/pcf50633-core.c
+++ b/drivers/mfd/pcf50633-core.c
@@ -253,8 +253,13 @@ static int __devinit pcf50633_probe(struct i2c_client *client,
}

pdev->dev.parent = pcf->dev;
- platform_device_add_data(pdev, &pdata->reg_init_data[i],
- sizeof(pdata->reg_init_data[i]));
+ if (platform_device_add_data(pdev, &pdata->reg_init_data[i],
+ sizeof(pdata->reg_init_data[i])) < 0) {
+ platform_device_put(pdev);
+ dev_err(pcf->dev, "Out of memory for regulator parameters %d\n",
+ i);
+ continue;
+ }
pcf->regulator_pdev[i] = pdev;

platform_device_add(pdev);


--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/