CVE-2026-89964: parisc: eisa: Fix infinite loop when parsing invalid IRQ value
In the Linux kernel, the following vulnerability has been resolved:
parisc: eisa: Fix infinite loop when parsing invalid IRQ value
When an invalid value is passed via the "eisairqedge=" kernel command line parameter (e.g. "eisairqedge=16,5"), eisairqsetup() prints an error message and continues without advancing the current position. As a result the same invalid value is parsed again and again, causing an infinite loop while the kernel boots.
Advance to the next comma-separated entry, or stop parsing when there is no next entry, before continuing so that the remaining entries are processed normally.
Affected Software
Event History
Frequently Asked Questions
Which systems are exposed to this boot-time failure?
Systems using the parisc EISA code path are affected when their kernel command line includes an invalid value in the eisa_irq_edge= parameter. The example eisa_irq_edge=16,5 triggers the issue because 16 is invalid.
What is required to trigger the problem?
An invalid comma-separated IRQ value must be supplied through the eisa_irq_edge= kernel command-line parameter. The parser repeatedly processes that same invalid value instead of advancing to the next entry.
What can be done if the fix cannot be installed immediately?
Remove the invalid eisa_irq_edge= setting from the kernel command line or correct its invalid IRQ values. This prevents the parser from entering the boot-time infinite loop.
How can an administrator recognize that this issue is occurring?
During boot, the kernel prints an error for an invalid eisa_irq_edge= value and then repeatedly parses the same value, preventing boot from progressing normally.