Quantcast
Channel: Windows 7 Miscellaneous forum
Viewing all articles
Browse latest Browse all 11372

Need idea about Possible causes for DRIVER_POWER_STATE_FAILURE 0x0000009f

$
0
0

Hi MSFT Team,

I need your help in understanding when such issues happens with drivers?

I am writing a driver for Windows Phone and getting this error DRIVER_POWER_STATE_FAILURE 0x0000009F while shutdown for my driver. This is happening not on our internal FFUs but on production phones.

When i tried to debug this issue over windbg, the irp packet indicates its to my driver. But, when i see Wdflogdump output for my driver, the irp packet doesnt showup in my driver output.

Even i dont see any pending irps in my device queue.

0: kd> !irp 0x84776678
Irp is active with 3 stacks 2 is current (= 0x84776710)
 No Mdl: No System Buffer: Thread 00000000:  Irp stack trace.  
     cmd  flg cl Device   File     Completion-Context
 [  0, 0]   0  0 00000000 00000000 00000000-00000000    
            Args: 00000000 00000000 00000000 00000000
>[ 16, 3]   0 e1 842ac5e8 00000000 80e64261-857dec58 Success Error Cancel pending
           \Driver\my_driver    nt!PopSystemIrpCompletion
            Args: 00016600 00000000 00000006 00000005
 [  0, 0]   0  0 00000000 00000000 00000000-857dec58    
            Args: 00000000 00000000 00000000 00000000

0: kd> !devobj 842ac5e8
Device object (842ac5e8) is for:
 my_driver \Driver\my_driver DriverObject 842af8f8
Current Irp 00000000 RefCount 1 Type 00000022 Flags 00002044
Dacl 81484de8 DevExt 842af310 DevObjExt 842ac6c0
ExtensionFlags (0000000000)  
Characteristics (0x00000100)  FILE_DEVICE_SECURE_OPEN
AttachedTo (Lower) 83a90378 \Driver\ACPI
Device queue is not busy.

0: kd> !podev 842ac5e8
Device object is for:
  DriverObject 842af8f8
Current Irp 00000000 RefCount 1 Type 00000022 DevFlags 00002044  DO_POWER_PAGABLE
Device queue is not busy.
Device Object Extension: 842ac6c0:
PowerFlags: 00000010 =>SystemState=0 DeviceState=1
Dope: 00000000:

My driver doesnt do any power irps handling and expects framework to do.

One more thing to note is, there is another thread that my driver starts which will wait for events. But that is not main thread which processes irp packets. Its a seperate thread. Therefore, not sure if this thread blocks the processing of power irps.

I am not able to understand why the power-state-failure error is occuring for my driver? I tried over internet but couldnt find in what cases such things happen, though i see people saying to update the error driver. But for my case its my driver and thus i need to fix it.

Kindly let me know in what cases/scenarios power irps gets blocked? Why power irps get blocked due to our driver. I would appreciate if you can provide me as much elaborate scenarios as possible.

Regards



Viewing all articles
Browse latest Browse all 11372

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>