zephyr: Bluetooth ASSERTION FAIL [evdone] Zephyr v2.6.0
Describe the bug
While developing with Zephyr v2.6.0 c9fd7a6099c4fad73014aaf0ce364996afbba9e6 our app raised this Bluetooth assert:
ASSERTION FAIL [evdone] @ .../zephyr/subsys/bluetooth/controller/ll_sw/nordic/lll/lll.c:353
With a limited amount of testing I’ve experienced this twice.
To Reproduce Setup a project the passive Bluetooth scanning with a 60ms scanning interval and 60ms window with and the filter duplicates disable and set up the project to allow up to 4 connected BLE devices and up to 4 bonds.
#define BT_LE_SCAN_PASSIVE_ALLOW_DUPLICATES BT_LE_SCAN_PARAM(BT_HCI_LE_SCAN_PASSIVE, \
BT_HCI_LE_SCAN_FILTER_DUP_DISABLE, \
BT_GAP_SCAN_FAST_INTERVAL, \
BT_GAP_SCAN_FAST_INTERVAL)
int scan_init(void)
{
int rc;
rc = bt_le_scan_start(BT_LE_SCAN_PASSIVE_ALLOW_DUPLICATES, scan_device_found);
if (rc) {
LOG_ERR("Scanning failed to start (rc %d)", rc);
}
else {
LOG_INF("Scanning Started");
}
return rc;
}
Expected behavior No asserts happen.
Impact Annoyance
Logs and console output
@ .../zephyr/subsys/bluetooth/controller/ll_sw/nordic/lll/lll.c:353
Environment (please complete the following information):
- OS: Windows
- Toolchain C compiler identification is GNU 7.3.1
- Commit SHA c9fd7a6099c4fad73014aaf0ce364996afbba9e6
Additional context Small discussion with @cvinayak on Slack
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 17 (17 by maintainers)
Commits related to this issue
- Bluetooth: Controller: Fix Data Length Update node Rx reservations Reserve a minimum node rx of 2 that can happen when local central initiated PHY Update reserves 2 node rx, one for PHY Update comple... — committed to nwsetec/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix Data Length Update node Rx reservations Reserve a minimum node rx of 2 that can happen when local central initiated PHY Update reserves 2 node rx, one for PHY Update comple... — committed to cvinayak/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix Data Length Update node Rx reservations Reserve a minimum node rx of 2 that can happen when local central initiated PHY Update reserves 2 node rx, one for PHY Update comple... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix Data Length Update node Rx reservations Reserve a minimum node rx of 2 that can happen when local central initiated PHY Update reserves 2 node rx, one for PHY Update comple... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix Data Length Update node Rx reservations Reserve a minimum node rx of 2 that can happen when local central initiated PHY Update reserves 2 node rx, one for PHY Update comple... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Only remove duplicate resume events When events are placed back into pipeline as resume events, only remove duplicate resume events and not new prepare events that may have bee... — committed to cvinayak/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Only remove duplicate resume events When events are placed back into pipeline as resume events, only remove duplicate resume events and not new prepare events that may have bee... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- [nrf fromtree] Bluetooth: Controller: Only remove duplicate resume ... ... events When events are placed back into pipeline as resume events, only remove duplicate resume events and not new prepare ... — committed to Actinius/zephyr by cvinayak 3 years ago
- [nrf fromtree] Bluetooth: Controller: Only remove duplicate resume ... ... events When events are placed back into pipeline as resume events, only remove duplicate resume events and not new prepare ... — committed to alwa-nordic/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix assertion failed [evdone] When there are radio events with time reservations lower than the preemption timeout of 1.5 ms, the pipeline has to account for the maximum radio ... — committed to cvinayak/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix assertion failed [evdone] When there are radio events with time reservations lower than the preemption timeout of 1.5 ms, the pipeline has to account for the maximum radio ... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix assertion failed [evdone] When there are radio events with time reservations lower than the preemption timeout of 1.5 ms, the pipeline has to account for the maximum radio ... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix assertion failed [evdone] When there are radio events with time reservations lower than the preemption timeout of 1.5 ms, the pipeline has to account for the maximum radio ... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
- Bluetooth: Controller: Fix assertion failed [evdone] When there are radio events with time reservations lower than the preemption timeout of 1.5 ms, the pipeline has to account for the maximum radio ... — committed to zephyrproject-rtos/zephyr by cvinayak 3 years ago
Reopen this issue to investigate the issue.
Hi Vich, we’ve done some testing with #36515 and have observed
ASSERTION FAIL [evdone] @WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/nordic/lll/lll.c:353but not yet theull_conn.cassert.We have also observed:
ASSERTION FAIL [rx_dle] @ WEST_TOPDIR/zephyr/subsys/bluetooth/controller/ll_sw/ull_conn.c:5466