9f dump on vista sp1 help required


0: kd> !analyze -v
*******************************************************************************
*
*
* Bugcheck
Analysis *
*
*
*******************************************************************************

DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 00000003, A device object has been blocking an Irp for too long a time
Arg2: 848c0480, Physical Device Object of the stack
Arg3: 84e27380, Functional Device Object of the stack
Arg4: 844d0458, The blocked IRP

Debugging Details:

*** ERROR: Module load completed but symbols could not be loaded for
<my_driver>.sys

DRVPOWERSTATE_SUBCODE: 3

DEVICE_OBJECT: 84e27380

DRIVER_OBJECT: 84aeb128

IMAGE_NAME: <my_driver>.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4a003415

MODULE_NAME: <my_driver>

FAULTING_MODULE: 8f528000 <my_driver>

DEFAULT_BUCKET_ID: VISTA_RC

BUGCHECK_STR: 0x9F

PROCESS_NAME: System

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from 81a51b8c to 81aeb1b5

STACK_TEXT:
81b13acc 81a51b8c 0000009f 00000003 848c0480 nt!KeBugCheckEx+0x1e
81b13b28 81a516dc 81b13ba0 81b13c50 803d3001 nt!PopCheckIrpWatchdog+0x1ad
81b13b68 81ad4ca0 81b2c4e0 00000000 0158f5c0 nt!PopCheckForIdleness+0x343
81b13c88 81ad4860 81b13cd0 85c02b02 81b13cd8 nt!KiTimerListExpire+0x367
81b13ce8 81ad4423 00000000 00000000 000277db nt!KiTimerExpiration+0x22a
81b13d50 81ad2f5d 00000000 0000000e 00000000 nt!KiRetireDpcList+0xba
81b13d54 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x49

STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

FAILURE_BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

Followup: MachineOwner
---------

0: kd> !drvobj ffffffff84aeb128 f
Driver object (84aeb128) is for:
\Driver<my_driver>
Driver Extension List: (id , addr)
(4e4d4944 84dc0010)
Device Object list:
Device object (849e5608) is for:
\Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000012 Flags 00000044
Dacl 8804d3cc DevExt 849e56c0 DevObjExt 849e57b0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
Device queue is not busy.

Device object (84e27380) is for:
NDMP9 \Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000017 Flags 00002050
Dacl 8646d2c0 DevExt 84e27438 DevObjExt 84e27fc0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
AttachedTo (Lower) 848c0480 \Driver\sdbus
Device queue is not busy.

DriverEntry: 8f57a005 <my_driver>
DriverStartIo: 00000000
DriverUnload: 8595dfaa ndis!ndisMUnloadEx

Dispatch routines:
[00] IRP_MJ_CREATE 8587c4e0 ndis!ndisCreateIrpHandler
[01] IRP_MJ_CREATE_NAMED_PIPE 8594978c ndis!ndisDummyIrpHandler
[02] IRP_MJ_CLOSE 8587c830 ndis!ndisCloseIrpHandler
[03] IRP_MJ_READ 8594978c ndis!ndisDummyIrpHandler
[04] IRP_MJ_WRITE 8594978c ndis!ndisDummyIrpHandler
[05] IRP_MJ_QUERY_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[06] IRP_MJ_SET_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[07] IRP_MJ_QUERY_EA 8594978c ndis!ndisDummyIrpHandler
[08] IRP_MJ_SET_EA 8594978c ndis!ndisDummyIrpHandler
[09] IRP_MJ_FLUSH_BUFFERS 8594978c ndis!ndisDummyIrpHandler
[0a] IRP_MJ_QUERY_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0b] IRP_MJ_SET_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0c] IRP_MJ_DIRECTORY_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0d] IRP_MJ_FILE_SYSTEM_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0e] IRP_MJ_DEVICE_CONTROL
85949854 ndis!ndisDeviceControlIrpHandler
[0f] IRP_MJ_INTERNAL_DEVICE_CONTROL 8594978c ndis!ndisDummyIrpHandler
[10] IRP_MJ_SHUTDOWN 8594978c ndis!ndisDummyIrpHandler
[11] IRP_MJ_LOCK_CONTROL 8594978c ndis!ndisDummyIrpHandler
[12] IRP_MJ_CLEANUP 8594978c ndis!ndisDummyIrpHandler
[13] IRP_MJ_CREATE_MAILSLOT 8594978c ndis!ndisDummyIrpHandler
[14] IRP_MJ_QUERY_SECURITY 8594978c ndis!ndisDummyIrpHandler
[15] IRP_MJ_SET_SECURITY 8594978c ndis!ndisDummyIrpHandler
[16] IRP_MJ_POWER 85961e1f ndis!ndisPowerDispatch
[17] IRP_MJ_SYSTEM_CONTROL 8594c172 ndis!ndisWMIDispatch
[18] IRP_MJ_DEVICE_CHANGE 8594978c ndis!ndisDummyIrpHandler
[19] IRP_MJ_QUERY_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1a] IRP_MJ_SET_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1b] IRP_MJ_PNP 8594eef1 ndis!ndisPnPDispatch

0: kd> !irp 844d0458
Irp is active with 3 stacks 2 is current (= 0x844d04ec)
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 84e27380 00000000 81cf6f23-84eef938 Success Error Cancel
pending
\Driver<my_driver> nt!PopSystemIrpCompletion
Args: 00015400 00000000 00000005 00000003
[0, 0] 0 0 00000000 00000000 00000000-84eef938

Args: 00000000 00000000 00000000 00000000
0: kd> !poaction
PopAction: 81b1ead8
State…: 3 - Set System State
Updates…: 0
Action…: Sleep
Lightest State.: Sleeping3
Flags…: 80000004 OverrideApps|Critical
Irp minor…: QueryPower
System State…: Sleeping3
Hiber Context…: 00000000

Allocated power irps (PopIrpList - 81b2bfa0)

Irp worker threads (PopIrpThreadList - 81b2ba50)

PopAction.DevState 84a97d28
Irp minor…: QueryPower
System State…: Hibernate
Worker thread…: 82f6e828
Status…: 0
Waking…: FALSE
Cancelled…: FALSE
Ignore errors…: FALSE
Ignore not imp.: FALSE

