Hi Cole,
Thanks for your advices. I will modify the code and submit the patch later. For your comment, as I know, in KVMIBM Distro,s390-ccw-kvmibm-1.1.1 is the alias name of s390-ccw-virtioo, so they are the same. :-)

On 2015年10月29日 01:52, Cole Robinson wrote:
On 10/28/2015 12:35 AM, Kevin Zhao wrote:
  modified the machine type ,remove the default channel
  since it is not supported now ,and modified the capabilities-xml
  since it has been updated.
---
  tests/capabilities-xml/kvm-s390x.xml | 14 +++++++++++---
  virtinst/capabilities.py             |  2 +-
  virtinst/guest.py                    |  2 ++
  3 files changed, 14 insertions(+), 4 deletions(-)

Thanks for the patch. Please split this into 3 changes:

- add the capabilities-xml as a new XML file, like kvm-s390x-ibm.xml . Add a
comment at the top explaining what distro/OS the XML actually comes from (some
IBM distro I presume). And add a clitest.py testcase that uses it

- the qemu guest agent change, and regenerate the test output

- the machine type change, and regenerate the test output

One comment below

diff --git a/tests/capabilities-xml/kvm-s390x.xml 
b/tests/capabilities-xml/kvm-s390x.xml
index 039c2e0..aeddfb0 100644
--- a/tests/capabilities-xml/kvm-s390x.xml
+++ b/tests/capabilities-xml/kvm-s390x.xml
@@ -52,15 +52,23 @@
      <arch name="s390x">
        <wordsize>64</wordsize>
        <emulator>/usr/bin/qemu-system-s390x</emulator>
+      <machine maxCpus="64">s390-ccw-kvmibm-1.1.1</machine>
+      <machine canonical="s390-ccw-kvmibm-1.1.1" 
maxCpus="64">s390-ccw-virtio</machine>
+      <machine maxCpus="64">s390-ccw-kvmibm-1.1.0</machine>
+      <machine maxCpus="255">s390-virtio</machine>
        <machine canonical="s390-virtio" maxCpus="255">s390</machine>
-      <machine canonical="s390-ccw-virtio" maxCpus="255">s390-ccw</machine>
+      <machine maxCpus="255">s390-ccw-virtio-2.4</machine>
        <domain type="qemu">
          <emulator>/usr/bin/qemu-system-s390x</emulator>
        </domain>
        <domain type="kvm">
-        <emulator>/usr/bin/qemu-system-s390x</emulator>
+        <emulator>/usr/bin/qemu-kvm</emulator>
+        <machine maxCpus="64">s390-ccw-kvmibm-1.1.1</machine>
+        <machine canonical="s390-ccw-kvmibm-1.1.1" 
maxCpus="64">s390-ccw-virtio</machine>
+        <machine maxCpus="64">s390-ccw-kvmibm-1.1.0</machine>
+        <machine maxCpus="255">s390-virtio</machine>
          <machine canonical="s390-virtio" maxCpus="255">s390</machine>
-        <machine canonical="s390-ccw-virtio" maxCpus="255">s390-ccw</machine>
+        <machine maxCpus="255">s390-ccw-virtio-2.4</machine>
        </domain>
      </arch>
      <features>
diff --git a/virtinst/capabilities.py b/virtinst/capabilities.py
index 4fa1724..10e7ea0 100644
--- a/virtinst/capabilities.py
+++ b/virtinst/capabilities.py
@@ -364,7 +364,7 @@ class _CapsInfo(object):
                  return "vexpress-a15"
if self.arch in ["s390x"]:
-            if "s390-ccw-virtio" in self.machines:
+            if any(machine.startswith("s390-ccw") for machine in 
self.machines):
                  return "s390-ccw-virtio"

This will attempt to use s390-ccw-virtio machine type, even if it's not in the
capabilities output... I don't understand how this is supposed to work

          return None
diff --git a/virtinst/guest.py b/virtinst/guest.py
index 6f2b30a..4387ff4 100644
--- a/virtinst/guest.py
+++ b/virtinst/guest.py
@@ -657,6 +657,8 @@ class Guest(XMLBuilder):
              return
          if self.get_devices("channel"):
              return
+        if self.os.is_s390x():
+            return
# Skip qemu-ga on ARM where virtio slots are currently limited
          if (self.conn.is_qemu() and



_______________________________________________
virt-tools-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virt-tools-list


_______________________________________________
virt-tools-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/virt-tools-list

Reply via email to