1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:58:11 +00:00

Kernel: Allow switching to IOAPIC mode even without enabling SMP

This small change allows to use the IOAPIC by default without to enable
SMP mode, which emulates Uni-Processor setup with IOAPIC instead of
using the PIC.

This opens the opportunity to utilize other types of interrupts like MSI
and MSI-X interrupts.
This commit is contained in:
Liav A 2021-11-28 17:38:10 +02:00 committed by Andreas Kling
parent f57900a41b
commit ac7953f945
5 changed files with 41 additions and 29 deletions

View file

@ -271,7 +271,7 @@ void init_stage2(void*)
WorkQueue::initialize();
if (APIC::initialized() && APIC::the().enabled_processor_count() > 1) {
if (kernel_command_line().is_smp_enabled() && APIC::initialized() && APIC::the().enabled_processor_count() > 1) {
// We can't start the APs until we have a scheduler up and running.
// We need to be able to process ICI messages, otherwise another
// core may send too many and end up deadlocking once the pool is