gpio: sysfs: fix inverted pointer logic
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Wed, 14 Feb 2024 08:52:48 +0000 (09:52 +0100)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Thu, 15 Feb 2024 07:40:40 +0000 (08:40 +0100)
The logic is inverted, we want to return if the chip *IS* NULL.

Fixes: d83cee3d2bb1 ("gpio: protect the pointer to gpio_chip in gpio_device with SRCU")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/linux-gpio/15671341-0b29-40e0-b487-0a4cdc414d8e@moroto.mountain/
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/gpio/gpiolib-sysfs.c

index 71ba2a774197b92a7cffab40afc3ec2082ed5bc9..67fc09a57f267bdc3c7257e7a75cfdc7f2315966 100644 (file)
@@ -802,7 +802,7 @@ void gpiochip_sysfs_unregister(struct gpio_device *gdev)
        guard(srcu)(&gdev->srcu);
 
        chip = srcu_dereference(gdev->chip, &gdev->srcu);
-       if (chip)
+       if (!chip)
                return;
 
        /* unregister gpiod class devices owned by sysfs */