[kernel] Don't unmask IOAPIC IRQs immediately

The amount of spurious IRQ activity on real hardware severely slows down
the system (minutes per frame instead of frames per second). There's no
reason to unmask all of them from the get-go before they're set up to be
handled.
This commit is contained in:
Justin C. Miller
2021-01-18 13:44:37 -08:00
parent 20ff0ed30b
commit 786b4ea8c0

View File

@@ -63,7 +63,7 @@ void irq4_callback(void *)
device_manager::device_manager() :
m_lapic(0)
m_lapic(nullptr)
{
m_irqs.ensure_capacity(32);
m_irqs.set_size(16);
@@ -236,12 +236,14 @@ device_manager::load_apic(const acpi_apic *apic)
p += length;
}
/*
for (uint8_t i = 0; i < m_ioapics[0].get_num_gsi(); ++i) {
switch (i) {
case 2: break;
default: m_ioapics[0].mask(i, false);
}
}
*/
m_lapic->enable();
}