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] Guest page table dumping

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Guest page table dumping
From: "Travis Johnson" <travis.jo@xxxxxxxxxxxxxxx>
Date: Fri, 16 Mar 2007 14:46:25 -0400
Delivery-date: Fri, 16 Mar 2007 11:45:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hello List,

I'm trying to get at the guest's (x86_64 VMX HVM guest, x86_64 Xen 3.0.4-1) view of the page tables and dump them out so I can read them offline. My strategy to do this is to add a domctl I can use to map the domain page that corresponds to the guest's page table page (for right now just the top level page table, PML4) then dump out that page to dom0 so I can process it. I've got the skeleton domctl working but the trouble is I don't know exactly how I should transform the guests view of the CR3 address in order for map_domain_page() to be happy.

What transformation should I use to get vmx.cpu_cr3 into a happy address for use with map_domain_page(). My best guess so far is map_domain_page(gmfn_to_mfn(d, v->arch.hvm_cpu.u.vmx.cpu_cr3 >> PAGE_SHIFT)), is that in the ballpark?

Is cpu_cr3 the correct cr3 to use to get at the level 4 guest page table?

Would it be easier to dump the shadow representation of the l4 page table?

Xen-devel mailing list
<Prev in Thread] Current Thread [Next in Thread>