This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Question about page table used by hypervisor

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Question about page table used by hypervisor
From: KennyChen <windtracekimo@xxxxxxxxxxxx>
Date: Wed, 30 Mar 2011 01:42:33 +0000 (UTC)
Delivery-date: Tue, 29 Mar 2011 18:43:36 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <loom.20110120T034614-798@xxxxxxxxxxxxxx> <20110120094437.GI8286@xxxxxxxxxxxxxxxxxxxxxxx> <loom.20110209T003021-437@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Loom/3.14 (http://gmane.org/)
Hi, Tim:

One more doubt here.
In the Linux concept, each process all share a common part of kernel page
tables, e.g., 3-4GB address mapping are the same among all processes. Thus when
switching to kernel, there is no need to change hardware CR3.

But when going to PV guest, is that the same way?
I thought Xen prepares the page tables for PV guest in such a way that some
portion of address mapping is reserved particularly for hypervisor, which can be
used for translation inside hypervisor.

For PV, it might be ok because the page table is directly translated to machine
physical address. So when switching to hypervisor, this page table (same cr3)
can still be used for address translation.

But how about HVM guest (assume EPT is enabled)?
When vmexit happens, does the hardware CR3 switches to some other value, which
points to a special page table for Xen's use? If no switching happens, then the
hardware MMU would walk through guest page table for translation which is weird
to me.

If such special page table exists, could you point it out?


Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] Question about page table used by hypervisor, KennyChen <=