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-devel

Re: [Xen-devel] Any available page table entry bits in Xen??

To: Mike Sun <msun@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] Any available page table entry bits in Xen??
From: Min Lee <min.lee@xxxxxxxxxx>
Date: Sun, 19 Oct 2008 05:07:07 -0400
Cc: Xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sun, 19 Oct 2008 02:07:45 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <e4e579070810181904l17c656acwf3821800f15cdcac@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: <48FA1256.4070802@xxxxxxxxxx> <e4e579070810181904l17c656acwf3821800f15cdcac@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.17 (Windows/20080914)
Mike Sun wrote:
Hi Min,

I'd like to know if there's any available bit in page table entries, on
x86_32 (no pae),
especially on L1 page table entry. It seems to me that all bits are used by
Xen.

Could you clarify?  Are you referring to PTEs for para-virtualized
guests (without translation) or fully translated domains like HVM
guest with shadow paging?

I think for PV guests you're right, the PV guest OS cannot use of the
bits in the PTE.  Some of those bits are used by Xen (though somehow I
vaguely remember that though Xen reserves the use of those bits, they
may not actually be used).

For HVM guests, the guest PTEs will carry whatever the guest OS uses,
and in the shadow PTEs, I believe there are some bits not used by Xen
(not totally sure).

Mike


Hi, right, I'm talking about PV guest.
I'm working on 3.2.1 and xen disallow some bits as following..


/*
 * Disallow unused flag bits plus PAT/PSE, PCD, PWT and GLOBAL.
 * Permit the NX bit if the hardware supports it.
 */
#define BASE_DISALLOW_MASK (0xFFFFF198U & ~_PAGE_NX)


(snipped from include/asm/x86_32/page.h..
What this comment means? It only disallows GLOBAL/PAT/PCD/PWT bits,
so what is unused flag bits? It does't disallows AVAIL012 bits..
This is quite confusing comments.)

So first, I've disallowed all three AVAIL bits, and Linux doesn't boot well, it seems to use one of these AVAIL bits, so I could disallow two AVAIL bits with my Linux still booting up. So I thought I would be able to use these two AVAIL bits, which I'll work with.
But, I found that these two AVAIL bits change during Linux's boot time!
It's disallowed, so it must be Xen who have used these two bits, I guess.
But I don't really see any piece of code in Xen modifying AVAIL bits!
Xen doesn't seem to be using AVAIL bits except AVAIL2 for debugging purpose, which is disabled. So, then, who is touching my AVAIL bits??? Moreover, after Linux's boot time, nobody seems to use these two AVAIL bits..

Another question, I'd also like to use other bits -> GLOBAL/PAT/PCD/PWT bits, so how could I use them in xen? For GLOBAL bit, I would be able to use it freely as long as PGE flag in CR4 is disabled, right? Also for PAT/PCD/PWT bits, I guess I would be able to use them under some specific conditions..
thanks!

Min

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

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