What does BSOD 149 (PNP_INTERNAL_ERROR) mean?

 
Could be also:
ConstantTypeOS
ERROR_IS_SUBST_TARGETWin32 errorWindows
EALREADYerrnoSolaris
Previous Next
KERNEL_STACK_LOCKED_AT_EXIT INVALID_WORK_QUEUE_ITEM

PNP_INTERNAL_ERROR

Plug and Play manager internal failure for PNP_INTERNAL_ERROR

PNP_INTERNAL_ERROR is bug check code 0x00000095. This bug check is raised when the PnP manager or a participating driver violates device-node, IRP, resource, remove, start, or power-state expectations. It is normally a driver or bus/PnP state-machine problem.

How to read it in a dump for PNP_INTERNAL_ERROR

  • Parameter 1 is the most important value because it identifies the PnP subcode.
  • Other parameters can point to device objects, device nodes, IRPs, or internal PnP structures depending on the subcode.
  • Analyze it together with the device stack rather than as a generic boot or hardware failure.

What to check for PNP_INTERNAL_ERROR

  • Use !devnode, !devstack, and Driver Verifier on the suspect bus/function/filter driver.
  • Correlate with hot-plug, surprise removal, sleep/resume, driver update, and resource rebalance.
  • Check for pending IRPs that were completed twice, not completed, or completed in the wrong state.

References for PNP_INTERNAL_ERROR

Dump evidence for PNP_INTERNAL_ERROR

For PNP_INTERNAL_ERROR, preserve the complete dump, the four bug-check parameters, the exact Windows build, loaded-module list, and the event timeline immediately before the stop. AllStat summarizes the condition as “PNP_INTERNAL_ERROR”; that sentence identifies the failure class, while the parameters and stack determine which object, driver, processor, or subsystem instance was involved.

Analysis order for PNP_INTERNAL_ERROR

  • Run WinDbg !analyze -v, then inspect the documented meaning of each PNP_INTERNAL_ERROR parameter instead of relying only on the probably-caused-by line.
  • For PNP_INTERNAL_ERROR, find the earliest abnormal event: driver update, firmware change, device reset, storage error, verifier report, resource exhaustion, or application hang connected with pnp / internal.
  • For PNP_INTERNAL_ERROR, keep third-party filter, security, storage, graphics, and virtualization drivers in the module inventory; removing evidence before dump analysis can obscure the responsible path.

Do not repeatedly reboot a machine affected by PNP_INTERNAL_ERROR before collecting the dump and event logs. For PNP_INTERNAL_ERROR, recovery actions should follow the component identified by the stack and parameters, not merely the symbolic stop-code name.

Dump evidence for PNP_INTERNAL_ERROR

For PNP_INTERNAL_ERROR, preserve the complete dump, the four bug-check parameters, the exact Windows build, loaded-module list, and the event timeline immediately before the stop. AllStat summarizes the condition as “PNP_INTERNAL_ERROR”; that sentence identifies the failure class, while the parameters and stack determine which object, driver, processor, or subsystem instance was involved.

Analysis order for PNP_INTERNAL_ERROR

  • Run WinDbg !analyze -v, then inspect the documented meaning of each PNP_INTERNAL_ERROR parameter instead of relying only on the probably-caused-by line.
  • For PNP_INTERNAL_ERROR, find the earliest abnormal event: driver update, firmware change, device reset, storage error, verifier report, resource exhaustion, or application hang connected with pnp / internal.
  • For PNP_INTERNAL_ERROR, keep third-party filter, security, storage, graphics, and virtualization drivers in the module inventory; removing evidence before dump analysis can obscure the responsible path.

Do not repeatedly reboot a machine affected by PNP_INTERNAL_ERROR before collecting the dump and event logs. For PNP_INTERNAL_ERROR, recovery actions should follow the component identified by the stack and parameters, not merely the symbolic stop-code name.


Looking for a different code? Search another status or error code.