Your Windows Server 2003 VM may not start when using Dynamic memory

Applies to: Microsoft Windows Server 2003 Service Pack 2Windows Server 2012 R2 Foundation

Symptoms


Consider the following scenario:

  • You are using Windows Server 2012 Hyper-V or later host to run a guest virtual machine (VM) that has 32-bit version of Windows Server 2003 Service Pack 2 (SP2).
  • The VM is using custom Memory Manager Settings (PagedPoolSize).
  • You configure the VM to use Dynamic Memory.
In this scenario, the VM may fail to start.

Cause


Hyper-V implements the Dynamic Memory by using HotAdd Memory. The Operating System has to set aside memory structures to manage the possible addition of this Memory. If you also increase PagedPoolSize, this structure may use too much space and collide.

You have configured Memory Manager Settings inside the Windows Server 2003 VM according to http://support.microsoft.com/kb/935649

Resolution


Limit DynamicMemory inside your Windows Server 2003 VM to at least 63 GB. See also http://support.microsoft.com/kb/913568
Actually you can limit it to the Maximum RAM you configured for your VM. However, you need to adjust this in case you increase the Maximum RAM for the VM at a later time.


Windows Server 2003 SP1 Standard Edition supports a Maximum of 4GB physical memory, so a DynamicMemory value of 4 is sufficient.

Windows Server 2003 SP1 Enterprise and Datacenter Edition support a maximum of 64GB physical Memory. To avoid this problem you should configure the DynamicMemory value to 63 or less. If you configure it to the Maximum RAM you intend to run, you gain the benefit of freeing up more System PTE's
 

More Information


You may also see Stop code DRIVER_CORRUPTED_SYSPTES (db) inside the VM. The same Resolution applies here.