PSOD on ESXi Host with VmMemPf_PreallocRange when VM is terminated unexpectedly while it is powering on.
search cancel

PSOD on ESXi Host with VmMemPf_PreallocRange when VM is terminated unexpectedly while it is powering on.

book

Article ID: 428541

calendar_today

Updated On:

Products

VMware vSphere ESXi VMware vSphere ESX 8.x

Issue/Introduction

An ESXi host becomes unresponsive and displays a Purple Screen of Diagnostics (PSOD) with the below output.


cpu##:########)@BlueScreen: #PF Exception 14 in world ########:prealloc-1 IP 0x############ addr 0x##
               ...
cpu##:########)Backtrace for current CPU ###, worldID=########, fp=0x1
cpu##:########)0x############:[0x############]VmMemPf_PreallocRange@vmkernel#nover+0x45 stack: ...
cpu##:########)0x############:[0x############]AllocPreallocOneDomain@vmkernel#nover+0x44 stack: ...
cpu##:########)0x############:[0x############]Alloc_DomainFnOneCPU@vmkernel#nover+0x57 stack: ...
cpu##:########)0x############:[0x############]CpuSched_StartWorld@vmkernel#nover+0xbf stack: ...
cpu##:########)0x############:[0x############]Debug_IsInitialized@vmkernel#nover+0xc stack: ...

Environment

VMware vSphere ESX 8.x
VMware ESX 9.x

Cause

For some types of VMs, such as PCIe passthrough VMs, ESX tries to preallocate memory while the VM powers on.
If the VM is terminated during the memory preallocation, the ESX host might fail with a purple diagnostic screen.
It is caused by very rare race condition between the memory preallocation and the VM termination.

Resolution

This issue is resolved in the following version:

  • vSphere ESXi 8.0 Update3h
  • vSphere ESX 9.0.1.0

Additional Information

PR 3539502

This issue is also described in the release note of ESX 8.0u3h and ESX 9.0.1.0.