Page MenuHomeFreeBSD

D28237.diff
No OneTemporary

D28237.diff

diff --git a/sys/amd64/vmm/io/vioapic.c b/sys/amd64/vmm/io/vioapic.c
--- a/sys/amd64/vmm/io/vioapic.c
+++ b/sys/amd64/vmm/io/vioapic.c
@@ -364,9 +364,11 @@
/*
* Generate an interrupt if the following conditions are met:
* - previous interrupt has been EOIed
+ * - pin trigger mode is level
* - pin level is asserted
*/
if ((vioapic->rtbl[pin].reg & IOART_REM_IRR) == 0 &&
+ (vioapic->rtbl[pin].reg & IOART_TRGRMOD) == IOART_TRGRLVL &&
(vioapic->rtbl[pin].acnt > 0)) {
VIOAPIC_CTR2(vioapic, "ioapic pin%d: asserted at rtbl "
"write, acnt %d", pin, vioapic->rtbl[pin].acnt);

File Metadata

Mime Type
text/plain
Expires
Mon, Jan 27, 9:37 AM (2 h, 52 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16193673
Default Alt Text
D28237.diff (622 B)

Event Timeline