qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] x86: Fix conditions for Virtual Wire IRQ delivery


From: Jan Kiszka
Subject: [Qemu-devel] [PATCH] x86: Fix conditions for Virtual Wire IRQ delivery
Date: Mon, 20 Oct 2008 14:25:38 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

QEMU is implementing the Virtual Wire mode to attach the PIC to modern,
APIC-supporting CPUs. But Intel's MP spec says that PIC interrupts then
flow through the APICs, thus they also have to be enabled. Patch below
fixes the test logic accordingly, avoiding delivery in case an APIC is
disabled.

Signed-off-by: Jan Kiszka <address@hidden>
---
 hw/apic.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: b/hw/apic.c
===================================================================
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -526,7 +526,7 @@ int apic_accept_pic_intr(CPUState *env)
 
     lvt0 = s->lvt[APIC_LVT_LINT0];
 
-    if ((s->apicbase & MSR_IA32_APICBASE_ENABLE) == 0 ||
+    if ((s->apicbase & MSR_IA32_APICBASE_ENABLE) &&
         (lvt0 & APIC_LVT_MASKED) == 0)
         return 1;
 
-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux





reply via email to

[Prev in Thread] Current Thread [Next in Thread]