[Libguestfs] [PATCH v1 DO NOT APPLY 2/2] v2v: Support conversion of Windows >= 8

Richard W.M. Jones rjones at redhat.com
Wed Apr 8 14:51:00 UTC 2015


**NOTE: For review only, not to be applied**

https://bugzilla.redhat.com/show_bug.cgi?id=1190669

Historically virt-v2v has been able to install the viostor (Windows
virtio-blk) driver into a Windows <= 7 guest Critical Device Database
(CDD), allowing the guest to boot on the target hypervisor.  The guest
then runs a firstboot script which reinstalls the viostor driver
properly and installs all the other virtio drivers.

However this never worked with Windows >= 8.

The reason it didn't work is because Windows >= 8 drops all support
for the CDD, replacing it with another driver database in the
registry.

The attached patches (mainly the second one) make the conversion work
for Windows >= 8.

The registry changes are considerably more intrusive than for Windows
with the CDD, so I'm rather less sure that this patch is a good idea.
Specific areas of concern include:

 - What is "oem1.inf"?

 - Where does the magic string "c86329aaeb0a7904" come from?

 - Will reinstallation of viostor create a second viostor driver
   entry?  (This needs testing)

 - Is GUID 4d36e97b-e325-11ce-bfc1-08002be10318 guaranteed to
   exist?

 - Do we need to set the right DriverVersion?

 - Do we need to place viostor.inf somewhere in the guest filesystem?
   It seems work without this file.

Note I only tested this on Windows 8.1 64 bit so far.

Rich.




More information about the Libguestfs mailing list