Skip to content

Commit 80a92f5

Browse files
jori-nordicfabiobaltieri
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]>
1 parent 043de7d commit 80a92f5

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
@@ -1117,6 +1117,7 @@ static void process_unack_tx(struct bt_conn *conn)
11171117
node = sys_slist_get(&conn->tx_pending);
11181118

11191119
if (!node) {
1120+
bt_tx_irq_raise();
11201121
return;
11211122
}
11221123

0 commit comments

Comments
 (0)