[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Xen-devel] Some tables used when shadowable
Hi, I find there are several kinds of tables are used when shadowsable. They
are defined as follow:
pagetable_t guest_table; /* (MFN) guest notion of cr3 */
pagetable_t shadow_table; /* (MFN) shadow(s) of guest */
pagetable_t monitor_table; /* (MFN) hypervisor PT (for HVM) */
unsigned long cr3; /* (MA) value to install in HW CR3
I am confused by these tables. My understanding as follow:
Does guest_table point to MFN of page tables which constructed used by guest
where it convert from? guest_cr or hw_cr?
What is it used? Does it used for VMM when emulating? such as: when guest
generate page fault, it will trigger VM exit,
then VMM read GUEST_CR3 and convert GUEST_CR3 to MFN ïthen store the MFN in
guest_table, now because the MFN is the guest physical
address ,so VMM will convert it to the machine physical address via P2M
hw_cr and GUEST_CR3 both point to shadow_table, right?
I am not sure the use of monitor_table.
Does it used for VMM access guest's address space?
And I find HOST_CR3 point to monitor tableïwhy HOST_CR3 pointing it?
I think HOST_CR3 should point to VMM's page table when VM exit, then VMM can
access address space itself. But why HOST_CR3 don't point to the page table
Anyone help me?
View this message in context:
Sent from the Xen - Dev mailing list archive at Nabble.com.
Xen-devel mailing list