Skip to content

Commit 176cf70

Browse files
peter50216broonie
authored andcommitted
regulator: cros-ec-regulator: Fix double free of desc->name.
The desc->name field is allocated with devm_kstrdup, but is also kfreed on the error path, causing it to be double freed. Remove the kfree on the error path. Fixes: 8d9f8d5 ("regulator: Add driver for cros-ec-regulator") Signed-off-by: Pi-Hsun Shih <pihsun@chromium.org> Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Link: https://lore.kernel.org/r/20200728091909.2009771-1-pihsun@chromium.org Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent a233547 commit 176cf70

1 file changed

Lines changed: 1 addition & 6 deletions

File tree

drivers/regulator/cros-ec-regulator.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -222,18 +222,13 @@ static int cros_ec_regulator_probe(struct platform_device *pdev)
222222

223223
drvdata->dev = devm_regulator_register(dev, &drvdata->desc, &cfg);
224224
if (IS_ERR(drvdata->dev)) {
225-
ret = PTR_ERR(drvdata->dev);
226225
dev_err(&pdev->dev, "Failed to register regulator: %d\n", ret);
227-
goto free_name;
226+
return PTR_ERR(drvdata->dev);
228227
}
229228

230229
platform_set_drvdata(pdev, drvdata);
231230

232231
return 0;
233-
234-
free_name:
235-
kfree(desc->name);
236-
return ret;
237232
}
238233

239234
static const struct of_device_id regulator_cros_ec_of_match[] = {

0 commit comments

Comments
 (0)