Skip to content

Commit ad7725c

Browse files
segoonLiam Girdwood
authored andcommitted
regulator: fix device_register() error handling
If device_register() fails then call put_device(). See comment to device_register. Signed-off-by: Vasiliy Kulikov <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
1 parent c6ea21e commit ad7725c

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

drivers/regulator/core.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2302,8 +2302,10 @@ struct regulator_dev *regulator_register(struct regulator_desc *regulator_desc,
23022302
dev_set_name(&rdev->dev, "regulator.%d",
23032303
atomic_inc_return(&regulator_no) - 1);
23042304
ret = device_register(&rdev->dev);
2305-
if (ret != 0)
2305+
if (ret != 0) {
2306+
put_device(&rdev->dev);
23062307
goto clean;
2308+
}
23072309

23082310
dev_set_drvdata(&rdev->dev, rdev);
23092311

0 commit comments

Comments
 (0)