Windows 2012 R2 server boot loop to Windows Recovery Console!


Issue:    Windows 2012 R2 server not loading to Desktop, server boot loop to Windows Recovery Console & Driver fault error 0xc0000099

1

Cause :   EMC powerpath driver corrupted, missing or not loading

Fix :

Initial Trouble shooting Steps:

  • Boot the server in Safe mode and Last Known good configuration – Still going in to “Preparing to Automatic Repair”
  • Boot the server with Operating System DVD and select repair option at Installation wizard screen, Select Troubleshoot and run below command
    • Bootrec / Fixboot
    • Bootrec /MBR  – Still going in to “Preparing to Automatic Repair”
  • Continue Second step and verify the disk at diskpart

2

  • Change the “System Reserve” disk drive letter to None and change Windows Disk to C:
  • Recreated the boot environment (bcdboot C:\Windows /S C:)  – Still going in to “Preparing to Automatic Repair”

Fix worked for us:

  • Boot the server with Operating System DVD and select repair option at Installation wizard screen,
  • Verified the Boot loader by running bcdedit /enum /all

    3

  • Change the recoveryenabled to ‘No’ by running  “bcdedit /set {default} recoveryenabled no”, and reboot

    4

  • At last server stopped going to “Automatic repair mode” but Operating System boot failed with fault  failed driver error, it report driver “EMCPGpx.sys”, corrupted or missing
    • Note: driver and sys file differ based on the faulting driver (In My case it was EMC Powerpath)

      5

  • Press “Esc” to load to Recovery Console, Troubleshoot and Command prompt
  • Open Regedit from commandline, naviagate to “Hkey Local machine”

    6

  • Load current Registry Hive (System) from server old C drive (for me it was showing D drive), <Drive>:\Windows\System32\Config

    7

  • Take a backup of system file by copy and paste from the same screen

    8

  • Load them by selecting “System” registry hive and Open
  • Provide new name for identifying the hive, I have given the name as “Original”

    9

  • Navigate to loaded hive and find the current and default configuration set by navigating to “Select” key.

    10

  • Here ‘1’ means Controlset001, go to this key and find for EMCPGpx.sys

    11

  • Modify the start value to Decimal 4

    12

  • Go back to Hive root and navigate to Controlset00x > Control > Class and Search for any class with “UpperFilters” or “Lowerfilters” with EMC****

    14

  • Edit  “UpperFilters” or “Lowerfilters” and remove anything with emc****, as shown below (Do not remove key but the value only)

    15

  • Note: I have seen many classes with these upper or lower filters with emc****** removed from those classes
  • Unload the registry hive to save the settings

13

  • Reboot server and found the server boot  to Operating System good.
  • Uninstalled the Powerpath from the server to cleanup any missing registry items from server
  • Note: I reinstalled the powerPath and Verified all looks good even after reboot

NB: Courtesy Microsoft support Engineer

Advertisements

One thought on “Windows 2012 R2 server boot loop to Windows Recovery Console!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s