Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpio: aggregator: Fix leak in gpio_aggregator_parse()

Call gpio_aggregator_free_lines() before returning on this error path.

Fixes: 83c8e3df642f ("gpio: aggregator: expose aggregator created via legacy sysfs to configfs")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Acked-by: Koichiro Den <koichiro.den@canonical.com>
Link: https://lore.kernel.org/r/e023bfe52509ce1bef6209ec7c47e99279c551dd.1744452787.git.dan.carpenter@linaro.org
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>

authored by

Dan Carpenter and committed by
Bartosz Golaszewski
d945ff52 05b43de9

+1 -1
+1 -1
drivers/gpio/gpio-aggregator.c
··· 1101 1101 error = bitmap_parselist(offsets, bitmap, AGGREGATOR_MAX_GPIOS); 1102 1102 if (error) { 1103 1103 pr_err("Cannot parse %s: %d\n", offsets, error); 1104 - return error; 1104 + goto err; 1105 1105 } 1106 1106 1107 1107 for_each_set_bit(i, bitmap, AGGREGATOR_MAX_GPIOS) {