diff options
author | Allen Yu <alleny@nvidia.com> | 2014-05-26 12:31:05 +0800 |
---|---|---|
committer | Mandar Padmawar <mpadmawar@nvidia.com> | 2014-06-03 07:34:50 -0700 |
commit | 9363f0053f9075af70e4520ce78568dbd8e41d81 (patch) | |
tree | 1a9abd5ec8d9c6d2f3ac42f023295e71389b55ca /drivers/gpio | |
parent | d555f5e425f717601e71e6ff4f205fee85d7c5e2 (diff) |
gpio: of: fix memory leak in of_gpiochip_init
propname should be freed if fail to resolve the phandle property.
bug 200007297
Change-Id: I26bf03daaca976bea1450d3d4c40b358037d4339
Signed-off-by: Allen Yu <alleny@nvidia.com>
Reviewed-on: http://git-master/r/415084
(cherry picked from commit 3673891f9f6f3d372ba5b013b9a335146b14d97e)
Reviewed-on: http://git-master/r/416828
Reviewed-by: Mandar Padmawar <mpadmawar@nvidia.com>
Tested-by: Mandar Padmawar <mpadmawar@nvidia.com>
Diffstat (limited to 'drivers/gpio')
-rw-r--r-- | drivers/gpio/gpiolib-of.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c index 627b23cdabd8..fc4fa8ad2b62 100644 --- a/drivers/gpio/gpiolib-of.c +++ b/drivers/gpio/gpiolib-of.c @@ -239,8 +239,10 @@ void of_gpiochip_init(struct gpio_chip *chip) /* Retrieve the gpio-init-* property */ propname = kasprintf(GFP_KERNEL, "gpio-init-%d", state); np_config = of_parse_phandle(np, propname, 0); - if (!np_config) + if (!np_config) { + kfree(propname); break; + } /* Determine whether gpio-init-names property names the state */ of_property_read_string_index(np, "gpio-init-names", |