|  |  | 
  
    |  |  | 
 
  |   |  | 
  
    |  |  | 
  
    |  |  | 
  
    |   xen-ia64-devel
[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
 xen-fix-ioapic.patch Description: Binary data
 _______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel | 
 
| <Prev in Thread] | Current Thread | [Next in Thread> |  | 
[Xen-ia64-devel] [PATCH][HVM] timing in which isr is set is changed,
Tomonari Horikoshi <=
 |  |  | 
  
    |  |  |