[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Writable page tables questions


I'm Junji, a newbie in Xen and hoping I can contribute to the community one day. I have a few questions regarding the writable page tables, while reading The Definitive Guide to the Xen Hypervisor by David Chisnall:

1. Writable page tables is one Xen memory assist technique, applied to paravirtualized guests ONLY. HVM does not apply. Correct?

2. According to the book, when a guest wants to modify its page table, it triggers a trap into the hypervisor and it does a few steps:

(1) it invalidates a PTE that points to the page containing the page table. Is my understanding correct?

Q: What does "invalidate" really mean here? Does it mean simply flipping a bit in the PTE of the page table, or removing the PTE completely? Does it also need to invalidate the TLB entry?

(2) then the control goes back to the guest and it can write/read the page table now.

(3) The book's words pasted: "When an address referenced by the newly invalidated page directory entry is referenced (read or write), a page fault occurs. "

Q: The description of step (3) is confusing. What does it mean by "an address referenced by the newly invalidated page directory entry is referenced"? Does it mean the case when the guest code is accessing an virtual address that needs to search the invalidated page table for translation?

Thanks and I really appreciate any comment or responses.

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.