RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1781154 - virt-v2v segfaults when called with --key option [rhel-7.7.z]
Summary: virt-v2v segfaults when called with --key option [rhel-7.7.z]
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libguestfs
Version: 7.7
Hardware: Unspecified
OS: Unspecified
high
urgent
Target Milestone: rc
: ---
Assignee: Richard W.M. Jones
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 1776468
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-12-09 12:41 UTC by RAD team bot copy to z-stream
Modified: 2020-02-04 19:30 UTC (History)
11 users (show)

Fixed In Version: libguestfs-1.40.2-5.el7_7.3
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1776468
Environment:
Last Closed: 2020-02-04 19:30:25 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
luksuuid-key-option.log (3.84 MB, text/plain)
2019-12-16 10:42 UTC, mxie@redhat.com
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2020:0373 0 None None None 2020-02-04 19:30:28 UTC

Description RAD team bot copy to z-stream 2019-12-09 12:41:22 UTC
This bug has been copied from bug #1776468 and has been proposed to be backported to 7.7 z-stream (EUS).

Comment 3 mxie@redhat.com 2019-12-16 10:41:33 UTC
Reproduce the bug with builds:
virt-v2v-1.40.2-5.el7_7.2.x86_64
libguestfs-1.40.2-5.el7_7.2.x86_64

Steps to reproduce:
1.Prepare a VMware guest which has two encrypted partitions as below 
# lsblk
NAME                                       MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda                                          8:0    0   12G  0 disk  
├─sda1                                       8:1    0    1G  0 part  /boot
├─sda2                                       8:2    0  9.8G  0 part  /
└─sda3                                       8:3    0    1G  0 part  
  └─luks-957f9ae4-39da-4b14-96aa-9928735dbf31
                                           253:0    0    1G  0 crypt [SWAP]
sdb                                          8:16   0    2G  0 disk  
└─sdb1                                       8:17   0    2G  0 part  
  └─luks-f41108de-0003-4c22-9f73-03b3ce71591b
                                           253:1    0    2G  0 crypt /home

