staging: greybus: gpio: Use generic_handle_irq_safe().
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Fri, 11 Feb 2022 18:15:00 +0000 (19:15 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 2 Mar 2022 21:28:51 +0000 (22:28 +0100)
Instead of manually disabling interrupts before invoking use
generic_handle_irq_safe() which can be invoked with enabled and disabled
interrupts.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Johan Hovold <johan@kernel.org>
Cc: Alex Elder <elder@kernel.org>
Cc: Rui Miguel Silva <rmfrfs@gmail.com>
Link: https://lore.kernel.org/r/20220211181500.1856198-8-bigeasy@linutronix.de
drivers/staging/greybus/gpio.c

index 7e6347f..8a7cf1d 100644 (file)
@@ -391,10 +391,7 @@ static int gb_gpio_request_handler(struct gb_operation *op)
                return -EINVAL;
        }
 
-       local_irq_disable();
-       ret = generic_handle_irq(irq);
-       local_irq_enable();
-
+       ret = generic_handle_irq_safe(irq);
        if (ret)
                dev_err(dev, "failed to invoke irq handler\n");