hvm trapping mechanism

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

hvm trapping mechanism

xennn
This post has NOT been accepted by the mailing list yet.
Hi all,

I would like to ask about hvm xen implementation. As far i understood the trapping-emulating flow is that:

1. when hvm virtual machine is started vmcs is setup and a vm_exit handler is registered at:

 __vmwrite(HOST_RIP, (unsigned long)vmx_asm_vmexit_handler);

2. the hypercall page is defined by hypercall api and that hypercall page contains the vmexit calls.
3. when guest os issues syscall an hypercall is perfomed by the hypercall page and vmexit operation is peformed
4. the vmx_vmexit_handler(struct cpu_user_regs *regs) (vmx.c) is invoked to emulate the hypercall.

I would like to ask is this flow is right? Is there somethingimportant missing?
I would like to ask how the  vmx_vmexit_handler is invoked - may  be on hardware level or there is some other party at the flow?

best regerds
Reply | Threaded
Open this post in threaded view
|

Re: hvm trapping mechanism

xennn
This post has NOT been accepted by the mailing list yet.
This post was updated on .
is that correct flow ?
i am new to xen and i would like to be sure about hvm flow ...

please share your thoughts about that
\
10x