Hello evbd,
 
 
 
I'd recently migrated from 
windows 7 beta to 
windows 7 rtm. Since I migrated I got some blue screen crashes. I'm not a specialist but, unfortunaly I had not get one solution, with the help online after the crash. Then I tried to investigate what happened and I got the follow data about dump file:
 
 
 
DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 0000000000000003, A device object has been blocking an Irp for too long a time
Arg2: fffffa8002c53680, Physical Device Object of the stack
Arg3: fffff80000b9c5a8, Functional Device Object of the stack
Arg4: fffffa800384fbc0, The blocked IRP
 
Debugging Details:
------------------
 
DRVPOWERSTATE_SUBCODE:  3
 
IRP_ADDRESS:  fffffa800384fbc0
 
DEVICE_OBJECT: fffffa8002c53680
 
DRIVER_OBJECT: fffffa8002bc6630
 
IMAGE_NAME:  atapi.sys
 
DEBUG_FLR_IMAGE_TIMESTAMP:  49ee8da6
 
MODULE_NAME: atapi
 
FAULTING_MODULE: fffff88000eb1000 atapi
 
DEFAULT_BUCKET_ID:  VISTA_DRIVER_FAULT
 
BUGCHECK_STR:  0x9F
 
PROCESS_NAME:  System
 
CURRENT_IRQL:  2
 
LAST_CONTROL_TRANSFER:  from fffff800032931c0 to fffff800032e1f80
 
STACK_TEXT:  
fffff800`00b9c558 fffff800`032931c0 : 00000000`0000009f 00000000`00000003 fffffa80`02c53680 fffff800`00b9c5a8 : nt,
Office 2007!KeBugCheckEx
fffff800`00b9c560 fffff800`03311906 : 00000000`01ca2119 00000000`00000001 fffff800`03449e00 fffff800`00b9c680 : nt!PopCheckIrpWatchdog+0x1b0
fffff800`00b9c5f0 fffff800`032e4b67 : fffff800`03449e80 fffff800`0347f740 00000000`00000001 fffff800`03449e80 : nt!KiProcessTimerDpcTable+0x86
fffff800`00b9c660 fffff800`032e49e2 : 00000373`9a3e8a3f 00000000`01733388 fffff800`0344d380 00000000`00000002 : nt!KiProces######piredTimerList+0x137
fffff800`00b9ccb0 fffff800`032e46cf : 00000000`000000c1 fffff800`0344d388 00000000`00000088 00000000`00000002 : nt!KiTimerExpiration+0x272
fffff800`00b9cd50 fffff800`032d941a : fffff800`03449e80 00000000`00000002 fffff800`03457c40 fffffa80`04f64060 : nt!KiRetireDpcList+0xc9
fffff800`00b9cd80 00000000`00000000 : fffff800`00b9d000 fffff800`00b97000 fffff800`00b9cd40 00000000`00000000 : nt!KiIdleLoop+0x5a
 
STACK_COMMAND:  kb
 
FOLLOWUP_NAME:  MachineOwner
 
FAILURE_BUCKET_ID:  X64_0x9F_IMAGE_atapi.sys
 
BUCKET_ID:  X64_0x9F_IMAGE_atapi.sys
 
Followup: MachineOwner
 
 
 
After I started investigate the device object and the device driver, I found one power failure on my cd rom drive:
 
Device object detail:
 
 
 
Device object (fffffa8002c53680) is for:
 IdeDeviceP3T0L0-5 \Driver\atapi DriverObject fffffa8002bc6630
Current Irp 00000000 RefCount 0 Type 00000002 Flags 00005050
Dacl fffff9a1008197a0 DevExt fffffa8002c537d0 DevObjExt fffffa8002c53f90 Dope fffffa80037ee810 DevNode fffffa8002c6ad90 
ExtensionFlags (0x00000800)  
                             Unknown flags 0x00000800
AttachedDevice (Upper) fffffa800366a710 \Driver\cdrom
 
 
 
Driver object detail:
 
 
 
Driver object (fffffa8002bc6630) is for:
 \Driver\atapi
Driver Extension List: (id , addr)
(fffff88000c8c008 fffffa8002bac230)  
Device Object list:
fffffa8002c53680  fffffa8002c36060  fffffa8002c10050  fffffa8002c06050
fffffa8002bfc050  fffffa8002bf2050  fffffa8002be8050  fffffa8002be0050
fffffa800214f050  fffffa800213b050  
 
DriverEntry:   fffff88000eb8064 atapi!GsDriverEntry
DriverStartIo: 00000000 
DriverUnload:  fffff88000c84514 ataport!IdePortUnload
AddDevice:     fffff88000c86458 ataport!ChannelAddDevice
 
