1 message in com.xensource.lists.xen-devel[Xen-devel] [PATCH][2/3] evtchn race ...
FromSent OnAttachments
Woller, Thomas25 Jan 2006 07:11 
Subject:[Xen-devel] [PATCH][2/3] evtchn race condition
From:Woller, Thomas (thom@amd.com)
Date:01/25/2006 07:11:32 AM
List:com.xensource.lists.xen-devel

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 <thom@amd.com>

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");