mfd: dm355evm_msp: Return directly after a failed platform_device_alloc() in add_child()

The platform_device_put() function was called in one case by the
add_child() function during error handling even if the passed
variable "pdev" contained a null pointer.
Return directly in this case.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
This commit is contained in:
Markus Elfring 2016-06-26 13:40:35 +02:00 коммит произвёл Lee Jones
Родитель 8175a01c21
Коммит d313cdde71
1 изменённых файлов: 2 добавлений и 5 удалений

Просмотреть файл

@ -199,11 +199,8 @@ static struct device *add_child(struct i2c_client *client, const char *name,
int status; int status;
pdev = platform_device_alloc(name, -1); pdev = platform_device_alloc(name, -1);
if (!pdev) { if (!pdev)
dev_dbg(&client->dev, "can't alloc dev\n"); return ERR_PTR(-ENOMEM);
status = -ENOMEM;
goto err;
}
device_init_wakeup(&pdev->dev, can_wakeup); device_init_wakeup(&pdev->dev, can_wakeup);
pdev->dev.parent = &client->dev; pdev->dev.parent = &client->dev;