Order:
Level 7 (84a97e68) 0/15 Paged, Root-Enum
ReadyS0:
82f2860c: 00000000 \Driver\Compbatt \Device\CompositeBattery
82f3199c: 00000000 \Driver\kbdclass \Device\KeyboardClass1
82f274e4: 00000000 \Driver\tunnel \Device\NDMP1
82f3170c: 00000000 \Driver\mouclass \Device\PointerClass1
82f3147c: 00000000 \Driver\swenum
82f30d8c: 00000000 \Driver\NdisWan \Device\NDMP3
82f3001c: 00000000 \Driver\Rasl2tp \Device\NDMP2
82f30ac4: 00000000 \Driver\NdisWan \Device\NDMP4
82f307fc: 00000000 \Driver\NdisWan \Device\NDMP5
82f3052c: 00000000 \Driver\RasPppoe \Device\NDMP6
82f3025c: 00000000 \Driver\PptpMiniport \Device\NDMP7
82f31ebc: 00000000 \Driver\RasSstp \Device\NDMP8
82f32ebc: 00000000 \Driver\umbus
WaitS0:
84f1db14: 00000000 \Driver\umbus
83c81344: 00000000 \Driver\umbus
Level 5 (84a97e18) 1/26 Paged, PnP
ReadyS0:
82f3ee0c: 00000000 \Driver\intelppm
82f3eb34: 00000000 \Driver\intelppm
84b25ebc: 00000000 \Driver\monitor
84b2253c: 00000000 \Driver\usbhub \Device\00000054
848e1124: 00000000 \Driver\usbhub \Device\00000055
898b601c: 00000000 \Driver\usbhub \Device\00000056
83cbcb3c: 00000000 \Driver\HDAudBus
83cbdebc: 00000000 \Driver\msisadrv
WaitS0:
83cce754: 00000000 \Driver\necbatt \Device\fcfltr0
849049dc: 00000000 \Driver\IntcAzAudAddService \Device\00000059
83cbf6a4: 00000000 \Driver\ACPI \Device\00000044
83cbf544: 00000000 \Driver\ACPI \Device\00000045
83cbf3e4: 00000000 \Driver\ACPI \Device\00000046
83cbf284: 00000000 \Driver\kbdclass \Device\KeyboardClass0
83cc201c: 00000000 \Driver\mouclass \Device\PointerClass0
83cc2ebc: 00000000 \Driver\ACPI \Device\00000049
83cc2d5c: 00000000 \Driver\ACPI \Device\0000004a
83cc2bfc: 00000000 \Driver\ACPI \Device\0000004b
83cc2a9c: 00000000 \Driver\ACPI \Device\0000004c
83cc293c: 00000000 \Driver\ACPI \Device\0000004d
83cc27dc: 00000000 \Driver\ACPI \Device\0000004e
83cc267c: 00000000 \Driver\ACPI \Device\0000004f
83cc251c: 00000000 \Driver\ACPI \Device\00000050
83cc23bc: 00000000 \Driver\OddUtldr \Device\OddUtilDriver
83cc225c: 00000000 \Driver\ACPI \Device\00000052
Level 4 (84a97df0) 1/1 Paged, PnP, Video
ReadySleep:
83cbcc9c: 00000000 \Driver\igd
Level 3 (84a97dc8) 51/51 Non-Paged, Root-Enum
WaitSleep:
82f32c2c: 00000000 \Driver\volmgr \Device\VolMgrControl
847340fc: 00000000 \Driver\volsnap
ReadySleep:
82f29ebc: 00000000 \Driver\iScsiPrt \Device\RaidPort0
82f29c2c: 00000000 \Driver\PnpManager \Device\00000005
82f2999c: 00000000 \Driver\PnpManager \Device\00000006
82f2970c: 00000000 \Driver\PnpManager \Device\00000007
82f2947c: 00000000 \Driver\PnpManager \Device\00000008
82f291ec: 00000000 \Driver\PnpManager \Device\00000009
82f2aebc: 00000000 \Driver\PnpManager \Device\0000000a
82f2ac2c: 00000000 \Driver\PnpManager \Device\0000000b
82f2a99c: 00000000 \Driver\PnpManager \Device\0000000c
82f2a70c: 00000000 \Driver\PnpManager \Device\0000000d
82f2a47c: 00000000 \Driver\PnpManager \Device\0000000e
82f2a1ec: 00000000 \Driver\PnpManager \Device\0000000f
82f2bebc: 00000000 \Driver\PnpManager \Device\00000010
82f2bc2c: 00000000 \Driver\PnpManager \Device\00000011
82f2b954: 00000000 \Driver\PnpManager \Device\00000012
82f2b68c: 00000000 \Driver\PnpManager \Device\00000013
82f2b3bc: 00000000 \Driver\PnpManager \Device\00000014
82f2c01c: 00000000 \Driver\PnpManager \Device\00000015
82f2cd8c: 00000000 \Driver\PnpManager \Device\00000016
82f2cafc: 00000000 \Driver\PnpManager \Device\00000017
82f2c86c: 00000000 \Driver\PnpManager \Device\00000018
82f2c5dc: 00000000 \Driver\PnpManager \Device\00000019
82f2c314: 00000000 \Driver\PnpManager \Device\0000001a
82f2d01c: 00000000 \Driver\PnpManager \Device\0000001b
82f2dd54: 00000000 \Driver\PnpManager \Device\0000001c
82f2da84: 00000000 \Driver\PnpManager \Device\0000001d
82f2d7bc: 00000000 \Driver\PnpManager \Device\0000001e
82f2d4f4: 00000000 \Driver\PnpManager \Device\0000001f
82f2d22c: 00000000 \Driver\PnpManager \Device\00000020
82f2eebc: 00000000 \Driver\PnpManager \Device\00000021
82f2ec2c: 00000000 \Driver\PnpManager \Device\00000022
82f2e99c: 00000000 \Driver\PnpManager \Device\00000023
82f2e6cc: 00000000 \Driver\PnpManager \Device\00000024
82f2e404: 00000000 \Driver\PnpManager \Device\00000025
82f2f01c: 00000000 \Driver\PnpManager \Device\00000026
82f2fd8c: 00000000 \Driver\PnpManager \Device\00000027
82f2fafc: 00000000 \Driver\PnpManager \Device\00000028
82f2f86c: 00000000 \Driver\PnpManager \Device\00000029
82f2f5dc: 00000000 \Driver\PnpManager \Device\0000002a
82f2f34c: 00000000 \Driver\PnpManager \Device\0000002b
82f31c2c: 00000000 \Driver\rdpdr \Device\RdpDrDvMgr
82f311ec: 00000000 \Driver\mssmbios
848c7b24: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy1
84bd591c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy2
848c701c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy3
848c792c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy4
848c7ebc: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy5
846310ec: 00000000 \Driver\volsnap
84631e54: 00000000 \Driver\volsnap
Level 1 (84a97d78) 26/26 Non-Paged, PnP
WaitSleep:
83cbc9dc: 00000000 \Driver\pci
83cbec5c: 00000000 \Driver\atapi \Device\Ide\IdePort0
83ccd72c: 00000000 \Driver\pciide \Device\Ide\PciIde1
83cbc87c: 00000000 \Driver\pci
83cbc19c: 00000000 \Driver\sdbus
83cbdd5c: 00000000 \Driver\pciide \Device\Ide\PciIde0
82f43e14: 00000000 \Driver\pci
83c9b3ec: 00000000 \Driver\ACPI
82f2889c: 00000000 \Driver\ACPI_HAL
ReadySleep:
83cbcdfc: 00000000 \Driver\pci \Device\NTPNP_PCI0000
83ccc8e4: 00000000 \Driver\ACPI
83ce1514: 00000000 \Driver\partmgr
83cda604: 00000000 \Driver\atapi \Device\Ide\IdePort1
83cbc2fc: 00000000 \Driver\sdbus
83cbd01c: 00000000 \Driver\sdbus
83cda4a4: 00000000 \Driver\atapi \Device\Ide\IdePort2
83cda344: 00000000 \Driver\atapi \Device\Ide\IdePort3
83cbdbfc: 00000000 \Driver\ACPI \Device\00000041
83cbda9c: 00000000 \Driver\ACPI \Device\00000042
83cbd93c: 00000000 \Driver\ACPI \Device\00000043
82f3e85c: 00000000 \Driver\ACPI \Device\0000003e
82f3e6fc: 00000000 \Driver\ACPI \Device\0000003f
82f3e59c: 00000000 \Driver\ACPI \Device\00000040
83cbc71c: 00000000 \Driver\usbuhci \Device\USBFDO-0
83cbc5bc: 00000000 \Driver\usbuhci \Device\USBFDO-1
83cbc45c: 00000000 \Driver\usbehci \Device\USBFDO-2

0: kd> !poreqlist
All active Power Irps from PoRequestPowerIrp
PopReqestedPowerIrpList
FieldOffset = 00000004
please suggest how to go about further to find out why my_driver is holding
the power irp.
my_driver is a ndis sdio driver.</my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver>

Look at the output of
!stacks 2

And see if there any threads stuck where ndis is in the stack. You can see this type of stuck irp when the upper level bound protocols do not stop/flush/power down properly

d

Sent from my phone with no t9, all spilling mistakes are not intentional.


From: joyjit mullick
Sent: Tuesday, May 12, 2009 2:24 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] 9f dump on vista sp1 help required


0: kd> !analyze -v


Bugcheck Analysis



DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 00000003, A device object has been blocking an Irp for too long a time
Arg2: 848c0480, Physical Device Object of the stack
Arg3: 84e27380, Functional Device Object of the stack
Arg4: 844d0458, The blocked IRP

Debugging Details:
------------------

*** ERROR: Module load completed but symbols could not be loaded for <my_driver>.sys

DRVPOWERSTATE_SUBCODE: 3

DEVICE_OBJECT: 84e27380

DRIVER_OBJECT: 84aeb128

IMAGE_NAME: <my_driver>.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4a003415

MODULE_NAME: <my_driver>

FAULTING_MODULE: 8f528000 <my_driver>

DEFAULT_BUCKET_ID: VISTA_RC

BUGCHECK_STR: 0x9F

PROCESS_NAME: System

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from 81a51b8c to 81aeb1b5

