|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] hypercall execution path?
so: what does it point at? what's the page address, which offset?
On my machine (xen 3.0.4_1, linux 2.6.16.33-xen), the EIP register in
the guest's vcpu holds 0xc01013a7. For reference, the hypercall page is
0xc0101000, this is at offset 0x3a7 on that page. Looking at the
disassembly from that page at this location, I see the following:
mov 0x1d, %eax
int $0x82
ret
The EIP value is pointing at the 'ret' instruction. Looking in the
hypercall table, this (0x1d) is the sched_op hypercall (which is not the
hypercall that I called).
after looking into traps.c: take good care with the layout: hypercall
pages on x86_32 are 32 (!) bytes per entry (not 8 as the loop body might
suggest). are your calculations correct?
I believe so, but you can verify with the information that I provided
above. 0x1d * 32 = 0x3a0... this matches the offset I'm seeing.
Hopefully someone can help me make sense of this :-)
Thanks,
bryan
-
Bryan D. Payne
Graduate Student, Computer Science
Georgia Tech Information Security Center
http://www.bryanpayne.org
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|