diff options
author | Axel Lin <axel.lin@ingics.com> | 2014-12-20 15:47:07 +0100 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2015-01-08 20:14:00 +0100 |
commit | 879828c6ade916d13a5187eb02546899c2cd496c (patch) | |
tree | 70712e3645f4c0ee39ca4bb9642ca47b7e4f5d66 /drivers/gpio/gpio-grgpio.c | |
parent | gpio: dln2: Fix gpio output value in dln2_gpio_direction_output() (diff) | |
download | linux-879828c6ade916d13a5187eb02546899c2cd496c.tar.xz linux-879828c6ade916d13a5187eb02546899c2cd496c.zip |
gpio: grgpio: Avoid potential NULL pointer dereference
irqmap is optional property, so priv->domain can be NULL if !irqmap.
Thus add NULL test for priv->domain before calling irq_domain_remove()
to prevent NULL pointer dereference.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-grgpio.c')
-rw-r--r-- | drivers/gpio/gpio-grgpio.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-grgpio.c b/drivers/gpio/gpio-grgpio.c index 09daaf2aeb56..3a5a71050559 100644 --- a/drivers/gpio/gpio-grgpio.c +++ b/drivers/gpio/gpio-grgpio.c @@ -441,7 +441,8 @@ static int grgpio_probe(struct platform_device *ofdev) err = gpiochip_add(gc); if (err) { dev_err(&ofdev->dev, "Could not add gpiochip\n"); - irq_domain_remove(priv->domain); + if (priv->domain) + irq_domain_remove(priv->domain); return err; } |