diff options
Diffstat (limited to 'arch/x86/Kconfig')
-rw-r--r-- | arch/x86/Kconfig | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 96e0c2ebc388..09521332636b 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -665,6 +665,30 @@ config X86_VISWS_APIC | |||
665 | def_bool y | 665 | def_bool y |
666 | depends on X86_32 && X86_VISWS | 666 | depends on X86_32 && X86_VISWS |
667 | 667 | ||
668 | config X86_REROUTE_FOR_BROKEN_BOOT_IRQS | ||
669 | bool "Reroute for broken boot IRQs" | ||
670 | default n | ||
671 | depends on X86_IO_APIC | ||
672 | help | ||
673 | This option enables a workaround that fixes a source of | ||
674 | spurious interrupts. This is recommended when threaded | ||
675 | interrupt handling is used on systems where the generation of | ||
676 | superfluous "boot interrupts" cannot be disabled. | ||
677 | |||
678 | Some chipsets generate a legacy INTx "boot IRQ" when the IRQ | ||
679 | entry in the chipset's IO-APIC is masked (as, e.g. the RT | ||
680 | kernel does during interrupt handling). On chipsets where this | ||
681 | boot IRQ generation cannot be disabled, this workaround keeps | ||
682 | the original IRQ line masked so that only the equivalent "boot | ||
683 | IRQ" is delivered to the CPUs. The workaround also tells the | ||
684 | kernel to set up the IRQ handler on the boot IRQ line. In this | ||
685 | way only one interrupt is delivered to the kernel. Otherwise | ||
686 | the spurious second interrupt may cause the kernel to bring | ||
687 | down (vital) interrupt lines. | ||
688 | |||
689 | Only affects "broken" chipsets. Interrupt sharing may be | ||
690 | increased on these systems. | ||
691 | |||
668 | config X86_MCE | 692 | config X86_MCE |
669 | bool "Machine Check Exception" | 693 | bool "Machine Check Exception" |
670 | depends on !X86_VOYAGER | 694 | depends on !X86_VOYAGER |