[libvirt] [PATCH 3/4] Add HAP to xen hypervisor capabilities

Jim Fehlig jfehlig at novell.com
Wed Jan 5 23:32:41 UTC 2011


xen-unstable c/s 16931 introduced a per-domain setting for hvm
guests to enable/disable hardware assisted paging.  If disabled,
software techniques such as shadow page tables are used.  If enabled,
and the feature exists in underlying hardware, hardware support for
paging is used.

Xen does not provide a mechanism to discover the HAP capability, so
we advertise its availability for hvm guests on Xen >= 3.3.
---
 src/xen/xen_hypervisor.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/xen/xen_hypervisor.c b/src/xen/xen_hypervisor.c
index ead8ee9..229ef3d 100644
--- a/src/xen/xen_hypervisor.c
+++ b/src/xen/xen_hypervisor.c
@@ -2321,6 +2321,16 @@ xenHypervisorBuildCapabilities(virConnectPtr conn,
                                                 hv_minor > 0 ?
                                                 0 : 1)) == NULL)
                 goto no_memory;
+
+            /* Xen 3.3.x and beyond supports enabling/disabling
+             * hardware assisted paging.  Default is off.
+             */
+            if ((hv_major == 3 && hv_minor >= 3) || (hv_major > 3))
+                if (virCapabilitiesAddGuestFeature(guest,
+                                                   "hap",
+                                                   0,
+                                                   1) == NULL)
+                    goto no_memory;
         }
     }
 
-- 
1.7.3.1




More information about the libvir-list mailing list