Bug 1311890 - virt-v2v: error: libguestfs error: hivex_open: hivex failed to open /Windows/System32/config/SOFTWARE: Operation not supported
virt-v2v: error: libguestfs error: hivex_open: hivex failed to open /Windows...
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libguestfs (Show other bugs)
7.3
x86_64 Unspecified
high Severity high
: rc
: ---
Assigned To: Richard W.M. Jones
Virtualization Bugs
Yehuda Zimmerman
V2V
:
: 1230414 (view as bug list)
Depends On: 888379 1359086 1423436
Blocks: 1301891 1401400 1288337
  Show dependency treegraph
 
Reported: 2016-02-25 04:47 EST by tingting zheng
Modified: 2017-08-02 04:13 EDT (History)
10 users (show)

See Also:
Fixed In Version: libguestfs-1.36.1-1.el7
Doc Type: Bug Fix
Doc Text:
*virt-v2v* can convert Windows guests with corrupted or damaged Windows registries Previously, the *hivex* library used by *libguestfs* to manipulate the Windows registry could not handle corrupted registries. Consequently, the *virt-v2v* utility was not able to convert Windows guests with corrupted or damaged Windows registries. With this update, *libguestfs* configures *hivex* to be less strict when reading the Windows registry. As a result, *virt-v2v* can now convert most Windows guests with corrupted or damaged Windows registries.
Story Points: ---
Clone Of:
: 1423436 (view as bug list)
Environment:
Last Closed: 2017-08-01 18:08:55 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description tingting zheng 2016-02-25 04:47:21 EST
Description of problem:
Fail to convert some win10 guests from esx,but some one can be converted successfully.

Version-Release number of selected component (if applicable):
virt-v2v-1.32.2-6.el7.x86_64
virtio-win-1.8.0-4.el7.noarch
libguestfs-winsupport-7.2-1.el7.x86_64
libvirt-1.3.1-1.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Use virt-v2v to convert win10 i386 from esx 5.1,it fails with error:
virt-v2v: error: libguestfs error: hivex_open: hivex failed to open 
/Windows/System32/config/SOFTWARE: Operation not supported

2.log info:
http://libvirt-jenkins.englab.nay.redhat.com:8080/view/v2v_auto/job/v2v_test_by_tzheng/lastBuild/testReport/%28root%29/convert_vm_to_libvirt/esx_vm_5_1_windows_win10_i386_raw_vm_check/

Actual results:
As description.

Expected results:
Win 10 can be converted successfully.

Additional info:
Comment 4 Richard W.M. Jones 2016-06-22 11:11:58 EDT
The actual error is:

hivex: hivex_open: returning ENOTSUP because: SOFTWARE: trailing garbage at end of file (at 0x2084000, after 7639 pages)
hivex_open: SOFTWARE: Operation not supported

Similar to bug 739029.

Anyway, this requires a change to hivex to make it more lax (like
Windows itself) when processing corrupt registries.

Since hivex is not on the ACL for RHEL 7.3, this conveniently means
we can defer this bug to 7.4.
Comment 5 Richard W.M. Jones 2016-07-06 06:28:26 EDT
*** Bug 1230414 has been marked as a duplicate of this bug. ***
Comment 6 Richard W.M. Jones 2017-02-16 09:24:59 EST
Defer to RHEL 7.5.  Someone is in fact working on this problem
upstream, see:
https://www.redhat.com/archives/libguestfs/2017-February/thread.html#00159
Comment 7 Richard W.M. Jones 2017-02-17 05:25:33 EST
The hivex patches were completed unexpectedly quickly.  I have
posted patches for libguestfs to use them.

This will require changes to hivex too.

https://www.redhat.com/archives/libguestfs/2017-February/msg00194.html
Comment 9 mxie@redhat.com 2017-03-31 22:33:25 EDT
Verify the bug with builds:
virt-v2v-1.36.3-1.el7.x86_64
libguestfs-1.36.3-1.el7.x86_64
qemu-kvm-1.5.3-134.el7.x86_64
qemu-kvm-rhev-2.8.0-6.el7.x86_64
virtio-win-1.9.0-3.el7.noarch
libvirt-3.1.0-2.el7.x86_64
libguestfs-winsupport-7.2-2.el7.x86_64

Steps:
1.Build auto job:converting win10(i386 and x86_64) guests from ESXi5.1/5.5/6.0 to libvirt by virt-v2v

Note:
rhel means that run the testing with qemu-kvm
rhev means that run the testing with qemu-kvm-rhev

Result:
All win10 guests could be converted successfully and checkpoints are passed, details pls refer to below jobs
https://libvirt-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/view/v2v/view/RHEL-7.4/job/v2v-RHEL-7.4-runtest-x86_64-acceptance-libvirt/13/testReport/rhel/convert_vm_to_libvirt/
https://libvirt-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/view/v2v/view/RHEL-7.4/job/v2v-RHEL-7.4-runtest-x86_64-acceptance-libvirt/13/testReport/rhev/convert_vm_to_libvirt/


So the bug has been fixed, move the bug from ON_QA to VERIFIED
Comment 13 errata-xmlrpc 2017-08-01 18:08:55 EDT
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-2017:2023

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