Question

UEFI VMs encounter random "inaccessible boot device" BSOD issue

  • 29 February 2024
  • 2 replies
  • 369 views

Just wondering if anyone knows if there are any documented instances of someone being able to successfully re-inject the VirtIO drivers into a UEFI-based Windows VM?  

At first, we thought it was just a VMware problem, but then we had the same issue happen on a native-AHV VM.  The VM operates normally for weeks, with regular reboots, but randomly after a reboot, it bluescreens with an "Inaccessible Boot Device" error.

We haven't found a single "solution" that has actually fixed the problem.  We can get the VM to boot into recovery mode, but none of the recovery options work.  If we manually load up VirtIO driver from the command prompt (drvload vioscsi.inf) we can regain access to our drives, but adding the driver to the boot image via DISM does not help (dism /image:c:\ /add-driver /driver:vioscsi.inf).  The server reboots to the same blue screen.

SFC doesn't help, neither do the standard bootrec options (i.e. bootrec /fixmbr, bootrec /fixboot, bootrec /rebuildbcd), nor does "bootsec /nt60 sys"

We've also tried the steps in: https://portal.nutanix.com/page/documents/kbs/details?targetId=kA00e000000kAWeCAM with no luck.  

We normally clone a template VM that was created on the cluster (native-AHV, not converted from another hypervisor) and the VirtIO drivers are still installed after a sysprep, but we’re switching to manually creating each VM from a Windows Server DC iso instead.

Any suggestions?


This topic has been closed for comments

2 replies

Userlevel 3
Badge +6

I would recommend opening a support ticket w Nutanix and supplying the MEMORY.DMP file to them for analysis - or you could try to do basic analysis with WinDBG if you’re not allowed to supply due to various laws/client agreements etc...

https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/analyzing-a-kernel-mode-dump-file-with-windbg

 

Perhaps use Sysinternal’s Procmon and enable boot logging to see how far it gets - although it may not be able to record much - but it’s worth a shot?

 

Verify a few critical sections in the registry (just in case).

https://learn.microsoft.com/en-us/troubleshoot/windows-client/performance/stop-error-7b-or-inaccessible-boot-device-troubleshooting#verifying-boot-critical-drivers-and-services

 

Semi-related: 

I assume you’re using the latest VirtIO drivers v1.2.3?

While this KB may not be related, we had a encountered very odd/strange issues on Win2022 servers without newer VirtIO drivers installed UNTIL we upgraded VirtIO.

https://portal.nutanix.com/page/documents/kbs/details?targetId=kA07V000000LYCqSAO

Just wondering if anyone knows if there are any documented instances of someone being able to successfully re-inject the VirtIO drivers into a UEFI-based Windows VM?  

At first, we thought it was just a VMware problem, but then we had the same issue happen on a native-AHV VM.  The VM operates normally for weeks, with regular reboots, but randomly after a reboot, it bluescreens with an "Inaccessible Boot Device" error.

We haven't found a single "solution" that has actually fixed the problem.  We can get the VM to boot into recovery mode, but none of the recovery options work.  If we manually load up VirtIO driver from the command prompt (drvload vioscsi.inf) we can regain access to our drives, but adding the driver to the boot image via DISM does not help (dism /image:c:\ /add-driver /driver:vioscsi.inf).  The server reboots to the same blue screen.

SFC doesn't help, neither do the standard bootrec options (i.e. bootrec /fixmbr, bootrec /fixboot, bootrec /rebuildbcd), nor does "bootsec /nt60 sys"

We've also tried the steps in: https://portal.nutanix.com/page/documents/kbs/details?targetId=kA00e000000kAWeCAM with no luck.  

We normally clone a template VM that was created on the cluster (native-AHV, not converted from another hypervisor) and the VirtIO drivers are still installed after a sysprep, but we’re switching to manually creating each VM from a Windows Server DC iso instead.

Any suggestions?

What version of AOS are you on? What version of VirtIO are you on? What version/s of Windows are you on? I’m seeing something virtually identical, if not identical on AOS on AHV itself with Windows VMs. Upgraded to 6.5.5.5 from 6.5.4.5 a couple weeks ago and now, poof, I’ve got Win VMs going BSOD.

 

Running winvir, what’s your OS build? Could be client side, could be virtio side.

 

Naturally, I have to ask if you ever “resolved” this as now I’m running this to the ground.