[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] Speed up shadow of x86_64 Linux guests using 3 paging levels.



# HG changeset patch
# User Tim Deegan <Tim.Deegan@xxxxxxxxxxxxx>
# Node ID 394da2dfb70d1c3b4e00e079dbc6e29805502ad5
# Parent  a07d6a05792e5cfc8ca08a4db44e79ae1b5bee96
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@xxxxxxxxx>
---
 xen/arch/x86/mm/shadow/common.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)

diff -r a07d6a05792e -r 394da2dfb70d xen/arch/x86/mm/shadow/common.c
--- a/xen/arch/x86/mm/shadow/common.c   Tue Nov 14 17:11:45 2006 +0000
+++ b/xen/arch/x86/mm/shadow/common.c   Tue Nov 14 18:21:51 2006 +0000
@@ -1953,9 +1953,11 @@ int shadow_remove_write_access(struct vc
             case 3: GUESS(0x70381C00000UL + (fault_addr >> 27), 3); break;
             }
 
-            /* Linux direct map at 0xffff810000000000 */
+            /* 64bit Linux direct map at 0xffff810000000000; older kernels 
+             * had it at 0x0000010000000000UL */
             gfn = sh_mfn_to_gfn(v->domain, gmfn); 
             GUESS(0xffff810000000000UL + (gfn << PAGE_SHIFT), 4); 
+            GUESS(0x0000010000000000UL + (gfn << PAGE_SHIFT), 4); 
         }
 #endif /* CONFIG_PAGING_LEVELS >= 4 */
 #endif /* CONFIG_PAGING_LEVELS >= 3 */

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.