{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-23146","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-01-13T15:37:45.974Z","datePublished":"2026-02-14T16:01:16.169Z","dateUpdated":"2026-05-11T22:01:05.964Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-05-11T22:01:05.964Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: hci_uart: fix null-ptr-deref in hci_uart_write_work\n\nhci_uart_set_proto() sets HCI_UART_PROTO_INIT before calling\nhci_uart_register_dev(), which calls proto->open() to initialize\nhu->priv. However, if a TTY write wakeup occurs during this window,\nhci_uart_tx_wakeup() may schedule write_work before hu->priv is\ninitialized, leading to a NULL pointer dereference in\nhci_uart_write_work() when proto->dequeue() accesses hu->priv.\n\nThe race condition is:\n\n  CPU0                              CPU1\n  ----                              ----\n  hci_uart_set_proto()\n    set_bit(HCI_UART_PROTO_INIT)\n    hci_uart_register_dev()\n                                    tty write wakeup\n                                      hci_uart_tty_wakeup()\n                                        hci_uart_tx_wakeup()\n                                          schedule_work(&hu->write_work)\n      proto->open(hu)\n        // initializes hu->priv\n                                    hci_uart_write_work()\n                                      hci_uart_dequeue()\n                                        proto->dequeue(hu)\n                                          // accesses hu->priv (NULL!)\n\nFix this by moving set_bit(HCI_UART_PROTO_INIT) after proto->open()\nsucceeds, ensuring hu->priv is initialized before any work can be\nscheduled."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/bluetooth/hci_ldisc.c"],"versions":[{"version":"a40f94f7caa8d3421b64f63ac31bc0f24c890f39","lessThan":"b0a900939e7e4866d9b90e9112514b72c451e873","status":"affected","versionType":"git"},{"version":"9e5a0f5777162e503400c70c6ed25fbbe2d38799","lessThan":"ccc683f597ceb28deb966427ae948e5ac739a909","status":"affected","versionType":"git"},{"version":"80f14e9de6a43a0bd8194cad1003a3e6dcbc3984","lessThan":"937a573423ce5a96fdb1fd425dc6b8d8d4ab5779","status":"affected","versionType":"git"},{"version":"02e1bcdfdf769974e7e9fa285e295cd9852e2a38","lessThan":"186d147cf7689ba1f9b3ddb753ab634a84940cc9","status":"affected","versionType":"git"},{"version":"281782d2c6730241e300d630bb9f200d831ede71","lessThan":"53e54cb31e667fca05b1808b990eac0807d1dab0","status":"affected","versionType":"git"},{"version":"5df5dafc171b90d0b8d51547a82657cd5a1986c7","lessThan":"03e8c90c62233382042b7bd0fa8b8900552fdb62","status":"affected","versionType":"git"},{"version":"5df5dafc171b90d0b8d51547a82657cd5a1986c7","lessThan":"0c3cd7a0b862c37acbee6d9502107146cc944398","status":"affected","versionType":"git"},{"version":"1dcf08fcff5ca529de6dc0395091f28854f4e54a","status":"affected","versionType":"git"},{"version":"8e5aff600539e5faea294d9612cca50220e602b8","status":"affected","versionType":"git"},{"version":"db7509fa110dd9b11134b75894677f30353b2c51","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/bluetooth/hci_ldisc.c"],"versions":[{"version":"6.15","status":"affected"},{"version":"0","lessThan":"6.15","status":"unaffected","versionType":"semver"},{"version":"5.10.249","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.199","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.162","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.123","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.69","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.9","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"6.19","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.237","versionEndExcluding":"5.10.249"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15.181","versionEndExcluding":"5.15.199"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1.135","versionEndExcluding":"6.1.162"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6.88","versionEndExcluding":"6.6.123"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.12.24","versionEndExcluding":"6.12.69"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.15","versionEndExcluding":"6.18.9"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.15","versionEndExcluding":"6.19"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.293"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.13.12"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.14.3"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/b0a900939e7e4866d9b90e9112514b72c451e873"},{"url":"https://git.kernel.org/stable/c/ccc683f597ceb28deb966427ae948e5ac739a909"},{"url":"https://git.kernel.org/stable/c/937a573423ce5a96fdb1fd425dc6b8d8d4ab5779"},{"url":"https://git.kernel.org/stable/c/186d147cf7689ba1f9b3ddb753ab634a84940cc9"},{"url":"https://git.kernel.org/stable/c/53e54cb31e667fca05b1808b990eac0807d1dab0"},{"url":"https://git.kernel.org/stable/c/03e8c90c62233382042b7bd0fa8b8900552fdb62"},{"url":"https://git.kernel.org/stable/c/0c3cd7a0b862c37acbee6d9502107146cc944398"}],"title":"Bluetooth: hci_uart: fix null-ptr-deref in hci_uart_write_work","x_generator":{"engine":"bippy-1.2.0"}}}}