Bug 2536160 (CVE-2026-90254) - CVE-2026-90254 kernel: Bluetooth: hci_sync: free the advertising instance on the failure and cancel paths
Summary: CVE-2026-90254 kernel: Bluetooth: hci_sync: free the advertising instance on ...
Keywords:
Status: NEW
Alias: CVE-2026-90254
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Product Security
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-17 16:41 UTC by OSIDB Bzimport
Modified: 2026-10-05 18:56 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-09-17 16:41:03 UTC
In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: hci_sync: free the advertising instance on the failure and cancel paths

adv_timeout_expire() hands a kmalloc()ed instance byte to
hci_cmd_sync_queue() with a NULL destroy callback, and only
adv_timeout_expire_sync() frees it. That leaks on two paths:

 - the return value is not checked, and hci_cmd_sync_queue() does not
   take ownership when it fails (-ENETDOWN, -ENODEV, -ENOMEM);

 - a cancelled entry is not released, as _hci_cmd_sync_cancel_entry()
   does not free entry->data when there is no destroy callback.
   hci_cmd_sync_clear() cancels every pending entry when the controller
   is unregistered.

Free the buffer from a destroy callback, and in the caller when the entry
could not be queued at all.


Note You need to log in before you can comment on or make changes to this bug.