Question "DRIVER_POWER_STATE_FAILURE" BSOD ?

AshySamurai

Distinguished
Oct 21, 2016
19
1
18,515
Hello. I'm yet again requiring assistance. I tried to do analisys on my own (via WinDbf Preview) but with no success.

CPU: 7800x3d
GPU: Gigabyte 4090 Gaming OC
PSU: NZXT 1200 Gold
Mobo: Asrock b650e Taichi
RAM: G.Skill Trident Z5

Minidump https://drive.google.com/file/d/1N2RE9c8Rf7R-s-TTcu_j9pFeMQVpT2le/view?usp=sharing

I do understand that there is a driver issue but which exactly is to blame I have to clue. Before that I had crashes because of bad disk but since I unplugged it all was fine.
No OC applied.
Please help me to find the one who breaks and drags the whole system down.
 
This bugcheck happens when a device fails to respond to a power transition interrupt request in a specified time. In the dump triage analysis we can see the the device object address of the problem device (argument 2) and the address of the IRP (interrupt request packet) that is being held (argument 4)...
Code:
DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: ffff9a05aa98e050, Physical Device Object of the stack
Arg3: fffff807204a5178, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffff9a05ae9b38a0, The blocked IRP
If we examine the blocked IRP first we can see which driver is not completing the power transition interrupt...
Code:
0: kd> !irp ffff9a05ae9b38a0
Irp is active with 6 stacks 3 is current (= 0xffff9a05ae9b3a00)
 No Mdl: No System Buffer: Thread 00000000:  Irp stack trace.
     cmd  flg cl Device   File     Completion-Context
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000  

            Args: 00000000 00000000 00000000 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000  

            Args: 00000000 00000000 00000000 00000000
