mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-05 00:07:48 -04:00
Bluetooth: hci_conn: Fix connection cleanup with BIG with 2 or more BIS
This fixes bis_cleanup not considering connections in BT_OPEN state
before attempting to remove the BIG causing the following error:
btproxy[20110]: < HCI Command: LE Terminate Broadcast Isochronous Group (0x08|0x006a) plen 2
BIG Handle: 0x01
Reason: Connection Terminated By Local Host (0x16)
> HCI Event: Command Status (0x0f) plen 4
LE Terminate Broadcast Isochronous Group (0x08|0x006a) ncmd 1
Status: Unknown Advertising Identifier (0x42)
Fixes: fa224d0c09 ("Bluetooth: ISO: Reassociate a socket with an active BIS")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de>
This commit is contained in:
@@ -843,6 +843,13 @@ static void bis_cleanup(struct hci_conn *conn)
|
||||
if (bis)
|
||||
return;
|
||||
|
||||
bis = hci_conn_hash_lookup_big_state(hdev,
|
||||
conn->iso_qos.bcast.big,
|
||||
BT_OPEN,
|
||||
HCI_ROLE_MASTER);
|
||||
if (bis)
|
||||
return;
|
||||
|
||||
hci_le_terminate_big(hdev, conn);
|
||||
} else {
|
||||
hci_le_big_terminate(hdev, conn->iso_qos.bcast.big,
|
||||
|
||||
Reference in New Issue
Block a user