summaryrefslogtreecommitdiff
path: root/drivers/gpio
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2022-09-20 16:30:31 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-09-28 11:11:43 +0200
commit9b26723e058faaf11b532fb4aa16d6849d581790 (patch)
tree216749cbdcb1fb30c3d54a54aa52de44938e2966 /drivers/gpio
parent18352095a0d581f6aeb1e9fc9d68cc0152cd64b4 (diff)
downloadlinux-9b26723e058faaf11b532fb4aa16d6849d581790.tar.gz
linux-9b26723e058faaf11b532fb4aa16d6849d581790.tar.bz2
linux-9b26723e058faaf11b532fb4aa16d6849d581790.zip
gpio: mockup: Fix potential resource leakage when register a chip
commit 02743c4091ccfb246f5cdbbe3f44b152d5d12933 upstream. If creation of software node fails, the locally allocated string array is left unfreed. Free it on error path. Fixes: 6fda593f3082 ("gpio: mockup: Convert to use software nodes") Cc: stable@vger.kernel.org Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/gpio')
-rw-r--r--drivers/gpio/gpio-mockup.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c
index 1276bfeaa37d..0bded5853c41 100644
--- a/drivers/gpio/gpio-mockup.c
+++ b/drivers/gpio/gpio-mockup.c
@@ -554,8 +554,10 @@ static int __init gpio_mockup_register_chip(int idx)
}
fwnode = fwnode_create_software_node(properties, NULL);
- if (IS_ERR(fwnode))
+ if (IS_ERR(fwnode)) {
+ kfree_strarray(line_names, ngpio);
return PTR_ERR(fwnode);
+ }
pdevinfo.name = "gpio-mockup";
pdevinfo.id = idx;