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

RE: [Xen-devel] Full Shadow Mode and phys_to_machine_mapping

> I'm trying to figure out how full shadow mode is implemented; I
> understand that this only works with VMX support at the moment.  The
> phys_to_machine_mapping function is giving me a bit of trouble.

Translate mode is currently being back-ported to para-virt guests too,
mostly to enable some definitive performance measurements.
> This function seems to be used to look up an entry in the PFN-to-MFN
> mapping table, which as I understand it for full shadow mode should be
> maintained by Xen instead of the domain.  This table can be up to 4 MB
> in size.  __phys_to_machine_mapping is set to point at the per-domain
> virtual memory area.  

It should be set to point at the 4MB area previously used by the guests
read-only mapping of the machine to phys table. If it's not (can't
remember) it needs moving.

> Isn't this area already used for per-domain
> GDT/LDT mappings, leaving no room for the PFN-to-MFN table?  I haven't
> been able to find where in the code the PFN-to-MFN table is ever
> initialized, either.  What am I missing?

It's stored in a format that looks like pte's so that it can also be
used as a VM-x guest's 1:1 pagetable when paging is disabled (e.g. boot
time). The table is potentially sparse, allow e.g. BIOS pages at the top
of physcial memory.

We're hoping to write this stuff up for a paper -- stay tuned.


SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
Xen-devel mailing list



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