ChangeQueueState ルール (kmdf)
ChangeQueueState ルールは、WDF ドライバーが同時実行スレッドからキューの状態を変更しようとしたり、同じスレッド内から状態変更 DDI を次々に呼び出さないことを指定します。 キュー状態変更コールバック関数は、WdfIoQueueStop、WdfIoQueueStopSynchronously、WdfIoQueuePurge、WdfIoQueuePurgeSynchronously、WdfIoQueueDrain、WdfIoQueueDrainSynchronously、WdfIoQueueStopAndPurge、WdfIoQueueStopAndPurgeAndPurgeSynchronously です。 キューの状態の変更が既に進行中のときにこれらの DDI が呼び出されると、コンピューターがクラッシュしたり、応答しなくなります。
ドライバーモデル: KMDF
テスト方法
コンパイル時 |
---|
静的ドライバー検証ツール を実行し、ChangeQueueState ルールを指定します。 コードの分析を実行するには、次の手順に従います。詳細については、 「静的ドライバー検証ツールを使用してドライバー の欠陥を見つける」を参照してください。 |
適用対象
WdfDeviceCreateWdfDriverCreateWdfIoQueueCreateWdfIoQueueDrainWdfIoQueueDrainSynchronouslyWdfIoQueuePurgWdfIoQueuePurgeSynchronouslWdfIoQueueStopAndPurgeWdfIoQueueStopAndPurgeSynchronouslyWdfIoQueueStopSynchronousl