IrqlKeWaitForMultipleObjectsルール (wdm)
IrqlKeWaitForMultipleObjects ルールでは、 KeWaitForMultipleObjects ルーチンの呼び出し元が Timeout パラメーターに基づいて適切な IRQL で実行されている必要があります。
IrqlKeWaitForMultipleObjects ルーチンの呼び出し元は、次の状況を除き、IRQL <= DISPATCH_LEVEL で実行できます。
Timeout<> 0 の場合、 KeWaitForMultipleObjects ルーチンの呼び出し元が IRQL <= APC_LEVEL で実行されている必要があります。
Timeout != NULL および *Timeout = 0 の場合、 KeWaitForMultipleObjects ルーチンの呼び出し元が IRQL = DISPATCH_LEVEL で実行されている必要があります。
Timeout = NULL または *Timeout != 0の場合、 KeWaitForMultipleObjects ルーチンの呼び出し元はIRQL <= APC_LEVELで動作していることが必要です。
ドライバーモデル: WDM
テスト方法
コンパイル時 |
---|
静的ドライバー検証 を実行し、 IrqlKeReleaseSpinLock 規則を指定します。 コードの分析を実行するには、次の手順に従います。詳細については、 「静的ドライバー検証ツールを使用してドライバー の欠陥を見つける」を参照してください。 |