STACK_TEXT:
81b13acc 81a51b8c 0000009f 00000003 848c0480 nt!KeBugCheckEx+0x1e
81b13b28 81a516dc 81b13ba0 81b13c50 803d3001 nt!PopCheckIrpWatchdog+0x1ad
81b13b68 81ad4ca0 81b2c4e0 00000000 0158f5c0 nt!PopCheckForIdleness+0x343
81b13c88 81ad4860 81b13cd0 85c02b02 81b13cd8 nt!KiTimerListExpire+0x367
81b13ce8 81ad4423 00000000 00000000 000277db nt!KiTimerExpiration+0x22a
81b13d50 81ad2f5d 00000000 0000000e 00000000 nt!KiRetireDpcList+0xba
81b13d54 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x49

STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

FAILURE_BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

Followup: MachineOwner
---------

0: kd> !drvobj ffffffff84aeb128 f
Driver object (84aeb128) is for:
\Driver<my_driver>
Driver Extension List: (id , addr)
(4e4d4944 84dc0010)
Device Object list:
Device object (849e5608) is for:
\Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000012 Flags 00000044
Dacl 8804d3cc DevExt 849e56c0 DevObjExt 849e57b0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
Device queue is not busy.

Device object (84e27380) is for:
NDMP9 \Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000017 Flags 00002050
Dacl 8646d2c0 DevExt 84e27438 DevObjExt 84e27fc0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
AttachedTo (Lower) 848c0480 \Driver\sdbus
Device queue is not busy.

DriverEntry: 8f57a005 <my_driver>
DriverStartIo: 00000000
DriverUnload: 8595dfaa ndis!ndisMUnloadEx

Dispatch routines:
[00] IRP_MJ_CREATE 8587c4e0 ndis!ndisCreateIrpHandler
[01] IRP_MJ_CREATE_NAMED_PIPE 8594978c ndis!ndisDummyIrpHandler
[02] IRP_MJ_CLOSE 8587c830 ndis!ndisCloseIrpHandler
[03] IRP_MJ_READ 8594978c ndis!ndisDummyIrpHandler
[04] IRP_MJ_WRITE 8594978c ndis!ndisDummyIrpHandler
[05] IRP_MJ_QUERY_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[06] IRP_MJ_SET_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[07] IRP_MJ_QUERY_EA 8594978c ndis!ndisDummyIrpHandler
[08] IRP_MJ_SET_EA 8594978c ndis!ndisDummyIrpHandler
[09] IRP_MJ_FLUSH_BUFFERS 8594978c ndis!ndisDummyIrpHandler
[0a] IRP_MJ_QUERY_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0b] IRP_MJ_SET_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0c] IRP_MJ_DIRECTORY_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0d] IRP_MJ_FILE_SYSTEM_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0e] IRP_MJ_DEVICE_CONTROL 85949854 ndis!ndisDeviceControlIrpHandler
[0f] IRP_MJ_INTERNAL_DEVICE_CONTROL 8594978c ndis!ndisDummyIrpHandler
[10] IRP_MJ_SHUTDOWN 8594978c ndis!ndisDummyIrpHandler
[11] IRP_MJ_LOCK_CONTROL 8594978c ndis!ndisDummyIrpHandler
[12] IRP_MJ_CLEANUP 8594978c ndis!ndisDummyIrpHandler
[13] IRP_MJ_CREATE_MAILSLOT 8594978c ndis!ndisDummyIrpHandler
[14] IRP_MJ_QUERY_SECURITY 8594978c ndis!ndisDummyIrpHandler
[15] IRP_MJ_SET_SECURITY 8594978c ndis!ndisDummyIrpHandler
[16] IRP_MJ_POWER 85961e1f ndis!ndisPowerDispatch
[17] IRP_MJ_SYSTEM_CONTROL 8594c172 ndis!ndisWMIDispatch
[18] IRP_MJ_DEVICE_CHANGE 8594978c ndis!ndisDummyIrpHandler
[19] IRP_MJ_QUERY_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1a] IRP_MJ_SET_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1b] IRP_MJ_PNP 8594eef1 ndis!ndisPnPDispatch

0: kd> !irp 844d0458
Irp is active with 3 stacks 2 is current (= 0x844d04ec)
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 84e27380 00000000 81cf6f23-84eef938 Success Error Cancel pending
\Driver<my_driver> nt!PopSystemIrpCompletion
Args: 00015400 00000000 00000005 00000003
[0, 0] 0 0 00000000 00000000 00000000-84eef938

Args: 00000000 00000000 00000000 00000000
0: kd> !poaction
PopAction: 81b1ead8
State…: 3 - Set System State
Updates…: 0
Action…: Sleep
Lightest State.: Sleeping3
Flags…: 80000004 OverrideApps|Critical
Irp minor…: QueryPower
System State…: Sleeping3
Hiber Context…: 00000000

Allocated power irps (PopIrpList - 81b2bfa0)

Irp worker threads (PopIrpThreadList - 81b2ba50)

PopAction.DevState 84a97d28
Irp minor…: QueryPower
System State…: Hibernate
Worker thread…: 82f6e828
Status…: 0
Waking…: FALSE
Cancelled…: FALSE
Ignore errors…: FALSE
Ignore not imp.: FALSE

Order:
Level 7 (84a97e68) 0/15 Paged, Root-Enum
ReadyS0:
82f2860c: 00000000 \Driver\Compbatt \Device\CompositeBattery
82f3199c: 00000000 \Driver\kbdclass \Device\KeyboardClass1
82f274e4: 00000000 \Driver\tunnel \Device\NDMP1
82f3170c: 00000000 \Driver\mouclass \Device\PointerClass1
82f3147c: 00000000 \Driver\swenum
82f30d8c: 00000000 \Driver\NdisWan \Device\NDMP3
82f3001c: 00000000 \Driver\Rasl2tp \Device\NDMP2
82f30ac4: 00000000 \Driver\NdisWan \Device\NDMP4
82f307fc: 00000000 \Driver\NdisWan \Device\NDMP5
82f3052c: 00000000 \Driver\RasPppoe \Device\NDMP6
82f3025c: 00000000 \Driver\PptpMiniport \Device\NDMP7
82f31ebc: 00000000 \Driver\RasSstp \Device\NDMP8
82f32ebc: 00000000 \Driver\umbus
WaitS0:
84f1db14: 00000000 \Driver\umbus
83c81344: 00000000 \Driver\umbus
Level 5 (84a97e18) 1/26 Paged, PnP
ReadyS0:
82f3ee0c: 00000000 \Driver\intelppm
82f3eb34: 00000000 \Driver\intelppm
84b25ebc: 00000000 \Driver\monitor
84b2253c: 00000000 \Driver\usbhub \Device\00000054
848e1124: 00000000 \Driver\usbhub \Device\00000055
898b601c: 00000000 \Driver\usbhub \Device\00000056
83cbcb3c: 00000000 \Driver\HDAudBus
83cbdebc: 00000000 \Driver\msisadrv
WaitS0:
83cce754: 00000000 \Driver\necbatt \Device\fcfltr0
849049dc: 00000000 \Driver\IntcAzAudAddService \Device\00000059
83cbf6a4: 00000000 \Driver\ACPI \Device\00000044
83cbf544: 00000000 \Driver\ACPI \Device\00000045
83cbf3e4: 00000000 \Driver\ACPI \Device\00000046
83cbf284: 00000000 \Driver\kbdclass \Device\KeyboardClass0
83cc201c: 00000000 \Driver\mouclass \Device\PointerClass0
83cc2ebc: 00000000 \Driver\ACPI \Device\00000049
83cc2d5c: 00000000 \Driver\ACPI \Device\0000004a
83cc2bfc: 00000000 \Driver\ACPI \Device\0000004b
83cc2a9c: 00000000 \Driver\ACPI \Device\0000004c
83cc293c: 00000000 \Driver\ACPI \Device\0000004d
83cc27dc: 00000000 \Driver\ACPI \Device\0000004e
83cc267c: 00000000 \Driver\ACPI \Device\0000004f
83cc251c: 00000000 \Driver\ACPI \Device\00000050
83cc23bc: 00000000 \Driver\OddUtldr \Device\OddUtilDriver
83cc225c: 00000000 \Driver\ACPI \Device\00000052
Level 4 (84a97df0) 1/1 Paged, PnP, Video
ReadySleep:
83cbcc9c: 00000000 \Driver\igd
Level 3 (84a97dc8) 51/51 Non-Paged, Root-Enum
WaitSleep:
82f32c2c: 00000000 \Driver\volmgr \Device\VolMgrControl
847340fc: 00000000 \Driver\volsnap
ReadySleep:
82f29ebc: 00000000 \Driver\iScsiPrt \Device\RaidPort0
82f29c2c: 00000000 \Driver\PnpManager \Device\00000005
82f2999c: 00000000 \Driver\PnpManager \Device\00000006
82f2970c: 00000000 \Driver\PnpManager \Device\00000007
82f2947c: 00000000 \Driver\PnpManager \Device\00000008
82f291ec: 00000000 \Driver\PnpManager \Device\00000009
82f2aebc: 00000000 \Driver\PnpManager \Device\0000000a
82f2ac2c: 00000000 \Driver\PnpManager \Device\0000000b
82f2a99c: 00000000 \Driver\PnpManager \Device\0000000c
82f2a70c: 00000000 \Driver\PnpManager \Device\0000000d
82f2a47c: 00000000 \Driver\PnpManager \Device\0000000e
82f2a1ec: 00000000 \Driver\PnpManager \Device\0000000f
82f2bebc: 00000000 \Driver\PnpManager \Device\00000010
82f2bc2c: 00000000 \Driver\PnpManager \Device\00000011
82f2b954: 00000000 \Driver\PnpManager \Device\00000012
82f2b68c: 00000000 \Driver\PnpManager \Device\00000013
82f2b3bc: 00000000 \Driver\PnpManager \Device\00000014
82f2c01c: 00000000 \Driver\PnpManager \Device\00000015
82f2cd8c: 00000000 \Driver\PnpManager \Device\00000016
82f2cafc: 00000000 \Driver\PnpManager \Device\00000017
82f2c86c: 00000000 \Driver\PnpManager \Device\00000018
82f2c5dc: 00000000 \Driver\PnpManager \Device\00000019
82f2c314: 00000000 \Driver\PnpManager \Device\0000001a
82f2d01c: 00000000 \Driver\PnpManager \Device\0000001b
82f2dd54: 00000000 \Driver\PnpManager \Device\0000001c
82f2da84: 00000000 \Driver\PnpManager \Device\0000001d
82f2d7bc: 00000000 \Driver\PnpManager \Device\0000001e
82f2d4f4: 00000000 \Driver\PnpManager \Device\0000001f
82f2d22c: 00000000 \Driver\PnpManager \Device\00000020
82f2eebc: 00000000 \Driver\PnpManager \Device\00000021
82f2ec2c: 00000000 \Driver\PnpManager \Device\00000022
82f2e99c: 00000000 \Driver\PnpManager \Device\00000023
82f2e6cc: 00000000 \Driver\PnpManager \Device\00000024
82f2e404: 00000000 \Driver\PnpManager \Device\00000025
82f2f01c: 00000000 \Driver\PnpManager \Device\00000026
82f2fd8c: 00000000 \Driver\PnpManager \Device\00000027
82f2fafc: 00000000 \Driver\PnpManager \Device\00000028
82f2f86c: 00000000 \Driver\PnpManager \Device\00000029
82f2f5dc: 00000000 \Driver\PnpManager \Device\0000002a
82f2f34c: 00000000 \Driver\PnpManager \Device\0000002b
82f31c2c: 00000000 \Driver\rdpdr \Device\RdpDrDvMgr
82f311ec: 00000000 \Driver\mssmbios
848c7b24: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy1
84bd591c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy2
848c701c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy3
848c792c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy4
848c7ebc: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy5
846310ec: 00000000 \Driver\volsnap
84631e54: 00000000 \Driver\volsnap
Level 1 (84a97d78) 26/26 Non-Paged, PnP
WaitSleep:
83cbc9dc: 00000000 \Driver\pci
83cbec5c: 00000000 \Driver\atapi \Device\Ide\IdePort0
83ccd72c: 00000000 \Driver\pciide \Device\Ide\PciIde1
83cbc87c: 00000000 \Driver\pci
83cbc19c: 00000000 \Driver\sdbus
83cbdd5c: 00000000 \Driver\pciide \Device\Ide\PciIde0
82f43e14: 00000000 \Driver\pci
83c9b3ec: 00000000 \Driver\ACPI
82f2889c: 00000000 \Driver\ACPI_HAL
ReadySleep:
83cbcdfc: 00000000 \Driver\pci \Device\NTPNP_PCI0000
83ccc8e4: 00000000 \Driver\ACPI
83ce1514: 00000000 \Driver\partmgr
83cda604: 00000000 \Driver\atapi \Device\Ide\IdePort1
83cbc2fc: 00000000 \Driver\sdbus
83cbd01c: 00000000 \Driver\sdbus
83cda4a4: 00000000 \Driver\atapi \Device\Ide\IdePort2
83cda344: 00000000 \Driver\atapi \Device\Ide\IdePort3
83cbdbfc: 00000000 \Driver\ACPI \Device\00000041
83cbda9c: 00000000 \Driver\ACPI \Device\00000042
83cbd93c: 00000000 \Driver\ACPI \Device\00000043
82f3e85c: 00000000 \Driver\ACPI \Device\0000003e
82f3e6fc: 00000000 \Driver\ACPI \Device\0000003f
82f3e59c: 00000000 \Driver\ACPI \Device\00000040
83cbc71c: 00000000 \Driver\usbuhci \Device\USBFDO-0
83cbc5bc: 00000000 \Driver\usbuhci \Device\USBFDO-1
83cbc45c: 00000000 \Driver\usbehci \Device\USBFDO-2

0: kd> !poreqlist
All active Power Irps from PoRequestPowerIrp
PopReqestedPowerIrpList
FieldOffset = 00000004

please suggest how to go about further to find out why my_driver is holding the power irp.
my_driver is a ndis sdio driver.

— NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver>

Doron,

thanks for the help.
i did find threads blocked with ndis in stack, probably nwifi.sys waiitng
for a scan command reply from my_driver.

but is there any other reason wherein upper layer drivers can block power
chance
On Tue, May 12, 2009 at 8:09 PM, Doron Holan wrote:

> Look at the output of
> !stacks 2
>
> And see if there any threads stuck where ndis is in the stack. You can see
> this type of stuck irp when the upper level bound protocols do not
> stop/flush/power down properly
>
> d
>
> Sent from my phone with no t9, all spilling mistakes are not intentional.
>
> ------------------------------
> From: joyjit mullick
> Sent: Tuesday, May 12, 2009 2:24 AM
> To: Windows System Software Devs Interest List
> Subject: [ntdev] 9f dump on vista sp1 help required
>
>
>
> …
> 0: kd> !analyze -v
>
> *****
>
>
> * Bugcheck
> Analysis
>
>
>
>

>
> DRIVER_POWER_STATE_FAILURE (9f)
> A driver is causing an inconsistent power state.
> Arguments:
> Arg1: 00000003, A device object has been blocking an Irp for too long a
> time
> Arg2: 848c0480, Physical Device Object of the stack
> Arg3: 84e27380, Functional Device Object of the stack
> Arg4: 844d0458, The blocked IRP
>
> Debugging Details:
> ------------------
>
> *** ERROR: Module load completed but symbols could not be loaded for
> <my_driver>.sys
>
> DRVPOWERSTATE_SUBCODE: 3
>
> DEVICE_OBJECT: 84e27380
>
> DRIVER_OBJECT: 84aeb128
>
> IMAGE_NAME: <my_driver>.sys
>
> DEBUG_FLR_IMAGE_TIMESTAMP: 4a003415
>
> MODULE_NAME: <my_driver>
>
> FAULTING_MODULE: 8f528000 <my_driver>
>
> DEFAULT_BUCKET_ID: VISTA_RC
>
> BUGCHECK_STR: 0x9F
>
> PROCESS_NAME: System
>
> CURRENT_IRQL: 2
>
> LAST_CONTROL_TRANSFER: from 81a51b8c to 81aeb1b5
>
> STACK_TEXT:
> 81b13acc 81a51b8c 0000009f 00000003 848c0480 nt!KeBugCheckEx+0x1e
> 81b13b28 81a516dc 81b13ba0 81b13c50 803d3001 nt!PopCheckIrpWatchdog+0x1ad
> 81b13b68 81ad4ca0 81b2c4e0 00000000 0158f5c0 nt!PopCheckForIdleness+0x343
> 81b13c88 81ad4860 81b13cd0 85c02b02 81b13cd8 nt!KiTimerListExpire+0x367
> 81b13ce8 81ad4423 00000000 00000000 000277db nt!KiTimerExpiration+0x22a
> 81b13d50 81ad2f5d 00000000 0000000e 00000000 nt!KiRetireDpcList+0xba
> 81b13d54 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x49
>
>
> STACK_COMMAND: kb
>
> FOLLOWUP_NAME: MachineOwner
>
> FAILURE_BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05
>
> BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05
>
> Followup: MachineOwner
> ---------
>
> 0: kd> !drvobj ffffffff84aeb128 f
> Driver object (84aeb128) is for:
> \Driver<my_driver>
> Driver Extension List: (id , addr)
> (4e4d4944 84dc0010)
> Device Object list:
> Device object (849e5608) is for:
> \Driver<my_driver> DriverObject 84aeb128
> Current Irp 00000000 RefCount 0 Type 00000012 Flags 00000044
> Dacl 8804d3cc DevExt 849e56c0 DevObjExt 849e57b0
> ExtensionFlags (0x00000800)
> Unknown flags 0x00000800
> Device queue is not busy.
>
> Device object (84e27380) is for:
> NDMP9 \Driver<my_driver> DriverObject 84aeb128
> Current Irp 00000000 RefCount 0 Type 00000017 Flags 00002050
> Dacl 8646d2c0 DevExt 84e27438 DevObjExt 84e27fc0
> ExtensionFlags (0x00000800)
> Unknown flags 0x00000800
> AttachedTo (Lower) 848c0480 \Driver\sdbus
> Device queue is not busy.
>
>
>
> DriverEntry: 8f57a005 <my_driver>
> DriverStartIo: 00000000
> DriverUnload: 8595dfaa ndis!ndisMUnloadEx
>
> Dispatch routines:
> [00] IRP_MJ_CREATE 8587c4e0 ndis!ndisCreateIrpHandler
> [01] IRP_MJ_CREATE_NAMED_PIPE 8594978c ndis!ndisDummyIrpHandler
> [02] IRP_MJ_CLOSE 8587c830 ndis!ndisCloseIrpHandler
> [03] IRP_MJ_READ 8594978c ndis!ndisDummyIrpHandler
> [04] IRP_MJ_WRITE 8594978c ndis!ndisDummyIrpHandler
> [05] IRP_MJ_QUERY_INFORMATION 8594978c ndis!ndisDummyIrpHandler
> [06] IRP_MJ_SET_INFORMATION 8594978c ndis!ndisDummyIrpHandler
> [07] IRP_MJ_QUERY_EA 8594978c ndis!ndisDummyIrpHandler
> [08] IRP_MJ_SET_EA 8594978c ndis!ndisDummyIrpHandler
> [09] IRP_MJ_FLUSH_BUFFERS 8594978c ndis!ndisDummyIrpHandler
> [0a] IRP_MJ_QUERY_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
> [0b] IRP_MJ_SET_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
> [0c] IRP_MJ_DIRECTORY_CONTROL 8594978c ndis!ndisDummyIrpHandler
> [0d] IRP_MJ_FILE_SYSTEM_CONTROL 8594978c ndis!ndisDummyIrpHandler
> [0e] IRP_MJ_DEVICE_CONTROL
> 85949854 ndis!ndisDeviceControlIrpHandler
> [0f] IRP_MJ_INTERNAL_DEVICE_CONTROL 8594978c ndis!ndisDummyIrpHandler
> [10] IRP_MJ_SHUTDOWN 8594978c ndis!ndisDummyIrpHandler
> [11] IRP_MJ_LOCK_CONTROL 8594978c ndis!ndisDummyIrpHandler
> [12] IRP_MJ_CLEANUP 8594978c ndis!ndisDummyIrpHandler
> [13] IRP_MJ_CREATE_MAILSLOT 8594978c ndis!ndisDummyIrpHandler
> [14] IRP_MJ_QUERY_SECURITY 8594978c ndis!ndisDummyIrpHandler
> [15] IRP_MJ_SET_SECURITY 8594978c ndis!ndisDummyIrpHandler
> [16] IRP_MJ_POWER 85961e1f ndis!ndisPowerDispatch
> [17] IRP_MJ_SYSTEM_CONTROL 8594c172 ndis!ndisWMIDispatch
> [18] IRP_MJ_DEVICE_CHANGE 8594978c ndis!ndisDummyIrpHandler
> [19] IRP_MJ_QUERY_QUOTA 8594978c ndis!ndisDummyIrpHandler
> [1a] IRP_MJ_SET_QUOTA 8594978c ndis!ndisDummyIrpHandler
> [1b] IRP_MJ_PNP 8594eef1 ndis!ndisPnPDispatch
>
> 0: kd> !irp 844d0458
> Irp is active with 3 stacks 2 is current (= 0x844d04ec)
> 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 84e27380 00000000 81cf6f23-84eef938 Success Error Cancel
> pending
> \Driver<my_driver> nt!PopSystemIrpCompletion
> Args: 00015400 00000000 00000005 00000003
> [0, 0] 0 0 00000000 00000000 00000000-84eef938
>
> Args: 00000000 00000000 00000000 00000000
> 0: kd> !poaction
> PopAction: 81b1ead8
> State…: 3 - Set System State
> Updates…: 0
> Action…: Sleep
> Lightest State.: Sleeping3
> Flags…: 80000004 OverrideApps|Critical
> Irp minor…: QueryPower
> System State…: Sleeping3
> Hiber Context…: 00000000
>
> Allocated power irps (PopIrpList - 81b2bfa0)
>
> Irp worker threads (PopIrpThreadList - 81b2ba50)
>
> PopAction.DevState 84a97d28
> Irp minor…: QueryPower
> System State…: Hibernate
> Worker thread…: 82f6e828
> Status…: 0
> Waking…: FALSE
> Cancelled…: FALSE
> Ignore errors…: FALSE
> Ignore not imp.: FALSE
>
> Order:
> Level 7 (84a97e68) 0/15 Paged, Root-Enum
> ReadyS0:
> 82f2860c: 00000000 \Driver\Compbatt \Device\CompositeBattery
> 82f3199c: 00000000 \Driver\kbdclass \Device\KeyboardClass1
> 82f274e4: 00000000 \Driver\tunnel \Device\NDMP1
> 82f3170c: 00000000 \Driver\mouclass \Device\PointerClass1
> 82f3147c: 00000000 \Driver\swenum
> 82f30d8c: 00000000 \Driver\NdisWan \Device\NDMP3
> 82f3001c: 00000000 \Driver\Rasl2tp \Device\NDMP2
> 82f30ac4: 00000000 \Driver\NdisWan \Device\NDMP4
> 82f307fc: 00000000 \Driver\NdisWan \Device\NDMP5
> 82f3052c: 00000000 \Driver\RasPppoe \Device\NDMP6
> 82f3025c: 00000000 \Driver\PptpMiniport \Device\NDMP7
> 82f31ebc: 00000000 \Driver\RasSstp \Device\NDMP8
> 82f32ebc: 00000000 \Driver\umbus
> WaitS0:
> 84f1db14: 00000000 \Driver\umbus
> 83c81344: 00000000 \Driver\umbus
> Level 5 (84a97e18) 1/26 Paged, PnP
> ReadyS0:
> 82f3ee0c: 00000000 \Driver\intelppm
> 82f3eb34: 00000000 \Driver\intelppm
> 84b25ebc: 00000000 \Driver\monitor
> 84b2253c: 00000000 \Driver\usbhub \Device\00000054
> 848e1124: 00000000 \Driver\usbhub \Device\00000055
> 898b601c: 00000000 \Driver\usbhub \Device\00000056
> 83cbcb3c: 00000000 \Driver\HDAudBus
> 83cbdebc: 00000000 \Driver\msisadrv
> WaitS0:
> 83cce754: 00000000 \Driver\necbatt \Device\fcfltr0
> 849049dc: 00000000 \Driver\IntcAzAudAddService \Device\00000059
> 83cbf6a4: 00000000 \Driver\ACPI \Device\00000044
> 83cbf544: 00000000 \Driver\ACPI \Device\00000045
> 83cbf3e4: 00000000 \Driver\ACPI \Device\00000046
> 83cbf284: 00000000 \Driver\kbdclass \Device\KeyboardClass0
> 83cc201c: 00000000 \Driver\mouclass \Device\PointerClass0
> 83cc2ebc: 00000000 \Driver\ACPI \Device\00000049
> 83cc2d5c: 00000000 \Driver\ACPI \Device\0000004a
> 83cc2bfc: 00000000 \Driver\ACPI \Device\0000004b
> 83cc2a9c: 00000000 \Driver\ACPI \Device\0000004c
> 83cc293c: 00000000 \Driver\ACPI \Device\0000004d
> 83cc27dc: 00000000 \Driver\ACPI \Device\0000004e
> 83cc267c: 00000000 \Driver\ACPI \Device\0000004f
> 83cc251c: 00000000 \Driver\ACPI \Device\00000050
> 83cc23bc: 00000000 \Driver\OddUtldr \Device\OddUtilDriver
> 83cc225c: 00000000 \Driver\ACPI \Device\00000052
> Level 4 (84a97df0) 1/1 Paged, PnP, Video
> ReadySleep:
> 83cbcc9c: 00000000 \Driver\igd
> Level 3 (84a97dc8) 51/51 Non-Paged, Root-Enum
> WaitSleep:
> 82f32c2c: 00000000 \Driver\volmgr \Device\VolMgrControl
> 847340fc: 00000000 \Driver\volsnap
> ReadySleep:
> 82f29ebc: 00000000 \Driver\iScsiPrt \Device\RaidPort0
> 82f29c2c: 00000000 \Driver\PnpManager \Device\00000005
> 82f2999c: 00000000 \Driver\PnpManager \Device\00000006
> 82f2970c: 00000000 \Driver\PnpManager \Device\00000007
> 82f2947c: 00000000 \Driver\PnpManager \Device\00000008
> 82f291ec: 00000000 \Driver\PnpManager \Device\00000009
> 82f2aebc: 00000000 \Driver\PnpManager \Device\0000000a
> 82f2ac2c: 00000000 \Driver\PnpManager \Device\0000000b
> 82f2a99c: 00000000 \Driver\PnpManager \Device\0000000c
> 82f2a70c: 00000000 \Driver\PnpManager \Device\0000000d
> 82f2a47c: 00000000 \Driver\PnpManager \Device\0000000e
> 82f2a1ec: 00000000 \Driver\PnpManager \Device\0000000f
> 82f2bebc: 00000000 \Driver\PnpManager \Device\00000010
> 82f2bc2c: 00000000 \Driver\PnpManager \Device\00000011
> 82f2b954: 00000000 \Driver\PnpManager \Device\00000012
> 82f2b68c: 00000000 \Driver\PnpManager \Device\00000013
> 82f2b3bc: 00000000 \Driver\PnpManager \Device\00000014
> 82f2c01c: 00000000 \Driver\PnpManager \Device\00000015
> 82f2cd8c: 00000000 \Driver\PnpManager \Device\00000016
> 82f2cafc: 00000000 \Driver\PnpManager \Device\00000017
> 82f2c86c: 00000000 \Driver\PnpManager \Device\00000018
> 82f2c5dc: 00000000 \Driver\PnpManager \Device\00000019
> 82f2c314: 00000000 \Driver\PnpManager \Device\0000001a
> 82f2d01c: 00000000 \Driver\PnpManager \Device\0000001b
> 82f2dd54: 00000000 \Driver\PnpManager \Device\0000001c
> 82f2da84: 00000000 \Driver\PnpManager \Device\0000001d
> 82f2d7bc: 00000000 \Driver\PnpManager \Device\0000001e
> 82f2d4f4: 00000000 \Driver\PnpManager \Device\0000001f
> 82f2d22c: 00000000 \Driver\PnpManager \Device\00000020
> 82f2eebc: 00000000 \Driver\PnpManager \Device\00000021
> 82f2ec2c: 00000000 \Driver\PnpManager \Device\00000022
> 82f2e99c: 00000000 \Driver\PnpManager \Device\00000023
> 82f2e6cc: 00000000 \Driver\PnpManager \Device\00000024
> 82f2e404: 00000000 \Driver\PnpManager \Device\00000025
> 82f2f01c: 00000000 \Driver\PnpManager \Device\00000026
> 82f2fd8c: 00000000 \Driver\PnpManager \Device\00000027
> 82f2fafc: 00000000 \Driver\PnpManager \Device\00000028
> 82f2f86c: 00000000 \Driver\PnpManager \Device\00000029
> 82f2f5dc: 00000000 \Driver\PnpManager \Device\0000002a
> 82f2f34c: 00000000 \Driver\PnpManager \Device\0000002b
> 82f31c2c: 00000000 \Driver\rdpdr \Device\RdpDrDvMgr
> 82f311ec: 00000000 \Driver\mssmbios
> 848c7b24: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy1
> 84bd591c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy2
> 848c701c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy3
> 848c792c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy4
> 848c7ebc: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy5
> 846310ec: 00000000 \Driver\volsnap
> 84631e54: 00000000 \Driver\volsnap
> Level 1 (84a97d78) 26/26 Non-Paged, PnP
> WaitSleep:
> 83cbc9dc: 00000000 \Driver\pci
> 83cbec5c: 00000000 \Driver\atapi \Device\Ide\IdePort0
> 83ccd72c: 00000000 \Driver\pciide \Device\Ide\PciIde1
> 83cbc87c: 00000000 \Driver\pci
> 83cbc19c: 00000000 \Driver\sdbus
> 83cbdd5c: 00000000 \Driver\pciide \Device\Ide\PciIde0
> 82f43e14: 00000000 \Driver\pci
> 83c9b3ec: 00000000 \Driver\ACPI
> 82f2889c: 00000000 \Driver\ACPI_HAL
> ReadySleep:
> 83cbcdfc: 00000000 \Driver\pci \Device\NTPNP_PCI0000
> 83ccc8e4: 00000000 \Driver\ACPI
> 83ce1514: 00000000 \Driver\partmgr
> 83cda604: 00000000 \Driver\atapi \Device\Ide\IdePort1
> 83cbc2fc: 00000000 \Driver\sdbus
> 83cbd01c: 00000000 \Driver\sdbus
> 83cda4a4: 00000000 \Driver\atapi \Device\Ide\IdePort2
> 83cda344: 00000000 \Driver\atapi \Device\Ide\IdePort3
> 83cbdbfc: 00000000 \Driver\ACPI \Device\00000041
> 83cbda9c: 00000000 \Driver\ACPI \Device\00000042
> 83cbd93c: 00000000 \Driver\ACPI \Device\00000043
> 82f3e85c: 00000000 \Driver\ACPI \Device\0000003e
> 82f3e6fc: 00000000 \Driver\ACPI \Device\0000003f
> 82f3e59c: 00000000 \Driver\ACPI \Device\00000040
> 83cbc71c: 00000000 \Driver\usbuhci \Device\USBFDO-0
> 83cbc5bc: 00000000 \Driver\usbuhci \Device\USBFDO-1
> 83cbc45c: 00000000 \Driver\usbehci \Device\USBFDO-2
>
>
> 0: kd> !poreqlist
> All active Power Irps from PoRequestPowerIrp
> PopReqestedPowerIrpList
> FieldOffset = 00000004
> please suggest how to go about further to find out why my_driver is holding
> the power irp.
> my_driver is a ndis sdio driver.
>
> — NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and
> other seminars visit: http://www.osr.com/seminars To unsubscribe, visit
> the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver>

