Bug 1442036 - When using q35, virt-v2v adds unsupported ide device for CD-ROM
Summary: When using q35, virt-v2v adds unsupported ide device for CD-ROM
Keywords:
Status: CLOSED DUPLICATE of bug 1369010
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libguestfs
Version: 7.4
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Richard W.M. Jones
QA Contact: Virtualization Bugs
URL:
Whiteboard: V2V
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-04-13 11:43 UTC by Richard W.M. Jones
Modified: 2017-07-24 09:07 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-07-24 09:07:11 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
XML file (1.49 KB, text/plain)
2017-04-13 11:45 UTC, Richard W.M. Jones
no flags Details

Description Richard W.M. Jones 2017-04-13 11:43:28 UTC
Description of problem:

When converting a guest which uses UEFI + secure boot, virt-v2v
uses machine='q35'.  If the guest also has CD-ROMs, then virt-v2v
also adds an IDE disk.  The guest will fail to start under libvirt
with the error:

  error: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type

In the libvirt XML that is generated by virt-v2v you will see:

    <type arch='x86_64' machine='q35'>hvm</type>
...

    <disk device='cdrom' type='file'>
      <driver name='qemu' type='raw'/>
      <target dev='hdb' bus='ide'/>
    </disk>

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

I'm actually testing this with upstream virt-v2v (1.37.10), but the code
is the same as virt-v2v in RHEL 7.4.

How reproducible:

100%

Steps to Reproduce:

1. Create a UEFI guest with an IDE CD-ROM drive.
2. Change (if necessary) the <loader> path
   from OVMF_CODE.fd to OVMF_CODE.secboot.fd
3. Convert the guest using virt-v2v, eg:
   virt-v2v -i libvirt test -o libvirt -on test2
4. virsh start test2

Actual results:

Fails with:
  error: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type

Expected results:

Should be able to boot.

Additional info:

Comment 2 Richard W.M. Jones 2017-04-13 11:45:00 UTC
Created attachment 1271414 [details]
XML file

Comment 3 Richard W.M. Jones 2017-04-13 11:48:43 UTC
The libvirt XML should be modified to:

    <disk device='cdrom' type='file'>
      <driver name='qemu' type='raw'/>
-     <target dev='hdb' bus='ide'/>
+     <target dev='sdb' bus='sata'/>
    </disk>

This is difficult to fix at the moment.  We don't know if we're going
to be using q35 until we're creating the libvirt XML in the output
method, long after the conversion has actually happened.

Because the device needs to be renamed, we will have to modify the
conversion process (eg. changing /etc/fstab).

Comment 4 Richard W.M. Jones 2017-04-13 11:56:02 UTC
(In reply to Richard W.M. Jones from comment #3)
> Because the device needs to be renamed, we will have to modify the
> conversion process (eg. changing /etc/fstab).

Actually this statement isn't true.  In any recent Linux guest the
device should still be /dev/sdX or /dev/srX.

Comment 5 tingting zheng 2017-07-24 09:07:11 UTC
Closed the bug as duplicate of bug 1369010,if you think they are different pls feel free to open it,thanks.

*** This bug has been marked as a duplicate of bug 1369010 ***


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