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

[Xen-ia64-devel] [PATCH][HVM] timing in which isr is set is changed



Hi all.

When the HVM guest is used with vcpu=5, the hypervisor said "redir 10 not set 
for 180 EOI",
and the HVM guest is Hung.

When the hypervisor with a vcpu context delivers to another vcpu,
EOI might be sent before ISR is set.
( between 107-110. )

We should modify to call viosapic_delver() after ISR setting.


101 static void service_iosapic(struct viosapic *viosapic)
102 {
103     int irq;
104
105     while ( (irq = iosapic_get_highest_irq(viosapic)) != -1 )
106     {
107         viosapic_deliver(viosapic, irq);
108
109         if ( viosapic->redirtbl[irq].trig_mode == SAPIC_LEVEL )
110             viosapic->isr |= (1UL << irq);
111
112         viosapic->irr &= ~(1UL << irq);
113     }
114 }


Best regards,
 Horikoshi

Attachment: xen-fix-ioapic.patch
Description: Binary data

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

 


Rackspace

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