CVE-2026-53384
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
serial: 8250_dw: unregister 8250 port if clk_notifier_register() fails
dw8250_probe() registers the 8250 port via serial8250_register_8250_port() and then, if the device has a clock, registers a clock notifier. If clk_notifier_register() fails, probe returns the error but leaves the 8250 port registered. The matching serial8250_unregister_port() lives in dw8250_remove(), which is not called when probe fails, so the port slot stays occupied until the device is rebound or the system is rebooted. The devm-allocated driver data is freed while the port still references it (via the saved private_data and serial_in/serial_out callbacks), so any access to that port slot before a rebind is a use-after-free hazard.
Unregister the port on the clk_notifier_register() error path.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < ccdf4510a3873b14e5e348cdb038717996f09fda | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < 511d2b92f8d20de04acafab676150d26fb5c67f4 | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < 07ffe414a708ae60551401cec5d727ed156b8caf | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < 3d205fe80f2181f0109150ad1fa06ee5bc046935 | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < d72650a4f334581b23a1892b888a4cb1be142f76 | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < 778b9dda4b24005a27bcd9c35c110bf8d7f259ca | affected |
| Linux | Linux | cc816969d7b5973d2720d9afd381f06f0eac6885 < 10fc708b4de7f86002d2d735a2dbf3b5b7f65692 | affected |
| Linux | Linux | 5.9 | affected |
| Linux | Linux | 0 < 5.9 | unaffected |
| Linux | Linux | 6.1.177 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.144 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.95 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.38 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.14 <= 7.0.* | unaffected |
| Linux | Linux | 7.1.2 <= 7.1.* | unaffected |
| Linux | Linux | 7.2-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/ccdf4510a3873b14e5e348cdb038717996f09fda
- https://git.kernel.org/stable/c/511d2b92f8d20de04acafab676150d26fb5c67f4
- https://git.kernel.org/stable/c/07ffe414a708ae60551401cec5d727ed156b8caf
- https://git.kernel.org/stable/c/3d205fe80f2181f0109150ad1fa06ee5bc046935
- https://git.kernel.org/stable/c/d72650a4f334581b23a1892b888a4cb1be142f76
- https://git.kernel.org/stable/c/778b9dda4b24005a27bcd9c35c110bf8d7f259ca
- https://git.kernel.org/stable/c/10fc708b4de7f86002d2d735a2dbf3b5b7f65692
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.