58eb132d06
The xtensa interrupt return path was forgetting to check the nested interrupt state and calling into the scheduler to select the context to which to return, which of course is completely wrong. We MUST return to the ISR we interrupted. In fact in practice this was only visible in the case of a nested interrupt that causes a context switch, otherwise the "interrupted" argument just gets returned and things work. In particular, it can happen when the nested context is a fatal exception that aborts the current thread, which is how this was discovered. The timing required to see this on live interrupts on real applications is likely to have been extremely difficult to detect. Fixes #45779 Signed-off-by: Andy Ross <andrew.j.ross@intel.com> |
||
---|---|---|
.. | ||
core | ||
include | ||
CMakeLists.txt | ||
Kconfig |