On Fri, Jul 29, 2016 at 9:00 PM, Charls D. Chap <chapcha...@gmail.com> wrote:
Please use Reply-All when responding to a mailing list thread. This keeps the mailing list (qemu-devel@nongnu.org) in the CC list so your replies are sent to the mailing list too. This way the discussion stays public on the mailing list and others can participate. > I've read again and again the code. Please let me ask you one last question. > > the question is, where is the VMEXIT and VMENTRY code. > > > If i have this, i can answer the following that bother me: > 1) > What is a VMEXIT, what mechanism? is it an interrupt? Same for VMENTRY > Where does the VMENTRY return? In an interrupt handler? > > 2) > Which are the parameters of vmetry and vmexit > does each vcpu has a specific VPID or does it change in every RESUME > > 3) > What is a hypercall? A pair of VMEXIT-VMENTRY? or is it oneway (does it ever > return?) Or there are many types of hypercalls > > 4) > When we do vmexit, Is it another context? I am mean, does the stack changes? > What is the guest stack? Each vcpu has one stack? Please look at the Intel Software Developer's Manuals and read about VMX instructions: https://www-ssl.intel.com/content/www/us/en/processors/architectures-software-developer-manuals.html Once you have an overview you'll understand the semantics and be able to grep for the relevant code in the kvm kernel module. Stefan