Executive brief
The Linux kernel's Airoha pin controller driver is missing IRQ resource helper hooks, preventing the GPIO library from properly marking pins used as interrupts. This allows userspace or other drivers to reconfigure active interrupt pins as outputs, potentially causing system instability or hardware damage.
Technical details
The vulnerability is a missing implementation of IRQ resource helper hooks (.irq_request_resources) in the Airoha GPIO IRQ chip definition. Without these hooks, gpiolib cannot set the GPIOD_FLAG_USED_AS_IRQ flag on pins configured as interrupts, breaking pin direction locking. This allows unprivileged userspace or competing drivers to reconfigure an active IRQ pin as a GPIO output via the sysfs interface or direct driver calls. The fix adds the GPIOCHIP_IRQ_RESOURCE_HELPERS macro to the irq_chip structure. The vulnerability affects systems using the EN7581 SoC with its pin controller driver.
Affected products
- Linux Linux kernel versions with pinctrl-airoha driver supporting EN7581 SoC (introduced in commit 1c8ace2d0725)
Timeline
- 2026-09-17: disclosed
- 2026-08-07: patched: upstream patch merged
- 2026-09-14: other: backported to stable kernel releases