Question DRIVER_POWER_STATE_FAILURE : Lenovo Laptop. Need help identifying faulty driver.

nooblet0

Honorable
Apr 14, 2019
33
1
10,535
Some context. Laptop seems to behave weirdly whenever I connect an external USB storage device.
This ranges from extremely sluggish speeds when navigating Windows explorer to Strange UI glitches.
All of this culminated in a BSOD yesterday night. I had plugged in the drive for some work. Post unplugging explorer started to behave weirdly.
I tried restarting the system and it BSOD's after about 5 mins of getting stuck on the "Restarting" Screen.

Attaching minidump and hoping someone here might help shed some light on what's failing here. Minidump attached.

MINIDUMP
 
From the dump this is a power transition failure for a PnP device (0x9F argument 1 = 4). The call stack leading up to the bugcheck shows that a PnP device was acquired exclusively and then the system waited for the device to become available...
Code:
....
08 ffff9d06`27f52050 fffff806`1013b447     nt!ExpWaitForResource+0x6b
09 ffff9d06`27f520e0 fffff806`10138e7c     nt!ExpAcquireResourceExclusiveLite+0x317
0a ffff9d06`27f52180 fffff806`105600ce     nt!ExAcquireResourceExclusiveLite+0x13c
....
We then see a series of boosts as the system attempts to access the device, eventually these fail and we get the bugcheck. By expanding these function calls we can locate the device node for the problem device, here's one of them...
Rich (BB code):
14: kd> .frame /r a
0a ffff9d06`27f52180 fffff806`105600ce     nt!ExAcquireResourceExclusiveLite+0x13c
rax=0000000000000002 rbx=0000000000000001 rcx=0000000000000000
rdx=ffff8c085f31f040 rsi=0000000000000007 rdi=ffffe587d4836220
rip=fffff80610138e7c rsp=ffff9d0627f52180 rbp=ffff9d0627f52269
 r8=ffff8c087dcf1040  r9=0000000000000000 r10=0000fffff8061008
r11=ffff9d0627f52018 r12=0000000000000000 r13=0000000000000000
r14=ffff9d0627f52330 r15=ffff8c0870dec760
iopl=0         nv up ei pl nz na pe nc
cs=0010  ss=0018  ds=0000  es=0000  fs=0000  gs=0000             efl=00040202
nt!ExAcquireResourceExclusiveLite+0x13c:
fffff806`10138e7c 4883c430        add     rsp,30h
The address of the device node in question is in register 15 (R15), so displaying that device node we get...
Rich (BB code):
14: kd> !devnode ffff8c0870dec760
DevNode 0xffff8c0870dec760 for PDO 0xffff8c0873d88bb0
  Parent 0xffff8c086923cbb0   Sibling 0000000000   Child 0xffff8c08847ae5e0
  InterfaceType 0  Bus Number 0
InstancePath is "USB\VID_0BC2&PID_231A\MSFT30NAC2QM68"
  ServiceName is "UASPStor"
  State = Unknown State (0x0)
  Previous State = Unknown State (0x0)
  Flags (0000000000)
The hardware ID of USB\VID_0BC2&PID_231A in the device node identifies the actual device. You can look these up and you'll see that the problem device is a Seagate USB attached drive. This is confirmation of you suspicions about that drive. I would look to replace the drive if that were mine.
 
  • Like
Reactions: nooblet0
From the dump this is a power transition failure for a PnP device (0x9F argument 1 = 4). The call stack leading up to the bugcheck shows that a PnP device was acquired exclusively and then the system waited for the device to become available...
Code:
....
08 ffff9d06`27f52050 fffff806`1013b447     nt!ExpWaitForResource+0x6b
09 ffff9d06`27f520e0 fffff806`10138e7c     nt!ExpAcquireResourceExclusiveLite+0x317
0a ffff9d06`27f52180 fffff806`105600ce     nt!ExAcquireResourceExclusiveLite+0x13c
....
We then see a series of boosts as the system attempts to access the device, eventually these fail and we get the bugcheck. By expanding these function calls we can locate the device node for the problem device, here's one of them...
Rich (BB code):
14: kd> .frame /r a
0a ffff9d06`27f52180 fffff806`105600ce     nt!ExAcquireResourceExclusiveLite+0x13c
rax=0000000000000002 rbx=0000000000000001 rcx=0000000000000000
rdx=ffff8c085f31f040 rsi=0000000000000007 rdi=ffffe587d4836220
rip=fffff80610138e7c rsp=ffff9d0627f52180 rbp=ffff9d0627f52269
 r8=ffff8c087dcf1040  r9=0000000000000000 r10=0000fffff8061008
r11=ffff9d0627f52018 r12=0000000000000000 r13=0000000000000000
r14=ffff9d0627f52330 r15=ffff8c0870dec760
iopl=0         nv up ei pl nz na pe nc
cs=0010  ss=0018  ds=0000  es=0000  fs=0000  gs=0000             efl=00040202
nt!ExAcquireResourceExclusiveLite+0x13c:
fffff806`10138e7c 4883c430        add     rsp,30h
The address of the device node in question is in register 15 (R15), so displaying that device node we get...
Rich (BB code):
14: kd> !devnode ffff8c0870dec760
DevNode 0xffff8c0870dec760 for PDO 0xffff8c0873d88bb0
  Parent 0xffff8c086923cbb0   Sibling 0000000000   Child 0xffff8c08847ae5e0
  InterfaceType 0  Bus Number 0
InstancePath is "USB\VID_0BC2&PID_231A\MSFT30NAC2QM68"
  ServiceName is "UASPStor"
  State = Unknown State (0x0)
  Previous State = Unknown State (0x0)
  Flags (0000000000)
The hardware ID of USB\VID_0BC2&PID_231A in the device node identifies the actual device. You can look these up and you'll see that the problem device is a Seagate USB attached drive. This is confirmation of you suspicions about that drive. I would look to replace the drive if that were mine.
Cheers. Really appreciate the breakdown.
Was confused whether it was the USB port or the drive itself.
 
you should also update the laptop bios, and chipset drivers to the current version. (and any external usb drivers)
Some usb devices might also need a firmware update or driver update.
you might also disable sleep mode for the usb port. Or use a usb port that is supported directly by the CPU.
ie try one of the slower ports to see if it works.

good chance it is the drive but I have seen way too many cases where you get the same issue due to other bugs.
even simple bios settings like the usb port going to sleep and not responding to a wake up signal.
(turn off the sleep functions in bios or in windows to test)