direct-io.hg

changeset 15198:b182bd560e47

VMX: Only write top-half of machine addresses into VMCS fields in PAE mode.
Signed-off-by: Keir Fraser <keir@xensource.com>
author kfraser@localhost.localdomain
date Thu May 31 16:09:11 2007 +0100 (2007-05-31)
parents 2d3034d0b36b
children 13eca4bf2c69
files xen/arch/x86/hvm/vmx/vmcs.c xen/arch/x86/hvm/vmx/vmx.c
line diff
     1.1 --- a/xen/arch/x86/hvm/vmx/vmcs.c	Thu May 31 16:05:27 2007 +0100
     1.2 +++ b/xen/arch/x86/hvm/vmx/vmcs.c	Thu May 31 16:09:11 2007 +0100
     1.3 @@ -438,9 +438,9 @@ static void construct_vmcs(struct vcpu *
     1.4  
     1.5      if ( cpu_has_vmx_tpr_shadow )
     1.6      {
     1.7 -        uint64_t virt_page_ma = page_to_maddr(vcpu_vlapic(v)->regs_page);
     1.8 +        paddr_t virt_page_ma = page_to_maddr(vcpu_vlapic(v)->regs_page);
     1.9          __vmwrite(VIRTUAL_APIC_PAGE_ADDR, virt_page_ma);
    1.10 -#if defined (__i386__)
    1.11 +#if defined (CONFIG_X86_PAE)
    1.12          __vmwrite(VIRTUAL_APIC_PAGE_ADDR_HIGH, virt_page_ma >> 32);
    1.13  #endif
    1.14          __vmwrite(TPR_THRESHOLD, 0);
     2.1 --- a/xen/arch/x86/hvm/vmx/vmx.c	Thu May 31 16:05:27 2007 +0100
     2.2 +++ b/xen/arch/x86/hvm/vmx/vmx.c	Thu May 31 16:09:11 2007 +0100
     2.3 @@ -2540,7 +2540,7 @@ static void vmx_install_vlapic_mapping(s
     2.4      vmx_vmcs_enter(v);
     2.5      __vmwrite(VIRTUAL_APIC_PAGE_ADDR, virt_page_ma);
     2.6      __vmwrite(APIC_ACCESS_ADDR, apic_page_ma);
     2.7 -#if defined (__i386__)
     2.8 +#if defined (CONFIG_X86_PAE)
     2.9      __vmwrite(VIRTUAL_APIC_PAGE_ADDR_HIGH, virt_page_ma >> 32);
    2.10      __vmwrite(APIC_ACCESS_ADDR_HIGH, apic_page_ma >> 32);
    2.11  #endif