zephyr/arch/xtensa/core
Andy Ross 58eb132d06 arch/xtensa: Fix return context for nested interupts
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>
2022-05-20 12:37:59 +02:00
..
include arch: xtensa: Print backtrace from panic handler 2021-01-23 08:43:10 -05:00
offsets arch/xtensa: General cleanup, remove dead code 2021-03-08 11:14:27 -05:00
startup soc/intel_adsp: Unify Xtensa CPU reset between cores 2021-12-14 18:43:05 -06:00
CMakeLists.txt xtensa: xcc: add a dummy atexit() 2022-01-25 21:16:32 -05:00
README-WINDOWS.rst arch/xtensa: Add an arch-internal README on register windows 2021-03-08 11:14:27 -05:00
coredump.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
cpu_idle.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
crt1.S arch/xtensa: soc/intel_adsp: Rework MP code entry 2021-03-08 11:14:27 -05:00
debug_helpers_asm.S arch: xtensa: Print backtrace from panic handler 2021-01-23 08:43:10 -05:00
fatal.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
gdbstub.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
gen_zsr.py arch/xtensa: Rework irq_offload: automatic config, SMP-safe 2022-02-21 22:10:03 -05:00
irq_manage.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
irq_offload.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
tls.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
window_vectors.S arch/xtensa: Use ZSR assignments for the alloca exception 2022-01-20 12:58:00 -05:00
xcc_stubs.c arch: migrate includes to <zephyr/...> 2022-05-06 19:57:22 +02:00
xtensa-asm2-util.S asm: update files with <zephyr/...> include prefix 2022-05-09 12:45:29 -04:00
xtensa-asm2.c arch/xtensa: Fix return context for nested interupts 2022-05-20 12:37:59 +02:00
xtensa_backtrace.c arch/xtensa: Enable backtrace on panic on Intel ADSP platforms 2022-04-14 11:03:40 -04:00
xtensa_intgen.py Revert "xtensa: remove unused script" 2021-10-07 16:04:11 -04:00
xtensa_intgen.tmpl