CVE-2026-89740

Summary

In the Linux kernel, the following vulnerability has been resolved:

serial: imx: serialize imx_uart_ports[] lifetime

imx_uart_probe() publishes its devm-allocated port in imx_uart_ports[] before uart_add_one_port() because console setup uses the table. The entry is not cleared when adding the port fails or after removal, leaving a dangling pointer.

A sibling probe can register the shared console through that stale entry. This was reproduced under KASAN on QEMU mcimx6ul-evk by unbinding a sibling UART, unbinding the console UART and rebinding the sibling.

Keep the entry valid through uart_remove_one_port(), then clear it. Protect port addition and removal together with their table updates so sibling operations cannot interleave. Reject an occupied slot rather than clobbering an active port during a duplicate-line probe.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxdbff4e9ea2e83fda89143389bfb229cb29425a32 < 681696ae9e4a28bdf54893c807dfe4a6c08e30a5affected
LinuxLinuxdbff4e9ea2e83fda89143389bfb229cb29425a32 < 28b932202fcdbeb2ef58d89ce4363f480433c234affected
LinuxLinuxdbff4e9ea2e83fda89143389bfb229cb29425a32 < 7429dce56a73bc080a8c072edb167106f73a08aeaffected
LinuxLinuxdbff4e9ea2e83fda89143389bfb229cb29425a32 < 8b0b29fdcb47907ae0296b8fe829e918e05e300faffected
LinuxLinux2.6.27affected
LinuxLinux0 < 2.6.27unaffected
LinuxLinux6.12.109 <= 6.12.*unaffected
LinuxLinux6.18.50 <= 6.18.*unaffected
LinuxLinux7.2.4 <= 7.2.*unaffected
LinuxLinux7.3-rc1 <= *unaffected

Weaknesses

References