|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-changelog
[Xen-changelog] [xen-unstable] [IA64] fix a bug in	vmx_send_assist_req()
 
# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 0114b372dfaead0a97a5bc5933dff21ac1178846
# Parent  8254ba7c0defcebb9b439a91468b6cfae89b5dc2
[IA64] fix a bug in vmx_send_assist_req()
We must do_softirq() explicitly to enter scheduler
If not, booting a windows guest and a linux guest at the same time
will lead to a system hang.
Signed-off-by: Zhang Xin <xing.z.zhang@xxxxxxxxx>
---
 xen/arch/ia64/vmx/vmx_support.c |    6 +-----
 1 files changed, 1 insertion(+), 5 deletions(-)
diff -r 8254ba7c0def -r 0114b372dfae xen/arch/ia64/vmx/vmx_support.c
--- a/xen/arch/ia64/vmx/vmx_support.c   Wed Nov 22 10:10:38 2006 -0700
+++ b/xen/arch/ia64/vmx/vmx_support.c   Wed Nov 22 10:13:31 2006 -0700
@@ -76,11 +76,6 @@ void vmx_send_assist_req(struct vcpu *v)
     p->state = STATE_IOREQ_READY;
     notify_via_xen_event_channel(v->arch.arch_vmx.xen_port);
 
-    /*
-     * Waiting for MMIO completion
-     *   like the wait_on_xen_event_channel() macro like...
-     *   but, we can't call do_softirq() at this point..
-     */
     for (;;) {
         if (p->state != STATE_IOREQ_READY &&
             p->state != STATE_IOREQ_INPROCESS)
@@ -96,6 +91,7 @@ void vmx_send_assist_req(struct vcpu *v)
         }
 
         raise_softirq(SCHEDULE_SOFTIRQ);
+        do_softirq();
         mb();
     }
 
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-changelog] [xen-unstable] [IA64] fix a bug in	vmx_send_assist_req(),
Xen patchbot-unstable <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |