zephyr/arch
Andrew Boie fda08b0e43 x86: close EOI race condition when nested IRQs enabled
Until now, EOI had always been sent out to the APIC with interrupts
unlocked. Depending on timing, there is a race where the next interrupt
on the same line could arrive before _IntExit disables interrupts
and pops context. If this happens consecutively enough times, the
interrupt stack will overflow.

Now we disable interrupts at the beginning of _IntExitWithEoi and they
remain that way until 'iret'.

Change-Id: Ibb28e0db902ff483d7a885389f231ac2d1864657
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-07-20 21:48:00 +00:00
..
arc nanokernel: support GCC compiler atomic builtins 2016-07-18 23:20:52 +00:00
arm nanokernel: support GCC compiler atomic builtins 2016-07-18 23:20:52 +00:00
nios2 nanokernel: support GCC compiler atomic builtins 2016-07-18 23:20:52 +00:00
x86 x86: close EOI race condition when nested IRQs enabled 2016-07-20 21:48:00 +00:00
Kconfig nanokernel: support GCC compiler atomic builtins 2016-07-18 23:20:52 +00:00
Makefile arch/Makefile: simplify 2016-04-27 21:40:19 +00:00