DrvAckIoStop 規則 (kmdf)

DrvAckIoStop 規則會確認驅動程式在其受電源管理的佇列關閉電源時知道擱置的要求,而驅動程式會據以認可、完成或取消擱置的要求。 如果是自我管理 I/O 要求,驅動程式也應該從其 EvtDeviceSelfManagedIoSuspend 函式 正確處理這些要求。 在關閉電源期間無法處理這些要求的驅動程式會導致 錯誤檢查0x9F:DRIVER_POWER_STATE_FAILURE

在某些情況下,可能適合隱藏此警告。 如果驅動程式未保留要求,或未將它們轉送到其他驅動程式,而且驅動程式直接在佇列的處理程式中完成要求,您可以使用 __analysis_assume 函式來隱藏警告。 如需詳細資訊,請參閱 使用 _analysis_assume 函式來隱藏 False 瑕疵如何:使用 __analysis_assume 指定其他程式碼資訊

驅動程式模型:KMDF

此規則找到的錯誤檢查 () 錯誤檢查0x9F:DRIVER_POWER_STATE_FAILURE

測試方法

在編譯時期

執行 靜態驅動程式驗證器 ,並指定 DrvAckIoStop 規則。

使用下列步驟來執行程式碼的分析:
  1. 準備程式代碼 (使用角色類型宣告) 。
  2. 執行靜態驅動程式驗證程式。
  3. 檢視和分析結果。

如需詳細資訊,請參閱 使用靜態驅動程式驗證器在驅動程式中尋找瑕疵

適用於

WdfDeviceInitSetPnpPowerEventCallbacksWdfFdoInitSetFilterWdfIoQueueCreate