Bug 1416579 - oVirt Guest Tools Setup "Completes" Without Installing Drivers Required for Services
Summary: oVirt Guest Tools Setup "Completes" Without Installing Drivers Required for S...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-guest-tools
Classification: oVirt
Component: Packaging.installer
Version: 4.1.0
Hardware: x86_64
OS: Windows
unspecified
unspecified
Target Milestone: ovirt-4.1.0-rc
: 4.1.0
Assignee: Yedidyah Bar David
QA Contact: Petr Matyáš
URL:
Whiteboard:
Depends On: 1416533
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-01-25 21:59 UTC by Daniel Beckman
Modified: 2017-05-11 09:30 UTC (History)
4 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2017-02-01 14:55:27 UTC
oVirt Team: Integration
Embargoed:
rule-engine: ovirt-4.1+
rule-engine: exception+


Attachments (Terms of Use)
Compressed archive (ZIP) containing screenshots (PNG) of workarounds. (448.44 KB, application/zip)
2017-01-25 21:59 UTC, Daniel Beckman
no flags Details


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 71226 0 master MERGED Fix driver path for win2k* 2017-01-26 14:38:52 UTC
oVirt gerrit 71265 0 ovirt-wgt-4.1 MERGED Fix driver path for win2k* 2017-01-26 14:58:20 UTC

Description Daniel Beckman 2017-01-25 21:59:04 UTC
Created attachment 1244471 [details]
Compressed archive (ZIP) containing screenshots (PNG) of workarounds.

Description of problem:
This was tested most recently on a Windows Server 2012 R2 (x64) guest. 

ovirt-guest-tools-setup runs and reports as being complete, but when you go back and check under Services, you'll find that Spice and QEMU services failed to start. This is a result of there being no driver installed for "PCI Device" (requiring VirtIO Balloon Driver) and "PCI Simple Communications Controller" (requiring VirtIO Serial Driver). If
setup is going to install those services, it should also install the drivers upon which they depend. At the very least, it should show an error that some services failed to start along with instructions for installing the drivers. The oVirt project is advertised as an alternative to the dominant commercial virtualization solutions such as vSphere. If the aim is to reach a similar level of maturity, the tools should work in an expected manner. In a vSphere environment, when you install vmware-tools on the guest, it installs services *along with the required drivers*. 

Version-Release number of selected component (if applicable):

How reproducible:
100%

Steps to Reproduce:
1.Setup Windows Server 2012 R2 (x64) guest in oVirt 4.1
2. Attach ovirt-guest-tools ISO version 4.1-1.fc24 (however, same behavior in earlier 4.0.x releases)
3. Run ovirt-guest-tools-setup inside the guest

Actual results:
The setup reports as being complete, and does not indicate anything being wrong, yet it fails to start all the services it has installed, notable QEMU and Spice. It's unable to start these services due to not installing the required VirtIO Serial and VirtIO Balloon drivers -- which are included in the ISO. 

Expected results:
Setup installs the drivers that are required for running the various services it installs. Setup includes basic checks to ensure all services start as expected, with useful errors when some or all services do not start. 

Additional info:
A workaround:
Before running ovirt-guest-tools-setup, go to Device Manager and right-click on the two unknown devices lacking drivers (PCI Device and PCI Simple Communications Controller), selecting 'browse my computer for driver software', selecting the drive letter for the ovirt-guest-tools ISO (typically D:\), clicking Next and confirming the installation of the VirtIO drivers. *This should not be necessary.*

Comment 1 Daniel Beckman 2017-01-25 22:18:53 UTC
Note a related bug, 1416533
https://bugzilla.redhat.com/show_bug.cgi?id=1416533

