On Thu, Oct 01, 2015 at 04:22:14PM +0100, Richard W.M. Jones wrote:
 On Thu, Oct 01, 2015 at 06:04:03PM +0300, Roman Kagan wrote:
 > On Mon, Aug 10, 2015 at 06:55:28PM +0300, Roman Kagan wrote:
 > > Libguestfs supports passing an ISO image as a source of virtio windows
 > > drivers to v2v.
 > > 
 > > That support, however, looks too heavy-weight: in order to access those
 > > drivers, a separate guestfs handle is created (and thus a new emulator
 > > process is started), which runs until v2v completes.
 > > 
 > > This series attempts to make it simpler and lighter-weight, by making
 > > the relevant code more local, and by hot-adding the image into the main
 > > guestfs handle.
 > > 
 > > Roman Kagan (4):
 > >   v2v: drop useless forced gc
 > >   v2v: consolidate virtio-win file copying
 > >   v2v: copy virtio drivers without guestfs handle leak
 > >   v2v: reuse main guestfs for virtio win drivers iso
 > > 
 > >  v2v/convert_windows.ml | 184 ++++++++++++++++++++--------------------
 > >  v2v/utils.ml           | 224
++++++++++++++++---------------------------------
 > >  v2v/v2v.ml             |   8 --
 > >  3 files changed, 163 insertions(+), 253 deletions(-)
 > 
 > I just realized that, although (at least two of) these patches got
 > "likely ACK", they are not in the libguestfs tree.
 > 
 > The patches still apply to master as of today.
 > 
 > Is there anything I can do to get them merged?
 
 Actually better to post them again so I can review them again. 
OK will do.
 I spotted a few problems
 
 - There's a missing pair of parentheses around the then clause in:
 
          g2#mount_ro "/dev/sda" vio_root;
          let paths = g2#find vio_root in
          Array.iter (
            fun path ->
              let source = vio_root // path in
              if ((g2#is_file source ~followsymlinks:false) &&
                  (match_vio_path_with_os path inspect.i_arch
                      inspect.i_major_version inspect.i_minor_version
                      inspect.i_product_variant)) then
                                                      ^^^
 
   which makes me think this code can't possibly work. 
Indeed.  It failed neither in compilation nor in tests, though.  Looks
like I need to patch v2v/test-v2v-windows-conversion.sh, too.
Roman.