At a customer location I was asked to reinstall VMware Tools on machines, normally the customer would do this their selves, but after uninstall of the VMware Tools, the VM wouldn’t boot. They needed to reinstall the VMware Tools because of the issue encountered described in VMware KB2063887
The issue is quite simple, it’s a chicken-egg kind of thing. VMware Tools includes the device driver for the PVSCSI Controller, without VMware Tools, Windows lost its driver for the PVSCSI controller and can’t boot from it.
So I created this how to for the customer, and thought it might be useful for others.
So what’s the trick. Actually if you ever changed a VM to use the ParaVirtual SCSI Controller, you boot the VM using it’s ‘normal’ SCSI controller, you add the PVSCSI and a (temporary) hard disk to it, wait for Windows to install all drivers and ‘see’ the hard disk connected to the PVSCSI. You then shutdown Windows, remove any temporary hard disk, remove the extra PVSCSI controller and change the type of the original controller to PVSCSI. This is mostly doing the opposite:
This is done on Windows Server 2012R2, the process should be much the same on other versions.

Device Manager showing VMware hardware devices in default view.

Device Manager showing VMware hardware devices in Device by connection view.
- Add Temporary Hardware
- While the Virtual Machine is running, using the vSphere Client, select the Virtual Machine and open Edit Settings…
- From the Pull-Down Menu New Device, select SCSI Controller
- Click Add, a new LSI Logic SAS Controller will be added.
- From the Pull-Down Menu New Device, select New Hard Disk
- Click Add, a new 40 GB Hard Disk will be added.
- While the Virtual Machine is running, using the vSphere Client, select the Virtual Machine and open Edit Settings…
- From the Virtual Device Node Pull-Down Menu select New SCSI controller
- (Optional) Adjust the size of the new Hard Disk from 40 GB to 1 GB
- (Optional) From the Disk Provisioning Pull-Down Menu select Thin provision
- Click OK
Almost instantaneous the added hardware is visible in Windows:

Device Manager showing the newly added LSI Adapter, SAS 3000 series, 8-port with 1068 SCSI controller and the added VMware Virtual disk SCSI Disk Device hard disk connected to it. The original two disks are still connected to the VMware PVSCSI Controller

Disk Manager showing the added Hard Disk. It does not have to be partitioned or formatted.
- Reboot the Virtual Machine.
- When the Virtual Machine starts, Windows will commit some changes to the device drivers.
- Shut down the Virtual Machine
- TL;DR

Windows is installing drivers for the added hard disk.
When you are quick enough you might see the Plug and Play Device Setup running installing the hardware. (On my example server it took only a few seconds to install.)
For those interested, the Kernel-PnP log shows what happened:

GridView showing Kernel Plug & Play events created by the following PowerShell command:
Get-WinEvent -LogName Microsoft-Windows-Kernel-PnP/Configuration | Where-Object { $_.TimeCreated -ge ( (Get-Date).AddHours(-1) ) } | Select-Object TimeCreated,Message | Out-GridView
Important: If you should skip the reboot step and just shut down the Virtual Machine and start modifying the Virtual Hard Disk Configuration, you’ll be presented with a BSoD boot loop. “Your PC ran into a problem and needs to restart. We’re just collecting some error info, and then we’ll restart for you.”
- While the Virtual Machine is shut down, using the vSphere Client, select the Virtual Machine and open Edit Settings…
- In my example the Virtual Machine started with 2 original Hard Disks before the third one was added. Since only the first two disks are showed, to remove the third Hard Disk first we need to click on Manage other disks.
- In the Pop-Up window, hover above line Hard disk 3, and a gray icon with a white X is shown. Click this icon.
- The line changes and shows a checkbox Delete files from datastore. As long as you are sure that you are removing the newly added disk, check the checkbox.
- Click Close
- Back in the Edit Settings window, click OK
- Open Edit Settings
- Click the little triangle shaped toggle in front of each Hard disk to open the advanced settings.
- From the Virtual Device Node Pull-Down Menu select SCSI controller 1
- SCSI(0:0) must become SCSI(1:0).
- SCSI(0:1) must become SCSI(1:1).
- Etc.
Important: Only after closing Edit Settings with OK, the changes will be applied. If not applied the following steps cannot continue.
Important: The Logical Unit Number should stay the same, only the adapter number may change:
- Click Start -> Control Panel -> Program and Features
- Select VMware Tools and click Uninstall.
- Click Yes
- When the Uninstall is finished, reboot the Virtual Machine
- When the Virtual Machine is restarted, the Device Drivers for the VMware Paravirtual devices are missing (Unknown devices):
- While the Virtual Machine is running, using the vSphere Client, select the Virtual Machine and click Guest OS -> Install VMware Tools…
- If the VMware Tools Setup is not started automatically, click Choose what to do with this disc Pop-Up.
- Click Run setup64.exe
- Install the VMware Tools using all defaults, unless you have a reason to change them.
- Click Next >, Next >, Install, Finish
- After the installation is finished, reboot the Virtual Machine
- After the reboot, shut down the Virtual Machine
- While the Virtual Machine is shut down, using the vSphere Client, select the Virtual Machine and open Edit Settings…
- Click the little triangle shaped toggle in front of each Hard disk to open the advanced settings.
- From the Virtual Device Node Pull-Down Menu select SCSI controller 0
- SCSI(1:0) must become SCSI(0:0).
- SCSI(1:1) must become SCSI(0:1).
- Etc.
- Click OK
- Important: Only after closing Edit Settings with OK, the changes will be applied. If not applied the following steps cannot continue.
- Open Edit Settings
- Hover above line SCSI Controller 1 LSI Logic SAS, and a gray icon with a white X is shown. Click this icon.
- The line changes and shows Device will be removed.
- Click OK
- Start the Virtual Machine.
Important: The Logical Unit Number should stay the same, only the adapter number may change: