]> git.hungrycats.org Git - linux/commitdiff
gpiolib: Fix the error path order in gpiochip_add_data_with_key()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 21 Feb 2024 19:28:46 +0000 (21:28 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Mar 2024 14:38:50 +0000 (14:38 +0000)
[ Upstream commit e4aec4daa8c009057b5e063db1b7322252c92dc8 ]

After shuffling the code, error path wasn't updated correctly.
Fix it here.

Fixes: 2f4133bb5f14 ("gpiolib: No need to call gpiochip_remove_pin_ranges() twice")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpio/gpiolib.c

index f9fdd117c654c0404c94c33d6ec2003fab5179cf..4245ece1acb60968b37af903033222b05cad8fe5 100644 (file)
@@ -805,11 +805,11 @@ err_remove_irqchip_mask:
        gpiochip_irqchip_free_valid_mask(gc);
 err_remove_acpi_chip:
        acpi_gpiochip_remove(gc);
+       gpiochip_remove_pin_ranges(gc);
 err_remove_of_chip:
        gpiochip_free_hogs(gc);
        of_gpiochip_remove(gc);
 err_free_gpiochip_mask:
-       gpiochip_remove_pin_ranges(gc);
        gpiochip_free_valid_mask(gc);
        if (gdev->dev.release) {
                /* release() has been registered by gpiochip_setup_dev() */