Skip to content

Commit afedbb4

Browse files
jori-nordicnashif
authored andcommitted
Bluetooth: Host: Add missing bt_tx_irq_raise()
Trigger the TX processor on connection teardown. When a disconnection happens before the controller has acknowledged some ACL fragments the host has sent, we run `process_unack_tx()` to free those unacknowledged buffers and their associated TX contexts. The problem is that the TX processor still holds a reference to the conn object. That reference is not released until the TX processor is triggered again and figures out that the connection is invalid. Signed-off-by: Jonathan Rico <[email protected]> (cherry picked from commit 80a92f5)
1 parent 22877ed commit afedbb4

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

subsys/bluetooth/host/conn.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1091,6 +1091,7 @@ static void process_unack_tx(struct bt_conn *conn)
10911091
node = sys_slist_get(&conn->tx_pending);
10921092

10931093
if (!node) {
1094+
bt_tx_irq_raise();
10941095
return;
10951096
}
10961097

0 commit comments

Comments
 (0)