| 
    
 [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] fix process_portio_intercept
 Hi all,
process_portio_intercept and hvm_mmio_access do not correctly check the
return value of the intercept action functions they are calling.
In particular they are setting p->count to i even if i is 0 and the
action function returned X86EMUL_UNHANDLEABLE, leading to errors.
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
diff -r dbc4014882d0 xen/arch/x86/hvm/intercept.c
--- a/xen/arch/x86/hvm/intercept.c      Wed Apr 01 08:36:21 2009 +0100
+++ b/xen/arch/x86/hvm/intercept.c      Wed Apr 01 15:15:29 2009 +0100
@@ -100,8 +100,10 @@
         }
     }
 
-    if ( (p->count = i) != 0 )
+    if ( i > 0 ) {
+        p->count = i;
         rc = X86EMUL_OKAY;
+    }
 
     return rc;
 }
@@ -165,8 +167,10 @@
         }
     }
 
-    if ( (p->count = i) != 0 )
+    if ( i > 0 ) {
+        p->count = i;
         rc = X86EMUL_OKAY;
+    }
 
     return rc;
 }
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
  | 
  
![]()  | 
            
         Lists.xenproject.org is hosted with RackSpace, monitoring our  |