Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-53252

Bluetooth: fix memory leak in error path of hci_alloc_dev()

Description

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: fix memory leak in error path of hci_alloc_dev() Early failures in Bluetooth HCI UART configuration leak SRCU percpu memory. When device initialization fails before hci_register_dev() completes, the HCI_UNREGISTER flag is never set. As a result, when the device reference count reaches zero, bt_host_release() evaluates this flag as false and falls back to a direct kfree(hdev). Because hci_release_dev() is bypassed, the SRCU struct initialized early in hci_alloc_dev() is never cleaned up, resulting in a leak of percpu memory. Fix the leak by explicitly calling cleanup_srcu_struct() in the fallback (unregistered) branch of bt_host_release() before freeing the device.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 90dee0a0ff84fac8accd5be98412b3819f667149 to < 5b7dfca6f852e6b9d809fd0263b5427cc9fb33fdaffected
  • c56b177efce8b62798e4d96bdb9867106cb7c4a0 to < c016118b9e51eeaf5bc93850d4c455a3b583c0aaaffected
  • bc0819a25e04cd68ef3568cfa51b63118fea39a7 to < 0622e527a31d4b44737fed5c1a2ac1fc2cfb5184affected
  • ce23b73f0f27e2dbeb81734a79db710f05aa33c6 to < bc2efe73c194a74839d7cf57b63880d97e21d309affected
  • 1d6123102e9fbedc8d25bf4731da6d513173e49e to < ce4b4cac3c5749b6aa75e62e2991ae2263f2f889affected
  • 1d6123102e9fbedc8d25bf4731da6d513173e49e to < f82799407a50af7bcacacf09cc9b279af8fe9b81affected
  • 1d6123102e9fbedc8d25bf4731da6d513173e49e to < 37b3009bf5976e8ab77c8b9a9bc3bbd7ff49e37faffected
  • dd4becd3fd4102696e1c15e6d260a1712a2d8685affected
  • 0e5c144c557df910ab64d9c25d06399a9a735e65affected
  • 5.15.209 to < 5.15.210affected
  • 6.1.167 to < 6.1.176affected
  • 6.6.97 to < 6.6.143affected
  • 6.12.36 to < 6.12.94affected
  • 5.10.259 to < 5.11affected
  • 6.15.5 to < 6.16affected

Linux Linux

Default version status: affected

  • 6.16affected
  • 0 to < 6.16unaffected
  • 5.15.210 to ≤ 5.15.*unaffected
  • 6.1.176 to ≤ 6.1.*unaffected
  • 6.6.143 to ≤ 6.6.*unaffected
  • 6.12.94 to ≤ 6.12.*unaffected
  • 6.18.36 to ≤ 6.18.*unaffected
  • 7.0.13 to ≤ 7.0.*unaffected
  • 7.1 to ≤ *unaffected

References