diff options
| -rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index e5e00f509f03..f4dc2462a1ac 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c | |||
| @@ -1507,7 +1507,10 @@ void __init enable_IO_APIC(void) | |||
| 1507 | int i8259_apic, i8259_pin; | 1507 | int i8259_apic, i8259_pin; |
| 1508 | int apic, pin; | 1508 | int apic, pin; |
| 1509 | 1509 | ||
| 1510 | if (!nr_legacy_irqs()) | 1510 | if (skip_ioapic_setup) |
| 1511 | nr_ioapics = 0; | ||
| 1512 | |||
| 1513 | if (!nr_legacy_irqs() || !nr_ioapics) | ||
| 1511 | return; | 1514 | return; |
| 1512 | 1515 | ||
| 1513 | for_each_ioapic_pin(apic, pin) { | 1516 | for_each_ioapic_pin(apic, pin) { |
| @@ -2373,9 +2376,9 @@ void __init setup_IO_APIC(void) | |||
| 2373 | { | 2376 | { |
| 2374 | int ioapic; | 2377 | int ioapic; |
| 2375 | 2378 | ||
| 2376 | /* | 2379 | if (skip_ioapic_setup || !nr_ioapics) |
| 2377 | * calling enable_IO_APIC() is moved to setup_local_APIC for BP | 2380 | return; |
| 2378 | */ | 2381 | |
| 2379 | io_apic_irqs = nr_legacy_irqs() ? ~PIC_IRQS : ~0UL; | 2382 | io_apic_irqs = nr_legacy_irqs() ? ~PIC_IRQS : ~0UL; |
| 2380 | 2383 | ||
| 2381 | apic_printk(APIC_VERBOSE, "ENABLING IO-APIC IRQs\n"); | 2384 | apic_printk(APIC_VERBOSE, "ENABLING IO-APIC IRQs\n"); |
