!devnode

The !devnode extension displays information about a node in the device tree.

!devnode Address [Flags] [Service]  
!devnode 1 
!devnode 2

Parameters

Address
Specifies the hexadecimal address of the device extension whose node is to be displayed. If this is zero, the root of the main device tree is displayed.

Flags
Specifies the level of output to be displayed. This can be any combination of the following bits:

Bit 0 (0x1)
Causes the display to include all children of the device node.

Bit 1 (0x2)
Causes the display to include resources used (CM_RESOURCE_LIST). These include the boot configuration reported by IRP_MN_QUERY_RESOURCES, as well as the resources allocated to the device in the AllocatedResources parameter of IRP_MN_START_DEVICE.

Bit 2 (0x4)
Causes the display to include resources required (IO_RESOURCE_REQUIREMENTS_LIST) as reported by IRP_MN_FILTER_RESOURCE_REQUIREMENTS.

Bit 3 (0x8)
Causes the display to include a list of translated resources as allocated to the device in the AllocatedResourcesTranslated parameter of IRP_MN_START_DEVICE.

Bit 4 (0x10)
Specifies that only device nodes that are not started should be displayed.

Bit 5 (0x20)
Specifies that only device nodes with problems should be displayed. (These are nodes that contain the flag bits DNF_HAS_PROBLEM or DNF_HAS_PRIVATE_PROBLEM.)

Service
Specifies the name of a service. If this is included, only those device nodes driven by this service will be displayed. (If Flags includes bit 0x1, device nodes driven by this service and all their children will be displayed.)

DLL

Kdexts.dll

Additional Information

See Plug and Play Debugging for applications of this extension command. For information about device trees, see the Windows Driver Kit (WDK) documentation and Microsoft Windows Internals by Mark Russinovich and David Solomon.

Remarks

The !devnode 1 command lists all pending removals of device objects.

The !devnode 2 command lists all pending ejects of device objects.

You can use !devnode 0 1 to see the entire device tree.