]> xenbits.xensource.com Git - libvirt.git/commitdiff
* src/xen_internal.c: add report of ACPI/APIC for Xen fully virt,
authorDaniel Veillard <veillard@redhat.com>
Mon, 30 Jul 2007 10:15:58 +0000 (10:15 +0000)
committerDaniel Veillard <veillard@redhat.com>
Mon, 30 Jul 2007 10:15:58 +0000 (10:15 +0000)
  patch from David Lutterkort
* tests/xencapsdata/xen-i686-pae-hvm.xml
  tests/xencapsdata/xen-ia64-be-hvm.xml
  tests/xencapsdata/xen-ia64-hvm.xml
  tests/xencapsdata/xen-x86_64-hvm.xml: this also affects a few tests
Daniel

ChangeLog
src/xen_internal.c
tests/xencapsdata/xen-i686-pae-hvm.xml
tests/xencapsdata/xen-ia64-be-hvm.xml
tests/xencapsdata/xen-ia64-hvm.xml
tests/xencapsdata/xen-x86_64-hvm.xml

index 15f4ed3fc23e806f0a674173bdaebd7af0c4ae45..39b10e9ecc28e97ad9eb862a2d42988faa3d662b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,16 @@
+Mon Jul 30 12:15:43 CEST 2007 Daniel Veillard <veillard@redhat.com>
+
+       * src/xen_internal.c: add report of ACPI/APIC for Xen fully virt,
+         patch from David Lutterkort
+       * tests/xencapsdata/xen-i686-pae-hvm.xml 
+         tests/xencapsdata/xen-ia64-be-hvm.xml
+         tests/xencapsdata/xen-ia64-hvm.xml
+         tests/xencapsdata/xen-x86_64-hvm.xml: this also affects a few tests
+
 Mon Jul 30 11:59:51 CEST 2007 Daniel Veillard <veillard@redhat.com>
 
        * src/qemu_conf.[ch] src/qemu_driver.c: add qemu/kvm drivers report
-         features for i686 and x86_64, patch from David Lutterkort
+         ACPI/APIC features for i686 and x86_64, patch from David Lutterkort
 
 Fri Jul 27 19:19:31 EST 2007 Daniel P. Berrange <berrange@redhat.com>
 
index 9f2a2a9d36465f97c0d14a63d2e2a1ca73be8277..17df827faa724dfa3d8b02da240759b5228e5925 100644 (file)
@@ -2050,6 +2050,9 @@ xenHypervisorMakeCapabilitiesXML(virConnectPtr conn ATTRIBUTE_UNUSED,
     virBufferPtr xml;
     char *xml_str;
 
+    int hv_major = hv_version >> 16;
+    int hv_minor = hv_version & 0xFFFF;
+
     memset(guest_archs, 0, sizeof(guest_archs));
 
     /* /proc/cpuinfo: flags: Intel calls HVM "vmx", AMD calls it "svm".
@@ -2236,19 +2239,28 @@ xenHypervisorMakeCapabilitiesXML(virConnectPtr conn ATTRIBUTE_UNUSED,
             if (r == -1) goto vir_buffer_failed;
         }
         if (guest_archs[i].nonpae) {
-            r = virBufferAdd (xml,
-                              "\
-      <nonpae/>\n", -1);
+            r = virBufferAdd (xml, "      <nonpae/>\n", -1);
             if (r == -1) goto vir_buffer_failed;
         }
         if (guest_archs[i].ia64_be) {
-            r = virBufferAdd (xml,
-                              "\
-      <ia64_be/>\n", -1);
+            r = virBufferAdd (xml, "      <ia64_be/>\n", -1);
             if (r == -1) goto vir_buffer_failed;
         }
-        r = virBufferAdd (xml,
-                          "\
+        if (guest_archs[i].hvm) {
+            r = virBufferAdd (xml, "      <acpi default='on' toggle='yes'/>\n",
+                             -1);
+            if (r == -1) goto vir_buffer_failed;
+            // In Xen 3.1.0, APIC is always on and can't be toggled
+            if (hv_major >= 3 && hv_minor > 0) {
+                r = virBufferAdd (xml,
+                             "      <apic default='off' toggle='no'/>\n", -1);
+            } else {
+                r = virBufferAdd (xml,
+                             "      <apic default='on' toggle='yes'/>\n", -1);
+            }
+            if (r == -1) goto vir_buffer_failed;
+        }
+        r = virBufferAdd (xml, "\
     </features>\n\
   </guest>\n", -1);
         if (r == -1) goto vir_buffer_failed;
index a9347a98325a18555d6d76f78804a097968a2997..1c86076e5db4cb82b999b2a8dbf99b9c5501cadb 100644 (file)
@@ -32,6 +32,8 @@
     <features>
       <pae/>
       <nonpae/>
+      <acpi default='on' toggle='yes'/>
+      <apic default='on' toggle='yes'/>
     </features>
   </guest>
 </capabilities>
index 5e933d494de06800ed959bf37ab85973e5f7806b..598e646d8216d492462f6a64d37af88f1c6c0cbb 100644 (file)
@@ -30,6 +30,8 @@
     </arch>
     <features>
       <ia64_be/>
+      <acpi default='on' toggle='yes'/>
+      <apic default='on' toggle='yes'/>
     </features>
   </guest>
 </capabilities>
index 61bcdf2b94634056d2851fe919912b37f1a61954..84a06634a1b36df380ee9835b4bc625fc00c2a94 100644 (file)
@@ -28,6 +28,8 @@
       <loader>/usr/lib/xen/boot/hvmloader</loader>
     </arch>
     <features>
+      <acpi default='on' toggle='yes'/>
+      <apic default='on' toggle='yes'/>
     </features>
   </guest>
 </capabilities>
index b8bb2b75711fd2361bf0954eba468c66863bb93a..df3e3d1c4dacd9ee144e00bc35ede398cc95f377 100644 (file)
@@ -31,6 +31,8 @@
     <features>
       <pae/>
       <nonpae/>
+      <acpi default='on' toggle='yes'/>
+      <apic default='on' toggle='yes'/>
     </features>
   </guest>
 
@@ -45,6 +47,8 @@
       <loader>/usr/lib/xen/boot/hvmloader</loader>
     </arch>
     <features>
+      <acpi default='on' toggle='yes'/>
+      <apic default='on' toggle='yes'/>
     </features>
   </guest>
 </capabilities>