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


Re: [Xen-devel] How to get guest PTEs info of a HVM with EPT

To: KennyChen <windtracekimo@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] How to get guest PTEs info of a HVM with EPT
From: Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Date: Thu, 20 Jan 2011 09:44:37 +0000
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Thu, 20 Jan 2011 01:45:10 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <loom.20110120T034614-798@xxxxxxxxxxxxxx>
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.20 (2009-06-14)
At 02:50 +0000 on 20 Jan (1295491817), KennyChen wrote:
> When EPT is enabled for a HVM guest, is that possible for hypervisor
> to get the PTE information of guest page table? e.g, R/W, Supervisor
> flags? 

Yes, of course - you know the guest's CR3 value and you can map all its
memory so you can read its pagetables.  Look at hap_gva_to_gfn() and 
how it calls guest_walk_tables().  You can even do it from userspace 
in dom0 - see xc_translate_foreign_address().

What you can't do easily without shadow paging is _control_ the
pagetable values.



Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Principal Software Engineer, Xen Platform Team
Citrix Systems UK Ltd.  (Company #02937203, SL9 0BG)

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>