[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] svm: Can only avoid CR3 reads when NPT is enabled.
# HG changeset patch # User Keir Fraser <keir@xxxxxxxxxxxxx> # Date 1191418437 -3600 # Node ID 479d83aa02caa9fa1d1ccecf355821eb3f5712bd # Parent b1f6e77b69a5f1b459f7269a9b278fa86970408f svm: Can only avoid CR3 reads when NPT is enabled. CR0 and CR4 reads must still be intercepted. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> --- xen/arch/x86/hvm/svm/vmcb.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-) diff -r b1f6e77b69a5 -r 479d83aa02ca xen/arch/x86/hvm/svm/vmcb.c --- a/xen/arch/x86/hvm/svm/vmcb.c Wed Oct 03 14:07:30 2007 +0100 +++ b/xen/arch/x86/hvm/svm/vmcb.c Wed Oct 03 14:33:57 2007 +0100 @@ -235,14 +235,16 @@ static int construct_vmcb(struct vcpu *v vmcb->h_cr3 = pagetable_get_paddr(v->domain->arch.phys_table); vmcb->exception_intercepts = HVM_TRAP_MASK; - /* No point in intercepting CR3/4 reads, because the hardware - * will return the guest versions anyway. Still need to intercept - * CR0 reads to hide the changes we make to CR0.TS in the lazy-fpu - * code. */ + /* + * No point in intercepting CR3 reads, because the hardware will return + * the guest version anyway. + */ vmcb->cr_intercepts &= ~(CR_INTERCEPT_CR3_READ|CR_INTERCEPT_CR4_READ); - /* No point in intercepting INVLPG if we don't have shadow pagetables - * that need to be fixed up. */ + /* + * No point in intercepting INVLPG if we don't have shadow pagetables + * that need to be fixed up. + */ vmcb->general1_intercepts &= ~GENERAL1_INTERCEPT_INVLPG; } else _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |