Non Maskable Interrupt error during boot on a system which has been configured for kernel debugging over Ethernet

Applies to: Windows Server 2012 DatacenterWindows Server 2012 DatacenterWindows Server 2012 Essentials

Symptoms


Consider the following scenario:
  • You are using Windows 8 or Windows Server 2012 on a computer where the operating system has been installed while the firmware is configured for Unified Extensible Firmware Interface (UEFI) mode.
  • You attempt to configure the computer for kernel debugging over an Ethernet network, as described in the following article:
    Setting Up Kernel-Mode Debugging over a Network Cable Manually

With some Ethernet adapters, on some computers, the system may fail to boot. You may see a firmware error on screen, indicating that a Non Maskable Interrupt exception was encountered during the UEFI pre-boot environment.

Cause


The network debugging code in Windows 8 and Windows Server 2012 does not correctly handle network adapters which utilize a prefetchable Base Address Register. This may cause a sequence of events which result in the network adapter generating a bus error.

Resolution


This problem is resolved in Windows 8.1 and Windows Server 2012 R2.

If you encounter this problem in Windows 8.0 or Windows Server 2012, you can restore the system to a bootable state by either disabling the network card in the BIOS, or physically removing it from the system. You can then boot into Windows and disable kernel debugging, or work around the problem by changing the kernel debug settings using BCDEdit.

To work around the problem, use one of the following methods:
  • Use a different transport for kernel debugging (serial, USB, or 1394)
  • Use a different Ethernet adapter for network kernel debugging (the problem does not occur with all adapters)
  • Configure the system firmware for legacy BIOS mode, rather than UEFI. (Warning: This will require the operating system to be reinstalled.)