]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Bluetooth: hci_sync: call destroy in hci_cmd_sync_run if immediate
authorPauli Virtanen <pav@iki.fi>
Wed, 25 Mar 2026 19:07:46 +0000 (21:07 +0200)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Wed, 1 Apr 2026 20:39:43 +0000 (16:39 -0400)
commita834a0b66ec6fb743377201a0f4229bb2503f4ce
tree5a8bfae70ada8031855d137914a64c5c80f59428
parent48b3cd69265f346f64b93064723492da46206e9b
Bluetooth: hci_sync: call destroy in hci_cmd_sync_run if immediate

hci_cmd_sync_run() may run the work immediately if called from existing
sync work (otherwise it queues a new sync work). In this case it fails
to call the destroy() function.

On immediate run, make it behave same way as if item was queued
successfully: call destroy, and return 0.

The only callsite is hci_abort_conn() via hci_cmd_sync_run_once(), and
this changes its return value. However, its return value is not used
except as the return value for hci_disconnect(), and nothing uses the
return value of hci_disconnect(). Hence there should be no behavior
change anywhere.

Fixes: c898f6d7b093b ("Bluetooth: hci_sync: Introduce hci_cmd_sync_run/hci_cmd_sync_run_once")
Signed-off-by: Pauli Virtanen <pav@iki.fi>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
net/bluetooth/hci_sync.c