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

[Xen-devel] [PATCH][2/3] evtchn race condition


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Woller, Thomas" <thomas.woller@xxxxxxx>
  • Date: Wed, 25 Jan 2006 09:11:55 -0600
  • Delivery-date: Wed, 25 Jan 2006 15:22:04 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcYhwa2dmAjjX5lUSMeKiqlZfk2Fsg==
  • Thread-topic: [PATCH][2/3] evtchn race condition

This patch is for testing only and adds a simple I/O looping test to
hvmloader in order to repo the evtchn hang problem.  Applies to the
xen-unstable-hvm.hg repository.


Signed-off-by: Tom Woller <thomas.woller@xxxxxxx>

diff -r d8bb56042ef1 tools/firmware/hvmloader/hvmloader.c
--- a/tools/firmware/hvmloader/hvmloader.c      Tue Jan 24 20:26:57 2006
+++ b/tools/firmware/hvmloader/hvmloader.c      Tue Jan 24 14:35:03 2006
@@ -159,6 +159,16 @@
        return __builtin_memcmp(id, "AuthenticAMD", 12) == 0;
 }
 
+#define io_operation_out()          \
+    __asm__ __volatile__("nop\n"                             \
+            "movw $0x3Fb, %dx\n"               \
+            "nop\n"                            \
+            "mov $0x80, %al\n"                         \
+            "nop\n"                            \
+            "out %al, %dx\n"                   \
+            "nop\n"                            \
+            )
+
 int
 main(void)
 {
@@ -192,6 +202,13 @@
        if (check_amd()) {
                /* AMD implies this is SVM */
                 puts("SVM go ...\n");
+                while(1)
+                {
+                    /* infinite out to repo guest hang */
+                    io_operation_out();
+                }
+                puts("NEVER GET HERE WITH IO TEST ...\n");
+
                 vmmcall(SVM_VMMCALL_RESET_TO_REALMODE, 0, 0, 0, 0);
        } else {
                puts("Loading VMXAssist ...\n");


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


 


Rackspace

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