2 Convert the guest to from VMware to RHV by virt-v2v with --key option (use disk name)
#  virt-v2v -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 -it vddk -io vddk-libdir=/home/vmware-vix-disklib-distrib -io  vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA  -o rhv-upload -oo rhv-cafile=/home/ca.pem -oo rhv-direct -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd  -b ovirtmgmt --password-file /home/passwd -of raw -oo rhv-cluster=Default -os nfs_data  esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie --key /dev/sda3:key:redhat123 --key /dev/sdb1:file:/home/diskpasswd2
Exception AttributeError: "'module' object has no attribute 'dump_plugin'" in <module 'threading' from '/usr/lib64/python2.7/threading.pyc'> ignored
[   1.1] Opening the source -i libvirt -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie -it vddk  -io vddk-libdir=/home/vmware-vix-disklib-distrib -io vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA
[   4.2] Creating an overlay to protect the source from being modified
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[   6.9] Opening the overlay
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[  60.4] Inspecting the overlay
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-f41108de-0003-4c22-9f73-03b3ce71591b: expecting a device 
name (ignored)
*** Error in `virt-v2v': corrupted size vs. prev_size: 0x000055983d5cbb50 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x7f3e4)[0x7f6ad4fe43e4]
/lib64/libc.so.6(+0x848d2)[0x7f6ad4fe98d2]
/lib64/libc.so.6(realloc+0x1d2)[0x7f6ad4fead82]
/lib64/libguestfs.so.0(+0xaa527)[0x7f6ad664f527]
/lib64/libguestfs.so.0(+0xbb71c)[0x7f6ad666071c]
/lib64/libguestfs.so.0(+0xb0b95)[0x7f6ad6655b95]
/lib64/libguestfs.so.0(+0xad92c)[0x7f6ad665292c]
/lib64/libguestfs.so.0(+0xadbad)[0x7f6ad6652bad]
/lib64/libguestfs.so.0(+0xae4c5)[0x7f6ad66534c5]
/lib64/libguestfs.so.0(+0xb0cea)[0x7f6ad6655cea]
/lib64/libguestfs.so.0(+0xbcd62)[0x7f6ad6661d62]
/lib64/libguestfs.so.0(guestfs_inspect_list_applications2+0x78)[0x7f6ad65d5048]
virt-v2v(+0x2251aa)[0x55983c4401aa]
virt-v2v(+0x1a63c7)[0x55983c3c13c7]
virt-v2v(+0x12ddc0)[0x55983c348dc0]
virt-v2v(+0x122d92)[0x55983c33dd92]
virt-v2v(+0x16e911)[0x55983c389911]
virt-v2v(+0x12759b)[0x55983c34259b]
virt-v2v(+0x1159d9)[0x55983c3309d9]
virt-v2v(+0x26c7a4)[0x55983c4877a4]
virt-v2v(+0x26cb45)[0x55983c487b45]
virt-v2v(+0x26cb79)[0x55983c487b79]
virt-v2v(+0x11513c)[0x55983c33013c]
/lib64/libc.so.6(__libc_start_main+0xf5)[0x7f6ad4f87555]
virt-v2v(+0x115176)[0x55983c330176]
======= Memory map: ========
55983c21b000-55983c4e5000 r-xp 00000000 fd:00 92936151                   /usr/bin/virt-v2v
55983c6e4000-55983c6e7000 r--p 002c9000 fd:00 92936151                   /usr/bin/virt-v2v
55983c6e7000-55983c859000 rw-p 002cc000 fd:00 92936151                   /usr/bin/virt-v2v
55983c859000-55983c871000 rw-p 00000000 00:00 0 
55983d4c7000-55983d6a8000 rw-p 00000000 00:00 0                          [heap]
7f6ac0000000-7f6ac0021000 rw-p 00000000 00:00 0 
7f6ac0021000-7f6ac4000000 ---p 00000000 00:00 0 
7f6ac4ec1000-7f6ac4ee9000 r-xp 00000000 fd:00 33885939                   /usr/lib64/libnsspem.so
7f6ac4ee9000-7f6ac50e9000 ---p 00028000 fd:00 33885939                   /usr/lib64/libnsspem.so
7f6ac50e9000-7f6ac50ea000 r--p 00028000 fd:00 33885939                   /usr/lib64/libnsspem.so
7f6ac50ea000-7f6ac50eb000 rw-p 00029000 fd:00 33885939                   /usr/lib64/libnsspem.so
7f6ac50eb000-7f6ac50ed000 r-xp 00000000 fd:00 33885944                   /usr/lib64/libnsssysinit.so
7f6ac50ed000-7f6ac52ec000 ---p 00002000 fd:00 33885944                   /usr/lib64/libnsssysinit.so
7f6ac52ec000-7f6ac52ed000 r--p 00001000 fd:00 33885944                   /usr/lib64/libnsssysinit.so
7f6ac52ed000-7f6ac52ee000 rw-p 00002000 fd:00 33885944                   /usr/lib64/libnsssysinit.so
7f6ac52ee000-7f6ac5371000 r-xp 00000000 fd:00 33565071                   /usr/lib64/libfreeblpriv3.so
7f6ac5371000-7f6ac5571000 ---p 00083000 fd:00 33565071                   /usr/lib64/libfreeblpriv3.so
7f6ac5571000-7f6ac5573000 r--p 00083000 fd:00 33565071                   /usr/lib64/libfreeblpriv3.so
7f6ac5573000-7f6ac5574000 rw-p 00085000 fd:00 33565071                   /usr/lib64/libfreeblpriv3.so
7f6ac5574000-7f6ac5578000 rw-p 00000000 00:00 0 
7f6ac5578000-7f6ac5629000 r-xp 00000000 fd:00 33582778                   /usr/lib64/libsqlite3.so.0.8.6
7f6ac5629000-7f6ac5828000 ---p 000b1000 fd:00 33582778                   /usr/lib64/libsqlite3.so.0.8.6
7f6ac5828000-7f6ac582a000 r--p 000b0000 fd:00 33582778                   /usr/lib64/libsqlite3.so.0.8.6
7f6ac582a000-7f6ac582d000 rw-p 000b2000 fd:00 33582778                   /usr/lib64/libsqlite3.so.0.8.6
7f6ac582d000-7f6ac586d000 r-xp 00000000 fd:00 33605226                   /usr/lib64/libsoftokn3.so
7f6ac586d000-7f6ac5a6d000 ---p 00040000 fd:00 33605226                   /usr/lib64/libsoftokn3.so
7f6ac5a6d000-7f6ac5a6e000 r--p 00040000 fd:00 33605226                   /usr/lib64/libsoftokn3.so
7f6ac5a6e000-7f6ac5a6f000 rw-p 00041000 fd:00 33605226                   /usr/lib64/libsoftokn3.so
7f6ac5a6f000-7f6ac5a7b000 r-xp 00000000 fd:00 33579116                   /usr/lib64/libnss_files-2.17.so
7f6ac5a7b000-7f6ac5c7a000 ---p 0000c000 fd:00 33579116                   /usr/lib64/libnss_files-2.17.so
7f6ac5c7a000-7f6ac5c7b000 r--p 0000b000 fd:00 33579116                   /usr/lib64/libnss_files-2.17.so
7f6ac5c7b000-7f6ac5c7c000 rw-p 0000c000 fd:00 33579116                   /usr/lib64/libnss_files-2.17.so
7f6ac5c7c000-7f6ac5c82000 rw-p 00000000 00:00 0 
7f6ac5c82000-7f6acc1c4000 r--p 00000000 fd:00 75499614                   /usr/lib/locale/locale-archive
7f6acc1c4000-7f6acc788000 rw-p 00000000 00:00 0 
7f6acc788000-7f6acc797000 r-xp 00000000 fd:00 33581804                   /usr/lib64/libbz2.so.1.0.6
7f6acc797000-7f6acc996000 ---p 0000f000 fd:00 33581804                   /usr/lib64/libbz2.so.1.0.6
7f6acc996000-7f6acc997000 r--p 0000e000 fd:00 33581804                   /usr/lib64/libbz2.so.1.0.6
7f6acc997000-7f6acc998000 rw-p 0000f000 fd:00 33581804                   /usr/lib64/libbz2.so.1.0.6
7f6acc998000-7f6acc9af000 r-xp 00000000 fd:00 33582783                   /usr/lib64/libelf-0.176.so
7f6acc9af000-7f6accbae000 ---p 00017000 fd:00 33582783                   /usr/lib64/libelf-0.176.so
7f6accbae000-7f6accbaf000 r--p 00016000 fd:00 33582783                   /usr/lib64/libelf-0.176.so
7f6accbaf000-7f6accbb0000 rw-p 00017000 fd:00 33582783                   /usr/lib64/libelf-0.176.so
7f6accbb0000-7f6accde6000 r-xp 00000000 fd:00 33624934                   /usr/lib64/libcrypto.so.1.0.2k
7f6accde6000-7f6accfe6000 ---p 00236000 fd:00 33624934                   /usr/lib64/libcrypto.so.1.0.2k
7f6accfe6000-7f6acd002000 r--p 00236000 fd:00 33624934                   /usr/lib64/libcrypto.so.1.0.2k
7f6acd002000-7f6acd00f000 rw-p 00252000 fd:00 33624934                   /usr/lib64/libcrypto.so.1.0.2k
7f6acd00f000-7f6acd013000 rw-p 00000000 00:00 0 
7f6acd013000-7f6acd07a000 r-xp 00000000 fd:00 33624936                   /usr/lib64/libssl.so.1.0.2k
7f6acd07a000-7f6acd27a000 ---p 00067000 fd:00 33624936                   /usr/lib64/libssl.so.1.0.2k
7f6acd27a000-7f6acd27e000 r--p 00067000 fd:00 33624936                   /usr/lib64/libssl.so.1.0.2k
7f6acd27e000-7f6acd285000 rw-p 0006b000 fd:00 33624936                   /usr/lib64/libssl.so.1.0.2k
7f6acd285000-7f6acd28c000 r-xp 00000000 fd:00 33582812                   /usr/lib64/libffi.so.6.0.1
7f6acd28c000-7f6acd48b000 ---p 00007000 fd:00 33582812                   /usr/lib64/libffi.so.6.0.1
7f6acd48b000-7f6acd48c000 r--p 00006000 fd:00 33582812                   /usr/lib64/libffi.so.6.0.1
7f6acd48c000-7f6acd48d000 rw-p 00007000 fd:00 33582812                   /usr/lib64/libffi.so.6.0.1
7f6acd48d000-7f6acd491000 r-xp 00000000 fd:00 33582763                   /usr/lib64/libgpg-error.so.0.10.0
Aborted (core dumped)





Verify the bug with builds:
virt-v2v-1.40.2-5.el7_7.3.x86_64
libguestfs-1.40.2-5.el7_7.3.x86_64
libvirt-4.5.0-23.el7_7.4.x86_64
qemu-kvm-rhev-2.12.0-33.el7_7.7.x86_64
nbdkit-1.8.0-1.el7.x86_64


Steps:
0. Check v2v man page for --key option
#man virt-v2v
.....
   --key SELECTOR
           Specify a key for LUKS, to automatically open a LUKS device when using the inspection.
           "SELECTOR" can be in one of the following formats:

           --key "DEVICE":key:KEY_STRING
               Use the specified "KEY_STRING" as passphrase.

           --key "DEVICE":file:FILENAME
               Read the passphrase from FILENAME.
.....


Scenaio1:

1.1 Prepare a VMware guest which has two encrypted partitions as below 
# lsblk
NAME                                       MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda                                          8:0    0   12G  0 disk  
├─sda1                                       8:1    0    1G  0 part  /boot
├─sda2                                       8:2    0  9.8G  0 part  /
└─sda3                                       8:3    0    1G  0 part  
  └─luks-957f9ae4-39da-4b14-96aa-9928735dbf31
                                           253:0    0    1G  0 crypt [SWAP]
sdb                                          8:16   0    2G  0 disk  
└─sdb1                                       8:17   0    2G  0 part  
  └─luks-f41108de-0003-4c22-9f73-03b3ce71591b
                                           253:1    0    2G  0 crypt /home
# cryptsetup luksUUID /dev/sdb1
f41108de-0003-4c22-9f73-03b3ce71591b
# cryptsetup luksUUID /dev/sda3
957f9ae4-39da-4b14-96aa-9928735dbf31

1.2 Convert the guest to from VMware to RHV by virt-v2v with --key option (use disk name)
#  virt-v2v -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 -it vddk -io vddk-libdir=/home/vmware-vix-disklib-distrib -io  vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA  -o rhv-upload -oo rhv-cafile=/home/ca.pem -oo rhv-direct -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd  -b ovirtmgmt --password-file /home/passwd -of raw -oo rhv-cluster=Default -os nfs_data  esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie --key /dev/sda3:key:redhat123 --key /dev/sdb1:file:/home/diskpasswd2
Exception AttributeError: "'module' object has no attribute 'dump_plugin'" in <module 'threading' from '/usr/lib64/python2.7/threading.pyc'> ignored
[   1.4] Opening the source -i libvirt -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie -it vddk  -io vddk-libdir=/home/vmware-vix-disklib-distrib -io vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA
[   4.6] Creating an overlay to protect the source from being modified
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[   9.4] Opening the overlay
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[  24.1] Inspecting the overlay
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-f41108de-0003-4c22-9f73-03b3ce71591b: expecting a device 
name (ignored)
[ 890.8] Checking for sufficient free disk space in the guest
[ 890.8] Estimating space required on target for each disk
[ 890.8] Converting Red Hat Enterprise Linux Server 7.7 (Maipo) to run on KVM
virt-v2v: This guest has virtio drivers installed.
[1095.9] Mapping filesystem data to avoid copying unused and blank areas
[1098.2] Closing the overlay
[1099.1] Assigning disks to buses
[1099.1] Checking if the guest needs BIOS or UEFI to boot
[1099.1] Initializing the target -o rhv-upload -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd -os nfs_data
[1101.7] Copying disk 1/2 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.7XaO97/nbdkit0.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1896.7] Copying disk 2/2 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.7XaO97/nbdkit1.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1980.9] Creating output metadata
[1986.9] Finishing off

1.3 Power on and check guest after v2v finishing conversion, the checkpoints of guest are passed

1.4 Convert the guest to from VMware to RHV by virt-v2v with --key option (use disk uuid)
# virt-v2v -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 -it vddk -io vddk-libdir=/home/vmware-vix-disklib-distrib -io  vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA  -o rhv-upload -oo rhv-cafile=/home/ca.pem -oo rhv-direct -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd  -b ovirtmgmt --password-file /home/passwd -of raw -oo rhv-cluster=Default -os nfs_data  esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie --key 957f9ae4-39da-4b14-96aa-9928735dbf31:key:redhat123 --key f41108de-0003-4c22-9f73-03b3ce71591b:file:/home/diskpasswd2
Exception AttributeError: "'module' object has no attribute 'dump_plugin'" in <module 'threading' from '/usr/lib64/python2.7/threading.pyc'> ignored
[   0.8] Opening the source -i libvirt -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.7-os_1luks-non_os_1luks-mxie -it vddk  -io vddk-libdir=/home/vmware-vix-disklib-distrib -io vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA
[   4.0] Creating an overlay to protect the source from being modified
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[   6.7] Opening the overlay
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
Enter key or passphrase ("/dev/sda3"): 
Enter key or passphrase ("/dev/sdb1"): 
[  68.0] Inspecting the overlay
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-f41108de-0003-4c22-9f73-03b3ce71591b: expecting a device 
name (ignored)
^C

Result1.4
    V2V can't recognize the password if using disk luksUUID in --key option



Scenario2:

2.1 Prepare a VMware guest which has four encrypted partitions as below 
# lsblk
NAME                                       MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda                                          8:0    0   11G  0 disk  
├─sda1                                       8:1    0    1G  0 part  /boot
├─sda2                                       8:2    0  9.5G  0 part  /
└─sda3                                       8:3    0  518M  0 part  
  └─luks-37990053-c744-4f9e-ba7b-1944d18ac3db
                                           253:0    0  516M  0 crypt [SWAP]
sdb                                          8:16   0    2G  0 disk  
└─sdb1                                       8:17   0    2G  0 part  
  └─luks-f8f30718-1587-4ce1-8588-87374d273280
                                           253:2    0    2G  0 crypt /home/sdb
sdc                                          8:32   0    3G  0 disk  
└─sdc1                                       8:33   0    3G  0 part  
  └─luks-22b0edbc-4300-42f0-b182-43d595fd45c7
                                           253:3    0    3G  0 crypt /home/sdc
sdd                                          8:48   0    4G  0 disk  
└─sdd1                                       8:49   0    4G  0 part  
  └─luks-b4be9a0b-187b-45c2-ad52-3b6441aca6e2
                                           253:1    0    4G  0 crypt /home/sdd

2.2 Convert the guest to from VMware to RHV by virt-v2v with --key option
# virt-v2v -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 -it vddk -io vddk-libdir=/home/vmware-vix-disklib-distrib -io  vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA  -o rhv-upload -oo rhv-cafile=/home/ca.pem -oo rhv-direct -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd  -b ovirtmgmt --password-file /home/passwd -of raw -oo rhv-cluster=Default -os nfs_data  esx6.7-rhel7.8-swap_luks-non_os_3luks-mxie --key /dev/sdb1:file:/home/diskpasswd2 --key /dev/sdc1:file:/home/diskpasswd2 --key /dev/sdd1:key:redhat123
Exception AttributeError: "'module' object has no attribute 'dump_plugin'" in <module 'threading' from '/usr/lib64/python2.7/threading.pyc'> ignored
[   1.9] Opening the source -i libvirt -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.8-swap_luks-non_os_3luks-mxie -it vddk  -io vddk-libdir=/home/vmware-vix-disklib-distrib -io vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA
[   8.4] Creating an overlay to protect the source from being modified
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[  14.8] Opening the overlay
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
Enter key or passphrase ("/dev/sda3"): 
You have new mail in /var/spool/mail/root
[root@hp-dl380eg8-02 ~]# virt-v2v -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 -it vddk -io vddk-libdir=/home/vmware-vix-disklib-distrib -io  vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA  -o rhv-upload -oo rhv-cafile=/home/ca.pem -oo rhv-direct -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd  -b ovirtmgmt --password-file /home/passwd -of raw -oo rhv-cluster=Default -os nfs_data  esx6.7-rhel7.8-swap_luks-non_os_3luks-mxie --key /dev/sda3:key:redhat123 --key /dev/sdb1:file:/home/diskpasswd2 --key /dev/sdc1:file:/home/diskpasswd2 --key /dev/sdd1:key:redhat123
Exception AttributeError: "'module' object has no attribute 'dump_plugin'" in <module 'threading' from '/usr/lib64/python2.7/threading.pyc'> ignored
[   1.2] Opening the source -i libvirt -ic vpx://root.73.141/data/10.73.75.219/?no_verify=1 esx6.7-rhel7.8-swap_luks-non_os_3luks-mxie -it vddk  -io vddk-libdir=/home/vmware-vix-disklib-distrib -io vddk-thumbprint=1F:97:34:5F:B6:C2:BA:66:46:CB:1A:71:76:7D:6B:50:1E:03:00:EA
[   6.4] Creating an overlay to protect the source from being modified
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[  11.9] Opening the overlay
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
[  23.0] Inspecting the overlay
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-f8f30718-1587-4ce1-8588-87374d273280: expecting a device 
name (ignored)
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-22b0edbc-4300-42f0-b182-43d595fd45c7: expecting a device 
name (ignored)
virt-v2v: warning: mount: mount_stub: 
/dev/mapper/luks-b4be9a0b-187b-45c2-ad52-3b6441aca6e2: expecting a device 
name (ignored)
[ 163.3] Checking for sufficient free disk space in the guest
[ 163.3] Estimating space required on target for each disk
[ 163.3] Converting Red Hat Enterprise Linux Server 7.8 Beta (Maipo) to run on KVM
virt-v2v: This guest has virtio drivers installed.
[ 283.5] Mapping filesystem data to avoid copying unused and blank areas
[ 284.8] Closing the overlay
[ 285.5] Assigning disks to buses
[ 285.5] Checking if the guest needs BIOS or UEFI to boot
[ 285.5] Initializing the target -o rhv-upload -oc https://ibm-x3250m5-03.rhts.eng.pek2.redhat.com/ovirt-engine/api -op /home/rhvpasswd -os nfs_data
[ 290.4] Copying disk 1/4 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.ijD4PJ/nbdkit0.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1047.3] Copying disk 2/4 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.ijD4PJ/nbdkit1.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1141.8] Copying disk 3/4 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.ijD4PJ/nbdkit2.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1256.1] Copying disk 4/4 to qemu URI json:{ "file.driver": "nbd", "file.path": "/var/tmp/rhvupload.ijD4PJ/nbdkit3.sock", "file.export": "/" } (raw)
nbdkit: error: VixDiskLib: VixDiskLibIsLegacyConnParams: the instance of VixDiskLibConnectParams is NOT allocated by VixDiskLib_AllocateConnectParams. The new features in 6.7 or later are not supported.
    (100.00/100%)
[1403.8] Creating output metadata
[1417.2] Finishing off

2.3 Power on and check guest after v2v finishing conversion, the checkpoints of guest are passed




Hi Pino,

   (1) I found the --key info of rhel7 is little different with the info of rhel8, below is --key option info in v2v rhel8 man page, only points out 'ID', but in v2v rhel7 man page, only points out 'DEVICE'.  As Richard mentioned in the mail, device names or LUKS UUIDs are supported in --key option, I think --key info isn't illustrated clearly in both rhel7 and rhel8 v2v man page.

      --key SELECTOR
           Specify a key for LUKS, to automatically open a LUKS device when using the inspection.  "ID"
           can be either the libguestfs device name, or the UUID of the LUKS device.

           --key "ID":key:KEY_STRING
               Use the specified "KEY_STRING" as passphrase.

           --key "ID":file:FILENAME
               Read the passphrase from FILENAME.

   (2)  According to the result1.4, seems V2V can't support disk luksUUID in --key option correctly, pls help to check "luksuuid-key-option.log"

   (3) There is virt-v2v warning like " mount: mount_stub: /dev/mapper/luks-f8f30718-1587-4ce1-8588-87374d273280: expecting a device name (ignored)"  during converting a encrypted guest with --key option, is it expected?

Comment 4 mxie@redhat.com 2019-12-16 10:42:53 UTC
Created attachment 1645545 [details]
luksuuid-key-option.log

Comment 5 Pino Toscano 2019-12-16 11:25:54 UTC
(In reply to mxie from comment #3)
>    (1) I found the --key info of rhel7 is little different with the info of
> rhel8, below is --key option info in v2v rhel8 man page, only points out
> 'ID', but in v2v rhel7 man page, only points out 'DEVICE'.  As Richard
> mentioned in the mail, device names or LUKS UUIDs are supported in --key
> option, I think --key info isn't illustrated clearly in both rhel7 and rhel8
> v2v man page.

This fix is *only* for the crash with multiple --key options.
There is no behaviour change in what --key supports, so device names were the only option before, and after this fix they still are the only options.

The addition of LUKS UUIDs was done *only* in RHEL AV 8.1.1 (bug 1771933).

Comment 6 mxie@redhat.com 2019-12-16 12:16:07 UTC
Thanks Pino, according to comment3 and comment5, move the bug from ON_QA to VERIFIED

Comment 8 errata-xmlrpc 2020-02-04 19:30:25 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.

https://access.redhat.com/errata/RHBA-2020:0373


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