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

xen-devel

[Top] [All Lists]

[Xen-devel] How to turn on EPT support?

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] How to turn on EPT support?
From: "Superymk" <superymkxen@xxxxxxxxxxx>
Date: 2010年1月27日 14:41:30 +0800
Cc: ken.mingyuan@xxxxxxxxxxx
Delivery-date: 2010年1月26日 22:41:53 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
Importance: Normal
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
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

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
Previous by Date: [Xen-devel] Is there anyone working on SMbios support for the PV platform? , Yibin Shen
Next by Date: Re: [Xen-devel] trying to debug xen4 & qemu-dm, Xen reports "core dump failed" , Keir Fraser
Previous by Thread: [Xen-devel] Is there anyone working on SMbios support for the PV platform? , Yibin Shen
Next by Thread: RE: [Xen-devel] How to turn on EPT support? , Zhang, Xiantao
Indexes: [Date] [Thread] [Top] [All Lists]

Copyright ©, Citrix Systems Inc. All rights reserved. Legal and Privacy
Citrix This site is hosted by Citrix

AltStyle によって変換されたページ (->オリジナル) /