zephyr/subsys
Morten Priess 8682e47eb0 Bluetooth: controller: Prevent incorrect lazy_current increment
Prevent redundant collision resolves and potential incorrect and harmful
increment of lazy_current.

During collision scenarios with high CPU load, the ticker_worker may be
called a second time before the ticker_job gets to run. This will cause
ticker operations on the previosly expired node (expected), and in some
cases increment lazy_current, even though the node was not sceduled to
execute via the req/ack mechanism.

By moving the request check before collision resolve, CPU time is saved,
and lazy_current will not incorrectly be incremented if node is in
collision.

The problem may be seen as a connection suddenly not receiving packets,
or MIC error on master, because the event counter goes out of sync.

Signed-off-by: Morten Priess <mtpr@oticon.com>
2020-09-04 14:14:23 +02:00
..
bluetooth Bluetooth: controller: Prevent incorrect lazy_current increment 2020-09-04 14:14:23 +02:00
canbus subsys: canopen: Add a wrapper to avoid passing device to CO_init 2020-09-02 13:48:13 +02:00
console device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
cpp cpp: Fixed compile warning with extern array declaration 2020-06-09 14:42:16 +02:00
debug debug: gdbstub: Send an error code when accessing invalid memory 2020-09-02 20:54:57 -04:00
dfu dfu: img_util: Add flash integrity check 2020-09-03 17:56:02 +02:00
disk device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
emul device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
fb device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
fs fs: allow setting max file name explicitly 2020-09-03 21:49:34 +02:00
jwt Kconfig: cleanup subsystems 2020-08-24 10:24:30 +02:00
logging subsys: logging: Fix device instance const qualifier loss 2020-09-02 13:48:13 +02:00
mgmt mgmt/osdp: Refactor struct osdp_cmd members for readability 2020-09-04 10:58:13 +02:00
net net: lwm2m: Fix FOTA Pull firmware transfer when Package URI is empty 2020-09-04 12:18:58 +03:00
power device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
random device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
settings Kconfig: settings 2020-08-24 10:24:30 +02:00
shell shell: fix printing from other threads 2020-09-03 21:54:47 +02:00
stats Kconfig: cleanup subsystems 2020-08-24 10:24:30 +02:00
storage storage: flash_map: use const struct device 2020-09-03 14:28:22 -05:00
testsuite testsuite: fix unittest cross-language flags 2020-08-31 11:02:35 -04:00
tracing device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
usb usb: hid: All hid_ops callbacks get device pointer. 2020-09-04 12:27:44 +02:00
CMakeLists.txt emul: Create an emulation implementation 2020-09-01 14:30:46 -04:00
Kconfig emul: Create an emulation implementation 2020-09-01 14:30:46 -04:00