mirror of
https://github.com/espressif/esp-nimble.git
synced 2026-06-06 05:14:45 +00:00
2de66c2797
BabbleSim triggers interrupts when exiting from critical section (i.e. interrupts are unlocked) and then we check for pending context switch. This can lead to invalid switch from isr to task context before isr has actually finished: - interrupts are unlocked - interrupt is triggered - isr calls os_* which uses critical section and triggers context switch (e.g. os_eventq_put) - when exiting critical section in isr, we check for pending context switch and immediately switch to task context before isr is completed To fix this we should only perform context switch if exiting from critical section in task context.
BabbleSim support for Apache NimBLE