From: Dan Carpenter Date: Mon, 7 Dec 2020 17:55:44 +0000 (+0300) Subject: regulator: da9121: Potential Oops in da9121_assign_chip_model() X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=8db06423e079b1f6c0657e5bebda0006acf75c3c;p=linux.git regulator: da9121: Potential Oops in da9121_assign_chip_model() There is a missing "return ret;" on this error path so we call "da9121_check_device_type(i2c, chip);" which will end up dereferencing "chip->regmap" and lead to an Oops. Fixes: c860476b9e3a ("regulator: da9121: Add device variant regmaps") Signed-off-by: Dan Carpenter Acked-by: Adam Ward Link: https://lore.kernel.org/r/X85soGKnWAjPUA7a@mwanda Signed-off-by: Mark Brown --- diff --git a/drivers/regulator/da9121-regulator.c b/drivers/regulator/da9121-regulator.c index db1c2cc838bc9..e4fc3a7cd5d8a 100644 --- a/drivers/regulator/da9121-regulator.c +++ b/drivers/regulator/da9121-regulator.c @@ -915,6 +915,7 @@ static int da9121_assign_chip_model(struct i2c_client *i2c, ret = PTR_ERR(chip->regmap); dev_err(chip->dev, "Failed to configure a register map: %d\n", ret); + return ret; } ret = da9121_check_device_type(i2c, chip);