Virtual Machine Crash on Hypercall

Hello all, I am have a small problem, when running the BIOS in 16Bit if Y try to do a hypercall the virtual machines crashes. Here is the code of the hypercall: #define _hypercall2(type, name, a1, a2) \ ({ \ unsigned long __hentry = xen_hypercall_page+__HYPERVISOR_##name*32; \ long __res, __ign1, __ign2; \ asm volatile ( \ "call *%%eax" \ : "=a" (__res), "=b" (__ign1), "=c" (__ign2) \ : "0" (__hentry), "1" ((long)(a1)), "2" ((long)(a2)) \ : "memory" ); \ (type)__res; \ }) I guess the something is being passed wrong to the call, and the return address is damaged... Daniel -- +-=====---------------------------+ | +---------------------------------+ | This space intentionally blank for notetaking. | | | Daniel Castro, | | | | Consultant/Programmer.| | | | U Andes | +-------------------------------------+
participants (1)
-
Daniel Castro