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

51 lines
2.1 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).
Index: virt-manager-4.1.0/virtinst/devices/disk.py
===================================================================
--- virt-manager-4.1.0.orig/virtinst/devices/disk.py
+++ virt-manager-4.1.0/virtinst/devices/disk.py
@@ -903,6 +903,17 @@ class DeviceDisk(Device):
- Update to virt-manager 2.0.0 (bsc#1027942) virt-manager-2.0.0.tar.bz2 * Finish port to Python 3 (Radostin Stoyanov, Cole Robinson) * Improved VM defaults for supported OS: q35 PCIe, usb3, CPU host-model * Search based OS selection UI for new VMs (Daniel P. Berrangé, Cole Robinson) * Track OS name for lifetime of domain in XML * Host interface management UI has been completely removed * Show domain IP on interface details page (Lin Ma, Cole Robinson) * More efficient stats polling with AllDomainStats (Simon Kobyda, Cole Robinson) * TPM device model and backend UI (Marc-André Lureau, Stefan Berger) * Show connection state in UI (Lin Ma) * Show attached devices in UI (Lin Ma) * UI option to plug/unplug VM nic link (Simon Kobyda) * UI support for disk discard and detect_zeroes (Povilas Kanapickas, Lin Ma) * Improved SUSE –location URL/ISO detection (Charles Arnold) * cli and UI support for SCSI persistent reservations (Lin Ma) * cli: Add –network mtu.size= option (Anya Harter) * cli: Add –disk driver.copy_on_read (Anya Harter) * cli: Add –disk geometry support (Anya Harter) * cli: Add –sound codec support (Anya Harter) * cli: Add –hostdev net/char/block for LXC (Lubomir Rintel) * cli: Add –memorybacking access_mode and source_type (Marc-André Lureau) * cli: Add –boot rebootTimout (Yossi Ovadia) * cli: Add –boot bootloader= * cli: Add –destroy-on-exit - Drop patches contained in new tarball or not required 0004-virtinst-python3-use-binary-mode-for-kernel.patch 27d4b167-virtinst-update-location-for-opensuse.patch 5a7698c7-fix-select-network-vol.patch d15b78ab-virtinst-read-CPU-model-from-domain-capabilities.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=437
2018-10-30 23:00:52 +01:00
:returns: generated target
"""
- Update to virt-manager 3.0.0 (fate#326786) virt-manager-3.0.0.tar.bz2 * virt-install –cloud-init support (Athina Plaskasoviti, Cole Robinson) * The virt-convert tool has been removed. Please use virt-v2v instead * A handful of UI XML configuration options have been removed. The XML editor can be used instead. For a larger discussion see this thread: https://www.redhat.com/archives/virt-tools-list/ 2019-June/msg00117.html * The ‘New VM’ UI now has a ‘Manual Install’ option which creates a VM without any required install media * In the ‘New VM’ UI, the network/pxe install option has been removed. If you need network boot, choose ‘Manual Install’ and set the boot device after initial VM creation * ‘Clone VM’ UI has been reworked and simplified * ‘Migrate VM’ UI now has an XML editor for the destination VM * Global and per-vm option to disable graphical console autoconnect. This makes it easier to use virt-manager alongside another client like virt-viewer * virt-manager: set guest time after VM restore (Michael Weiser) * virt-manager: option to delete storage when removing disk device (Lily Nie) * virt-manager: show warnings if snapshot operation is unsafe (Michael Weiser) * Unattended install improvements (Fabiano Fidêncio) * cli: new –xml XPATH=VAL option for making direct XML changes * virt-install: new –reinstall=DOMAIN option * virt-install: new –autoconsole text|graphical|none option * virt-install: new –os-variant detect=on,require=on suboptions OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=509
2020-09-16 19:23:41 +02:00
prefix, maxnode = self.get_target_prefix()
+ 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()
@@ -910,11 +921,18 @@ class DeviceDisk(Device):
- Update to virt-manager 3.0.0 (fate#326786) virt-manager-3.0.0.tar.bz2 * virt-install –cloud-init support (Athina Plaskasoviti, Cole Robinson) * The virt-convert tool has been removed. Please use virt-v2v instead * A handful of UI XML configuration options have been removed. The XML editor can be used instead. For a larger discussion see this thread: https://www.redhat.com/archives/virt-tools-list/ 2019-June/msg00117.html * The ‘New VM’ UI now has a ‘Manual Install’ option which creates a VM without any required install media * In the ‘New VM’ UI, the network/pxe install option has been removed. If you need network boot, choose ‘Manual Install’ and set the boot device after initial VM creation * ‘Clone VM’ UI has been reworked and simplified * ‘Migrate VM’ UI now has an XML editor for the destination VM * Global and per-vm option to disable graphical console autoconnect. This makes it easier to use virt-manager alongside another client like virt-viewer * virt-manager: set guest time after VM restore (Michael Weiser) * virt-manager: option to delete storage when removing disk device (Lily Nie) * virt-manager: show warnings if snapshot operation is unsafe (Michael Weiser) * Unattended install improvements (Fabiano Fidêncio) * cli: new –xml XPATH=VAL option for making direct XML changes * virt-install: new –reinstall=DOMAIN option * virt-install: new –autoconsole text|graphical|none option * virt-install: new –os-variant detect=on,require=on suboptions OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=509
2020-09-16 19:23:41 +02:00
first_found = None
- Update to virt-manager 3.0.0 (fate#326786) virt-manager-3.0.0.tar.bz2 * virt-install –cloud-init support (Athina Plaskasoviti, Cole Robinson) * The virt-convert tool has been removed. Please use virt-v2v instead * A handful of UI XML configuration options have been removed. The XML editor can be used instead. For a larger discussion see this thread: https://www.redhat.com/archives/virt-tools-list/ 2019-June/msg00117.html * The ‘New VM’ UI now has a ‘Manual Install’ option which creates a VM without any required install media * In the ‘New VM’ UI, the network/pxe install option has been removed. If you need network boot, choose ‘Manual Install’ and set the boot device after initial VM creation * ‘Clone VM’ UI has been reworked and simplified * ‘Migrate VM’ UI now has an XML editor for the destination VM * Global and per-vm option to disable graphical console autoconnect. This makes it easier to use virt-manager alongside another client like virt-viewer * virt-manager: set guest time after VM restore (Michael Weiser) * virt-manager: option to delete storage when removing disk device (Lily Nie) * virt-manager: show warnings if snapshot operation is unsafe (Michael Weiser) * Unattended install improvements (Fabiano Fidêncio) * cli: new –xml XPATH=VAL option for making direct XML changes * virt-install: new –reinstall=DOMAIN option * virt-install: new –autoconsole text|graphical|none option * virt-install: new –os-variant detect=on,require=on suboptions OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=509
2020-09-16 19:23:41 +02:00
for i in range(maxnode):
- 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
if not skip_targets:
+ if first_found:
+ return first_found
return gen_t
elif not first_found:
first_found = gen_t