tty: xilinx_uartps: split sysrq handling
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: tty: xilinx_uartps: split sysrq handling lockdep detects the following circular locking dependency: CPU 0 CPU 1 ========================== ============================ cdns_uart_isr() printk() uart_port_lock(port) console_lock() cdns_uart_console_write() if (!port->sysrq) uart_port_lock(port) uart_handle_break() port->sysrq = ... uart_handle_sysrq_char() printk() console_lock() The fixed commit attempts to avoid this situation by only taking the port lock in cdns_uart_console_write if port->sysrq unset. However, if (as shown above) cdns_uart_console_write runs before port->sysrq is set, then it will try to take the port lock anyway. This may result in a deadlock. Fix this by splitting sysrq handling into two parts. We use the prepare helper under the port lock and defer handling until we release the lock.
Impact Analysis
Refer to official advisory for detailed impact metrics.
Remediation
Ensure systems are updated to the latest vendor-supplied patch levels.
Am I Vulnerable?
Launch our assessment wizard to check if your infrastructure is exposed to • CVE-2025-21820
Credits & Attribution
No credits recorded in the NVD database.
References
- https://git.kernel.org/stable/c/e22a97700901ba5e8bf8db68056a0d50f9440cae
- https://git.kernel.org/stable/c/de5bd24197bd9ee37ec1e379a3d882bbd15c5065
- https://git.kernel.org/stable/c/8ea0e7b3d7b8f2f0fc9db491ff22a0abe120801c
- https://git.kernel.org/stable/c/9b88a7c4584ba67267a051069b8abe44fc9595b2
- https://git.kernel.org/stable/c/4410dba9807a17a93f649a9f5870ceaf30a675a3
- https://git.kernel.org/stable/c/b06f388994500297bb91be60ffaf6825ecfd2afe
More from Linux
View All →Affected Vendor
Linux
View all reports →Affected Software
Timeline
CVSS Vectors
Weaknesses (CWE)
No CWE data available
MITRE ATT&CK TTPs
No associated TTPs found for this vulnerability.