virt-manager/virtinst-xenbus-disk-index-fix.patch

45 lines
1.9 KiB
Diff
Raw Normal View History

Reference: bnc#872789
This is an indexing problem created by virt-manager. It knows not
to add two IDE disks of the same name (eg, 'hda' twice) or two Xen
disks of the same name (eg, 'xvda' twice) but with the different bus
types (ide vs xen) it added xvda with hda. These disks were then
passed to qemu where it error'ed out with the disks having the same
index (in this case both are 0).
- Update to virt-manager 1.3.0 virt-manager-1.3.0.tar.bz2 * Git hosting moved to http://github.com/virt-manager/virt-manager * Switch translation infrastructure from transifex to fedora.zanata.org * Add dogtail UI tests and infrastructure * Improved support for s390x kvm (Kevin Zhao) * virt-install and virt-manager now remove created disk images if VM install startup fails * Replace urlgrabber usage with requests and urllib2 * virt-install: add –network virtualport support for openvswitch (Daniel P. Berrange) * virt-install: support multiple –security labels * virt-install: support –features kvm_hidden=on|off (Pavel Hrdina) * virt-install: add –features pmu=on|off * virt-install: add –features pvspinlock=on|off (Abhijeet Kasurde) * virt-install: add –events on_lockfailure=on|off (Abhijeet Kasurde) * virt-install: add –network link_state=up|down * virt-install: add –vcpu placement=static|auto - Dropped virt-manager-1.2.1.tar.bz2 34db1af7-fix-adding-iscsi-pools.patch 360fe110-add-s390x-arch-support.patch 4970615f-fix-qemu-vs-lxc-detection.patch 590f5a52-urlfetcher-Clear-cached-ftp-connection-on-cleanupLoc.patch 5e68b0fc-dont-try-to-set-vmport-on-non-x86.patch 601a82cb-fix-console_type-if-xen.patch 76bad650-fix-virt-xml-define-and-update.patch 77423e7a-connection-catch-more-errors-in-filter_nodedevs.patch 8dbe96fc-add-s390x-arch-support.patch a9b303fb-fix-copy-host-cpu-definition.patch aebebbf8-report-an-error-for-pxe-install-without-network.patch cde2f0ef-Suppress-gi-warnings-about-lack-of-require_version.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=283
2015-11-26 00:27:12 +01:00
Index: virt-manager-1.3.0/virtinst/devicedisk.py
===================================================================
- Update to virt-manager 1.3.0 virt-manager-1.3.0.tar.bz2 * Git hosting moved to http://github.com/virt-manager/virt-manager * Switch translation infrastructure from transifex to fedora.zanata.org * Add dogtail UI tests and infrastructure * Improved support for s390x kvm (Kevin Zhao) * virt-install and virt-manager now remove created disk images if VM install startup fails * Replace urlgrabber usage with requests and urllib2 * virt-install: add –network virtualport support for openvswitch (Daniel P. Berrange) * virt-install: support multiple –security labels * virt-install: support –features kvm_hidden=on|off (Pavel Hrdina) * virt-install: add –features pmu=on|off * virt-install: add –features pvspinlock=on|off (Abhijeet Kasurde) * virt-install: add –events on_lockfailure=on|off (Abhijeet Kasurde) * virt-install: add –network link_state=up|down * virt-install: add –vcpu placement=static|auto - Dropped virt-manager-1.2.1.tar.bz2 34db1af7-fix-adding-iscsi-pools.patch 360fe110-add-s390x-arch-support.patch 4970615f-fix-qemu-vs-lxc-detection.patch 590f5a52-urlfetcher-Clear-cached-ftp-connection-on-cleanupLoc.patch 5e68b0fc-dont-try-to-set-vmport-on-non-x86.patch 601a82cb-fix-console_type-if-xen.patch 76bad650-fix-virt-xml-define-and-update.patch 77423e7a-connection-catch-more-errors-in-filter_nodedevs.patch 8dbe96fc-add-s390x-arch-support.patch a9b303fb-fix-copy-host-cpu-definition.patch aebebbf8-report-an-error-for-pxe-install-without-network.patch cde2f0ef-Suppress-gi-warnings-about-lack-of-require_version.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=283
2015-11-26 00:27:12 +01:00
--- virt-manager-1.3.0.orig/virtinst/devicedisk.py
+++ virt-manager-1.3.0/virtinst/devicedisk.py
@@ -976,6 +976,17 @@ class VirtualDisk(VirtualDevice):
@rtype C{str}
"""
prefix, maxnode = self.get_target_prefix(skip_targets)
+ postfix_targets = []
+ if self.conn.is_xen():
+ prefixes = [ "hd", "xvd", "vd", "sd", "fd" ]
+ for x in skip_targets:
+ if x is None:
+ continue
+ for p in prefixes:
+ found = x.split(p,1)
+ if found and len(found) == 2:
+ postfix_targets.append(found[1])
+ break
skip_targets = [t for t in skip_targets if t and t.startswith(prefix)]
skip_targets.sort()
- Update to virt-manager 1.3.0 virt-manager-1.3.0.tar.bz2 * Git hosting moved to http://github.com/virt-manager/virt-manager * Switch translation infrastructure from transifex to fedora.zanata.org * Add dogtail UI tests and infrastructure * Improved support for s390x kvm (Kevin Zhao) * virt-install and virt-manager now remove created disk images if VM install startup fails * Replace urlgrabber usage with requests and urllib2 * virt-install: add –network virtualport support for openvswitch (Daniel P. Berrange) * virt-install: support multiple –security labels * virt-install: support –features kvm_hidden=on|off (Pavel Hrdina) * virt-install: add –features pmu=on|off * virt-install: add –features pvspinlock=on|off (Abhijeet Kasurde) * virt-install: add –events on_lockfailure=on|off (Abhijeet Kasurde) * virt-install: add –network link_state=up|down * virt-install: add –vcpu placement=static|auto - Dropped virt-manager-1.2.1.tar.bz2 34db1af7-fix-adding-iscsi-pools.patch 360fe110-add-s390x-arch-support.patch 4970615f-fix-qemu-vs-lxc-detection.patch 590f5a52-urlfetcher-Clear-cached-ftp-connection-on-cleanupLoc.patch 5e68b0fc-dont-try-to-set-vmport-on-non-x86.patch 601a82cb-fix-console_type-if-xen.patch 76bad650-fix-virt-xml-define-and-update.patch 77423e7a-connection-catch-more-errors-in-filter_nodedevs.patch 8dbe96fc-add-s390x-arch-support.patch a9b303fb-fix-copy-host-cpu-definition.patch aebebbf8-report-an-error-for-pxe-install-without-network.patch cde2f0ef-Suppress-gi-warnings-about-lack-of-require_version.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=283
2015-11-26 00:27:12 +01:00
@@ -989,7 +1000,12 @@ class VirtualDisk(VirtualDevice):
ran = range(pref_ctrl * 7, (pref_ctrl + 1) * 7)
for i in ran:
- gen_t = prefix + self.num_to_target(i + 1)
+ postfix = self.num_to_target(i + 1)
+ gen_t = prefix + postfix
+ if self.conn.is_xen() and postfix in postfix_targets:
+ if gen_t in skip_targets:
+ skip_targets.remove(gen_t)
+ continue
if gen_t in skip_targets:
skip_targets.remove(gen_t)
continue