| From: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| Date: Wed, 5 Jul 2017 07:50:54 +0200 |
| Subject: mfd: max8998: Fix potential NULL pointer dereference |
| |
| commit 2042f3c29f2f11129434de8a610878e8a15b4174 upstream. |
| |
| if 'max8998_i2c_parse_dt_pdata() fails (when out of memory), a NULL |
| pointer dereference will occur in the error handling code. |
| |
| Return directly instead. |
| |
| Fixes: ee999fb3f17f("mfd: max8998: Add support for Device Tree") |
| Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> |
| Signed-off-by: Lee Jones <lee.jones@linaro.org> |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/mfd/max8998.c | 6 ++---- |
| 1 file changed, 2 insertions(+), 4 deletions(-) |
| |
| --- a/drivers/mfd/max8998.c |
| +++ b/drivers/mfd/max8998.c |
| @@ -195,10 +195,8 @@ static int max8998_i2c_probe(struct i2c_ |
| |
| if (IS_ENABLED(CONFIG_OF) && i2c->dev.of_node) { |
| pdata = max8998_i2c_parse_dt_pdata(&i2c->dev); |
| - if (IS_ERR(pdata)) { |
| - ret = PTR_ERR(pdata); |
| - goto err; |
| - } |
| + if (IS_ERR(pdata)) |
| + return PTR_ERR(pdata); |
| } |
| |
| i2c_set_clientdata(i2c, max8998); |