Comment 2 Christophe Fergeau 2017-01-26 07:46:32 UTC
(In reply to Daniel Beckman from comment #1)
> Note a related bug, 1416533
> https://bugzilla.redhat.com/show_bug.cgi?id=1416533

I think they both have the same root cause, namely that the path used on win2k* is wrong

Comment 3 Christophe Fergeau 2017-01-26 07:47:40 UTC
Sent https://lists.freedesktop.org/archives/spice-devel/2017-January/035215.html upstream which hopefully will fix both bugs.

Comment 4 Yedidyah Bar David 2017-01-26 08:34:28 UTC
(In reply to Christophe Fergeau from comment #3)
> Sent
> https://lists.freedesktop.org/archives/spice-devel/2017-January/035215.html
> upstream which hopefully will fix both bugs.

Thanks! I pushed this to gerrit [1] and jenkins built it [2].

Daniel - can you please try this build and see if it works? Thanks!

[1] https://gerrit.ovirt.org/71226
[2] http://jenkins.ovirt.org/job/ovirt-wgt_master_create-rpms-fc24-x86_64_created/22/

Comment 5 Daniel Beckman 2017-01-26 20:48:41 UTC
As correctly predicted, it fixes both bugs.

I built a new Windows Server 2012 R2 VM, loaded Windows (loading disk drivers with virtio-win virtual floppy), mounted new oVirt Guest Tools ISO, and ran ovirt-guest-tools-setup (*without* going into Device Manager and manually updating drivers). Setup ran without incident and installed the services and drivers. Just to confirm, I power cycled machine. When it came back up all services were running and no devices lacked drivers. Looking good -- thanks!

I used the ISO from the second link:
http://jenkins.ovirt.org/job/ovirt-wgt_master_create-rpms-fc24-x86_64_created/22/

The Applications tab for this VM shows as follows:
Installed Applications
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.17
QEMU guest agent
oVirt Guest Tools 4.2-0_master.20170126081651.git44a8701.fc24

Thanks,
Daniel

Comment 6 Daniel Beckman 2017-01-26 22:22:40 UTC
So I went to upgrade a Windows 10 (x64) VM running an older version of oVirt Guest Tools (installed from the standard oVirt repo --- oVirt-toolsSetup_4.0-1.fc23.iso) and setup complained "unsupported Windows version".

Comment 7 Christophe Fergeau 2017-01-27 10:12:21 UTC
(In reply to Daniel Beckman from comment #6)
> So I went to upgrade a Windows 10 (x64) VM running an older version of oVirt
> Guest Tools (installed from the standard oVirt repo ---
> oVirt-toolsSetup_4.0-1.fc23.iso) and setup complained "unsupported Windows
> version".

Only the latest version of ovirt-guest-tools (4.1* ?) supports win10 as far as I know, so this would be expected.

Comment 8 Daniel Beckman 2017-01-27 23:13:18 UTC
Let me explain that better. I had an *existing* VM running Windows 10 which *already had* an older oVirt Tools (4.0-1.fc23) installed. That installed fine several months ago with no error. That older version of oVirt Tools includes drivers for Windows 10. 

What I attempted was to *upgrade* from that older version (which had been working fine -- with the usual workarounds involving manually installing the drivers and correcting the path for the Balloon service), to the newest 4.2 build I just downloaded (4.2-0_master.20170126081651.git44a8701.fc24). That is when I got the message about "unsupported Windows version." This ends with an 'OK' button and there is no way to continue setup. 

I did not get that message in the earlier version installed some time ago. Only with the new version.

Comment 9 Daniel Beckman 2017-01-30 16:24:06 UTC
Update: on that same Windows 10 VM, after having waiting a couple of days and going  back to it -- still with the same user session and having never power cycled or logged out -- I ran ovirt-guest-tools-setup again and it did *not* through the error this time. Setup completed fine and I was able to switch to QXL drivers. What could have changed between my earlier attempt and now, I do not know [shrug]. 
I also tested setup with the new ovirt tools on a newly built Windows 10 VM and it worked fine. 
Whatever is used to detect Windows versions may have had an intermittent problem, or maybe I'm just crazy. :)

Comment 10 Sandro Bonazzola 2017-01-31 07:17:58 UTC
Moving to verified according to comment #9


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