DrvAckIoStop 规则 (kmdf)
DrvAckIoStop 规则验证驱动程序在电源管理的队列关闭时是否知道挂起的请求,并且驱动程序会相应地确认、完成或取消挂起的请求。 对于自托管 I/O 请求,驱动程序还应正确处理来自其 EvtDeviceSelfManagedIoSuspend 函数的 这些请求。 在关机期间无法处理这些请求的驱动程序将导致 bug 检查0x9F:DRIVER_POWER_STATE_FAILURE。
在某些情况下,可能适合禁止显示此警告。 如果驱动程序不保留请求,或未将其转发给其他驱动程序,并且驱动程序直接在队列的处理程序中完成请求,则可以使用 __analysis_assume 函数来禁止显示警告。 有关详细信息,请参阅 使用 _analysis_assume 函数禁止错误缺陷 和 如何:使用 __analysis_assume 指定其他代码信息。
驱动程序模型:KMDF
通过以下规则找到 bug 检查 () :Bug 检查0x9F:DRIVER_POWER_STATE_FAILURE
如何测试
编译时 |
---|
运行 静态驱动程序验证程序 并指定 DrvAckIoStop 规则。 使用以下步骤运行代码分析:有关详细信息,请参阅 使用静态驱动程序验证程序查找驱动程序中的缺陷。 |
适用于
WdfDeviceInitSetPnpPowerEventCallbacksWdfFdoInitSetFilterWdfIoQueueCreate