gpio: mockup: Fix potential resource leakage when register a chip
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 20 Sep 2022 13:30:31 +0000 (16:30 +0300)
committerBartosz Golaszewski <brgl@bgdev.pl>
Tue, 20 Sep 2022 14:07:15 +0000 (16:07 +0200)
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>
drivers/gpio/gpio-mockup.c

index ab89cd8ddbd84c4422b02611fe1e78f7ef1760cd..523dfd17dd922548ebabbd1cd63f7bbf033b73e2 100644 (file)
@@ -533,8 +533,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;