ia64/xen-unstable

changeset 6983:659ad553199e

merge?
author cl349@firebug.cl.cam.ac.uk
date Tue Sep 20 14:18:23 2005 +0000 (2005-09-20)
parents ee8226e15e9f c174ac96a69d
children d3bc8314b6f5
files buildconfigs/Rules.mk buildconfigs/mk.linux-2.4-xenU buildconfigs/mk.linux-2.6-xen buildconfigs/mk.linux-2.6-xen0 buildconfigs/mk.linux-2.6-xenU linux-2.6-xen-sparse/drivers/xen/console/xencons_ring.c linux-2.6-xen-sparse/include/asm-xen/asm-i386/page.h linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/page.h linux-2.6-xen-sparse/mkbuildtree xen/arch/x86/vmx.c
line diff
     1.1 --- a/linux-2.6-xen-sparse/drivers/xen/console/xencons_ring.c	Tue Sep 20 14:18:01 2005 +0000
     1.2 +++ b/linux-2.6-xen-sparse/drivers/xen/console/xencons_ring.c	Tue Sep 20 14:18:23 2005 +0000
     1.3 @@ -36,13 +36,12 @@ struct ring_head
     1.4  
     1.5  static inline struct ring_head *outring(void)
     1.6  {
     1.7 -	return machine_to_virt(xen_start_info->console_mfn << PAGE_SHIFT);
     1.8 +	return mfn_to_virt(xen_start_info->console_mfn);
     1.9  }
    1.10  
    1.11  static inline struct ring_head *inring(void)
    1.12  {
    1.13 -	return machine_to_virt(xen_start_info->console_mfn << PAGE_SHIFT)
    1.14 -		+ PAGE_SIZE/2;
    1.15 +	return mfn_to_virt(xen_start_info->console_mfn) + PAGE_SIZE/2;
    1.16  }
    1.17  
    1.18  
     2.1 --- a/linux-2.6-xen-sparse/include/asm-xen/asm-i386/page.h	Tue Sep 20 14:18:01 2005 +0000
     2.2 +++ b/linux-2.6-xen-sparse/include/asm-xen/asm-i386/page.h	Tue Sep 20 14:18:23 2005 +0000
     2.3 @@ -261,7 +261,6 @@ extern int sysctl_legacy_va_layout;
     2.4  
     2.5  /* VIRT <-> MACHINE conversion */
     2.6  #define virt_to_machine(v)	(phys_to_machine(__pa(v)))
     2.7 -#define machine_to_virt(m)	(__va(machine_to_phys(m)))
     2.8  #define virt_to_mfn(v)		(pfn_to_mfn(__pa(v) >> PAGE_SHIFT))
     2.9  #define mfn_to_virt(m)		(__va(mfn_to_pfn(m) << PAGE_SHIFT))
    2.10  
     3.1 --- a/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/page.h	Tue Sep 20 14:18:01 2005 +0000
     3.2 +++ b/linux-2.6-xen-sparse/include/asm-xen/asm-x86_64/page.h	Tue Sep 20 14:18:23 2005 +0000
     3.3 @@ -239,7 +239,6 @@ extern __inline__ int get_order(unsigned
     3.4  
     3.5  /* VIRT <-> MACHINE conversion */
     3.6  #define virt_to_machine(v)	(phys_to_machine(__pa(v)))
     3.7 -#define machine_to_virt(m)	(__va(machine_to_phys(m)))
     3.8  #define virt_to_mfn(v)		(pfn_to_mfn(__pa(v) >> PAGE_SHIFT))
     3.9  #define mfn_to_virt(m)		(__va(mfn_to_pfn(m) << PAGE_SHIFT))
    3.10  
     4.1 --- a/xen/arch/x86/vmx.c	Tue Sep 20 14:18:01 2005 +0000
     4.2 +++ b/xen/arch/x86/vmx.c	Tue Sep 20 14:18:23 2005 +0000
     4.3 @@ -1100,6 +1100,11 @@ static int vmx_set_cr0(unsigned long val
     4.4                      d->arch.arch_vmx.cpu_cr3, mfn);
     4.5      }
     4.6  
     4.7 +    if(!((value & X86_CR0_PE) && (value & X86_CR0_PG)) && paging_enabled)
     4.8 +        if(d->arch.arch_vmx.cpu_cr3)
     4.9 +            put_page(pfn_to_page(get_mfn_from_pfn(
    4.10 +                      d->arch.arch_vmx.cpu_cr3 >> PAGE_SHIFT)));
    4.11 +
    4.12      /*
    4.13       * VMX does not implement real-mode virtualization. We emulate
    4.14       * real-mode by performing a world switch to VMXAssist whenever