[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.