Skip to content

Commit

Permalink
misc: microchip: pci1xxxx: Resolve kernel panic during GPIO IRQ handling
Browse files Browse the repository at this point in the history
Resolve kernel panic caused by improper handling of IRQs while
accessing GPIO values. This is done by replacing generic_handle_irq with
handle_nested_irq.

Fixes: 1f4d8ae ("misc: microchip: pci1xxxx: Add gpio irq handler and irq helper functions irq_ack, irq_mask, irq_unmask and irq_set_type of irq_chip.")
Cc: stable <stable@kernel.org>
Signed-off-by: Rengarajan S <rengarajan.s@microchip.com>
Link: https://lore.kernel.org/r/20241205133626.1483499-2-rengarajan.s@microchip.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Rengarajan S authored and Greg Kroah-Hartman committed Jan 8, 2025
1 parent 997bb2d commit 194f9f9
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ static irqreturn_t pci1xxxx_gpio_irq_handler(int irq, void *dev_id)
writel(BIT(bit), priv->reg_base + INTR_STATUS_OFFSET(gpiobank));
spin_unlock_irqrestore(&priv->lock, flags);
irq = irq_find_mapping(gc->irq.domain, (bit + (gpiobank * 32)));
generic_handle_irq(irq);
handle_nested_irq(irq);
}
}
spin_lock_irqsave(&priv->lock, flags);
Expand Down

0 comments on commit 194f9f9

Please sign in to comment.