ladybird/Kernel/ACPI
Tom bc107d0b33 Kernel: Add SMP IPI support
We can now properly initialize all processors without
crashing by sending SMP IPI messages to synchronize memory
between processors.

We now initialize the APs once we have the scheduler running.
This is so that we can process IPI messages from the other
cores.

Also rework interrupt handling a bit so that it's more of a
1:1 mapping. We need to allocate non-sharable interrupts for
IPIs.

This also fixes the occasional hang/crash because all
CPUs now synchronize memory with each other.
2020-07-06 17:07:44 +02:00
..
Definitions.h Kernel: Detect APs and boot them into protected mode 2020-06-04 18:15:23 +02:00
DynamicParser.cpp Kernel: Remove redundant "ACPI" from filenames in ACPI/ 2020-04-09 18:17:27 +02:00
DynamicParser.h Kernel: Absorb LibBareMetal back into the kernel 2020-05-16 12:00:04 +02:00
Initialize.cpp Kernel: Simplify scanning BIOS/EBDA and MP parser initialization 2020-05-22 13:36:57 +02:00
Initialize.h Kernel: Remove "non-operational" ACPI parser state 2020-04-09 17:19:11 +02:00
MultiProcessorParser.cpp Kernel: Simplify MP table parser a little bit more 2020-05-23 15:25:43 +02:00
MultiProcessorParser.h Kernel: Simplify MP table parser a little bit more 2020-05-23 15:25:43 +02:00
Parser.cpp Kernel: Add SMP IPI support 2020-07-06 17:07:44 +02:00
Parser.h Kernel: Absorb LibBareMetal back into the kernel 2020-05-16 12:00:04 +02:00