Dispatch routines:
[00] IRP_MJ_CREATE                      fffff88000c897f0 ataport!PortWdmAlwaysStatusSuccessIrp
[01] IRP_MJ_CREATE_NAMED_PIPE           fffff800032a3b10 nt!IopInvalidDeviceRequest
[02] IRP_MJ_CLOSE                       fffff88000c897f0 ataport!PortWdmAlwaysStatusSuccessIrp
[03] IRP_MJ_READ                        fffff800032a3b10 nt!IopInvalidDeviceRequest
[04] IRP_MJ_WRITE                       fffff800032a3b10 nt!IopInvalidDeviceRequest
[05] IRP_MJ_QUERY_INFORMATION           fffff800032a3b10 nt!IopInvalidDeviceRequest
[06] IRP_MJ_SET_INFORMATION             fffff800032a3b10 nt!IopInvalidDeviceRequest
[07] IRP_MJ_QUERY_EA                    fffff800032a3b10 nt!IopInvalidDeviceRequest
[08] IRP_MJ_SET_EA                      fffff800032a3b10 nt!IopInvalidDeviceRequest
[09] IRP_MJ_FLUSH_BUFFERS               fffff800032a3b10 nt!IopInvalidDeviceRequest
[0a] IRP_MJ_QUERY_VOLUME_INFORMATION    fffff800032a3b10 nt!IopInvalidDeviceRequest
[0b] IRP_MJ_SET_VOLUME_INFORMATION      fffff800032a3b10 nt!IopInvalidDeviceRequest
[0c] IRP_MJ_DIRECTORY_CONTROL           fffff800032a3b10 nt!IopInvalidDeviceRequest
[0d] IRP_MJ_FILE_SYSTEM_CONTROL         fffff800032a3b10 nt!IopInvalidDeviceRequest
[0e] IRP_MJ_DEVICE_CONTROL              fffff88000c6f500 ataport,
Microsoft Office Professional Plus 2007!IdePortDispatchDeviceControl
[0f] IRP_MJ_INTERNAL_DEVICE_CONTROL     fffff88000c6f4d8 ataport!IdePortDispatch
[10] IRP_MJ_SHUTDOWN                    fffff800032a3b10 nt!IopInvalidDeviceRequest
[11] IRP_MJ_LOCK_CONTROL                fffff800032a3b10 nt!IopInvalidDeviceRequest
[12] IRP_MJ_CLEANUP                     fffff800032a3b10 nt!IopInvalidDeviceRequest
[13] IRP_MJ_CREATE_MAILSLOT             fffff800032a3b10 nt!IopInvalidDeviceRequest
[14] IRP_MJ_QUERY_SECURITY              fffff800032a3b10 nt!IopInvalidDeviceRequest
[15] IRP_MJ_SET_SECURITY                fffff800032a3b10 nt!IopInvalidDeviceRequest
[16] IRP_MJ_POWER                       fffff88000c6f528 ataport!IdePortDispatchPower
[17] IRP_MJ_SYSTEM_CONTROL              fffff88000c844e0 ataport!IdePortDispatchSystemControl
[18] IRP_MJ_DEVICE_CHANGE               fffff800032a3b10 nt,
Windows 7 Enterprise Key!IopInvalidDeviceRequest
[19] IRP_MJ_QUERY_QUOTA                 fffff800032a3b10 nt!IopInvalidDeviceRequest
[1a] IRP_MJ_SET_QUOTA                   fffff800032a3b10 nt,
Microsoft Office 2010 Professional!IopInvalidDeviceRequest
[1b] IRP_MJ_PNP                         fffff88000c844ac ataport!IdePortDispatchPnp
 
 
 
 
 
 0: kd> lmvm cdrom
start             end                 module name
fffff880`018d4000 fffff880`018fe000   cdrom      (pdb symbols)          c:\symbols\cdrom.pdb\AE95F7BF66DB4CC4BA33FE7F201C7  4CF1\cdrom.pdb
    Loaded symbol image file: cdrom.sys
    Image path: \SystemRoot\system32\DRIVERS\cdrom.sys
    Image name: cdrom.sys
    Timestamp:        Thu Apr 30 22:36:05 2009 (49FA5205)
    CheckSum:         00028DA6
    ImageSize:        0002A000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4
 
0: kd> lmvm atapi
start             end                 module name
fffff880`00eb1000 fffff880`00eba000   atapi      (pdb symbols)          c:\symbols\atapi.pdb\81C4096B1A354E8080C3035F1963C  EFB1\atapi.pdb
    Loaded symbol image file: atapi.sys
    Image path: \SystemRoot\system32\DRIVERS\atapi.sys
    Image name: atapi.sys
    Timestamp:        Wed Apr 22 00:23:18 2009 (49EE8DA6)
    CheckSum:         0000E4B9
    ImageSize:        00009000
    Translations:     0000.04b0 0000.04e4 0409.04b0 0409.04e4
 
The error is on cdrom or simulated scsi?
 
 
 
**** DUMP OF ALL RESOURCE OBJECTS ****
KD: Scanning for held locks..
 
