ia64/xen-unstable

changeset 12442:394da2dfb70d

Speed up shadow of x86_64 Linux guests using 3 paging levels.
Linux kernel 2.6.9 or older uses 3 paging levels and its direct map is
from 0x10000000000.

Signed-off-by: Xin Li <xin.b.li@intel.com>
author Tim Deegan <Tim.Deegan@xensource.com>
date Tue Nov 14 18:21:51 2006 +0000 (2006-11-14)
parents a07d6a05792e
children f026d4091322
files xen/arch/x86/mm/shadow/common.c
line diff
     1.1 --- a/xen/arch/x86/mm/shadow/common.c	Tue Nov 14 17:11:45 2006 +0000
     1.2 +++ b/xen/arch/x86/mm/shadow/common.c	Tue Nov 14 18:21:51 2006 +0000
     1.3 @@ -1953,9 +1953,11 @@ int shadow_remove_write_access(struct vc
     1.4              case 3: GUESS(0x70381C00000UL + (fault_addr >> 27), 3); break;
     1.5              }
     1.6  
     1.7 -            /* Linux direct map at 0xffff810000000000 */
     1.8 +            /* 64bit Linux direct map at 0xffff810000000000; older kernels 
     1.9 +             * had it at 0x0000010000000000UL */
    1.10              gfn = sh_mfn_to_gfn(v->domain, gmfn); 
    1.11              GUESS(0xffff810000000000UL + (gfn << PAGE_SHIFT), 4); 
    1.12 +            GUESS(0x0000010000000000UL + (gfn << PAGE_SHIFT), 4); 
    1.13          }
    1.14  #endif /* CONFIG_PAGING_LEVELS >= 4 */
    1.15  #endif /* CONFIG_PAGING_LEVELS >= 3 */