ESXi 6.5 Guest Fails to Power On with New Pass Through Device

Initially the guest had a pass through HBA controller that was working well. That controller was later upgraded in the host. To update the guest with the new controller, the old pass through device was removed and the new pass through device was added, however the guest then failed to power on with the following error:

Failed - Module 'DevicePowerOn' power on failed.

* Module 'DevicePowerOn' power on failed.
* The systemId does not match the current system or the deviceId, and the vendorId does not match the device currently at 1:0.0.
* Failed to start the virtual machine.

Upon testing, if the new pass through device was removed from the guest then the guest would boot successfully. Other guests could successfully boot with this new pass through device, so there was something wrong with this particular guest’s configuration and not the pass through device.

The problem I found is that ESXi did not cleanly remove the old pass through device from this guest configuration. In this case the old pass through device had ID 01:00.0.

To resolve, first shut down the guest (if running without the pass through device) and temporarily Unregister it from the host. Then from the datastore, download the .vmx file associated with the guest. Create a backup of the .vmx file, then edit the original with a text editor such as Notepad. Find and delete the following lines:

Note: the old pass through device ID of 01:00.0" was specific to my configuration as noted in the original error message, so yours may differ. I’ve also cleared out all unique device information below with xxxxx since it will be based on your specific configuration and is not relevant.

pciPassthru0.id = "01:00.0"
pciPassthru0.deviceId = "xxx"
pciPassthru0.vendorId = "xxx"
pciPassthru0.systemId = "xxxxxxxxxxxxx"

Once these lines are removed from the .vmx file, save it and then upload the file back to the datastore, overwriting the original.

The final step is to re-register the guest with the host by pointing to the vmx file we just updated on the datastore. You should then be able to add the new pass through device and power on the guest.

This entry was posted in Uncategorized. Bookmark the permalink.