From 5dd1cdda3b69f0970466cc4ab232b2cd99dfa247 Mon Sep 17 00:00:00 2001 From: Aleksander Wasaznik Date: Thu, 11 Apr 2024 14:23:23 +0200 Subject: [PATCH] Bluetooth: Remove rx < tx prio check The comment states the reason for this requirement is to detect violations by a remote peer. The ATT version of this was removed in ea04fd95f939b8115358560df5887bb5f2baeab8. TLDR: It's neither possible for, nor the job of the host to police the remote device. We remove this requirement to be more flexible about the number of priority levels in the system, and to avoid the temptation of using priorities as a synchronization mechanism. Signed-off-by: Aleksander Wasaznik --- subsys/bluetooth/common/dummy.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/subsys/bluetooth/common/dummy.c b/subsys/bluetooth/common/dummy.c index 4b9d393cc9c8..4659f946f92c 100644 --- a/subsys/bluetooth/common/dummy.c +++ b/subsys/bluetooth/common/dummy.c @@ -23,13 +23,6 @@ BUILD_ASSERT(sizeof(bt_addr_t) == BT_ADDR_SIZE); BUILD_ASSERT(sizeof(bt_addr_le_t) == BT_ADDR_LE_SIZE); #if defined(CONFIG_BT_HCI_HOST) -/* The Bluetooth subsystem requires the Tx thread to execute at higher priority - * than the Rx thread as the Tx thread needs to process the acknowledgements - * before new Rx data is processed. This is a necessity to correctly detect - * transaction violations in ATT and SMP protocols. - */ -BUILD_ASSERT(CONFIG_BT_HCI_TX_PRIO < CONFIG_BT_RX_PRIO); - /* The Bluetooth subsystem requires that higher priority events shall be given * in a priority higher than the Bluetooth Host's Tx and the Controller's * receive thread priority.