xitler adole <zqyleo@xxxxxxxxx> writes: > Dear developer: > > I am facing confusing problems, there is no way for me to figure it > out, so I have to ask for help: > > 1. I am using the <asm/kvm_host.h> <linux/kvm_host.h> for using kvm > in my module, but there are always some function undefined like > kvm_arch_mmu_notifier_invalidate_range. Are those functions not > visiable from outside? kvm_arch_mmu_notifier_invalidate_range() is not exported to other modules with EXPORT_SYMBOL_GPL() so you won't be able to call it. > > 2. With the ept technology, If I use "alloc_page" inside the guest > virtual machine, and use "page_to_pfn" to get the pfn of the certain > page, Is the pfn I get the gfn or the pfn of the host machine? You'll get gfn. Basically, the guest doesn't know that it runs as guest. > > 3. I want to modify the EPT table, so that I can make the gva point > to certain hpa just to share information between vm, Given the > condition that I can not modify the kvm code, Is that possible? You have two level of translation: GVA -> GPA GPA -> HPA so to make it happen you'll need a maping inside the guest (GVA -> GPA) + an entry in EPT (GPA -> HPA). -- Vitaly