Determining Why UMDF Indicates Outstanding Files at Device Removal Time
This topic describes how you can use the Wudfext.dll debugger extensions in conjunction with a User-Mode Driver Framework (UMDF) version 1 or 2 driver to determine why UMDF indicates that there are outstanding files when you remove a device.
For UMDF version 1, you'll use extension commands implemented in wudfext.dll. Starting in UMDF version 2, you'll use extension commands implemented in wdfkd.dll.
To determine why UMDF indicates outstanding files, use the following steps:
Use !wudfext.umdevstack (UMDF 1) or !wdfkd.wdfumdevstack (UMDF 2) to dump the device stack. The dump includes outstanding UMDF intra-stack files (that is, file objects that a driver in the stack created as opposed to file objects that were created by an application or by a driver in another stack).
The output includes the list of IRPs that are pending.
- Determine if the IRP completed.
- Determine if a driver-created request was not deleted either explicitly by the driver or implicitly by the object tree.