WlanAssert ルール (ndis)
WlanAssert ルールには、WDIWIFI ドライバー内で検証される一連のチェックが含まれます。
次の違反の可能性があります。
TxPeerBacklogStub: データパスの初期化解除後に IHV WDI ミニポートがデータパスを呼び出します。 - このルールは、Peer-Queuing モードにのみ適用されます。 ミニポートが停止またはリセットされると、WDI は IHV ドライバーの CloseAdapterHandler 関数を呼び出します。この関数は、ドライバーがその状態をクリーンアップし、その後にデータ コールバックを呼び出さないように要求します。 これらのアサートは、ドライバーがクローズ後に TxTransferCompleteIndication、TxSendPauseIndication、TxReleaseFrameIndication などのデータ ハンドラーのいずれかを呼び出した場合、またはクローズ後に未処理の Tx フレームがまだ存在する場合に呼び出されます。
TxAbortStub: データパスの初期化解除後に IHV WDI ミニポートがデータパスを呼び出します。 - このルールは、Peer-Queuing モードにのみ適用されます。 ミニポートが停止またはリセットされると、WDI は IHV ドライバーの CloseAdapterHandler 関数を呼び出します。この関数は、ドライバーがその状態をクリーンアップし、その後にデータ コールバックを呼び出さないように要求します。 これらのアサートは、ドライバーがクローズ後に TxTransferCompleteIndication、TxSendPauseIndication、TxReleaseFrameIndication などのデータ ハンドラーのいずれかを呼び出した場合、またはクローズ後に未処理の Tx フレームがまだ存在する場合に呼び出されます。
NdisMDeregisterWdiMiniportDriver と NdisMRegisterWdiMiniportDriver に対する呼び出しが一致せず、WDIWIFI ドライバーがアンロードされます。このアサートは、IHV ドライバーによる NdisMRegisterWdiMiniportDriverの呼び出しが失敗したにもかかわらず、IHV ドライバーが引き続き NdisMDeregisterWdiMiniportDriver ハンドラーを呼び出した場合に呼び出されます。
IhvWdiVersion が、渡された MiniportDataHandler リビジョンに対して低すぎます。WDI は、OID_WDI_GET_ADAPTER_CAPABILITIES, を呼び出すことで IHV ドライバーの WDI バージョンを取得し、次にドライバーの TalTxRxInitializeHandler ハンドラーを呼び出して WdiCharacteristics を取得します。このドライバーは、必要に応じて WDI ハンドラーのリビジョンを更新できます。 このアサートは、ドライバーの WDI バージョンが WDI_VERSION_1_1_0 以下の場合にヒットしますが、ドライバーの WdiCharacteristics、リビジョンが NDIS_OBJECT_TYPE_MINIPORT_WDI_DATA_HANDLERS_REVISION_1 より大きいバージョンに設定されています。
MiniportDataHandler リビジョンが、渡された IhvWdiVersion に対して低すぎます。WDI は、OID_WDI_GET_ADAPTER_CAPABILITIES, を呼び出すことで IHV ドライバーの WDI バージョンを取得し、次にドライバーの TalTxRxInitializeHandler ハンドラーを呼び出して WdiCharacteristics を取得します。このドライバーは、必要に応じて WDI ハンドラーのリビジョンを更新できます。 このアサートは、ドライバーの WDI バージョンが WDI_VERSION_1_1_0 以上の場合にヒットしますが、ドライバーの WdiCharacteristics、リビジョンが NDIS_OBJECT_TYPE_MINIPORT_WDI_DATA_HANDLERS_REVISION_2 より小さいバージョンに設定されています。
違反テキストは、0xC4 バグ チェックのパラメーター 2 として提供されます。
ドライバーモデル: NDIS
このルールで検出されるバグ チェック: バグ チェック 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00093004)
テスト方法
実行時 |
---|
ドライバー検証ツールを実行し、NDIS/WIFI 検証オプションを選択します。 |
適用対象
OID_WDI_GET_ADAPTER_CAPABILITIES
NdisMRegisterWdiMiniportDriver
NdisMDeregisterWdiMiniportDriver