summaryrefslogtreecommitdiffstats
path: root/sys/i386/acpica
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2003-11-06 14:47:53 +0000
committerjhb <jhb@FreeBSD.org>2003-11-06 14:47:53 +0000
commitf09704e3ea0296c7fd3f53a999a776d5f8d34ad7 (patch)
treeff7eaba886aba7413b515a7bb4c9de065c753704 /sys/i386/acpica
parent7180c01e53f93c7e93ae6731e5ed846306498f5c (diff)
downloadFreeBSD-src-f09704e3ea0296c7fd3f53a999a776d5f8d34ad7.zip
FreeBSD-src-f09704e3ea0296c7fd3f53a999a776d5f8d34ad7.tar.gz
Only disable the old pin when doing a remap if it's current vector is still
the old vector. Reported by: sam
Diffstat (limited to 'sys/i386/acpica')
-rw-r--r--sys/i386/acpica/madt.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/i386/acpica/madt.c b/sys/i386/acpica/madt.c
index 6fcf92e..a1652cf 100644
--- a/sys/i386/acpica/madt.c
+++ b/sys/i386/acpica/madt.c
@@ -541,7 +541,8 @@ madt_parse_interrupt_override(INTERRUPT_SOURCE_OVERRIDE *intr)
&old_pin) != 0)
printf("MADT: Could not find APIC for source IRQ %d\n",
intr->Source);
- else
+ else if (ioapic_get_vector(old_ioapic, old_pin) ==
+ intr->Source)
ioapic_disable_pin(old_ioapic, old_pin);
}
ioapic_set_triggermode(new_ioapic, new_pin,
OpenPOWER on IntegriCloud