I know that all bound protocols must pwr down/halt (not sure what the official term is, that is my term) before the nic powers off. These pwr downs in the protocols does happen in the context of the pwr down Dx irp so anything really goes, it is whatever the protocol does.

d

Sent from my phone with no t9, all spilling mistakes are not intentional.


From: joyjit mullick
Sent: Tuesday, May 12, 2009 11:48 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] 9f dump on vista sp1 help required

Doron,

thanks for the help.
i did find threads blocked with ndis in stack, probably nwifi.sys waiitng for a scan command reply from my_driver.

but is there any other reason wherein upper layer drivers can block power chance
On Tue, May 12, 2009 at 8:09 PM, Doron Holan > wrote:
Look at the output of
!stacks 2

And see if there any threads stuck where ndis is in the stack. You can see this type of stuck irp when the upper level bound protocols do not stop/flush/power down properly

d

Sent from my phone with no t9, all spilling mistakes are not intentional.

________________________________
From: joyjit mullick >
Sent: Tuesday, May 12, 2009 2:24 AM
To: Windows System Software Devs Interest List >
Subject: [ntdev] 9f dump on vista sp1 help required


0: kd> !analyze -v


Bugcheck Analysis



DRIVER_POWER_STATE_FAILURE (9f)
A driver is causing an inconsistent power state.
Arguments:
Arg1: 00000003, A device object has been blocking an Irp for too long a time
Arg2: 848c0480, Physical Device Object of the stack
Arg3: 84e27380, Functional Device Object of the stack
Arg4: 844d0458, The blocked IRP

