Anthony Liguori wrote:
Sukanto Ghosh wrote:
ii) Who does the allocation of host physical memory to the guest, is it KVM module or the associated QEmu process ?

The QEMU process allocates the memory via malloc().
Doesn't the QEMU process and the guest have different address-spaces ? So, how can it malloc for the guest ? I thought the QEMU process requests for the memory allocation to the kvm module via the /dev/kvm device node.

Yes, the guest has a different address space from the host. The QEMU process malloc()'s the physical memory for the guest, and tells KVM what the region is (via an ioctl to /dev/kvm).


Why does the QEMU process needs to malloc() the physical memory for the guest ? Why can't it be done by the kernel itself ? Is it because the said pages will be sharable between the QEMU process and the guest, which will aid the QEMU process while performing DMA.



Also, when and how are host-initiated virtual interrupts delivered? I guess, that it is done at the time of VM-entry. But what about the interrupts that need to be delivered immediately and while the VM is executing (assume interrupts are enabled in the guest). Is any kind of signal-based mechanism employed to force a VM-exit ?



Thanks and Regards,

Sukanto Ghosh
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to