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 to turn on EPT support?

To: Superymk <superymkxen@xxxxxxxxxxx>
Subject: Re: [Xen-devel] How to turn on EPT support?
From: Pasi Kärkkäinen <pasik@xxxxxx>
Date: Wed, 27 Jan 2010 13:55:28 +0200
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, "Li, Xin" <xin.li@xxxxxxxxx>
Delivery-date: Wed, 27 Jan 2010 03:55:46 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <BLU135-DS5DFF1787CC0A4F71AE454A25D0@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: <20100127112618.GF2861@xxxxxxxxxxx> <BLU135-DS5DFF1787CC0A4F71AE454A25D0@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.18 (2008-05-17)
On Wed, Jan 27, 2010 at 07:50:43PM +0800, Superymk wrote:
> All right, I'll verify it. Can I really modify it on the xen wiki? I've  
> never dreamed about that. :)
>

Yeah, you can, after you create an account.. :)

-- Pasi

> --------------------------------------------------
> From: "PasiKärkkäinen" <pasik@xxxxxx>
> Sent: Wednesday, January 27, 2010 7:26 PM
> To: "Superymk" <superymkxen@xxxxxxxxxxx>
> Cc: <xen-devel@xxxxxxxxxxxxxxxxxxx>; "Li, Xin" <xin.li@xxxxxxxxx>
> Subject: Re: [Xen-devel] How to turn on EPT support?
>
>> On Wed, Jan 27, 2010 at 06:49:20PM +0800, Superymk wrote:
>>>    Thanks. I tailor the hvm example configuration file in xen manually
>>>    instead of using Virtual Machine Manager. I use your method to 
>>> verify it
>>>    and the problem is solved now.
>>>    However I find that hap configuration belongs to the Timers 
>>> category in
>>>    Xen Configurations Details
>>>    ([1]http://www.xen.org/files/Support/XenConfigurationDetails.pdf), 
>>> is it a
>>>    mistake?
>>>
>>
>> Here's the wiki version of the pdf, created just yesterday:
>> http://wiki.xensource.com/xenwiki/XenConfigurationFileOptions
>>
>> It's easy to edit and fix the stuff in the wiki now :)
>>
>> -- Pasi
>>
>>>    Miao
>>>    From: [2]Li, Xin
>>>    Sent: Wednesday, January 27, 2010 5:53 PM
>>>    To: [3]Zhang, Xiantao ; [4]Superymk ; [5]xen-devel@xxxxxxxxxxxxxxxxxxx
>>>    Cc: [6]ken.mingyuan@xxxxxxxxxxx
>>>    Subject: RE: [Xen-devel] How to turn on EPT support?
>>>
>>>    i7 965 has EPT support.
>>>
>>>    Use command *xm debug-k v; xm dmesg* to see if EPT pointer is 0. 
>>> If 0 then
>>>    EPT should disabled for the guest.
>>>
>>>    as Xiantao mentioned, I guess your hap in config file is set to 0. By
>>>    default if you don*t set it, ept should be enabled.
>>>
>>>    Thanks!
>>>
>>>    -Xin
>>>
>>>
>>>
>>>    From: [7]xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>>    [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Zhang, 
>>> Xiantao
>>>    Sent: Wednesday, January 27, 2010 5:09 PM
>>>    To: Superymk; [8]xen-devel@xxxxxxxxxxxxxxxxxxx
>>>    Cc: [9]ken.mingyuan@xxxxxxxxxxx
>>>    Subject: RE: [Xen-devel] How to turn on EPT support?
>>>
>>>
>>>
>>>    Can you check Xen's boot log to see whether the sentence as 
>>> following is
>>>    printed out ?
>>>
>>>
>>>
>>>    (XEN) HVM: Hardware Assisted Paging detected.
>>>
>>>
>>>
>>>    I don't know Xen-3.4.2's policy for EPT's default option, maybe 
>>> you can
>>>    add "hap=1" in your configuration file to ensure EPT on when you  
>>> create
>>>    virtual machine  if the system supports it.
>>>
>>>
>>>
>>>    Xiantao
>>>
>>>
>>>
>>>    
>>> --------------------------------------------------------------------------
>>>
>>>    From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>>    [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Superymk
>>>    Sent: Wednesday, January 27, 2010 2:42 PM
>>>    To: xen-devel@xxxxxxxxxxxxxxxxxxx
>>>    Cc: ken.mingyuan@xxxxxxxxxxx
>>>    Subject: [Xen-devel] How to turn on EPT support?
>>>
>>>    To test if EPT is enabled on my machine, I add some codes in my 
>>> own xen
>>>    shadow and create a guest vm (named testvm) by Virtual Machine  
>>> Manager.
>>>    However, it seems that testvm doesn't use EPT at all (See the 
>>> log). So how
>>>    to turn on EPT support? I thought it should be enabled automatically.
>>>
>>>
>>>
>>>    My box is configured as:
>>>
>>>    Intel Core i7 965
>>>
>>>    2G*3 DDR3 1333
>>>
>>>    Seagate 1T
>>>
>>>
>>>
>>>    Centos 5.2
>>>
>>>    Xen-3.4.2 with linux 2.6.18 xenified kernel (downloaded from xen.org)
>>>
>>>
>>>
>>>    Log:
>>>
>>>    (XEN) (Joan)domain.c:388: Domain ID 32767
>>>    (XEN) (Joan)domain.c:389: is_hvm_domain(d) 0
>>>    (XEN) (Joan)domain.c:390: hvm_funcs.hap_supported 0
>>>    (XEN) (Joan)domain.c:391: (domcr_flags & DOMCRF_hap) 0
>>>    (XEN) (Joan)p2m.c:1464: is_hvm_domain(d)  0
>>>    (XEN) (Joan)p2m.c:1465: d->arch.hvm_domain.hap_enabled 0
>>>    (XEN) (Joan)p2m.c:1466: X86_VENDOR_INTEL 1
>>>    (XEN) (Joan)p2m.c:1473: d->arch.p2m->set_entry FFFF828C8019FD50
>>>    (XEN) (Joan)p2m.c:1474: p2m_set_entry FFFF828C8019FD50
>>>    (XEN) (Joan)domain.c:388: Domain ID 0
>>>    (XEN) (Joan)domain.c:389: is_hvm_domain(d) 0
>>>    (XEN) (Joan)domain.c:390: hvm_funcs.hap_supported 1
>>>    (XEN) (Joan)domain.c:391: (domcr_flags & DOMCRF_hap) 0
>>>    (XEN) (Joan)p2m.c:1464: is_hvm_domain(d)  0
>>>    (XEN) (Joan)p2m.c:1465: d->arch.hvm_domain.hap_enabled 0
>>>    (XEN) (Joan)p2m.c:1466: X86_VENDOR_INTEL 1
>>>    (XEN) (Joan)p2m.c:1473: d->arch.p2m->set_entry FFFF828C8019FD50
>>>    (XEN) (Joan)p2m.c:1474: p2m_set_entry FFFF828C8019FD50
>>>    (XEN) (Joan)domain.c:388: Domain ID 1
>>>    (XEN) (Joan)domain.c:389: is_hvm_domain(d) 1
>>>    (XEN) (Joan)domain.c:390: hvm_funcs.hap_supported 1
>>>    (XEN) (Joan)domain.c:391: (domcr_flags & DOMCRF_hap) 0
>>>    (XEN) (Joan)p2m.c:1464: is_hvm_domain(d)  1
>>>    (XEN) (Joan)p2m.c:1465: d->arch.hvm_domain.hap_enabled 0
>>>    (XEN) (Joan)p2m.c:1466: X86_VENDOR_INTEL 1
>>>    (XEN) (Joan)p2m.c:1473: d->arch.p2m->set_entry FFFF828C8019FD50
>>>    (XEN) (Joan)p2m.c:1474: p2m_set_entry FFFF828C8019FD50
>>>
>>>
>>>
>>>    Modified Code:
>>>
>>>    /* Init the datastructures for later use by the p2m code */
>>>    1442: int p2m_init(struct domain *d)
>>>    {
>>>        struct p2m_domain *p2m;
>>>
>>>
>>>
>>>        p2m = xmalloc(struct p2m_domain);
>>>        if ( p2m == NULL )
>>>            return -ENOMEM;
>>>
>>>
>>>
>>>        d->arch.p2m = p2m;
>>>
>>>
>>>
>>>        memset(p2m, 0, sizeof(*p2m));
>>>        p2m_lock_init(p2m);
>>>        INIT_PAGE_LIST_HEAD(&p2m->pages);
>>>        INIT_PAGE_LIST_HEAD(&p2m->pod.super);
>>>        INIT_PAGE_LIST_HEAD(&p2m->pod.single);
>>>
>>>
>>>
>>>        p2m->set_entry = p2m_set_entry;
>>>        p2m->get_entry = p2m_gfn_to_mfn;
>>>        p2m->get_entry_current = p2m_gfn_to_mfn_current;
>>>        p2m->change_entry_type_global = p2m_change_type_global;
>>>
>>>     joan_dprintk("is_hvm_domain(d)  %d\n", is_hvm_domain(d));
>>>     joan_dprintk("d->arch.hvm_domain.hap_enabled %d\n",
>>>    d->arch.hvm_domain.hap_enabled);
>>>     joan_dprintk("X86_VENDOR_INTEL %d\n", (boot_cpu_data.x86_vendor ==
>>>    X86_VENDOR_INTEL));
>>>        if ( is_hvm_domain(d) && d->arch.hvm_domain.hap_enabled &&
>>>             (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL) )
>>>     {
>>>      joan_dprintk("Add Ept Support\n");
>>>            ept_p2m_init(d);
>>>     }
>>>     joan_dprintk("d->arch.p2m->set_entry %lX\n",
>>>    (uint64_t)(d->arch.p2m->set_entry) );
>>>     joan_dprintk("p2m_set_entry %lX\n", (uint64_t)p2m_set_entry);
>>>
>>>
>>>
>>>        return 0;
>>>    }
>>>
>>>
>>>
>>>
>>>
>>>    Thanks,
>>>
>>>    Miao
>>>
>>>
>>>
>>>
>>>
>>> References
>>>
>>>    Visible links
>>>    1. http://www.xen.org/files/Support/XenConfigurationDetails.pdf
>>> CTRL + Click to follow link
>>> http://www.xen.org/files/Support/XenConfigurationDetails.pdf
>>>    2. xin.li@xxxxxxxxx
>>> mailto:xin.li@xxxxxxxxx
>>>    3. xiantao.zhang@xxxxxxxxx
>>> mailto:xiantao.zhang@xxxxxxxxx
>>>    4. superymkxen@xxxxxxxxxxx
>>> mailto:superymkxen@xxxxxxxxxxx
>>>    5. xen-devel@xxxxxxxxxxxxxxxxxxx
>>> mailto:xen-devel@xxxxxxxxxxxxxxxxxxx
>>>    6. ken.mingyuan@xxxxxxxxxxx
>>> mailto:ken.mingyuan@xxxxxxxxxxx
>>>    7. mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>>    8. mailto:xen-devel@xxxxxxxxxxxxxxxxxxx
>>>    9. mailto:ken.mingyuan@xxxxxxxxxxx
>>
>>> _______________________________________________
>>> 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