Debugging Details:
------------------

*** ERROR: Module load completed but symbols could not be loaded for <my_driver>.sys

DRVPOWERSTATE_SUBCODE: 3

DEVICE_OBJECT: 84e27380

DRIVER_OBJECT: 84aeb128

IMAGE_NAME: <my_driver>.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 4a003415

MODULE_NAME: <my_driver>

FAULTING_MODULE: 8f528000 <my_driver>

DEFAULT_BUCKET_ID: VISTA_RC

BUGCHECK_STR: 0x9F

PROCESS_NAME: System

CURRENT_IRQL: 2

LAST_CONTROL_TRANSFER: from 81a51b8c to 81aeb1b5

STACK_TEXT:
81b13acc 81a51b8c 0000009f 00000003 848c0480 nt!KeBugCheckEx+0x1e
81b13b28 81a516dc 81b13ba0 81b13c50 803d3001 nt!PopCheckIrpWatchdog+0x1ad
81b13b68 81ad4ca0 81b2c4e0 00000000 0158f5c0 nt!PopCheckForIdleness+0x343
81b13c88 81ad4860 81b13cd0 85c02b02 81b13cd8 nt!KiTimerListExpire+0x367
81b13ce8 81ad4423 00000000 00000000 000277db nt!KiTimerExpiration+0x22a
81b13d50 81ad2f5d 00000000 0000000e 00000000 nt!KiRetireDpcList+0xba
81b13d54 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x49

STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

FAILURE_BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

BUCKET_ID: 0x9F_IMAGE_<my_driver>.sys_DATE_2009_05_05

Followup: MachineOwner
---------

0: kd> !drvobj ffffffff84aeb128 f
Driver object (84aeb128) is for:
\Driver<my_driver>
Driver Extension List: (id , addr)
(4e4d4944 84dc0010)
Device Object list:
Device object (849e5608) is for:
\Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000012 Flags 00000044
Dacl 8804d3cc DevExt 849e56c0 DevObjExt 849e57b0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
Device queue is not busy.

Device object (84e27380) is for:
NDMP9 \Driver<my_driver> DriverObject 84aeb128
Current Irp 00000000 RefCount 0 Type 00000017 Flags 00002050
Dacl 8646d2c0 DevExt 84e27438 DevObjExt 84e27fc0
ExtensionFlags (0x00000800)
Unknown flags 0x00000800
AttachedTo (Lower) 848c0480 \Driver\sdbus
Device queue is not busy.

DriverEntry: 8f57a005 <my_driver>
DriverStartIo: 00000000
DriverUnload: 8595dfaa ndis!ndisMUnloadEx

Dispatch routines:
[00] IRP_MJ_CREATE 8587c4e0 ndis!ndisCreateIrpHandler
[01] IRP_MJ_CREATE_NAMED_PIPE 8594978c ndis!ndisDummyIrpHandler
[02] IRP_MJ_CLOSE 8587c830 ndis!ndisCloseIrpHandler
[03] IRP_MJ_READ 8594978c ndis!ndisDummyIrpHandler
[04] IRP_MJ_WRITE 8594978c ndis!ndisDummyIrpHandler
[05] IRP_MJ_QUERY_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[06] IRP_MJ_SET_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[07] IRP_MJ_QUERY_EA 8594978c ndis!ndisDummyIrpHandler
[08] IRP_MJ_SET_EA 8594978c ndis!ndisDummyIrpHandler
[09] IRP_MJ_FLUSH_BUFFERS 8594978c ndis!ndisDummyIrpHandler
[0a] IRP_MJ_QUERY_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0b] IRP_MJ_SET_VOLUME_INFORMATION 8594978c ndis!ndisDummyIrpHandler
[0c] IRP_MJ_DIRECTORY_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0d] IRP_MJ_FILE_SYSTEM_CONTROL 8594978c ndis!ndisDummyIrpHandler
[0e] IRP_MJ_DEVICE_CONTROL 85949854 ndis!ndisDeviceControlIrpHandler
[0f] IRP_MJ_INTERNAL_DEVICE_CONTROL 8594978c ndis!ndisDummyIrpHandler
[10] IRP_MJ_SHUTDOWN 8594978c ndis!ndisDummyIrpHandler
[11] IRP_MJ_LOCK_CONTROL 8594978c ndis!ndisDummyIrpHandler
[12] IRP_MJ_CLEANUP 8594978c ndis!ndisDummyIrpHandler
[13] IRP_MJ_CREATE_MAILSLOT 8594978c ndis!ndisDummyIrpHandler
[14] IRP_MJ_QUERY_SECURITY 8594978c ndis!ndisDummyIrpHandler
[15] IRP_MJ_SET_SECURITY 8594978c ndis!ndisDummyIrpHandler
[16] IRP_MJ_POWER 85961e1f ndis!ndisPowerDispatch
[17] IRP_MJ_SYSTEM_CONTROL 8594c172 ndis!ndisWMIDispatch
[18] IRP_MJ_DEVICE_CHANGE 8594978c ndis!ndisDummyIrpHandler
[19] IRP_MJ_QUERY_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1a] IRP_MJ_SET_QUOTA 8594978c ndis!ndisDummyIrpHandler
[1b] IRP_MJ_PNP 8594eef1 ndis!ndisPnPDispatch

0: kd> !irp 844d0458
Irp is active with 3 stacks 2 is current (= 0x844d04ec)
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 84e27380 00000000 81cf6f23-84eef938 Success Error Cancel pending
\Driver<my_driver> nt!PopSystemIrpCompletion
Args: 00015400 00000000 00000005 00000003
[0, 0] 0 0 00000000 00000000 00000000-84eef938

Args: 00000000 00000000 00000000 00000000
0: kd> !poaction
PopAction: 81b1ead8
State…: 3 - Set System State
Updates…: 0
Action…: Sleep
Lightest State.: Sleeping3
Flags…: 80000004 OverrideApps|Critical
Irp minor…: QueryPower
System State…: Sleeping3
Hiber Context…: 00000000

Allocated power irps (PopIrpList - 81b2bfa0)

Irp worker threads (PopIrpThreadList - 81b2ba50)

PopAction.DevState 84a97d28
Irp minor…: QueryPower
System State…: Hibernate
Worker thread…: 82f6e828
Status…: 0
Waking…: FALSE
Cancelled…: FALSE
Ignore errors…: FALSE
Ignore not imp.: FALSE

