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

[Xen-changelog] [xen-unstable] hvm: Fix platform-irq handling in presence of irqbalance daemon.



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Date 1174296664 0
# Node ID 548e61fbdc1a0a04d2e494f2ef36b71201c18b4b
# Parent  2b58c9e325490312eaa4a0ce46ab92be04dfec0f
hvm: Fix platform-irq handling in presence of irqbalance daemon.

The HVM guest did not respond when PV-on-HVM driver was tested on
the following conditions.

1. RHEL4u4
2. vcpu 4
3. irqbalance on
4. pv-on-hvm driver used.

Eventhandler did not work because IRQ was delivered to another vcpu by
irqbalance.

Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@xxxxxxxxxxxxxx>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@xxxxxxxxxxxxxx>
---
 unmodified_drivers/linux-2.6/platform-pci/evtchn.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)

diff -r 2b58c9e32549 -r 548e61fbdc1a 
unmodified_drivers/linux-2.6/platform-pci/evtchn.c
--- a/unmodified_drivers/linux-2.6/platform-pci/evtchn.c        Sun Mar 18 
18:26:34 2007 +0000
+++ b/unmodified_drivers/linux-2.6/platform-pci/evtchn.c        Mon Mar 19 
09:31:04 2007 +0000
@@ -167,7 +167,8 @@ irqreturn_t evtchn_interrupt(int irq, vo
 irqreturn_t evtchn_interrupt(int irq, void *dev_id, struct pt_regs *regs)
 {
        unsigned int l1i, port;
-       int cpu = smp_processor_id();
+       /* XXX: All events are bound to vcpu0 but irq may be redirected. */
+       int cpu = 0; /*smp_processor_id();*/
        irqreturn_t(*handler) (int, void *, struct pt_regs *);
        shared_info_t *s = shared_info_area;
        vcpu_info_t *v = &s->vcpu_info[cpu];

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.