Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60134ebe authored by Maciej W. Rozycki's avatar Maciej W. Rozycki Committed by Ingo Molnar
Browse files

x86: I/O APIC: keep IRQ off when changing LVT registers



Disable the 8259A acting in the "virtual wire" mode to keep the interrupt
line inactive while fiddling with local APIC interrupt vector registers
associated with its destination inputs.  To be on the safe side,
especially concerning flipping the trigger mode.

Signed-off-by: default avatarMaciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent e67465f1
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -2199,7 +2199,9 @@ static inline void __init check_timer(void)
			else
				add_pin_to_irq(0, apic2, pin2);
			if (nmi_watchdog == NMI_IO_APIC) {
				disable_8259A_irq(0);
				setup_nmi();
				enable_8259A_irq(0);
			}
			goto out;
		}
+2 −0
Original line number Diff line number Diff line
@@ -1702,7 +1702,9 @@ static inline void __init check_timer(void)
			apic_printk(APIC_VERBOSE," works.\n");
			nmi_watchdog_default();
			if (nmi_watchdog == NMI_IO_APIC) {
				disable_8259A_irq(0);
				setup_nmi();
				enable_8259A_irq(0);
			}
			goto out;
		}