diff options
author | jhb <jhb@FreeBSD.org> | 2003-11-06 14:47:53 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2003-11-06 14:47:53 +0000 |
commit | f09704e3ea0296c7fd3f53a999a776d5f8d34ad7 (patch) | |
tree | ff7eaba886aba7413b515a7bb4c9de065c753704 /sys/amd64 | |
parent | 7180c01e53f93c7e93ae6731e5ed846306498f5c (diff) | |
download | FreeBSD-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/amd64')
-rw-r--r-- | sys/amd64/acpica/madt.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/amd64/acpica/madt.c b/sys/amd64/acpica/madt.c index 6fcf92e..a1652cf 100644 --- a/sys/amd64/acpica/madt.c +++ b/sys/amd64/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, |