Bug 1576675 - RHV import fails if VM has an unreachable floppy defined
Summary: RHV import fails if VM has an unreachable floppy defined
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: vdsm
Version: 4.1.11
Hardware: Unspecified
OS: Unspecified
Target Milestone: ovirt-4.2.4
: ---
Assignee: Tomáš Golembiovský
QA Contact: Nisim Simsolo
Depends On: 1575777
TreeView+ depends on / blocked
Reported: 2018-05-10 06:37 UTC by RHV bug bot
Modified: 2020-08-03 15:34 UTC (History)
7 users (show)

Fixed In Version: vdsm-4.20.28-1
Doc Type: Bug Fix
Doc Text:
Previously, when a virtual machine selected for import contained a floppy, it could prevent the virtual machine from being imported. This is now fixed and floppy drives are ignored during import.
Clone Of: 1575777
Last Closed: 2018-06-27 10:02:46 UTC
oVirt Team: Virt
Target Upstream Version:
lsvaty: testing_plan_complete-

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 3434901 0 None None None 2018-05-10 06:37:31 UTC
Red Hat Product Errata RHEA-2018:2072 0 None None None 2018-06-27 10:03:30 UTC
oVirt gerrit 90981 0 'None' 'MERGED' 'v2v: ignore floppy drives' 2019-11-26 00:38:00 UTC
oVirt gerrit 91085 0 'None' 'MERGED' 'v2v: ignore floppy drives' 2019-11-26 00:38:00 UTC

Description RHV bug bot 2018-05-10 06:37:12 UTC
+++ This bug is a downstream clone. The original bug is: +++
+++   bug 1575777 +++

Description of problem:

Import VM from external provider to RHV fails if the VM has a floppy device defined which is not reachable in RHV destination hypervisor

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:

1. Have a VM with floppy defined:

    <disk type='file' device='floppy'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/iso/XXXX.vfd'/>
      <target dev='fda' bus='fdc'/>
      <alias name='fdc0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>

2. Import VM to RHV environment from external provider, in this case it was KVM
3. It fails due to unreachable floppy disk

Actual results:

VM import fails from external provider to RHV

Expected results:

VM import should be successful as we can ignore floppy device like we did for CDROM in https://bugzilla.redhat.com/show_bug.cgi?id=1485807

Additional info:


2018-04-25 21:24:50,042-0500 ERROR (jsonrpc/4) [root] Error getting disk size (v2v:1089)
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/vdsm/v2v.py", line 1078, in _get_disk_info
    vol = conn.storageVolLookupByPath(disk['alias'])
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 4555, in storageVolLookupByPath
    if ret is None:raise libvirtError('virStorageVolLookupByPath() failed', conn=self)
libvirtError: Storage volume not found: no storage vol with matching path

2018-04-25 21:24:50,043-0500 WARN  (jsonrpc/4) [root] Cannot add VM XXXXXXXXXXXX due to disk storage error (v2v:1020)


    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/vm/DISK1.img'/>
      <target dev='vda' bus='virtio'/>
      <alias name='virtio-disk0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/vm/DISK2.img'/>
      <target dev='vdb' bus='virtio'/>
      <alias name='virtio-disk1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    <disk type='file' device='floppy'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/iso/virtio-win-1.7.1_amd64.vfd'/>
      <target dev='fda' bus='fdc'/>
      <alias name='fdc0-0-0'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <alias name='ide0-1-0'/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>

Workaround is to umount / undefine floppy disk definition from source, then import the VM

(Originally by Javier Coscia)

Comment 2 RHV bug bot 2018-05-10 06:37:21 UTC
please also check the new wrapper

(Originally by michal.skrivanek)

Comment 4 RHV bug bot 2018-05-10 06:37:24 UTC
Not sure if I did it right but I've added the "or device == 'floppy'" on lib/vdsm/v2v.py


Although I see there's a 'Merge Conflict' on it, not sure what could be wrong

(Originally by Javier Coscia)

Comment 6 Nisim Simsolo 2018-06-04 09:08:36 UTC
Verification version:

Verification scenario:
1. Add floppy device to KVM environment VM with an unreachable destination in RHV hypervisor.
2. Import VM and verify VM imported succesfully.
Verify VM is running.
3. Repeat steps 1-2 for VMware VM.
4. repeat steps 1-2 for Xen VM.

Comment 8 errata-xmlrpc 2018-06-27 10:02:46 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Comment 9 Franta Kust 2019-05-16 13:05:29 UTC
BZ<2>Jira Resync

Comment 10 Daniel Gur 2019-08-28 13:12:52 UTC

Comment 11 Daniel Gur 2019-08-28 13:17:05 UTC

Note You need to log in before you can comment on or make changes to this bug.