<div dir="ltr"><div><div><div><div>Hi Rich,<br><br></div>Thanks, again, for the pointer. I'm still slowly going through the registry making my changes. <br><br></div>I noticed what may be a small bug in your code. Please look at <a href="https://github.com/libguestfs/libguestfs/blob/master/v2v/windows_virtio.ml#L230-L231">https://github.com/libguestfs/libguestfs/blob/master/v2v/windows_virtio.ml#L230-L231</a>. I think you meant to have those two compat ids be:<br><br><span class=""><span class="">"</span>PCI<span class="">\\</span>CC_010000<span class="">"</span></span>;<br><span class=""><span class="">"</span>PCI<span class="">\\</span>CC_0100<span class="">"</span></span>;<br><br></div>The current IDs in your code try to associate the viostor driver with devices from vendor <a href="http://pcidatabase.com/vendor_details.php?id=406">http://pcidatabase.com/vendor_details.php?id=406</a>, which I don't believe was your intent. <br><br></div>JP<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 9, 2016 at 12:35 AM, Richard W.M. Jones <span dir="ltr"><<a href="mailto:rjones@redhat.com" target="_blank">rjones@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Tue, Feb 09, 2016 at 12:20:35AM -0800, Joshua Pincus wrote:<br>
> Hi Rich,<br>
><br>
> Thanks for the pointer. It looks like add_viostor_to_driver_database() is<br>
> the routine that I need to mimic. I'll try that out in the morning. I've<br>
> been staring at this problem for so long that my eyes are crossing.<br>
<br>
</span>I should note that any doubled \\ that appear in the strings are<br>
really single \, they are just escaped OCaml strings. It might help<br>
to fire up the OCaml interpreter:<br>
<br>
$ rlwrap ocaml<br>
OCaml version 4.02.3<br>
<br>
# open Printf;;<br>
# printf "PCI\\VEN_1AF4&DEV_1001&REV_00\n";;<br>
PCI\VEN_1AF4&DEV_1001&REV_00<br>
- : unit = ()<br>
# let oem_inf = "oem1.inf";;<br>
val oem_inf : string = "oem1.inf"<br>
# printf "@%s,%%rhelscsi.devicedesc%%;Red Hat VirtIO SCSI controller\n"<br>
oem_inf;;<br>
@oem1.inf,%rhelscsi.devicedesc%;Red Hat VirtIO SCSI controller<br>
- : unit = ()<br>
<span class=""><br>
Rich.<br>
<br>
<br>
--<br>
Richard Jones, Virtualization Group, Red Hat <a href="http://people.redhat.com/~rjones" rel="noreferrer" target="_blank">http://people.redhat.com/~rjones</a><br>
Read my programming and virtualization blog: <a href="http://rwmj.wordpress.com" rel="noreferrer" target="_blank">http://rwmj.wordpress.com</a><br>
</span>virt-top is 'top' for virtual machines. Tiny program with many<br>
powerful monitoring features, net stats, disk stats, logging, etc.<br>
<a href="http://people.redhat.com/~rjones/virt-top" rel="noreferrer" target="_blank">http://people.redhat.com/~rjones/virt-top</a><br>
</blockquote></div><br></div>