Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1628943 > unrolled thread
| Started by | Pan Bian <bianpan2016@163.com> |
|---|---|
| First post | 2017-04-23 11:10 +0200 |
| Last post | 2017-04-23 21:50 +0200 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH 1/1] power: check return value of devm_kzalloc Pan Bian <bianpan2016@163.com> - 2017-04-23 11:10 +0200
Re: [PATCH 1/1] power: check return value of devm_kzalloc Pali Rohár <pali.rohar@gmail.com> - 2017-04-23 21:50 +0200
| From | Pan Bian <bianpan2016@163.com> |
|---|---|
| Date | 2017-04-23 11:10 +0200 |
| Subject | [PATCH 1/1] power: check return value of devm_kzalloc |
| Message-ID | <tzlGN-6uj-15@gated-at.bofh.it> |
Function devm_kzalloc() will return a NULL pointer if there is no enough memory. However, in function isp1704_charger_probe(), the return value of devm_kzalloc() is used without validation. This may result in a bad memory access bug. This patch fixes the bug. Signed-off-by: Pan Bian <bianpan2016@163.com> --- drivers/power/supply/isp1704_charger.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/power/supply/isp1704_charger.c b/drivers/power/supply/isp1704_charger.c index 4cd6899..4dd2482 100644 --- a/drivers/power/supply/isp1704_charger.c +++ b/drivers/power/supply/isp1704_charger.c @@ -418,6 +418,8 @@ static int isp1704_charger_probe(struct platform_device *pdev) pdata = devm_kzalloc(&pdev->dev, sizeof(struct isp1704_charger_data), GFP_KERNEL); + if (!pdata) + return -ENOMEM; pdata->enable_gpio = gpio; dev_info(&pdev->dev, "init gpio %d\n", pdata->enable_gpio); -- 1.9.1
[toc] | [next] | [standalone]
| From | Pali Rohár <pali.rohar@gmail.com> |
|---|---|
| Date | 2017-04-23 21:50 +0200 |
| Message-ID | <tzvG9-4lo-5@gated-at.bofh.it> |
| In reply to | #1628943 |
[Multipart message — attachments visible in raw view] — view raw
On Sunday 23 April 2017 11:03:56 Pan Bian wrote: > pdata = devm_kzalloc(&pdev->dev, > sizeof(struct isp1704_charger_data), GFP_KERNEL); > + if (!pdata) > + return -ENOMEM; > pdata->enable_gpio = gpio; > > dev_info(&pdev->dev, "init gpio %d\n", pdata->enable_gpio); What about calling "goto fail0", so there will be error message about failure of registering isp1704 like for any other failures? -- Pali Rohár pali.rohar@gmail.com
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web