WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

[Xen-users] "Bad type" when setting PML4 on x86_64

To: xen-users@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-users] "Bad type" when setting PML4 on x86_64
From: Trammell Hudson <hudson@xxxxxxxxxxxxxx>
Date: Wed, 6 Jun 2007 07:49:20 -0400
Delivery-date: Wed, 06 Jun 2007 04:47:48 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.10i
I'm to porting a lightweight kernel to Xen 3.0.4-x86_64 and have
run into a problem while setting the PML4.  Xen complains that
it has a bad type of 'PGT_writable_page' (e8000001), while it expects
80000000.

However, I'm almost certain that this is not the case.  I added a routine
to do a depth first search of the four page table levels looking for this
machine frame and find that there are only two mappings of it, both of
which are flagged only as Present, non-writable, non-user.  Both
mappings are from a shared PL1 directory.  According to the interface
guide "a guest OS may always create readable mappings of its own
memory regardless of its current type", so it would seem that this
should be an acceptable situation for Xen.

The abbreviated console output showing the results of the page table
search and the attempt to set the PML4:

Page table search for mfn 13091:
PML1 0x6000022000[010] = 13091001 (va=0000010000 000 000 000 010)
PML1 0x6000022000[010] = 13091001 (va=6000010000 000 180 000 010)
vm_enter:895: about to instantiate new maps pml4=0x6000010000
vm_enter:901: Using physical pml4 0x13091000 for Xen
(XEN) mm.c:1664:d72 Bad type (saw 00000000e8000001 != exp 0000000080000000) for 
mfn 13091 (pfn 10)
(XEN) mm.c:1724:d72 New baseptr 13091: slow path via idle pagetables
(XEN) mm.c:1664:d72 Bad type (saw 00000000e8000001 != exp 0000000080000000) for 
mfn 13091 (pfn 10)
(XEN) mm.c:1737:d72 Fatal error while installing new baseptr 13091

I've tried both with and without the writable page tables turned on
with vm_assist.  Is there something that I am missing?

Thanks!
-- Trammell

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

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