>[IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05aa98e050 00000000 fffff807274b8510-ffff9a05aeb75730 Success Error Cancel pending
           \Driver\storahci    CLASSPNP!ClasspPowerUpCompletion
            Args: 00000000 00000001 00000001 00000000
 [IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05aeb751f0 00000000 fffff807263bec60-00000000 Success Error Cancel pending
           \Driver\disk    partmgr!PmPowerCompletion
            Args: 00000000 00000001 00000001 00000000
 [IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05ae97d8d0 00000000 fffff807216df040-ffff9a05aeb2a228 Success Error Cancel pending
           \Driver\partmgr    nt!PopRequestCompletion
            Args: 00000000 00000001 00000001 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-ffff9a05aeb2a228  

            Args: 00000000 00000000 00000000 00000000
The driver at the bottom of this chain is the one holding the IRP; it's partmgr.sys - the Windows partition manager. We thus know that the power transition failure is related to a disk drive.

The device object will allow us to identify which disk drive...
Code:
0: kd> !devobj ffff9a05aa98e050
Device object (ffff9a05aa98e050) is for:
 Cannot read info offset from nt!ObpInfoMaskToOffset
 \Driver\storahci DriverObject ffff9a05aa986d30
Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050
SecurityDescriptor ffffe50e73cf41a0 DevExt ffff9a05aa98e1a0 DevObjExt ffff9a05aa98f3a0 DevNode ffff9a05aa9e0c20
ExtensionFlags (0000000000)
Characteristics (0x00000180)  FILE_AUTOGENERATED_DEVICE_NAME, FILE_DEVICE_SECURE_OPEN
AttachedDevice (Upper) ffff9a05aeb751f0 \Driver\disk
Device queue is not busy.
Notice that this output contains the address of the device node (DevNode ffff9a05aa9e0c20) - this will identify the specific device ...
Code:
0: kd> !devnode ffff9a05aa9e0c20
DevNode 0xffff9a05aa9e0c20 for PDO 0xffff9a05aa98e050
  Parent 0xffff9a05aa918460   Sibling 0xffff9a05aa9e4c20   Child 0000000000 
  InstancePath is "SCSI\Disk&Ven_&Prod_ST1000DM003-1ER1\7&1a45e3b3&0&000000"
  ServiceName is "disk"
  State = DeviceNodeStarted (0x30a)
  Previous State = DeviceNodeEnumerateCompletion (0x30f)
  StateHistory[09] = DeviceNodeEnumerateCompletion (0x30f)
  StateHistory[08] = DeviceNodeEnumeratePending (0x30e)
  StateHistory[07] = DeviceNodeStarted (0x30a)
  StateHistory[06] = DeviceNodeStartPostWork (0x309)
  StateHistory[05] = DeviceNodeStartCompletion (0x308)
  StateHistory[04] = DeviceNodeStartPending (0x307)
  StateHistory[03] = DeviceNodeResourcesAssigned (0x306)
  StateHistory[02] = DeviceNodeDriversAdded (0x305)
  StateHistory[01] = DeviceNodeInitialized (0x304)
  StateHistory[00] = DeviceNodeUninitialized (0x301)
  StateHistory[19] = Unknown State (0x0)
  StateHistory[18] = Unknown State (0x0)
  StateHistory[17] = Unknown State (0x0)
  StateHistory[16] = Unknown State (0x0)
  StateHistory[15] = Unknown State (0x0)
  StateHistory[14] = Unknown State (0x0)
  StateHistory[13] = Unknown State (0x0)
  StateHistory[12] = Unknown State (0x0)
  StateHistory[11] = Unknown State (0x0)
  StateHistory[10] = Unknown State (0x0)
  Flags (0x24000130)  DNF_ENUMERATED, DNF_IDS_QUERIED,
                      DNF_NO_RESOURCE_REQUIRED, DNF_NO_LOWER_DEVICE_FILTERS,
                      DNF_NO_UPPER_DEVICE_FILTERS
  CapabilityFlags (0x00002180)  SilentInstall, RawDeviceOK,
                                WakeFromD3
The device failing to complete the power transition is the ST1000DM003-1ER1 device - the Seagate 1TB HDD.

I would suspect this disk controller of failing to power transition properly. TBH I would just replace the drive, but you might want to use CrystalDiskInfo to check the SMART data for the drive.
 
  • Like
Reactions: AshySamurai
This bugcheck happens when a device fails to respond to a power transition interrupt request in a specified time. In the dump triage analysis we can see the the device object address of the problem device (argument 2) and the address of the IRP (interrupt request packet) that is being held (argument 4)...
Code:
DRIVER_POWER_STATE_FAILURE (9f)
A driver has failed to complete a power IRP within a specific time.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: ffff9a05aa98e050, Physical Device Object of the stack
Arg3: fffff807204a5178, nt!TRIAGE_9F_POWER on Win7 and higher, otherwise the Functional Device Object of the stack
Arg4: ffff9a05ae9b38a0, The blocked IRP
If we examine the blocked IRP first we can see which driver is not completing the power transition interrupt...
Code:
0: kd> !irp ffff9a05ae9b38a0
Irp is active with 6 stacks 3 is current (= 0xffff9a05ae9b3a00)
 No Mdl: No System Buffer: Thread 00000000:  Irp stack trace.
     cmd  flg cl Device   File     Completion-Context
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000 

            Args: 00000000 00000000 00000000 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-00000000 

            Args: 00000000 00000000 00000000 00000000
>[IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05aa98e050 00000000 fffff807274b8510-ffff9a05aeb75730 Success Error Cancel pending
           \Driver\storahci    CLASSPNP!ClasspPowerUpCompletion
            Args: 00000000 00000001 00000001 00000000
 [IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05aeb751f0 00000000 fffff807263bec60-00000000 Success Error Cancel pending
           \Driver\disk    partmgr!PmPowerCompletion
            Args: 00000000 00000001 00000001 00000000
 [IRP_MJ_POWER(16), IRP_MN_SET_POWER(2)]
            0 e1 ffff9a05ae97d8d0 00000000 fffff807216df040-ffff9a05aeb2a228 Success Error Cancel pending
           \Driver\partmgr    nt!PopRequestCompletion
            Args: 00000000 00000001 00000001 00000000
 [N/A(0), N/A(0)]
            0  0 00000000 00000000 00000000-ffff9a05aeb2a228 

            Args: 00000000 00000000 00000000 00000000
The driver at the bottom of this chain is the one holding the IRP; it's partmgr.sys - the Windows partition manager. We thus know that the power transition failure is related to a disk drive.

The device object will allow us to identify which disk drive...
Code:
0: kd> !devobj ffff9a05aa98e050
Device object (ffff9a05aa98e050) is for:
 Cannot read info offset from nt!ObpInfoMaskToOffset
 \Driver\storahci DriverObject ffff9a05aa986d30
Current Irp 00000000 RefCount 0 Type 00000007 Flags 00001050
SecurityDescriptor ffffe50e73cf41a0 DevExt ffff9a05aa98e1a0 DevObjExt ffff9a05aa98f3a0 DevNode ffff9a05aa9e0c20
ExtensionFlags (0000000000)
Characteristics (0x00000180)  FILE_AUTOGENERATED_DEVICE_NAME, FILE_DEVICE_SECURE_OPEN
AttachedDevice (Upper) ffff9a05aeb751f0 \Driver\disk
Device queue is not busy.
Notice that this output contains the address of the device node (DevNode ffff9a05aa9e0c20) - this will identify the specific device ...
Code:
0: kd> !devnode ffff9a05aa9e0c20
DevNode 0xffff9a05aa9e0c20 for PDO 0xffff9a05aa98e050
  Parent 0xffff9a05aa918460   Sibling 0xffff9a05aa9e4c20   Child 0000000000
  InstancePath is "SCSI\Disk&Ven_&Prod_ST1000DM003-1ER1\7&1a45e3b3&0&000000"
  ServiceName is "disk"
  State = DeviceNodeStarted (0x30a)
  Previous State = DeviceNodeEnumerateCompletion (0x30f)
  StateHistory[09] = DeviceNodeEnumerateCompletion (0x30f)
  StateHistory[08] = DeviceNodeEnumeratePending (0x30e)
  StateHistory[07] = DeviceNodeStarted (0x30a)
  StateHistory[06] = DeviceNodeStartPostWork (0x309)
  StateHistory[05] = DeviceNodeStartCompletion (0x308)
  StateHistory[04] = DeviceNodeStartPending (0x307)
  StateHistory[03] = DeviceNodeResourcesAssigned (0x306)
  StateHistory[02] = DeviceNodeDriversAdded (0x305)
  StateHistory[01] = DeviceNodeInitialized (0x304)
  StateHistory[00] = DeviceNodeUninitialized (0x301)
  StateHistory[19] = Unknown State (0x0)
  StateHistory[18] = Unknown State (0x0)
  StateHistory[17] = Unknown State (0x0)
  StateHistory[16] = Unknown State (0x0)
  StateHistory[15] = Unknown State (0x0)
  StateHistory[14] = Unknown State (0x0)
  StateHistory[13] = Unknown State (0x0)
  StateHistory[12] = Unknown State (0x0)
  StateHistory[11] = Unknown State (0x0)
  StateHistory[10] = Unknown State (0x0)
  Flags (0x24000130)  DNF_ENUMERATED, DNF_IDS_QUERIED,
                      DNF_NO_RESOURCE_REQUIRED, DNF_NO_LOWER_DEVICE_FILTERS,
                      DNF_NO_UPPER_DEVICE_FILTERS
  CapabilityFlags (0x00002180)  SilentInstall, RawDeviceOK,
                                WakeFromD3
The device failing to complete the power transition is the ST1000DM003-1ER1 device - the Seagate 1TB HDD.

I would suspect this disk controller of failing to power transition properly. TBH I would just replace the drive, but you might want to use CrystalDiskInfo to check the SMART data for the drive.

Thank you very much for that detailed analysis.
Wierldy enough disks failing one by one. Is it normal? Sure those disks from AM3 era and now in AM5 system but is it normal at all or something bigger is broken in the system?
 
Post the SMART data for your storage drives, that will tell you whether they are close to failing. Nothing lasts forever of course and that dump was very conclusive where the problem was.

Sorry for late reply. Report says there is only one uncorrectable sector.
I think one bad sector shouldn't make a whole system crash. Especially if this is not the system disk.

EDIT. The other app showed more bad sectors.
 
Last edited:
The 'Current Pending Sector Count' is the number of sectors that are waiting to be remapped to a spare sector, and that's a key indicator of a failing drive, as is the 'Uncorrectable Sector Count'. which is the number of bad sectors. You can see that the yellow caution is indicated for both these values.

If this were my drive I would replace it without hesitation.