<div dir="ltr"><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><i><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">At least for qemu and xen, we try hard to support any version of a<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">hypervisor that is still actively supported by at least one vendor (that<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">is, RHEL 5 is our current limit of how far back we try and support).  On<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">the other hand, free software is somewhat easier to support than<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">proprietary software (we have access to the source code, and can make<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">decisions about how to work around old constructs or even see how newer<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">versions changed in relation to older versions - a luxury not available<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">when targetting something where only the interface is public but the<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">source code is hidden).</span></font><font color="#6aa84f"><br style="font-family:arial,sans-serif;font-size:13px">

</font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">I'm not sure how far back Microsoft supports old versions of Hyper-V,<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">especially given the recent media attention to the fact that they<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">explicitly no longer support Windows XP.  Although Hyper-V 2008 is 6<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">years old, if it is still actively supported (where I could buy a<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">license today and still get support for the product), then libvirt<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">should still consider targetting it.  On the other hand, patches speak<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">louder than words - anyone interested enough to actually post a patch,<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">even if it actively excludes an older version of the hypervisor, has<br>

</span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">more clout than someone like me that has never even used Hyper-V :)  So<br></span></font><font color="#6aa84f"><span style="font-family:arial,sans-serif;font-size:13px">I guess that means it is your call on whether it is easier to drop<br>

</span></font></i><font color="#6aa84f" style="font-family:arial,sans-serif;font-size:13px"><i>support for old versions for the sake of making maintenance easier.</i></font><br><br><font color="#000000" style><font face="arial, sans-serif">From what I have seen, Microsoft supports hyperv 2008 management via windows 7 and hyperv 2012 via windows 8.1 (note that the reverse is not true, that is, win 7 cannot manage hyperv 2012 and win 8.1 cannot manage hyperv 2008). I *think* they wanted to keep the application code separate, in the sense that one manages the old namespace and the new one manages the new v2 namespace. The difference between the two namespaces is not great either, sadly, both of them have same class names but with different field types (int, string etc.) which have been separated by the namespace root/virtualization vs root/virtualization/v2</font><br>

<br><font face="arial, sans-serif">I am not a big fan of patching up things without backward compatibility. In hyperv 2012, there is no v1 namespace to provide backward compatibility:</font><br><br><font face="arial, sans-serif"><a href="http://technet.microsoft.com/en-us/library/dn303411.aspx">http://technet.microsoft.com/en-us/library/dn303411.aspx</a> <br>

</font></font><span style="color:rgb(42,42,42);font-family:'Segoe UI','Lucida Grande',Verdana,Arial,Helvetica,sans-serif;font-size:13px;line-height:18px">[WMI root\virtualization namespace v1 (in Hyper-V) has been dropped.]<br>

</span><font color="#000000" style><br>So, I am not sure :) but if you ask me to pick a choice,<br><br>In the spirit of encouraging code contributions and make maintenance simpler, I would like to drop off 2008 support, with either asking users to use an older version of libvirt <= 1.4.2 (since new hyperv 2008 drivers wont be contributed to libvirt anyway, so it is not like the users will be missing on features) and that all future contributions to libvirt hyperv driver support 2012 version and beyond. This split seems a bit odd but Microsoft has done it too with win 7 vs win 8.1 :)<br>

<br>You guys are the libivirt masters, I put my thoughts in, take a shot and let me know :)<br><br>Thanks,<br>Vik.<br><br><br><br></font></blockquote></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 21, 2014 at 2:17 PM, Eric Blake <span dir="ltr"><<a href="mailto:eblake@redhat.com" target="_blank">eblake@redhat.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On 04/16/2014 05:51 PM, vikhyath reddy wrote:<br>
<br>
> With these changes and a few other minor ones, I can confirm that the<br>
> functionality mimics the hyperv 2008 version. That is, we get the same<br>
> functionality (supported vs non-supported drivers).<br>
><br>
> However, this might also mean the end of support of Hyper-V 2008 if it is<br>
> just a replace of the existing classes. What do you guys think? Should we<br>
> continue to support 2008 (~6 years old) OR is it OK to assume that Hyperv-V<br>
> 2012 will be the default standard moving forward.<br>
<br>
</div>At least for qemu and xen, we try hard to support any version of a<br>
hypervisor that is still actively supported by at least one vendor (that<br>
is, RHEL 5 is our current limit of how far back we try and support).  On<br>
the other hand, free software is somewhat easier to support than<br>
proprietary software (we have access to the source code, and can make<br>
decisions about how to work around old constructs or even see how newer<br>
versions changed in relation to older versions - a luxury not available<br>
when targetting something where only the interface is public but the<br>
source code is hidden).<br>
<br>
I'm not sure how far back Microsoft supports old versions of Hyper-V,<br>
especially given the recent media attention to the fact that they<br>
explicitly no longer support Windows XP.  Although Hyper-V 2008 is 6<br>
years old, if it is still actively supported (where I could buy a<br>
license today and still get support for the product), then libvirt<br>
should still consider targetting it.  On the other hand, patches speak<br>
louder than words - anyone interested enough to actually post a patch,<br>
even if it actively excludes an older version of the hypervisor, has<br>
more clout than someone like me that has never even used Hyper-V :)  So<br>
I guess that means it is your call on whether it is easier to drop<br>
support for old versions for the sake of making maintenance easier.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Eric Blake   eblake redhat com    <a href="tel:%2B1-919-301-3266" value="+19193013266">+1-919-301-3266</a><br>
Libvirt virtualization library <a href="http://libvirt.org" target="_blank">http://libvirt.org</a><br>
<br>
</font></span></blockquote></div><br></div>