Resource @ nt!IopDeviceTreeLock (0xfffff800034d3540)    Shared 1 owning threads
    Contention Count = 326
     Threads: fffffa80021e1040-01<*> 
KD: Scanning for held locks.
 
Resource @ nt!PiEngineLock (0xfffff800034d3440)    Exclusively owned
    Contention Count = 27390
     Threads: fffffa80021e1040-01<*> 
KD: Scanning for held locks.....................................
13294 total locks, 2 locks currently held
 
 
 
Capturing the thread details i got it:
 
 
 
!thread fffffa80021e1040
THREAD fffffa80021e1040  Cid 0004.0030  Teb: 0000000000000000 Win32Thread: 0000000000000000 WAIT: (Executive) KernelMode Non-Alertable
    fffff800034d3228  Semaphore Limit 0x7fffffff
Not impersonating
DeviceMap                 fffff8a000008ca0
Owning Process            fffffa80021cc040       Image:         System
Attached Process          N/A            Image:         N/A
Wait Start TickCount      24284339       Ticks: 42709 (0:00:11:06.264)
Context Switch Count      1361358  NoStackSwap
UserTime                  00:00:00.000
KernelTime                00:01:36.798
Win32 Start Address nt!ExpWorkerThread (0xfffff800032e7630)
Stack Init fffff88002fb9db0 Current fffff88002fb9620
Base fffff88002fba000 Limit fffff88002fb4000 Call 0
Priority 12 BasePriority 12 UnusualBoost 0 ForegroundBoost 0 IoPriority 2 PagePriority 5
Child-SP          RetAddr           : Args to Child                                                           : Call Site
fffff880`02fb9660 fffff800`032e96f9 : 00000000`00000000 fffffa80`021e1040 00000000`00000000 00000000`00000000 : nt!KiSwapContext+0x7a
fffff880`02fb97a0 fffff800`032e90cf : fffff880`02fb9c10 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiCommitThreadWait+0x1b9
fffff880`02fb9830 fffff800`03391be5 : 00000000`00000000 00000000`00000000 00000000`00000000 fffff800`03531600 : nt!KeWaitForSingleObject+0x19f
fffff880`02fb98d0 fffff800`0367429e : fffff800`034d3200 fffff880`02fb99a4 00000000`00000000 00000000`00000001 : nt!PnpDeviceCompletionQueueGetCompletedRequest+0x3  5
fffff880`02fb9920 fffff800`036ca6b8 : fffffa80`021f4900 fffffa80`021f4900 00000000`00000002 00000000`00000000 : nt,
Windows 7 Activation!PnpDeviceCompletionProcessCompletedRequests+0x5e
fffff880`02fb9950 fffff800`036cab68 : 00000000`00000000 fffff800`033d2ad0 fffff880`009ece00 00000000`00000001 : nt!PipProcessDevNodeTree+0x378
fffff880`02fb9bc0 fffff800`033d2df7 : 00000001`00000003 00000000`00000000 00000000`00000001 fffff800`00000084 : nt!PiProcessReenumeration+0x98
fffff880`02fb9c10 fffff800`032e7744 : fffff800`034d0dc0 fffffa80`081e5401 fffffa80`06e54800 fffffa80`021e1040 : nt!PnpDeviceActionWorker+0x327
fffff880`02fb9cb0 fffff800`03567e66 : 00000000`00000000 00000000`00000001 fffffa80`021e1040 00000000`00000000 : nt!ExpWorkerThread+0x11a
fffff880`02fb9d40 fffff800`03294a86 : fffff880`009e8180 fffffa80`021e1040 fffffa80`021e2680 00000000`00000000 : nt!PspSystemThreadStartup+0x5a
fffff880`02fb9d80 00000000`00000000 : fffff880`02fba000 fffff880`02fb4000 fffff880`08a85400 00000000`00000000 : nt!KxStartSystemThread+0x16
 
 
 
Analyzing the irp blocked:
 
 
 
!irp fffffa80`0384fbc0
Irp is active with 4 stacks 2 is current (= 0xfffffa800384fcd8)
 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, 2]   0 e1 fffffa8002c53680 00000000 fffff800032ba180-fffffa80052c9980 Success Error Cancel pending
        \Driver\atapi nt!IopUnloadSafeCompletion
   Args: 00000000 00000001 00000001 00000000
 [ 16, 2]   0 e1 fffffa800366a710 00000000 fffff800032ba180-fffffa800236d280 Success Error Cancel pending
        \Driver\cdrom nt!IopUnloadSafeCompletion
   Args: 00000000 00000001 00000001 00000000
 [  0, 0]   0  0 00000000 00000000 00000000-fffffa8008951980    
 
   Args: 00000000 00000000 00000000 00000000
 
 
 
Ok, the I bielive that when atapi.sys figures out that the hardware is not actually present in the system it gives the stop error... 
 
The last change on my computer was about 13 hours, when I change the power option from high performance to medium performance.
 
 
 
Can anyone help me with this? thanks