summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/stackcollapse.py
diff options
context:
space:
mode:
authorAldo Ariel Panzardo <qwe.aldo@gmail.com>2026-09-15 13:04:30 -0300
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2026-09-16 13:51:34 -0400
commit0fcd4dad555c96e0bd3a1b8c569f989be85c7341 (patch)
treecaaef7eb1e3bf030540faf86d4a02ef698af5a71 /tools/perf/scripts/python/stackcollapse.py
parente06d549fcd4a0ba381ed67ddf1ab3c7a6ca4314c (diff)
downloadlinux-0fcd4dad555c96e0bd3a1b8c569f989be85c7341.tar.gz
linux-0fcd4dad555c96e0bd3a1b8c569f989be85c7341.zip
Bluetooth: ISO: release unused CIS holds after channel attach
hci_bind_cis() and hci_connect_cis() return one hci_conn hold for the ISO layer. A new channel association consumes that hold, which is eventually released by iso_conn_free(). There are two cases where iso_chan_add() does not create an association: it returns success when the socket is already attached to the same iso_conn, and it returns -EBUSY when another socket is attached. The hold returned for the current call is unused in both cases. This occurs when deferred setup calls iso_connect_cis() again for its existing socket, or when another socket attempts to reuse the CIS. Detect the idempotent case while the connection is locked and release the unused hold after iso_chan_add(). Also release it on -EBUSY. Do not drop it for other errors: a newly allocated iso_conn releases the transferred hold when its last temporary reference is put. Fixes: 69997d50ec57 ("Bluetooth: ISO: handle bound CIS cleanup via hci_conn") Cc: stable@vger.kernel.org Signed-off-by: Aldo Ariel Panzardo <qwe.aldo@gmail.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions