In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: hciqca: Use deltimer_sync() before freeing
While looking at a crash report on a timer list being corrupted, which usually happens when a timer is freed while still active. This is commonly triggered by code calling deltimer() instead of deltimer_sync() just before freeing.
One possible culprit is the hci_qca driver, which does exactly that.
Eric mentioned that wakeretranstimer could be rearmed via the work queue, so also move the destruction of the work queue before deltimersync().