Order:
Level 7 (84a97e68) 0/15 Paged, Root-Enum
ReadyS0:
82f2860c: 00000000 \Driver\Compbatt \Device\CompositeBattery
82f3199c: 00000000 \Driver\kbdclass \Device\KeyboardClass1
82f274e4: 00000000 \Driver\tunnel \Device\NDMP1
82f3170c: 00000000 \Driver\mouclass \Device\PointerClass1
82f3147c: 00000000 \Driver\swenum
82f30d8c: 00000000 \Driver\NdisWan \Device\NDMP3
82f3001c: 00000000 \Driver\Rasl2tp \Device\NDMP2
82f30ac4: 00000000 \Driver\NdisWan \Device\NDMP4
82f307fc: 00000000 \Driver\NdisWan \Device\NDMP5
82f3052c: 00000000 \Driver\RasPppoe \Device\NDMP6
82f3025c: 00000000 \Driver\PptpMiniport \Device\NDMP7
82f31ebc: 00000000 \Driver\RasSstp \Device\NDMP8
82f32ebc: 00000000 \Driver\umbus
WaitS0:
84f1db14: 00000000 \Driver\umbus
83c81344: 00000000 \Driver\umbus
Level 5 (84a97e18) 1/26 Paged, PnP
ReadyS0:
82f3ee0c: 00000000 \Driver\intelppm
82f3eb34: 00000000 \Driver\intelppm
84b25ebc: 00000000 \Driver\monitor
84b2253c: 00000000 \Driver\usbhub \Device\00000054
848e1124: 00000000 \Driver\usbhub \Device\00000055
898b601c: 00000000 \Driver\usbhub \Device\00000056
83cbcb3c: 00000000 \Driver\HDAudBus
83cbdebc: 00000000 \Driver\msisadrv
WaitS0:
83cce754: 00000000 \Driver\necbatt \Device\fcfltr0
849049dc: 00000000 \Driver\IntcAzAudAddService \Device\00000059
83cbf6a4: 00000000 \Driver\ACPI \Device\00000044
83cbf544: 00000000 \Driver\ACPI \Device\00000045
83cbf3e4: 00000000 \Driver\ACPI \Device\00000046
83cbf284: 00000000 \Driver\kbdclass \Device\KeyboardClass0
83cc201c: 00000000 \Driver\mouclass \Device\PointerClass0
83cc2ebc: 00000000 \Driver\ACPI \Device\00000049
83cc2d5c: 00000000 \Driver\ACPI \Device\0000004a
83cc2bfc: 00000000 \Driver\ACPI \Device\0000004b
83cc2a9c: 00000000 \Driver\ACPI \Device\0000004c
83cc293c: 00000000 \Driver\ACPI \Device\0000004d
83cc27dc: 00000000 \Driver\ACPI \Device\0000004e
83cc267c: 00000000 \Driver\ACPI \Device\0000004f
83cc251c: 00000000 \Driver\ACPI \Device\00000050
83cc23bc: 00000000 \Driver\OddUtldr \Device\OddUtilDriver
83cc225c: 00000000 \Driver\ACPI \Device\00000052
Level 4 (84a97df0) 1/1 Paged, PnP, Video
ReadySleep:
83cbcc9c: 00000000 \Driver\igd
Level 3 (84a97dc8) 51/51 Non-Paged, Root-Enum
WaitSleep:
82f32c2c: 00000000 \Driver\volmgr \Device\VolMgrControl
847340fc: 00000000 \Driver\volsnap
ReadySleep:
82f29ebc: 00000000 \Driver\iScsiPrt \Device\RaidPort0
82f29c2c: 00000000 \Driver\PnpManager \Device\00000005
82f2999c: 00000000 \Driver\PnpManager \Device\00000006
82f2970c: 00000000 \Driver\PnpManager \Device\00000007
82f2947c: 00000000 \Driver\PnpManager \Device\00000008
82f291ec: 00000000 \Driver\PnpManager \Device\00000009
82f2aebc: 00000000 \Driver\PnpManager \Device\0000000a
82f2ac2c: 00000000 \Driver\PnpManager \Device\0000000b
82f2a99c: 00000000 \Driver\PnpManager \Device\0000000c
82f2a70c: 00000000 \Driver\PnpManager \Device\0000000d
82f2a47c: 00000000 \Driver\PnpManager \Device\0000000e
82f2a1ec: 00000000 \Driver\PnpManager \Device\0000000f
82f2bebc: 00000000 \Driver\PnpManager \Device\00000010
82f2bc2c: 00000000 \Driver\PnpManager \Device\00000011
82f2b954: 00000000 \Driver\PnpManager \Device\00000012
82f2b68c: 00000000 \Driver\PnpManager \Device\00000013
82f2b3bc: 00000000 \Driver\PnpManager \Device\00000014
82f2c01c: 00000000 \Driver\PnpManager \Device\00000015
82f2cd8c: 00000000 \Driver\PnpManager \Device\00000016
82f2cafc: 00000000 \Driver\PnpManager \Device\00000017
82f2c86c: 00000000 \Driver\PnpManager \Device\00000018
82f2c5dc: 00000000 \Driver\PnpManager \Device\00000019
82f2c314: 00000000 \Driver\PnpManager \Device\0000001a
82f2d01c: 00000000 \Driver\PnpManager \Device\0000001b
82f2dd54: 00000000 \Driver\PnpManager \Device\0000001c
82f2da84: 00000000 \Driver\PnpManager \Device\0000001d
82f2d7bc: 00000000 \Driver\PnpManager \Device\0000001e
82f2d4f4: 00000000 \Driver\PnpManager \Device\0000001f
82f2d22c: 00000000 \Driver\PnpManager \Device\00000020
82f2eebc: 00000000 \Driver\PnpManager \Device\00000021
82f2ec2c: 00000000 \Driver\PnpManager \Device\00000022
82f2e99c: 00000000 \Driver\PnpManager \Device\00000023
82f2e6cc: 00000000 \Driver\PnpManager \Device\00000024
82f2e404: 00000000 \Driver\PnpManager \Device\00000025
82f2f01c: 00000000 \Driver\PnpManager \Device\00000026
82f2fd8c: 00000000 \Driver\PnpManager \Device\00000027
82f2fafc: 00000000 \Driver\PnpManager \Device\00000028
82f2f86c: 00000000 \Driver\PnpManager \Device\00000029
82f2f5dc: 00000000 \Driver\PnpManager \Device\0000002a
82f2f34c: 00000000 \Driver\PnpManager \Device\0000002b
82f31c2c: 00000000 \Driver\rdpdr \Device\RdpDrDvMgr
82f311ec: 00000000 \Driver\mssmbios
848c7b24: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy1
84bd591c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy2
848c701c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy3
848c792c: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy4
848c7ebc: 00000000 \Driver\volsnap \Device\HarddiskVolumeShadowCopy5
846310ec: 00000000 \Driver\volsnap
84631e54: 00000000 \Driver\volsnap
Level 1 (84a97d78) 26/26 Non-Paged, PnP
WaitSleep:
83cbc9dc: 00000000 \Driver\pci
83cbec5c: 00000000 \Driver\atapi \Device\Ide\IdePort0
83ccd72c: 00000000 \Driver\pciide \Device\Ide\PciIde1
83cbc87c: 00000000 \Driver\pci
83cbc19c: 00000000 \Driver\sdbus
83cbdd5c: 00000000 \Driver\pciide \Device\Ide\PciIde0
82f43e14: 00000000 \Driver\pci
83c9b3ec: 00000000 \Driver\ACPI
82f2889c: 00000000 \Driver\ACPI_HAL
ReadySleep:
83cbcdfc: 00000000 \Driver\pci \Device\NTPNP_PCI0000
83ccc8e4: 00000000 \Driver\ACPI
83ce1514: 00000000 \Driver\partmgr
83cda604: 00000000 \Driver\atapi \Device\Ide\IdePort1
83cbc2fc: 00000000 \Driver\sdbus
83cbd01c: 00000000 \Driver\sdbus
83cda4a4: 00000000 \Driver\atapi \Device\Ide\IdePort2
83cda344: 00000000 \Driver\atapi \Device\Ide\IdePort3
83cbdbfc: 00000000 \Driver\ACPI \Device\00000041
83cbda9c: 00000000 \Driver\ACPI \Device\00000042
83cbd93c: 00000000 \Driver\ACPI \Device\00000043
82f3e85c: 00000000 \Driver\ACPI \Device\0000003e
82f3e6fc: 00000000 \Driver\ACPI \Device\0000003f
82f3e59c: 00000000 \Driver\ACPI \Device\00000040
83cbc71c: 00000000 \Driver\usbuhci \Device\USBFDO-0
83cbc5bc: 00000000 \Driver\usbuhci \Device\USBFDO-1
83cbc45c: 00000000 \Driver\usbehci \Device\USBFDO-2

0: kd> !poreqlist
All active Power Irps from PoRequestPowerIrp
PopReqestedPowerIrpList
FieldOffset = 00000004

please suggest how to go about further to find out why my_driver is holding the power irp.
my_driver is a ndis sdio driver.

— NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

— NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer</my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver></my_driver>

>I know that all bound protocols must pwr down/halt (not sure what the official term is, that is my term)

before the nic powers off.

I would add that, if the procotol does not support power management, then it is just unbound from the NIC on power down and rebound on power up.

This was so in Windows CE also.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com