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] How EPT translates an X86_32 guest physical address?

To: Superymk <superymkxen@xxxxxxxxxxx>
Subject: Re: [Xen-devel] How EPT translates an X86_32 guest physical address?
From: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
Date: Wed, 17 Nov 2010 10:11:48 +0000
Cc: Xen-devel@xxxxxxxxxxxxxxxxxxx, Chu Rui <ruichu@xxxxxxxxx>
Delivery-date: Wed, 17 Nov 2010 02:12:36 -0800
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type; bh=joPDN4lv0IMUpVLNlJ0TpADFsWJbRUleLk14Qn0nQmY=; b=SpT+ZHuwZ+AOAWPrR7yE+WiDvLX1SIxCLNd7gvTVQ0HaNudBEd4B9UrAa1oCcYIa2s Y2sLjEapuxmv2LufZO5nTj5pGlwH262PET+Eu97SXf0HH6fAhMrr/QClifN96FT77jrh Lm7hzkyJfRjaBeAkDKPQh7S5bMMwSRh6HG+4M=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=jCmZARO9BVnXEe4vFuYYjcF1IriF3xIIQJbpa9S9Q/LqzMfVaWBEPl1HJ36EwIxDYZ BL715mr2O3S2Q/+Ei4OQuq8YvU2RiNeJlLEXoS/XEsJGHRHNXI1KmRH7cgTSFvn7tr4h VtN4s0W0+CdYyW/XTKam6WkhDwASXs8LEZ0rs=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <BLU0-SMTP170F62EE03BF27EE5AC75FCA2380@xxxxxxx>
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: <BLU0-SMTP80A291F0F92750E38F3084A2380@xxxxxxx> <AANLkTimG4DCtXSJO0xFoSGgJ_8v46j6W4RU=gUwP+i2L@xxxxxxxxxxxxxx> <BLU0-SMTP170F62EE03BF27EE5AC75FCA2380@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
If you're in 64-bit mode and the hardware had a TLB miss for virtual
address of 0xdeadb000, how would the hardware walk the pagetables?
There are 20 bits for the virtual frame number, but each page-table
entry has 9 bits.

It's the exact same situation if the guest cr3 was set to 0xdeadb000.
The indexes into the higher-level tables would simply be zero.

 -George

On Wed, Nov 17, 2010 at 9:40 AM, Superymk <superymkxen@xxxxxxxxxxx> wrote:
> Your figure points out the exactly EPT translation mechanism for an X64
> guest.
>
> In the face of an X86_32 guest, how can EPT find the right EPML4 entry when
> translating CR3's pfn value into the right mfn value? There are 20 bits for
> indexing in total, while each level of EPT paging structure uses only 9 bits
> for indexing.
>
>
> On 11/17/2010 5:20 PM, Chu Rui wrote:
>
> Maybe this figure depicts the process...
>
> The original URL is http://software.intel.com/file/25040
>
> 2010/11/17 Superymk <superymkxen@xxxxxxxxxxx>
>>
>> Hi all,
>>
>> Can some one please tell me how EPT translates an X86_32 guest physical
>> address? I have read the Intel's manual, but it seems there is no discussion
>> about this condition.
>>
>> My concern is that, the guest CR3 pfn can be considered as being
>> constituted by two 10 bits indexers for an X86_32 virtual machine. However,
>> the EPT paging structures is similar with the page tables used on X86_64
>> platform. which has four 9 bits indexers in its address layout. In addition,
>> each EPT entry is 64 bits long. Hence, a 4K page can hold at most 512
>> entries. So, if the guest CR3's pfn is 0xfffff (an X86_32 virtual machine)
>> and I get a valid EPTP, how EPT will perform the translation?
>>
>> Thanks,
>> Superymk
>>
>> _______________________________________________
>> Xen-devel mailing list
>> Xen-devel@xxxxxxxxxxxxxxxxxxx
>> http://lists.xensource.com/xen-devel
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
>
>

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