CVE-2026-23146
Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_uart: fix null-ptr-deref in hci_uart_write_work hci_uart_set_proto() sets HCI_UART_PROTO_INIT before calling hci_uart_register_dev(), which calls proto->open() to initialize hu->priv. However, if a TTY write wakeup occurs during this window, hci_uart_tx_wakeup() may schedule write_work before hu->priv is initialized, leading to a NULL pointer dereference in hci_uart_write_work() when proto->dequeue() accesses hu->priv. The race condition is: CPU0 CPU1 ---- ---- hci_uart_set_proto() set_bit(HCI_UART_PROTO_INIT) hci_uart_register_dev() tty write wakeup hci_uart_tty_wakeup() hci_uart_tx_wakeup() schedule_work(&hu->write_work) proto->open(hu) // initializes hu->priv hci_uart_write_work() hci_uart_dequeue() proto->dequeue(hu) // accesses hu->priv (NULL!) Fix this by moving set_bit(HCI_UART_PROTO_INIT) after proto->open() succeeds, ensuring hu->priv is initialized before any work can be scheduled.
How to fix
- linux linux_kernel5.5, 5.10.249, 5.15.199, 6.1.162, 6.6.123, 6.12.69, 6.14, 6.18.9 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| linux linux_kernel | 5.4.293 ≤ v < 5.5, 5.10.237 ≤ v < 5.10.249, 5.15.181 ≤ v < 5.15.199, 6.1.135 ≤ v < 6.1.162, 6.6.88 ≤ v < 6.6.123, 6.12.24 ≤ v < 6.12.69, 6.13.12 ≤ v < 6.14, 6.14.3 ≤ v < 6.18.9, 6.19 | 5.5, 5.10.249, 5.15.199, 6.1.162, 6.6.123, 6.12.69, 6.14, 6.18.9 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.