Impact
The vulnerability arises from an inconsistency between the functions uart_write_room() and uart_write() in the Linux kernel serial subsystem. When a serial port is marked as PORT_UNKNOWN and its transmit buffer has never been initialized, uart_write_room() incorrectly reports available space while uart_write() returns zero. Drivers that rely on tty_write_room() to determine write capacity enter an infinite loop, repeatedly invoking write operations with no progress. The loop prevents the driver from terminating and can lead the entire system to hang or become unresponsive, resulting in a denial of service.
Affected Systems
All Linux kernel implementations that include the affected serial core code are impacted. This includes every kernel distribution that has not yet incorporated the patch that synchronizes uart_write_room() with uart_write(). Because the vulnerability is in the kernel itself, any system running an affected kernel is susceptible, regardless of host hardware or distribution vendor. Specific affected versions are not enumerated in the advisory, so systems should verify whether their current kernel source contains the commit that restores consistent behavior.
Risk and Exploitability
The advisory rates the issue with a CVSS score of 5.5, indicating a moderate level of severity. The exploit prediction score is less than 1% and the vulnerability is not listed in CISA’s KEV catalog, suggesting it has not been reported as widely exploited. An attacker would need local or high‑privilege access to interfere with a serial device that has not been properly initialized. Because the flaw manifests only when a driver calls tty_write_room() in a loop, remote exploitation is unlikely without additional local foothold. For most environments, the primary risk is an accidental misconfiguration of serial devices rather than deliberate attack.
OpenCVE Enrichment