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

[Xen-changelog] [xen-unstable] hvm: Print support/enable status of HAP superpage mappings.



# HG changeset patch
# User Keir Fraser <keir@xxxxxxx>
# Date 1331199829 0
# Node ID 0384f791e5383cb91e44f1be021f335e9d92de33
# Parent  2487f63339c00a91cf80c1a4598c10fdcaac0464
hvm: Print support/enable status of HAP superpage mappings.

Signed-off-by: Keir Fraser <keir@xxxxxxx>
---


diff -r 2487f63339c0 -r 0384f791e538 xen/arch/x86/hvm/hvm.c
--- a/xen/arch/x86/hvm/hvm.c    Thu Mar 08 09:23:27 2012 +0000
+++ b/xen/arch/x86/hvm/hvm.c    Thu Mar 08 09:43:49 2012 +0000
@@ -131,7 +131,15 @@
 
     printk("HVM: %s enabled\n", hvm_funcs.name);
     if ( hvm_funcs.hap_supported )
-        printk("HVM: Hardware Assisted Paging detected.\n");
+    {
+        printk("HVM: Hardware Assisted Paging (HAP) detected\n");
+        printk("HVM: HAP page sizes: 4kB");
+        if ( hvm_funcs.hap_capabilities & HVM_HAP_SUPERPAGE_2MB )
+            printk(", 2MB%s", opt_hap_2mb ? "" : " [disabled]");
+        if ( hvm_funcs.hap_capabilities & HVM_HAP_SUPERPAGE_1GB )
+            printk(", 1GB%s", opt_hap_1gb ? "" : " [disabled]");
+        printk("\n");
+    }
 
     /*
      * Allow direct access to the PC debug ports 0x80 and 0xed (they are
diff -r 2487f63339c0 -r 0384f791e538 xen/arch/x86/hvm/vmx/vmcs.c
--- a/xen/arch/x86/hvm/vmx/vmcs.c       Thu Mar 08 09:23:27 2012 +0000
+++ b/xen/arch/x86/hvm/vmx/vmcs.c       Thu Mar 08 09:43:49 2012 +0000
@@ -93,11 +93,6 @@
 
     if ( !printed )
         printk(" - none\n");
-
-    if ( cpu_has_vmx_ept_1gb )
-        printk("EPT supports 1GB super page.\n");
-    if ( cpu_has_vmx_ept_2mb )
-        printk("EPT supports 2MB super page.\n");
 }
 
 static u32 adjust_vmx_controls(
diff -r 2487f63339c0 -r 0384f791e538 xen/arch/x86/mm/p2m.c
--- a/xen/arch/x86/mm/p2m.c     Thu Mar 08 09:23:27 2012 +0000
+++ b/xen/arch/x86/mm/p2m.c     Thu Mar 08 09:43:49 2012 +0000
@@ -40,10 +40,10 @@
 #include "mm-locks.h"
 
 /* turn on/off 1GB host page table support for hap, default on */
-static bool_t __read_mostly opt_hap_1gb = 1;
+bool_t __read_mostly opt_hap_1gb = 1;
 boolean_param("hap_1gb", opt_hap_1gb);
 
-static bool_t __read_mostly opt_hap_2mb = 1;
+bool_t __read_mostly opt_hap_2mb = 1;
 boolean_param("hap_2mb", opt_hap_2mb);
 
 /* Printouts */
diff -r 2487f63339c0 -r 0384f791e538 xen/include/asm-x86/p2m.h
--- a/xen/include/asm-x86/p2m.h Thu Mar 08 09:23:27 2012 +0000
+++ b/xen/include/asm-x86/p2m.h Thu Mar 08 09:43:49 2012 +0000
@@ -32,6 +32,8 @@
 #include <asm/mem_sharing.h>
 #include <asm/page.h>    /* for pagetable_t */
 
+extern bool_t opt_hap_1gb, opt_hap_2mb;
+
 /*
  * The phys_to_machine_mapping maps guest physical frame numbers 
  * to machine frame numbers.  It only exists for paging_mode_translate 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
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®.